Commit graph

2216 commits

Author SHA1 Message Date
James Polley
0bb2f8c25d Gracefully handle users with no ticket 2018-01-15 09:10:48 +11:00
James Polley
3ffa5fab60 Don't require login to view qrcode
* The qrcode contains no information that isn't in the URL you used to
  access the code, so information is being leaked
* Allowing unauthenicated access lets people see the image in their
  mail client

Not ideal. Let's revert this later and think of something better next
year - perhaps spending some more time researching best practices on
images in email..
2018-01-15 08:51:38 +11:00
James Polley
6770e83e5d Switch to png as a plain boring attachment
In the body of the email, we can load the image direct from the
site. Prolly gonna fail a lot but at least it's a loud known visible
failure
2018-01-15 08:21:18 +11:00
James Polley
018f7bef7a Flag plain-text part of the email as being plain-text 2018-01-15 07:59:43 +11:00
James Polley
55ed2dc319 Display room name on presentation_detail 2018-01-15 06:36:05 +11:00
James Polley
18fc3bd4a7 Fix typo in list_filter 2018-01-15 06:36:05 +11:00
James Polley
0bc99d8fdb Revert to fixed string in email, for easier substitution
Harder to swap it out when it changes every time..
2018-01-15 03:54:40 +11:00
James Polley
8da6d18098 Enhance session admin to show room names 2018-01-15 03:42:01 +11:00
James Polley
30e65e65a6 Use the fixed template, not the version straight out of the db 2018-01-15 02:57:55 +11:00
James Polley
1a2b4f4688 Company isn't shown for hobbyists/students/day tickets 2018-01-15 02:52:11 +11:00
James Polley
1f025400e1 Add the boardingpass template 2018-01-15 02:33:47 +11:00
James Polley
6f064455ab Remove errant . in urls 2018-01-15 02:22:52 +11:00
James Polley
79085a798a Create /boardingpass 2018-01-15 02:05:29 +11:00
James Polley
9abea97625 Apply usual styling to session volunteering buttons 2018-01-15 02:05:28 +11:00
James Polley
39669055ef Update badge rendering to reflect actual render
* Switch to showing the PNG version by default, as this reflects what
  will actually be rendered and sent to the printer
* Include the greyscale filter
* Include the twemoji font we'll use for rendering the badges
2018-01-15 00:30:30 +11:00
James Polley
653cd80891 Quick and dirty voucher use report
Dumps a list of voucher code, invoice id, invoice details in a listreport.
2018-01-13 20:54:38 +11:00
James Polley
8c0d42ee7f Be more proactive about presenting the right QRcode image 2018-01-13 01:34:25 +11:00
James Polley
2206f647db Make purchase details available for boardingpass templates. 2018-01-13 00:26:49 +11:00
James Polley
ffe0f64182 Make narrow-screen schedule details more distinct
In the narrow view, lots of details that aren't in the normal view
appear to compensate for not having clear row/column headers any more.

However, all the detail can look very same-same; this tweak makes rooms and end times more distinct.

Session chair info is made always italic, and a label is added to make
it clear that this person is not the speaker.
2018-01-13 00:26:49 +11:00
James Polley
54f53cd2c6 Add a waffle, for flipping and switching 2018-01-11 03:04:32 +11:00
James Polley
b6af9e27d4 Revert django-user-account, inadvertently added in 9a25ca1 2018-01-11 02:42:11 +11:00
James Polley
cb1355120a Make the per-day tabs work 2018-01-11 02:04:16 +11:00
James Polley
98e0abf30c Use filter_vertical for sessions in admin 2018-01-10 22:27:55 +11:00
James Polley
f99765ca0b Add admin action to update slot names
* The slot object updates its name every time it is saved
* But sometimes its slotrooms are changed underneath it, and so the
  name can become out of date
* This method is a simple way of updating the names for all the slots
2018-01-10 22:27:55 +11:00
Christopher Neugebauer
9a25ca1754 Chrisjrn/session chair (#94)
* Adds session_detail page

* Adds session chairing information to the schedule grid

* Adds session_list.html

* Nicer volunteer text

Conflicts:
	pinaxcon/templates/symposion/schedule/_grid.html

Conflict and migration performed by Sachi King <nakato@nakato.io>
Emoji changed, lca2017_tags to lca2018_tags, remove needless dependency
on django-user-account, use request instead like the remainder of the
calls n the template do anyways.

Remove blocktrans from a number of texts as they break {{ templating }}
and we don't translate anyways.

Modified-by: Sachi King <nakato@nakato.io>
2018-01-10 20:28:22 +11:00
James Polley
23f4a38126 Add filter on room to Slot admin 2018-01-10 15:58:36 +11:00
James Polley
c15848bfce Fix off-by-one errors in ticket categories 2018-01-09 04:29:00 +00:00
James Polley
d30852e5f1 Attach qrcode as attachment 2018-01-07 23:15:46 +11:00
James Polley
0831a4aa76 Add support for a "ready for boarding" group
This allows for the boarding functionality to be safely tested with
just a subset of users first. Once you're ready to go live Fur Reals,
just delete the group and all users will become eligible.
2018-01-07 22:27:15 +11:00
James Polley
c478fb8454 Update badge template 2018-01-07 17:45:33 +11:00
James Polley
e726ff21a8 Create regidesk app
Shows summary of all attendees with a paid ticket, including
boarding_pass status.

Currently, regidesk allows staff with the requisite permission the
ability to view the checkin status of attendees, and email the user
their boarding pass email.

Included is a view for the user to retrieve their own QR code (in case
they got the plain-text version of the email, they can use this to
download an image to their phone for faster checkin)
2018-01-06 11:38:06 +11:00
James Polley
44cdd088be git subrepo clone git@gitlab.com:LCA2018/registrasion-desk.git vendor/regidesk
subrepo:
  subdir:   "vendor/regidesk"
  merged:   "a8096d0"
upstream:
  origin:   "git@gitlab.com:LCA2018/registrasion-desk.git"
  branch:   "master"
  commit:   "a8096d0"
git-subrepo:
  version:  "0.3.1"
  origin:   "???"
  commit:   "???"
2018-01-06 11:38:04 +11:00
James Polley
79743b711d More consistent color-coding for talk status buttons
- there's no btn-default, switch that to btn-primary
 - consistently use info for standby, primary for undecided, success
   for accept and warn for rejected
2018-01-06 11:38:04 +11:00
James Polley
2465f2645e urlize abstracts
I've looked through the database and I can't find any accepted
proposals that actually contain anything to linkify - but I've had
several requests from people that I think are reasonable, things like
being able to link to their project (we ask them to provide a project
url but we don't use that link)

This seems like a reasonably fast way to let those people add a
link. We still have to manually accept changes to their proposal so we
have a chance to look at the content of the url if we want.

The urlize filter adds rel=nofollow to the link automatically.
2018-01-04 21:31:00 +11:00
James Polley
1fd8364456 Modify limits report to include category inclusions as well
* A TimeOrStockLimit limit can apply a limit to a whole category, or
  to specific products
* This report was only counting the products directly listed
* Take advantage of the new all_products property to include the
  products indirectly listed as well as those directly listed
2018-01-02 12:53:14 +11:00
James Polley
6a9652dfd2 Add an all_products property to FlagBase
It's common to need to query the fill list of products covered by a
Flag - whether directly, or by being in an included category.

Add an all_products property which does this.
2018-01-02 12:53:14 +11:00
James Polley
0e1038de97 Add ticket_type property to Attendee
This vastly simplifies templates and many many things which need to
look this up.
2018-01-01 16:22:04 +11:00
James Polley
eac35f3604 Add a button class so that the button gets drawn 2017-12-31 17:23:54 +11:00
James Polley
9dc2ea4439 Voucher form needs to be processed first
Because otherwise, the firstform (which will not be in a valid start)
throws errors which prevent the voucher form from ever being processed.
2017-12-31 17:23:42 +11:00
James Polley
d4ca04bada * Fix categories for badge icons, company names
* Company names had a misspelled filter and weren't being displayed
* Add some conditional logic so that company names don't get shown for
  hobbyists or students
2017-12-27 02:51:57 +11:00
James Polley
f6768e19d8 Make our fonts available to the system
To make them more useable by cairo
2017-12-27 00:20:47 +11:00
James Polley
f675580d6b Add support for badge PDFs also
* Add a greyscale filter to text for more accurate preview
* Always default to SVG preview as it's the most accurate (cairo
  doesn't do a great job of handling custom fonts when it converts to
  png/pdf)
* Always use roboto font.
2017-12-26 23:55:09 +11:00
James Polley
fcbacc82e6 Add views to allow for PNG rendering of badge 2017-12-26 23:10:21 +11:00
James Polley
469e6f1ad9 Add a butotn so users can preview their own badge 2017-12-26 21:05:03 +11:00
James Polley
d14048bcb8 Further changes to support badge generation for lca2018
* Undo some of the debugging done early in this series of patches
* Add ability for a user to preview their own badge
* Add a template for the LCA2018 badge
2017-12-26 21:01:40 +11:00
Sachi King
9ab075e51c Badges work by copy-pasting lca2017/pyconau2017 code around
WIP - Push for share
2017-12-26 04:24:20 +00:00
James Polley
25bff81eab Revert "Fix off-by-one error in rowspan calcuations"
This reverts commit 96a24489b6.
2017-12-25 21:44:31 +11:00
James Polley
f69e7ac52d Add a box to point people at account management 2017-12-25 17:08:11 +11:00
James Polley
96a24489b6 Fix off-by-one error in rowspan calcuations 2017-12-24 19:20:14 +11:00
James Polley
b833b7d869 Order slots by room order first
* lca2018 has a situation where we have multiple slots starting at the
  same time, but ending at different times
* The headers of the timetable grid are sorted by room sort order
* In sqlite at least, ordering by start,order seems to implicitly
  resolve duplicate start times by looking at the other sort fields
  first, and will only sort on order if all other fields are identical

* This results in the slot that ends first going in column 1, which
  gets out of sync with the room listed in the header

* I can't figure out how to solve this in the database, so...

* Force the slots to be sorted by room order.
* Then, for each start_time, select out slots starting at that time
  and operate on them
* This both gets the slots in the right order *and* keeps multi-room
  slots with the right colspan. Yay!

* It's possible that this wouldn't be needed on some DBs which might
do the sorting differently.
2017-12-24 19:20:04 +11:00