Commit graph

386 commits

Author SHA1 Message Date
Christopher Neugebauer
c25f19d66e Increases search space for access codes. 2016-09-25 11:33:07 +10:00
Christopher Neugebauer
aec9e58edf Removes avenue for crash in reporting attendees. 2016-09-23 15:21:57 +10:00
Christopher Neugebauer
e775e5afd9 Documentation fix. 2016-09-22 11:23:56 +10:00
Christopher Neugebauer
a16cb71463 Fixes issue in for_id_or_404 2016-09-21 15:58:58 +10:00
Christopher Neugebauer
94a8c3e3d9 Adds speaker registration data.
Addresses #77
2016-09-20 19:18:21 +10:00
Christopher Neugebauer
7c5c155370 Shows an email address. 2016-09-20 18:44:23 +10:00
Christopher Neugebauer
2d469bb398 One more addition. 2016-09-20 14:04:38 +10:00
Christopher Neugebauer
2ed0a47f15 Adds attendance by field report
Fixes #93
2016-09-20 13:48:08 +10:00
Christopher Neugebauer
e3b662fb67 Adds attendee profile data to the attendee page 2016-09-20 13:47:59 +10:00
Christopher Neugebauer
6611546a35 Moves get_object_from_name into util. 2016-09-20 13:47:59 +10:00
Christopher Neugebauer
6e4d2fab16 Adds ATTENDEE_PROFILE_MODEL as a thing that needs to be specified in settings.py.
Fixes #65
2016-09-20 13:47:50 +10:00
Christopher Neugebauer
e2d027f71b Adds a report for consumption of a discount.
Fixes #78
2016-09-20 13:47:39 +10:00
Christopher Neugebauer
f41bd9c65b Adds paid invoices by date report 2016-09-19 15:03:21 +10:00
Christopher Neugebauer
851c37508a Factors out annotating objects by cart status 2016-09-19 13:39:39 +10:00
Christopher Neugebauer
2c99114d9f Improves wording on reconciliation report 2016-09-19 13:26:46 +10:00
Christopher Neugebauer
7e74a2e0da Updates the treasurer’s reconciliation view to be MUCH more comprehensive. 2016-09-19 13:25:02 +10:00
Christopher Neugebauer
4a50d69936 Moves total_payments() to Invoice model; adds balance_due() 2016-09-16 09:35:12 +10:00
Christopher Neugebauer
fc81f107ed When setting quantities on products, only raise errors if they’re due to changes made during the current call to set_quantities.
Fixes #54
2016-09-15 16:33:19 +10:00
Christopher Neugebauer
3517bdd281 Makes sure that discounts always apply to the most expensive product in the cart first. Adds test to that effect.
Fixes #88.
2016-09-15 16:01:49 +10:00
Christopher Neugebauer
4026dac3a3 Re-adds admin for TimeOrStockLimitFlag
Fixes #82
2016-09-15 15:46:52 +10:00
Christopher Neugebauer
52fa696a01 Fixes GroupMemberCondition test 2016-09-15 15:33:52 +10:00
Christopher Neugebauer
2c8ed9a51a Adds test for GroupMemberCondition 2016-09-15 15:33:43 +10:00
Christopher Neugebauer
2ca644e500 Adds form for generating a cancellation fee. 2016-09-15 12:25:34 +10:00
Christopher Neugebauer
d4f4312178 Adds cancellation fee implementation and tests 2016-09-15 12:15:40 +10:00
Christopher Neugebauer
fd9980efc5 Makes sure we only apply unclaimed credit notes when auto-applying credit notes. 2016-09-15 11:41:50 +10:00
Christopher Neugebauer
77a7689de5 Fixes credit note tests that were broken with the old behaviour 2016-09-15 11:28:14 +10:00
Christopher Neugebauer
5fce13d386 Simplifies credit note tests 2016-09-15 11:28:14 +10:00
Christopher Neugebauer
04b7a7998c Tests correct behaviour when there are multiple credit notes to be applied 2016-09-15 11:28:14 +10:00
Christopher Neugebauer
82254a7bf5 Credit note is automatically applied if you have a single invoice 2016-09-15 10:22:12 +10:00
Christopher Neugebauer
05c5cfcb4e Adds first tests for automatic credit note application 2016-09-15 10:03:27 +10:00
Christopher Neugebauer
66f423eafa Moves tests for credit note functionality into its own test module 2016-09-15 09:38:42 +10:00
Christopher Neugebauer
23658be49a Starts test_helpers.py, so we can get credit note testing stuff into its own module. 2016-09-15 09:29:31 +10:00
Christopher Neugebauer
6469bcd8e7 Adds test for manual invoicing 2016-09-15 09:08:57 +10:00
Christopher Neugebauer
2e5a8e3668 First pass at allowing manual invoices. 2016-09-15 09:08:57 +10:00
Christopher Neugebauer
a9bc647570 Replaces _generate with _generate_from_cart and _generate 2016-09-15 08:38:33 +10:00
Christopher Neugebauer
613667aa30 Re-arranges invoice generation code.
- Reduces number of db queries
- Localises the code that interrogates the cart and the code that generates the invoice itself.
2016-09-15 08:31:35 +10:00
Christopher Neugebauer
3f53d6f4ff Removes spurious print statement. 2016-09-14 15:09:02 +10:00
Christopher Neugebauer
b5cbc3e39e Renames guided_registration_complete to review 2016-09-14 15:00:53 +10:00
Christopher Neugebauer
640db7e3dc Replaces the final stage of guided registration with a review page, which shows after adding anything to your cart.
Fixes #87
2016-09-14 14:59:01 +10:00
Christopher Neugebauer
faa25c9b3a Adds missing_categories tag 2016-09-14 13:28:15 +10:00
Christopher Neugebauer
f0730b4de9 Flake8 fixes for reports 2016-09-13 18:54:28 +10:00
Christopher Neugebauer
cb50f2a3be Replaces a bunch of reports with QuerysetReports 2016-09-13 18:53:01 +10:00
Christopher Neugebauer
12b665acb8 DRYs QuerysetReport’s headers 2016-09-13 18:47:51 +10:00
Christopher Neugebauer
bbce369a38 Allows for callable attributes to be specified in QuerysetReports. 2016-09-13 18:44:13 +10:00
Christopher Neugebauer
4c9f426a47 Simplifies a bunch of older reports. 2016-09-13 16:26:40 +10:00
Christopher Neugebauer
f7326eedf7 Makes as many reports under attendee() as possible a QuerysetReport 2016-09-13 16:24:50 +10:00
Christopher Neugebauer
fa717dee65 Adds QuerysetReport, which allows directly adding a queryset to a report rather than having to preprocess it into a list. 2016-09-13 16:19:18 +10:00
Christopher Neugebauer
53e6278116 Adds a Links report type, which can be used to generate a list of links to display with a report. 2016-09-13 16:02:18 +10:00
Christopher Neugebauer
e8cfd024d3 Makes the reports use actual objects rather than strings 2016-09-13 15:39:25 +10:00
Christopher Neugebauer
f3e419d66d Refactors reports so that rendering of links is done within Python code, not templates. 2016-09-13 15:32:55 +10:00
Christopher Neugebauer
2658c2ccde Improves the error message when per_user_limit on category is breached.
Fixes #80
2016-09-13 13:33:20 +10:00
Christopher Neugebauer
1c239c361f Propagates the per_user_limit category error to the products, rather than the category.
Fixes #79.
2016-09-13 13:20:02 +10:00
Christopher Neugebauer
3903d2be56 Fixes issues on /amend 2016-09-13 13:19:31 +10:00
Christopher Neugebauer
9dd31128bb Restricts ‘amend’ product widgets to the original product.
Fixes #76.
2016-09-13 13:19:09 +10:00
Christopher Neugebauer
a27264ac92 Filters items_purchased by category.
Fixes #74
2016-09-13 12:28:48 +10:00
Christopher Neugebauer
f5e303584b Adds an output_field type to reconciliation sums.
Fixes #75
2016-09-13 12:27:07 +10:00
Christopher Neugebauer
ea599bbaad Addresses #72, hopefully. 2016-09-05 21:10:21 +10:00
Christopher Neugebauer
878da1f2d8 Use textfield for some things rather than char field 2016-09-05 19:45:44 +10:00
Christopher Neugebauer
17dd91d56b Fixes bug in the t-shirt-style widget. 2016-09-05 14:45:51 +10:00
Christopher Neugebauer
1214b23077 Adds admin and migration for GroupMember conditions 2016-09-05 10:48:38 +10:00
Christopher Neugebauer
0f488e7a12 Makes TeamMemberCondition work 2016-09-05 10:45:10 +10:00
Christopher Neugebauer
1128e43150 Adds test for GroupMemberCondition — it fails, obviously. 2016-09-05 10:45:09 +10:00
Christopher Neugebauer
136c68aa0a Adds GroupMemberCondition, derivatives, and controllers. 2016-09-05 10:01:36 +10:00
Christopher Neugebauer
0601470006 Fixes bug in Radio Buttons products form.
Fixes #69.
2016-09-04 14:31:21 +10:00
Christopher Neugebauer
c2a702d699 Adds admin and migration for speaker tickets. 2016-09-04 14:21:30 +10:00
Christopher Neugebauer
af30063a92 Adds final test, all three now pass. 2016-09-04 14:00:56 +10:00
Christopher Neugebauer
04eefa4e0e Passes first two tests 2016-09-04 13:54:05 +10:00
Christopher Neugebauer
0b306fd59e Adds test for user being a primary presenter of a proposal 2016-09-04 13:41:49 +10:00
Christopher Neugebauer
786bc0324a Stubs out tests for test_speaker 2016-09-04 13:17:56 +10:00
Christopher Neugebauer
9134fa5ed2 Initial version of test_speaker, which creates all of the boilerplate for proposals 2016-09-04 13:11:45 +10:00
Christopher Neugebauer
b3d86e2148 Adds stub for SpeakerConditionController 2016-09-04 12:39:52 +10:00
Christopher Neugebauer
63fe8196e2 Adds SpeakerCondition, SpeakerDiscount, and SpeakerFlag 2016-09-04 12:36:20 +10:00
Christopher Neugebauer
1333fcdea1 Refactors flags and discount classes to be DRYer. 2016-09-04 12:18:10 +10:00
Christopher Neugebauer
43649002cb Makes ProductCondition work if you have both valid and cancelled instances of a product. Fixes #68 2016-09-03 16:18:27 +10:00
Christopher Neugebauer
8e1f799513 Test case for issue #68 2016-09-03 16:11:28 +10:00
Christopher Neugebauer
5703221fba Adds voucher form to registration amendment 2016-09-03 15:53:54 +10:00
Christopher Neugebauer
b9ee438b89 Registration amendments are now limited the products that the user is allowed to add. 2016-09-03 15:43:04 +10:00
Christopher Neugebauer
1152e185d1 Staff can now check out an invoice for a user 2016-09-03 15:16:46 +10:00
Christopher Neugebauer
c2065dd4b9 The form can now amend a user’s registration. 2016-09-03 15:08:44 +10:00
Christopher Neugebauer
84c40a1e1f Refactors ItemController, add items_released 2016-09-03 15:08:25 +10:00
Christopher Neugebauer
83b8b62d74 Attendee view now uses user_id, like the rest of the app 2016-09-03 14:24:58 +10:00
Christopher Neugebauer
897915f121 Adds the amend_registration view, which currently can display all of the products that the user has added to their current cart, and not much else. 2016-09-03 14:22:32 +10:00
Christopher Neugebauer
f3a08a82bb Shows the attendee’s name in the attendee list. 2016-09-03 12:45:21 +10:00
Christopher Neugebauer
4dbe69574c Adds report that tracks the free money in the system
Fixes #52
2016-09-03 12:17:39 +10:00
Christopher Neugebauer
96e691c5dd Tidies up reporting URLs 2016-09-03 12:16:52 +10:00
Christopher Neugebauer
da42bb2bac Shows all the payments an attendee has made.
Fixes #66
2016-09-03 11:51:12 +10:00
Christopher Neugebauer
1e6c90163d Fixes #64 2016-09-03 11:46:24 +10:00
Christopher Neugebauer
cdc6e229dc Etc (squash. srsly) 2016-09-03 11:31:39 +10:00
Christopher Neugebauer
0329ee7bb2 Amends test to test *both* paths for validating invoices. 2016-09-03 11:11:44 +10:00
Christopher Neugebauer
5a7819b0d7 Test for issue 64 2016-09-03 11:07:46 +10:00
Christopher Neugebauer
e7556b02b7 Fixes a minor oops 2016-09-02 16:14:58 +10:00
Christopher Neugebauer
5b03ae8ff6 Fixes credit note bug 2016-09-02 16:03:29 +10:00
Christopher Neugebauer
964fe380da Attendee manifest page now reports the items a user has pending and purchased. 2016-09-02 15:57:44 +10:00
Christopher Neugebauer
68aa9b067b Factors items_pending and items_purchased into ItemController 2016-09-02 15:57:20 +10:00
Christopher Neugebauer
17fc874212 Attendee manifest now displays credit notes. 2016-09-02 15:43:01 +10:00
Christopher Neugebauer
d58b2811f9 Makes the attendee list work better. 2016-09-02 15:37:57 +10:00
Christopher Neugebauer
e27e322c41 Adds the attendee list and stubs the attendee manifest reports 2016-09-02 15:15:15 +10:00
Christopher Neugebauer
48a036204d Reporting framework can now display multiple sections. 2016-09-02 15:14:54 +10:00
Christopher Neugebauer
25608b1653 Moves reports forms into reporting sub package 2016-09-02 14:33:23 +10:00
Christopher Neugebauer
64ca477cb8 Fixes flake8 snafus 2016-09-02 11:43:27 +10:00