62e48c6e6f
membershipworks: Use bulk upsert when scraping transactions
...
Ruff / ruff (push) Successful in 29s
Test / test (push) Successful in 3m9s
Instead of trying to do fiddly things with relative times, which turns
out not to work very well. This will break if anyone changes the sid
or timestamp of a transaction though (because of course
MembershipWorks allows editing those).
2024-09-02 12:50:08 -04:00
1255d0ddc6
membershipworks: Remove simple-history duplicates every hour
2024-08-29 21:45:56 -04:00
ee61451759
Convert from MariaDB to PostgreSQL
...
MariaDB has become far too annoying/buggy, and there are some neat
features only available in PostgreSQL
2024-08-29 21:45:56 -04:00
cc31f97bc4
membershipworks: Delete Events that don't exist in membershipworks during scrape
2024-08-14 16:58:27 -04:00
20fcac99a8
Apply Ruff's flake8-bugbear (B) rules
2024-08-09 01:47:32 -04:00
39df28743b
Apply a few more Ruff rules
...
- flake8-implicit-str-concat (ISC)
- flake8-quotes (Q)
- flake8-pie (PIE)
- flake8-logging (LOG)
2024-08-09 01:47:32 -04:00
ab25da0aa1
Apply Ruff's flake8-builtins (A) rules
2024-08-09 01:47:32 -04:00
654136d476
membershipworks: Don't create event meeting times where end <= start in sync
Ruff / ruff (push) Successful in 2m20s
Test / test (push) Successful in 5m55s
2024-06-12 07:58:04 -04:00
c03c5ff2f0
membershipworks: Use django.utils.timezone.now
instead of django.db.models.functions.Now
...
Ruff / ruff (push) Successful in 36s
Test / test (push) Successful in 4m32s
`Now()` produces incorrect results due to timezone mismatch, see
https://code.djangoproject.com/ticket/31638
2024-05-23 23:43:31 -04:00
eeb83388e1
Directly use q_task_group
name in django-q2 ensure_scheduled
helper
Ruff / ruff (push) Successful in 29s
Test / test (push) Successful in 3m55s
2024-05-23 23:23:35 -04:00
bd1e009cc2
membershipworks: Only send event survey emails to non-voided participants
Ruff / ruff (push) Successful in 28s
Test / test (push) Successful in 4m5s
2024-05-23 19:42:57 -04:00
350dc4e1ee
membershipworks: Inline event survey_url function
2024-05-23 19:41:57 -04:00
dcf483d19e
membershipworks: Automatically send survey emails to event attendees
Ruff / ruff (push) Successful in 29s
Test / test (push) Successful in 3m55s
2024-05-23 19:20:01 -04:00
0944dd7992
Fix various type issues
2024-05-04 18:03:22 -04:00
ee2d63f784
membershipworks: Add support for scraping event registration data
2024-05-03 12:37:48 -04:00
8961542d14
Use decorator to keep track of group names for django-q2 tasks
2024-02-01 11:10:22 -05:00
e10bcd5b49
membershipworks: Add storage and scraping for Event details
2024-01-29 21:48:19 -05:00
ee399e6b64
membershipworks: Use bulk_create for Event
...
Ruff / ruff (push) Successful in 21s
Work around for issues with GeneratedField. Also faster anyway.
2024-01-24 18:35:25 -05:00
4561e317b8
Enable/apply ruff's "flake6-simplify" rules
2024-01-19 15:16:47 -05:00
37cb41af1b
Enable ruff's "pylint" rules
2024-01-18 14:21:36 -05:00
3728442680
Enable/apply ruff's "perflint" rules
2024-01-18 14:21:36 -05:00
de0db9ac5a
Enable ruff's "comprehensions" rules
2024-01-18 14:21:36 -05:00
02777265b0
Switch from Black to Ruff for formatting, add linting/import sorting
2024-01-18 14:21:36 -05:00
8e4353c925
membershipworks/ucsAccounts: Don't set email if empty in MembershipWorks
2024-01-05 14:55:42 -05:00
188824d53b
membershipworks: Collapse sequential periods in ucsAccounts usernames
2024-01-05 14:39:33 -05:00
f5688e39c3
membershipworks: Scrape event data, with extension model for extra data
2023-12-30 14:36:21 -05:00
08dde9a4f4
membershipworks: Make MW api->model BaseModel more generic
2023-12-30 13:26:44 -05:00
dc648d6770
membershipworks: Move scrape task to 'tasks' submodule
2023-12-20 13:04:56 -05:00
d2f87fd37b
membershipworks: Add task to sync members with UCS users
...
UCS = Univention Corporate Server.
Ported from memberPlumbing
2023-12-04 11:27:04 -05:00