Changeset - 4162ba7c3fb0
[Not reviewed]
Merge
0 5 3
James Polley - 6 years ago 2018-04-17 05:54:38
jp@jamezpolley.com
Merge branch 'master' into ticket-testing
5 files changed with 28 insertions and 10 deletions:
0 comments (0 inline, 0 general)
pinaxcon/templates/symposion/schedule/_grid.html
Show inline comments
...
 
@@ -13,13 +13,13 @@
 
      {% if has_tracks %}
 
        <tr>
 
          <th class="time">&nbsp;</th>
 
          {% for room in timetable.rooms %}
 
            {% with room|trackname:timetable.day as track_name %}
 
              <th class="track-name">{% if track_name %}<p>{{ track_name }}{% endif %}</th>
 
	        {% endwith %}
 
            {% endwith %}
 
          {% endfor %}
 
        </tr>
 
      {% endif %}
 
    {% endwith %}
 
  </thead>
 
  <tbody>
...
 
@@ -41,12 +41,14 @@
 
                  {% if slot.sessions %}
 
                    <div>
 
                      {% for session in slot.sessions.all %}
 
                        <em>Session chair:
 
                        {% if not session.chair %}
 
                          <a href="{% url "schedule_session_detail" session.id %}">Volunteer! 🙋</a>
 
                        {% else %}
 
                          <a href="{% url "schedule_session_detail" session.id %}">{{ session.chair.user.attendee.attendeeprofilebase.attendeeprofile.name }}</a>
 
                        {% endif %}</em>
 
                      {% endfor %}
 
                    </div>
 
                  {% endif %}
 
                {% endflag %}
 
              {% endif %}
vendor/regidesk/regidesk/models.py
Show inline comments
...
 
@@ -95,18 +95,22 @@ class CheckIn(models.Model):
 
        self.save()
 

	
 
    def mark_badge_printed(self):
 
        self.badge_printed = True
 
        self.save()
 

	
 
    def unset_badge(self):
 
        self.badge_printed = False
 
        self.save()
 

	
 
    def mark_schwag_given(self):
 
        self.schwag_given = True
 
        self.save()
 

	
 
    def bulk_mark_given(self):
 
        self.badge_printed = True
 
        self.checked_in_bool = True
 
        self.schwag_given = True
 
        self.save()
 

	
 
    def set_exception(self, text):
 
        self.needs_review = True
 
        self.review_text = text
vendor/regidesk/regidesk/templates/regidesk/boardingpass_overview.html
Show inline comments
...
 
@@ -65,13 +65,14 @@
 
                    <tr>
 
                        <td><input class="action-select" type="checkbox" name="_selected_action" value="{{ attendee.pk }}"></td>
 
                        <td>{{ attendee.id }}</td>
 
                        <td>{{ attendee.attendeeprofilebase.attendeeprofile.name }}</td>
 
                        <td>{{ attendee.ticket_type }}</td>
 
                        <td>{{ attendee.user.email }}</td>
 
                        <td><a href="{% url 'regidesk:check_in_user_view' attendee.user.checkin.code %}">{{ attendee.user.checkin.code }}</a></td>
 
                        <td>{% if attendee.user.checkin.code %}
 
                            <a href="{% url 'regidesk:check_in_user_view' attendee.user.checkin.code %}">{{ attendee.user.checkin.code }}</a>{% endif %}</td>
 
                        <td>
 
                            {% if attendee.user.checkin %}
 
                              {% if attendee.user.checkin.boardingpass %}
 
                                Boarding pass sent<br/>
 
                              {% else %}
 
                                Checkin Created
vendor/regidesk/regidesk/templates/regidesk/ci_overview.html
Show inline comments
...
 
@@ -28,12 +28,13 @@
 
                <dt>Free Text 1</dt><dd>{{ user.attendee.attendeeprofilebase.attendeeprofile.free_text_1 }}</dd>
 
                <dt>Free Text 2</dt><dd>{{ user.attendee.attendeeprofilebase.attendeeprofile.free_text_2 }}</dd>
 
                <dt>Penguin Dinner Tickets</dt><dd>{{ penguin_dinner_count }}</dd>
 
                <dt>Spearker Dinner Tickets</dt><dd>{{ speakers_dinner_count }}</dd>
 
                <dt>PDNS Tickets</dt><dd>{{ pdns_count }}</dd>
 
                <dt>Over 18 years</dt><dd>{% if user.attendee.attendeeprofilebase.attendeeprofile.of_legal_age %}yes{% else %}<strong class="red">NO</strong>{% endif %}</dd>
 
                <dt>Username</dt><dd>{{ user.username }}</dd>
 
            </dl>
 
            <table class="table table-striped">
 
                <tr>
 
                    <th>item</th>
 
                    <th>count</th>
 
                </tr>
...
 
@@ -68,17 +69,21 @@
 
    <div class="panel {% if check_in.badge_printed %}panel-danger{% else %}panel-success{% endif %}">
 
        <div class="panel-heading">Badge</div>
 
        <div class="panel-body">
 
            <dl class="dl-horizontal">
 
                <dt>Status</dt><dd>{% if check_in.badge_printed %}Marked{% else %}Not marked{% endif %} as printed</dd>
 
            </dl>
 
            <form method="post">
 
            <form method="post" hidden>
 
                <input type="checkbox" name="badge" value="badge" checked hidden>
 
                <a type="button" class="btn btn-primary" href="badge">Show Badge</a>
 
                <input class="btn {% if check_in.badge_printed %}btn-danger{% else %}btn-success{% endif %} pull-right" type="submit" value="Submit">
 
            </form>
 
            <form method="post">
 
                <input type="checkbox" name="unbadge" value="unbadge" checked hidden>
 
                <input class="btn btn-danger pull-right" type="submit" value="Force Reprint">
 
            </form>
 
        </div>
 
    </div>
 

	
 
    <div class="panel {% if check_in.schwag_given %}panel-danger{% else %}panel-success{% endif %}">
 
        <div class="panel-heading">Schwag</div>
 
        <div class="panel-body">
...
 
@@ -100,21 +105,22 @@
 
                <p class="help-block">Reminder: Please tell attendee to email boarding@lca2018.org with the details as well</p>
 
                <input class="btn btn-warning pull-right" type="submit" value="Submit">
 
            </form>
 
        </div>
 
    </div>
 

	
 
    <div class="panel {% if check_in.badge_printed or check_in.schwag_given %}panel-danger{% else %}panel-success{% endif %}">
 
    <div class="panel {% if check_in.checked_in_bool or check_in.schwag_given %}panel-danger{% else %}panel-success{% endif %}">
 
        <div class="panel-heading">Bulk actions</div>
 
        <div class="panel-body">
 
            <p>Mark attendee as checked in and schwag given</p>
 
            <dl class="dl-horizontal">
 
                <dt>Status</dt><dd>{% if check_in.badge_printed or check_in.schwag_given %}One of the items in bulk action is marked as given already{% else %}Both items are marked as unrecived{% endif %}</dd>
 
                <dt>Status</dt><dd>{% if check_in.checked_in_bool or check_in.schwag_given %}One of the items in bulk action is marked as given already{% else %}Both items are marked as unrecived{% endif %}</dd>
 
            </dl>
 
            <form method="post">
 
                <input type="checkbox" name="bulk" value="bulk" checked hidden>
 
                <input class="btn  {% if check_in.badge_printed or check_in.schwag_given %}btn-danger{% else %}btn-success{% endif %} pull-right" type="submit" value="Submit">
 
                <input class="btn  {% if check_in.checked_in_bool or check_in.schwag_given %}btn-danger{% else %}btn-success{% endif %} pull-right" type="submit" value="Submit">
 
            </form>
 
        </div>
 
    </div>
 
    <a type=button" class="btn btn-primary btn-lg" href="{% url 'regidesk:check_in_scanner' %}">Return to scanning page</a>
 

	
 
{% endblock %}
vendor/regidesk/regidesk/views.py
Show inline comments
...
 
@@ -49,13 +49,14 @@ def boardingpass(request):
 
        if not templates:
 
            messages.add_message(request, messages.WARNING,
 
                                 'Your boarding pass has not been prepared and I can\'t find a '
 
                                 'default template to use. This page has similar information to '
 
                                 'the boarding pass - please check back later.')
 
            return redirect('/tickets/review')
 
        prepare_boarding_pass(request, templates[0])
 
        prepare_boarding_pass(request.user, templates[0])
 
        checkin = CheckIn.objects.get_or_create(user=user)[0]
 

	
 
    boardingpass = checkin.boardingpass
 
    qrcode_url = request.build_absolute_uri(reverse("regidesk:checkin_png", args=[checkin.code]))
 
    qrcode = checkin.qrcode
 
    qrcode_string ='<img src="data:image/png;base64,' + qrcode + '"/>'
 
    not_qrcode_string = '<img src="cid:qrcode.png"/>'
...
 
@@ -78,13 +79,15 @@ def boarding_overview(request, boarding_state="pending"):
 
    ).filter(
 
        invoice__status=commerce.Invoice.STATUS_PAID,
 
        product__category=settings.TICKET_PRODUCT_CATEGORY,
 
        price__gte=0
 
    )
 

	
 
    ticketholders = { ticket.invoice.user: ticket.product.name for ticket in tickets }
 
    print(datetime.now())
 
    ticketholders = ( ticket.invoice.user for ticket in tickets )
 
    print(datetime.now())
 

	
 
    attendees = people.Attendee.objects.select_related(
 
            "attendeeprofilebase",
 
            "attendeeprofilebase__attendeeprofile",
 
            "user",
 
            "user__checkin"
...
 
@@ -191,13 +194,13 @@ def boarding_prepare(request):
 

	
 
def prepare_boarding_pass(user, template, attendee=None):
 

	
 
    if attendee:
 
        user = attendee.user
 
    else:
 
        user = request.user
 
        user = user
 
        attendee=user.attendee
 
    checkin = CheckIn.objects.get_or_create(user=user)
 
    ctx = {
 
        "user": user,
 
        "checkin": user.checkin,
 
        "code": user.checkin.code,
...
 
@@ -309,12 +312,14 @@ def check_in_overview(request, access_code):
 
        elif 'schwag' in request.POST:
 
            check_in.mark_schwag_given()
 
        elif 'bulk' in request.POST:
 
            check_in.bulk_mark_given()
 
        elif 'exception' in request.POST:
 
            check_in.set_exception(request.POST['exception'])
 
        elif 'unbadge' in request.POST:
 
            check_in.unset_badge()
 
        return redirect(request.path)
 
    ctx = {
 
        'check_in': check_in,
 
        'user': check_in.user,
 
    }
 
    return render(request, "regidesk/ci_overview.html", ctx)
0 comments (0 inline, 0 general)