Files @ fa9bb1a9f9d2
Branch filter:

Location: symposion_app/pinaxcon/templates/dashboard.html - annotation

Christopher Neugebauer
Adds mobile-friendly schedule view and paged schedule view (#81)

* Adds responsive mobile CSS for schedule timetable

* Adds by-day schedule view

* Displays content_override in schedule

* Adds twitter/homepage links for speakers.
6814b290eb53
df397ffde643
04f246d85071
04f246d85071
04f246d85071
04f246d85071
a3474fd9cd4c
a3474fd9cd4c
04f246d85071
04f246d85071
04f246d85071
df397ffde643
6814b290eb53
df397ffde643
df397ffde643
04f246d85071
04f246d85071
04f246d85071
6814b290eb53
eac85a2b9260
eac85a2b9260
eac85a2b9260
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
04f246d85071
04f246d85071
6814b290eb53
04f246d85071
04f246d85071
04f246d85071
6814b290eb53
04f246d85071
04f246d85071
04f246d85071
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
04f246d85071
eac85a2b9260
6814b290eb53
eac85a2b9260
eac85a2b9260
6814b290eb53
eac85a2b9260
6814b290eb53
eac85a2b9260
04f246d85071
a3474fd9cd4c
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
6814b290eb53
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
6814b290eb53
6814b290eb53
6814b290eb53
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
2cdb554623e5
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
eac85a2b9260
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
eac85a2b9260
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
df808d52f3fc
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
6814b290eb53
eac85a2b9260
eac85a2b9260
6814b290eb53
eac85a2b9260
6814b290eb53
04f246d85071
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
{% extends "site_base_wagtail.html" %}
{% load staticfiles %}
{% load i18n %}
{% load proposal_tags %}
{% load review_tags %}
{% load teams_tags %}
{% load registrasion_tags %}
{% load lca2017_tags %}

{% block head_title %}Dashboard{% endblock %}

{% block extra_style %}

{% endblock %}

{% block body_class %}auth{% endblock %}

{% block body %}

{% load staticfiles %}
{% load wagtailimages_tags %}

{% available_categories as categories %}
{% if categories %}
  <div class="panel panel__compact panel__bg panel__last">
    <div style="background-image: url('{% static "lca2017/images/wp_bg_optimised.jpg" %}');" class="panel--bg"></div>
    <div class="panel--content">
      <div >
        <h2>{% trans "Attend" %} {% conference_name %}</h2>
        <div class="vertical-bigger"></div>
        <div class="btn-group">
          {% if not user.attendee.completed_registration %}
            <a href="{% url "guided_registration" %}" class="btn btn__white">
              Get your ticket
            </a>
          {% else %}
            <a href="{% url "attendee_edit" %}" class="btn btn__white">
              Edit attendee profile
            </a>

            {% items_pending as pending %}
            {% if pending %}
              <a href="{% url "checkout" %}" class="btn btn__white">
                Check out and pay
              </a>
            {% endif %}
          {% endif %}

          {% if user.is_staff %}
            <a class="btn btn__white" href="{% url "reports_list" %}">Reports</a>
          {% endif %}
        </div>
      </div>
    </div>
  </div>

  <div class="l-content-page">
    <div class="l-content-page--richtext">
      {% if not user.attendee.completed_registration %}
        <p>To attend the conference, you must purchase a ticket. <a href="{% url "guided_registration" %}">Use our registration form to purchase your ticket</a>.

      {% else %}

        <h3>Your items</h3>
          {% items_pending as pending %}

          {% if pending %}
            <h4>Items pending payment</h4>
            {% include "registrasion/_items_list.html" with items=pending %}
            <p><a href="{% url "checkout" %}" class="btn btn-xs btn-default">
              <i class="fa fa-credit-card"></i>
              Check out and pay for these items.</a>
            </p>
          {% endif %}

          {% items_purchased as purchased %}
          {% if purchased %}
            <h4>Paid items</h4>
            {% include "registrasion/_items_list.html" with items=purchased %}
          {% endif %}

          <h4>Add/Update items</h4>
          {% include "registrasion/_category_list.html" with categories=categories %}

        {% invoices as invoices %}
        {% if invoices %}
          <h4>Invoices</h4>
          <ul>
            {% for invoice in invoices %}
              {% if invoice.is_void %}
                <li class="void-invoice" style="display: none;">
              {% else %}
                <li>
              {% endif %}
                <a href="{% url "invoice" invoice.id %}" >Invoice {{ invoice.id }}</a>
                - ${{ invoice.value }} ({{ invoice.get_status_display }})
              </li>
            {% endfor %}
          </ul>
          <p>
            <button class="btn" id="toggle-void-invoices" href="" onclick="toggleVoidInvoices();">Show void invoices</button>
          </p>
        {% endif %}

        {% available_credit as credit %}
        {% if credit %}
          <p>You have ${{ credit }} leftover from refunded invoices. This credit will be automatically applied to new invoices. Contact the conference organisers to
          for a refund to your original payment source.</p>
        {% endif %}
      {% endif %}
      <p></p>
    </div>
  </div>
{% endif %}


<div class="panel panel__compact panel__bg panel__last">
  <div style="background-image: url('{% static "lca2017/images/hobart_bg_optimised.jpg" %}');" class="panel--bg"></div>
  <div class="panel--content">
    <div class="panel--2-3">
      <h2>{% trans "Speaking and Miniconfs" %}</h2>
      <br />
      <div class="btn-group">
        {% if not user.speaker_profile %}
          <a href="{% url "speaker_create" %}" class="btn btn__white">
          Create profile
          </a>
        {% else %}
          <a href="{% url "speaker_edit" %}" class="btn btn__white">
            Edit profile
          </a>
          <a href="{% url "proposal_submit" %}" class="btn btn__white">
            New proposal
          </a>
        {% endif %}
      </div>
    </div>
  </div>
</div>

<div class="l-content-page">
  <div class="l-content-page--richtext">

      {% if not user.speaker_profile %}
        <p>To submit a proposal, you must first create a speaker profile.</p>
      {% else %}
        <h3>Your Proposals</h3>

        {% if not user.speaker_profile.proposals.exists %}
          <p>No proposals submitted yet.</p>
        {% else %}
          <p></p>
        {% endif %}

      {% endif %}

      {% if user.speaker_profile.proposals.exists %}
          {% for proposal in user.speaker_profile.proposals.all %}
            {% include "symposion/proposals/_proposal_row.html" %}
          {% endfor %}
      {% endif %}

      {% if user.speaker_profile %}
          {% associated_proposals as associated_proposals %}
          {% if associated_proposals %}
            <h3>Proposals you have joined as an additional speaker</h3>
            <table>
                <tr>
                    <th>Title</th>
                    <th>Type</th>
                    <th>Status</th>
                    <th>Actions</th>
                </tr>
                {% for proposal in associated_proposals %}
                    {% include "symposion/proposals/_proposal_row.html" %}
                {% endfor %}
            </table>
          {% endif %}

          {% pending_proposals as pending_proposals %}
          {% if pending_proposals %}
            <h3>Proposals you have been invited to join</h3>
              <table>
                <tr>
                  <th>Title</th>
                  <th>Type</th>
                  <th>Status</th>
                  <th>Actions</th>
                </tr>
                {% for proposal in pending_proposals %}
                  {% include "symposion/proposals/_pending_proposal_row.html" %}
                {% endfor %}
              </table>
          {% endif %}
      {% endif %}

      <br />

  </div>
</div>

{# {% include 'registrasion/dashboard-widget.html' %} #}

{% if review_sections %}

  <div class="panel panel__compact panel__bg panel__last">
    <div style="background-image: url('{% static "lca2017/images/conference_bg_optimised.jpg" %}');" class="panel--bg"></div>
    <div class="panel--content">
      <div class="panel--2-3">
        <h2>{% trans "Reviews" %}</h2>
      </div>
    </div>
  </div>

  <div class="l-content-page">
    <div class="l-content-page--richtext">
      {% for section in review_sections %}
        <h3>{{ section }}</h3>
        <ul>
          <li><a href="{% url "review_section" section.section.slug %}">All</a></li>
          <li><a href="{% url "user_reviewed" section.section.slug %}">Reviewed by you</a></li>
          <li><a href="{% url "user_not_reviewed" section.section.slug %}">Not Reviewed by you</a></li>
        </ul>
      {% endfor %}

      <br />

    </div>
  </div>
{% endif %}


{% available_teams as available_teams %}
{% if user.memberships.exists or available_teams %}
    <div class="panel panel__compact panel__bg">
      <div style="background-image: url('{% static "lca2017/images/hobart_bg_optimised.jpg" %}');" class="panel--bg"></div>
      <div class="panel--content">
        <div class="panel--2-3">
          <h2>{% trans "Teams" %}</h2>
          <br />
        </div>
      </div>
    </div>


    {% if user.memberships.exists %}
    <div class="l-content-page">
      <div class="l-content-page--richtext">
          <h3>Your Teams</h3>
          <table>
            {% for membership in user.memberships.all %}
              <tr>
                <td>
                  <a href="{% url "team_detail" membership.team.slug %}">{{ membership.team.name }}</a>
                  {% if membership.team.description %}<br>{{ membership.team.description }}{% endif %}
                </td>
                <td>
                  <span class="label{% if membership.state == 'invited' %} label-info{% endif %}">{{ membership.get_state_display }}</span>
                </td>
                <td>
                  {% if membership.state == "manager" or user.is_staff %}
                    {% if membership.team.applicants %}{{ membership.team.applicants.count }} applicant{{ membership.team.applicants.count|pluralize }}{% endif %}
                  {% endif %}
                </td>
              </tr>
            {% endfor %}
          </table>
        {% endif %}
        {% if available_teams %}
          <h3>Available Teams</h3>
          <table class="table table-striped">
            {% for team in available_teams %}
              <tr>
                <td>
                  <a href="{% url "team_detail" team.slug %}">{{ team }}</a>
                  {% if team.description %}<br>{{ team.description }}{% endif %}
                </td>
                <td>
                  <span class="label label-default">{{ team.get_access_display }}</span>
                </td>
              </tr>
            {% endfor %}
          </table>
        {% endif %}
      </div>
    </div>

{% endif %}

{% endblock %}

{% block scripts_extra %}
  <script type="text/javascript">
    function _toggleVoidInvoices() {
      var visible = false;
      function toggleVoidInvoices() {
        $btn = $("#toggle-void-invoices");
        $invoices = $(".void-invoice")

        if (visible) {
          $invoices.hide();
          btnText = "Show void invoices";
        } else {
          $invoices.show();
          btnText = "Hide void invoices";
        }
        $btn.text(btnText);
        visible = !visible;
        return true;
      }
      return toggleVoidInvoices;
    }
    var toggleVoidInvoices = _toggleVoidInvoices();
    _toggleVoidInvoices() = undefined;
  </script>
{% endblock %}