Rework reg dashboard
authorChris Ellis <chris@intrbiz.com>
Sat, 14 Sep 2024 11:21:12 +0000 (13:21 +0200)
committerChris Ellis <chris@intrbiz.com>
Sat, 14 Sep 2024 11:21:12 +0000 (13:21 +0200)
templates/confreg/registration_dashboard.html

index 83f042b48739ec61b1bebaa150954acfba5edec6..476f5c66deeafd0966821a788c15e0cb0f1245f3 100644 (file)
 {%block content%}
 <div class="confsys">
 
-  {% if messages %}
-    {% for message in messages %}
-      <div class="banner message {% if message.tags %}{{ message.tags }}{% endif %}" >{{ message }}</div>
-    {% endfor %}
-  {% endif %}
-
   <h1>Your Registration<span class="confheader"> - {{conference}}</span></h1>
-
-  <div class="intro">
-    <h4>Hi {{reg.firstname}} - Welcome To {{conference}}!</h4>
-    <p>
-      Here you will find all the information you need about {{conference}}.  Your registration (for {{reg.firstname}} {{reg.lastname}}) was completed on {{reg.payconfirmedat|datetimeformat("%Y-%m-%d %H:%M")}}.
-    </p>
-    <p>
-      Please also check the main <a href="{{conference.confurl}}">event website</a> for public news!
-    </p>
-  </div>
   
   <nav class="button-bar small">
-    <a class="button primary" href="#mails">Information Emails</a>
-    {%if wikipages%}
-      <a class="button primary" href="#wiki">Wiki Pages</a>
+    {%if conference.tickets %}
+      <a class="button primary" href="{{ redir_root }}viewticket/">View Ticket</a>
+      {# TODO: put this on the view ticket page --> #}
+      <a class="button primary" href="{{ redir_root }}ticket/">Download Ticket</a>
     {%endif%}
+    {# Multi-reg menu options #}
     {%if signups%}
       <a class="button primary" href="#signups">Signups</a>
     {%endif%}
     {%if not has_other_multiregs%}
       <a class="button primary" href="{{redir_root}}other/">Register Others</a>
     {%endif%}
-      <a class="button primary" href="#summary">Registration Summary</a>
-    {%if availableoptions%}
-      <a class="button primary" href="#options">Additional Options</a>
-    {%endif%}
+    {# Sponsorship menu options #}
+    {%for s in sponsorships%}
+      <a class="button primary" href="/events/sponsor/{{s.id}}/">Manage Sponsorship</a>
+    {%endfor%}
+    {# Speaker menu options #}
     {%if conference.IsCallForPapersOpen%}
       <a class="button primary" href="/events/{{conference.urlname}}/callforpapers/">Call For Papers</a>
     {%elif is_speaker%}
       <a class="button primary" href="/events/{{conference.urlname}}/callforpapers/">Profile</a>
     {%endif%}
+  </nav>
+  
+{# staff / volunteer menu #}
+{%if reg.is_volunteer or reg.is_checkinprocessor or reg.is_badgescanner or reg.is_tweete%}
+  <nav class="button-bar small staff">
     {%if reg.is_volunteer%}
-      <a class="button primary" href="/events/{{conference.urlname}}/volunteer/">Volunteers</a>
+      <a class="button secondary" href="/events/{{conference.urlname}}/volunteer/">Volunteers</a>
     {%endif%}
     {%if reg.is_checkinprocessor %}
-      <a class="button primary" href="/events/{{conference.urlname}}/checkin/">Checkin</a>
+      <a class="button secondary" href="/events/{{conference.urlname}}/checkin/">Checkin</a>
     {%endif%}
-    {%for s in sponsorships%}
-      <a class="button primary" href="/events/sponsor/{{s.id}}/">Manage Sponsorship</a>
-    {%endfor%}
     {%if reg.is_badgescanner %}
-      <a class="button primary" href="/events/{{conference.urlname}}/badgescan/">Badge Scanning</a>
+      <a class="button secondary" href="/events/{{conference.urlname}}/badgescan/">Badge Scanning</a>
     {%endif%}
     {%if reg.is_tweeter %}
-      <a class="button primary" href="/events/{{conference.urlname}}/volunteer/{{reg.regtoken}}/twitter/">Twitter Posting</a>
-    {%endif%}
-  </nav>
-
-<div id="summary" class="card">
-  <a name="summary"></a>
-  <h4>Registration Summary</h4>
-  
-  <nav class="button-bar small right">
-    {%if conference.tickets %}
-      <a class="button primary" href="{{ redir_root }}viewticket/">View Ticket</a>
-      <a class="button secondary" href="{{ redir_root }}ticket/">Download Ticket</a>
+      <a class="button secondary" href="/events/{{conference.urlname}}/volunteer/{{reg.regtoken}}/twitter/">Twitter Posting</a>
     {%endif%}
   </nav>
+{%endif%}
   
-  <div class="subintro">
+  {% if messages %}
+    {% for message in messages %}
+      <div class="banner message {% if message.tags %}{{ message.tags }}{% endif %}" >{{ message }}</div>
+    {% endfor %}
+  {% endif %}
+
+  <div class="card intro">
+    <h4>Hi {{reg.firstname}} - Welcome To {{conference}}!</h4>
     <p>
-      You have a <span class="regtype">{{reg.regtype}}</span> ticket for {{conference}}.  This gives you access to the event on {{reg.access_days}}.
+      Your registration is made for <i>{{reg.firstname}} {{reg.lastname}}</i> with email address <i>{{reg.email}}</i> which was completed on {{reg.payconfirmedat|datetimeformat("%Y-%m-%d %H:%M")}}.
+      You have a <span class="regtype">{{reg.regtype}}</span> ticket for {{conference}}.{%if reg.access_days != 'None' %}  This gives you access to the event on {{reg.access_days}}.{% endif %}
     </p>
     <p>
-      This registration is made for <i>{{reg.firstname}} {{reg.lastname}}</i> with email address <i>{{reg.email}}</i>.
+      Here you can find all the information you need about {{conference}}.  Your registration (for {{reg.firstname}} {{reg.lastname}}) 
     </p>
-    {%for k,v in displayfields%}
-        <p>
+    <p>
+      Please also check the main <a href="{{conference.confurl}}">event website</a> for public news!
+    </p>
+    <div class="subsection">
+      <h5>Registration Details</h5>
+      <ul>
+      {%for k,v in displayfields%}
+        <li>
           <span class="reg-prop-name">{{k}}</span> <span class="reg-prop-value">{{v}}</span>
-        </p>
-    {%endfor%}
-  </div>
-
-  {%if reg.additionaloptions.all()%}
-  <div class="subsection">
-    <h5>Additional options</h5>
-    <dd>You are registered for the following additional options:
+        </li>
+      {%endfor%}
+      </ul>
+    </div>
+    {%if reg.additionaloptions.all()%}
+    <div class="subsection">
+      <h5>Additional Options</h5>
+      <dd>You are registered for the following additional options:
+        <ul>
+      {%for a in reg.additionaloptions.all()%}
+          <li>{{a.name}}</li>
+      {%endfor%}
+        </ul>
+      </dd>
+    </div>
+    {%endif%}
+    {%if invoices%}
+    <div class="subsection invoices">
+      <h5>Invoice And Receipts</h5>
+      <p>You can download a copy of your invoices and receipts:</p>
       <ul>
-    {%for a in reg.additionaloptions.all()%}
-        <li>{{a.name}}</li>
-    {%endfor%}
+      {%for t,i in invoices%}
+        <li><a href="/invoices/{{i.id}}/{{i.recipient_secret}}/">{{t}}</a></li>
+      {%endfor%}
       </ul>
-    </dd>
-  </div>
-  {%endif%}
-
-  {%if invoices%}
-  <div class="subsection">
-    <h5>Invoice and receipts</h5>
-    <p>You can download a copy of your invoices and receipts:</p>
-    <ul>
-    {%for t,i in invoices%}
-      <li><a href="/invoices/{{i.id}}/{{i.recipient_secret}}/">{{t}}</a></li>
-    {%endfor%}
-    </ul>
-    <p>
-      If you have made any additional orders, you can always find a copy of all invoices and receipts in the <a href="/invoices/">invoice section</a>.
-    </p>
+      <p>
+        If you have made any additional orders, you can always find a copy of all invoices and receipts in the <a href="/invoices/">invoice section</a>.
+      </p>
+    </div>
+    {%endif%}
+    {%if scanned_by_sponsors%}
+    <div class="subsection scanned-by">
+      <h4>Scanned By Sponsors</h4>
+      <p>
+        Your badge has been scanned by the following sponsors:
+      </p>
+      <ul>
+      {%for s in scanned_by_sponsors %}
+        <li><span class="scanned-by-name">{{s.sponsor.displayname}}</span> <span class="scanned-by-at">(at {{s.scannedat|datetimeformat("%Y-%m-%d %H:%M")}})</span></li>
+      {%endfor%}
+      </ul>
+    </div>
+    {%endif%}
   </div>
-  {%endif%}
 
-  </dl>
-
-  {%if changeform and conference.allowedit%}
-  <div class="subsection">
-    <h5>Change Your Registration</h5>
+{%if changeform and conference.allowedit%}
+  <div class="card">
+    <h4>Edit Registration</h4>
+    <a name="change-registration"></a>
     {%if changeform.non_field_errors()%}{{changeform.non_field_errors()}}{%endif%}
     <form method="post" action="{{redir_root}}change/">
       {{ csrf_input }}
       {%endfor%}
       {%if conference.allowedit %}
       <nav class="button-bar small">
-        <input type="submit" value="Update">
+        <input type="submit" value="Save">
       </nav>
       <p class="warning">
         If you need to change any other details, please contact the conference organisers, by email: <span class="contact-email">{{conference.contactaddr}}</span>
       {%endif%}
     </form>
   </div>
-  {%endif%}
-  
-  {%if scanned_by_sponsors%}
-  <div class="subsection scanned-by">
-    <h4>Scanned By Sponsors</h4>
-    <p>
-      Your badge has been scanned by the following sponsors:
-    </p>
-    <ul>
-    {%for s in scanned_by_sponsors %}
-      <li><span class="scanned-by-name">{{s.sponsor.displayname}}</span> <span class="scanned-by-at">(at {{s.scannedat|datetimeformat("%Y-%m-%d %H:%M")}})</span></li>
-    {%endfor%}
-    </ul>
-  </div>
-  {%endif%}
-  
-</div>
-
-{%if messaging%}
-<div id="notifications" class="card">
-  <h4>Notifications</h4>
-  <a name="notifications"></a>
-  <p>
-    You can connect your registration to a specific messaging system, which will allow
-    us to send you direct notifications, reminders, and other similar information. Depending
-    on the platform, it may also allow you to participate in conference related chats
-    (participation is always optional).
-  </p>
-  {%if current_messaging_info %}
-  <p>
-    Your registration is currently configured to send notifications using {{reg.messaging}}.
-  {%if reg.messaging_copiedfrom %}
-    This configuration was copied from {{reg.messaging_copiedfrom}}.
-  {%endif%}
-  </p>
-  {{current_messaging_info}}
-  <form method="post" action="{{redir_root}}msgconfig/">
-    {{ csrf_input }}
-    <input type="hidden" name="op" value="deactivate">
-    <nav class="button-bar small">
-      <input type="submit" value="Deactivate {{reg.messaging}}">
-    </nav>
-  </form>
-  {%else%}
-  <form method="post" action="{{redir_root}}msgconfig/">
-    {{ csrf_input}}
-    <div class="field">
-      <label>Platform:</label>
-      <select name="messagingid">
-        {%for m in messaging%}
-          <option value="{{m.id}}">{{m.full_info}}</option>
-        {%endfor%}
-      </select>
-    </div>
-    <nav class="button-bar small">
-      <input type="submit" value="Configure">
-    </nav>
-  </form>
-  {%endif%}
-</div>
 {%endif%}
 
 {%if availableoptions%}
-<div id="options" class="card">
-  <a name="options"></a>
-  <h4>Additional Options</h4>
-  {%if pendingadditional%}
+  <div id="options" class="card">
+    <a name="options"></a>
+    <h4>Additional Options</h4>
+    {%if pendingadditional%}
+      <p>
+      You have a pending order for additional options, which has not yet been
+      paid. Please pay this invoice as soon as possible to ensure your
+      registration is completed!
+      </p>
+      {%set invoice=pendingadditionalinvoice%}
+        {%include "invoices/userinvoice_spec.html"%}
+    {%else%}
+      <p>{{'system.reg.additionaloptionsintro'|lookup("")}}</p>
+      <form method="post" action="addopt/">
+        {{ csrf_input }}
+        <div class="field">
+          {%for o in availableoptions %}
+          <input type="checkbox" name="ao_{{o.id}}" value="1" />
+          <label>{{o}}</label>
+          {%endfor%}
+        </div>
+        <nav class="button-bar small">
+          <input type="submit" value="Order">
+        </nav>
+      </form>
+    {%endif%}
+  </div>
+{%endif%}
+
+{%if messaging%}
+  <div id="notifications" class="card">
+    <h4>Notifications</h4>
+    <a name="notifications"></a>
     <p>
-    You have a pending order for additional options, which has not yet been
-    paid. Please pay this invoice as soon as possible to ensure your
-    registration is completed!
+      You can connect your registration to a specific messaging system, which will allow
+      us to send you direct notifications, reminders, and other similar information. Depending
+      on the platform, it may also allow you to participate in conference related chats
+      (participation is always optional).
     </p>
-    {%set invoice=pendingadditionalinvoice%}
-      {%include "invoices/userinvoice_spec.html"%}
-  {%else%}
-    <p>{{'system.reg.additionaloptionsintro'|lookup("")}}</p>
-    <form method="post" action="addopt/">
+    {%if current_messaging_info %}
+    <p>
+      Your registration is currently configured to send notifications using {{reg.messaging}}.
+    {%if reg.messaging_copiedfrom %}
+      This configuration was copied from {{reg.messaging_copiedfrom}}.
+    {%endif%}
+    </p>
+    {{current_messaging_info}}
+    <form method="post" action="{{redir_root}}msgconfig/">
       {{ csrf_input }}
+      <input type="hidden" name="op" value="deactivate">
+      <nav class="button-bar small">
+        <input type="submit" value="Deactivate {{reg.messaging}}">
+      </nav>
+    </form>
+    {%else%}
+    <form method="post" action="{{redir_root}}msgconfig/">
+      {{ csrf_input}}
       <div class="field">
-        {%for o in availableoptions %}
-        <input type="checkbox" name="ao_{{o.id}}" value="1" />
-        <label>{{o}}</label>
-        {%endfor%}
+        <label>Platform:</label>
+        <select name="messagingid">
+          {%for m in messaging%}
+            <option value="{{m.id}}">{{m.full_info}}</option>
+          {%endfor%}
+        </select>
       </div>
       <nav class="button-bar small">
-        <input type="submit" value="Order">
+        <input type="submit" value="Configure">
       </nav>
     </form>
-  {%endif%}
-</div>
+    {%endif%}
+  </div>
 {%endif%}
 
 {%if has_other_multiregs%}