Commit graph

44 commits

Author SHA1 Message Date
Robert Sparks 6dd6165444
fix: correct meeting attendance calculations (#4536)
* fix: correct meeting attendance calculations

* test: change meetingregistration factory defaults

* test: Setup stats tests to verify counts honor meeting.Attended

But the tests aren't actually looking to see what numbers get generated yet.

* test: add test for attendance cross-talk between meetings

* fix: limit attendance count query to single meeting

* refactor: rename attendance.online to .remote

* fix: only count a given person as onsite or remote, but never both

* test: align tests with cleanup

Co-authored-by: Jennifer Richards <jennifer@painless-security.com>
2022-10-13 10:55:57 -05:00
Ryan Cross 5b6695a04c
fix: save MeetingRegistration.checkedin as boolean value (#4446) 2022-09-14 09:55:08 -05:00
Ryan Cross a94a87f336
fix: remove test so all deleted or swapped (onsite<->remote) registrations get removed from MeetingRegistrations (#4359) 2022-08-25 10:00:04 -05:00
Ryan Cross 2d48c84360
feat: Add tracking checked-in to MeetingRegistration and the registration API. (#4280)
* feat: add field MeetingRegistration.checkedin to track onsite checkin

* feat: add handling of ticket_type, checkedin to get_meeting_registation_data. Fixes #3672
2022-07-26 13:17:19 -05:00
rpcross 698f031b7f
feat: separate MeetingRegistration rows for each registration type. updates the registration API (#3641)
* Registration API Update

- change MeetingRegistration.reg_type field to hold only one type
- allow multiple MeetingRegistration records per person/meeting
  (one for each reg_type)

* Fix scope claims

* Add meeting 114 to MeetingRegistration migration

* fix: update stats views for MeetingRegistration model use changes

* refactor: remove unused imports
2022-06-16 15:39:34 -05:00
Jennifer Richards 6f3fb6930f Add timeouts to requests library calls. Fixes #3498. Commit ready for merge.
- Legacy-Id: 19839
2022-01-13 15:06:28 +00:00
Ryan Cross c09baf47a5 Fix slow fetch_meeting_attendance command. Fixes #3304. Commit ready for merge
- Legacy-Id: 19429
2021-10-15 22:39:50 +00:00
Robert Sparks fe82f4d696 connect the new calculations to the UI. Clean flakes.
- Legacy-Id: 18974
2021-05-06 19:00:58 +00:00
Robert Sparks e3476f5bdb wrap the repair and report utilities in management commands
- Legacy-Id: 18973
2021-05-06 16:03:32 +00:00
Robert Sparks 216ec499df Checkpointing. Remaining work: convert meetingregistation fixup to a migration and a mgmt comment. Flesh out testing of 8989 rule 2 and fix the known edge case bug. Remove old implementation and connect UI to the new implementation.
- Legacy-Id: 18971
2021-05-01 19:57:04 +00:00
Robert Sparks 3697180cc1 Reverted merge of timezone-aware migration efforts.
- Legacy-Id: 18792
2021-01-12 16:54:20 +00:00
Henrik Levkowetz 774e752a54 Snapshot of timezone-aware datatracker code. Tests pass, and the test-crawler shows only expected differences. Trunk changes merged in up to r18768.
- Legacy-Id: 18770
2020-12-16 23:53:37 +00:00
Henrik Levkowetz 8a6026ce6e Added a MeetingRegistration.attended field, to keep apart meeting attendence and meeting registration before attendance.
- Legacy-Id: 17954
2020-06-09 20:58:35 +00:00
Henrik Levkowetz 59487f5627 Fixed an issue with multiple objects matching a registsration record fetched from the registration system (this has been caused by not correctly detecting changes in registration system details).
- Legacy-Id: 17953
2020-06-09 19:42:11 +00:00
Henrik Levkowetz ec5d159b4f Added a new API endpoint to be used by the registration system, to trigger account creation.
- Legacy-Id: 17941
2020-06-08 19:51:10 +00:00
Henrik Levkowetz 726fcbf27d Removed all __future__ imports.
- Legacy-Id: 17391
2020-03-05 23:53:42 +00:00
Henrik Levkowetz e03784132d Merged changes from current trunk to Py3 branch.
- Legacy-Id: 16468
2019-07-16 15:36:16 +00:00
Henrik Levkowetz a5e31c3f40 Py2/3 compatibility: Added __future__ import.
- Legacy-Id: 16452
2019-07-15 15:52:18 +00:00
Henrik Levkowetz a70c6d478b A fix for an issue in get_meeting_registration_data() which could happen if we tried to create a Person record for with a user of an existing Person.
- Legacy-Id: 16331
2019-06-29 00:02:30 +00:00
Henrik Levkowetz d7f5c84182 Initial 2to3 patch with added copyright statement updates.
- Legacy-Id: 16309
2019-06-27 14:40:54 +00:00
Henrik Levkowetz e4af908a74 Merged in [15698] from rjsparks@nostrum.com:
Notify the RFC Editor when an RFC Editor note is changed after a draft has been approved. Fixes #2440.
 - Legacy-Id: 15729
Note: SVN reference [15698] has been migrated to Git commit 43374969f6
2018-11-06 07:13:56 +00:00
Henrik Levkowetz 76303a9941 Fixed a pyflakes issue.
- Legacy-Id: 15725
2018-11-06 04:48:28 +00:00
Henrik Levkowetz 26535bf696 Took out some debug statements for a seldomly occurring condition (that now seem to be OBE)
- Legacy-Id: 15723
2018-11-06 04:20:39 +00:00
Henrik Levkowetz 6c3ec5b18e Added Email origin to Email record creation throughout the codebase.
- Legacy-Id: 15149
2018-05-17 16:56:26 +00:00
Henrik Levkowetz 5f37a71889 Added origin information to all places where we create email address entries.
- Legacy-Id: 15127
2018-05-05 12:40:30 +00:00
Henrik Levkowetz ddbd244421 Tweaked the meeting registratoin import to deal more gracefully with too long names and email addresses, and to fill in the total attendees number for the meeting.
- Legacy-Id: 14897
2018-03-21 23:30:45 +00:00
Henrik Levkowetz e29aa990a6 Tweaked a setting for better readability.
- Legacy-Id: 14840
2018-03-17 13:00:56 +00:00
Henrik Levkowetz 2c1438c240 Moved unidecode_name from utils.text to person.name.
Modified UserFactory to use a new locale for each new user, instead of the
same locale for a whole test run.  This (almost) ensures the exercise of
code to deal with non-ascii names, something which would not happen if a
locale with ascii names was chosen at the start of a run.

Modified name.initials() to not use non-word characters as initials.

Modified unidecode_name() to do more normalization, to conform to the
conventions used in internet-drafts.

Added saving of the factory-boy random state in order to be able to re-run
a test suite with the same pseudo-random sequence as in a previous failed
run.

Fixed an issue with email formatting in test_api_submit_ok().

Modified the draft author extraction code to deal better with names with
embedded apostrophes.
 - Legacy-Id: 14141
2017-09-20 15:36:30 +00:00
Henrik Levkowetz 33b275b04f Added ietf.utils.text.unidecode_name() and replaced various uses of unidecode() with it, in order to normalize the generation of ascii versions of names, to avoid different practices in space stripping and space normalization in different parts of the code.
- Legacy-Id: 14128
2017-09-17 15:12:18 +00:00
Henrik Levkowetz 7b1224ebad Merged in ^/personal/sbirkholz/meeting_registration_more_fixes, which adds creation of missing person records when importing meeting registration data. Tweaked the resulting code some.
- Legacy-Id: 14092
2017-08-31 18:48:53 +00:00
Ryan Cross 044b89169a Strip whitespace from registration data during import. Includes migration for existing data. Fixes #2356. Commit ready for merge.
- Legacy-Id: 14088
2017-08-29 19:58:32 +00:00
Seth Birkholz 8b5a639b82 This should be the final fix to
resolve the meeting registration problem where a Person object
 was not being created
 - Legacy-Id: 14076
2017-08-24 19:04:40 +00:00
Henrik Levkowetz 24273da256 Backed out commit 14000; the code is not idempotent and will create duplicate Person objects.
- Legacy-Id: 14004
2017-07-29 14:02:41 +00:00
Henrik Levkowetz 68abf06905 Merged ^/personal/sbirkholz/meeting_registration/@13969:
Added Person objects to a MeetingRegistration objects in ietf/stats/utils.py when importing meeting registrations in get_meeting_registration_data().
 - Legacy-Id: 14000
2017-07-29 10:34:32 +00:00
Seth Birkholz 6359192cbb Commit ready for merge. This commit implements fixes suggested by Henrik to the MeetingRegistration class
- added tests
    - reverted 'obj' to 'object'
    - removed check for valid email
    - identifing person by Email.person rather than Person.user__username
    - used a simpler form of unidecode logic.  TBD: the previous code was stolen from elsewhere in the code which should also be simplified.
    - Person.name now uses firstname + lastname rather than email.
 - Legacy-Id: 13969
2017-07-25 20:20:00 +00:00
Seth Birkholz bffc7114eb Added Person object to ietf/stats/utils.py in get_meeting_registration_data
- Legacy-Id: 13949
2017-07-19 16:48:28 +00:00
Henrik Levkowetz b6b45166bf Added email address to the MeetingRegistration model, and also to the fields imported from ietf.org/registration/attendees/NN . Changed the bin counting code for attendee-related stats to use names plus email as unique string, rather than only names.
- Legacy-Id: 13481
2017-05-31 23:08:23 +00:00
Ole Laursen a2b8819cfe Add meeting statistics - overview and country/continent across
meetings + detail pages with country and continent
 - Legacy-Id: 13264
2017-05-04 15:55:15 +00:00
Ole Laursen 8325ffa9de Add a script for keeping the meeting registration data in sync
- Legacy-Id: 13253
2017-04-28 12:33:21 +00:00
Ryan Cross 304d04e674 Add Registration migrations
- Legacy-Id: 13184
2017-04-04 22:06:17 +00:00
Ryan Cross 7fb035c061 Add Registration models
- Legacy-Id: 13182
2017-04-03 20:36:39 +00:00
Ole Laursen d5e98c9644 Add mail to link to Secretariat on country page in case people are
missing a country or alias, adjust wording a bit on status page.
 - Legacy-Id: 12866
2017-02-17 10:21:34 +00:00
Ole Laursen 9d8874d8b1 Add a suggestion to fix the country name when submitting a draft in
case we can't parse it and it's not empty, add page with list of
countries (to be able to refer people to it), add ISO codes as country
aliases - the country alias code is now more intelligent with respect
to case so it's easier to keep these aliases explicitly
 - Legacy-Id: 12862
2017-02-16 17:56:23 +00:00
Ole Laursen b2ff10b0f2 Add support for extracting the country line from the author addresses
to the draft parser (incorporating patch from trunk), store the
extracted country instead of trying to turn it into an ISO country
code, add country and continent name models and add initial data for
those, add helper function for cleaning the countries, add author
country and continent charts, move the affiliation models to
stats/models.py, fix a bunch of bugs.
 - Legacy-Id: 12846
2017-02-15 18:43:57 +00:00