Adrià Casajús
dd2cfaea8b
Try to catch the race condidion when creating the user with a partner ( #2320 )
2024-11-14 09:54:13 +01:00
Adrià Casajús
813de9d40b
Fix: If the alias is created for a partner domain, mark it as partner created ( #2312 )
2024-11-08 12:04:28 +01:00
Carlos Quintana
a8ca2d3d37
revert: userid storing on deleted alias ( #2305 )
2024-11-06 11:24:54 +00:00
Carlos Quintana
31c8a766be
feat: preserve user id on alias deleted ( #2304 )
2024-11-06 09:16:54 +00:00
Adrià Casajús
7295a2052f
Mark if a verification code has been deleted ( #2290 )
2024-10-25 08:29:33 +00:00
Carlos Quintana
d65994c3c6
fix: missing None check on alias contacts api ( #2288 )
2024-10-24 07:50:35 +00:00
Adrià Casajús
ccd687f091
Add job to send events to webhook ( #2282 )
...
* Add job to send events to webhook
* Apply comments
---------
Co-authored-by: Carlos Quintana <74399022+cquintana92@users.noreply.github.com>
2024-10-23 17:01:32 +02:00
Adrià Casajús
9646f84b79
Only send new alias events on user creation ( #2285 )
...
* Only send new alias events on user creation
(cherry picked from commit ab8f998dd40dc83c8f8a528a156ba50eae376aaf)
* Trigger a sync when a new partner user is created
* Improve tests
* Move it to the partner_utils
---------
Co-authored-by: Carlos Quintana <74399022+cquintana92@users.noreply.github.com>
2024-10-23 11:18:03 +02:00
Carlos Quintana
f55ab58d0c
fix: prevent mailbox disclosure ( #2284 )
2024-10-23 10:24:15 +02:00
Carlos Quintana
1afd392e5c
fix: crash on empty mailbox email ( #2283 )
2024-10-22 10:06:20 +02:00
Carlos Quintana
67b3820f61
feat: audit log and admin panel improvements ( #2274 )
...
* feat: add deleted alias audit logs
* feat: emit event when user is created or password reset
* feat: improve admin panel
2024-10-18 13:32:26 +00:00
Carlos Quintana
06201a517c
fix: mailbox email change verification crash ( #2272 )
2024-10-18 09:45:18 +02:00
Adrià Casajús
3c13f1ce20
Have the dead letter also take events to avoid race conditions ( #2267 )
...
* Have the dead letter also take events to avoid race conditions
* Ensure we take the event
* Tests for event taken
* Rename
2024-10-17 09:16:33 +00:00
Carlos Quintana
2cd6ee777f
chore: emit some missing contact audit logs ( #2269 )
...
* chore: emit some missing contact audit logs
* chore: improve alias change mailboxes audit message
2024-10-17 09:55:04 +02:00
Carlos Quintana
35f6e67053
feat: user audit log ( #2266 )
...
* feat: set up UserAuditLog
* refactor: extract payment callbacks into their own files + handle subscription user_audit_log
* feat: handle account linking for user audit log
* chore: user_audit_log for mailboxes
* chore: user_audit_log for custom domains
* chore: user_audit_log for contacts
* chore: user_audit_log for directories
* fix: do not enforce cronjob being defined in choices + enable user deletion
* chore: user_audit_log for user deletion
* refactor: change emit_user_audit_log function to receive the full user object
* feat: add user_audit_log migration
* test: fix tests
* test: add some tests for user_audit_log
* fix: spf record verification user_audit_log
* chore: add missing index to user_audit_log.created_at
* chore: add missing index to alias_audit_log.created_at
2024-10-16 16:57:59 +02:00
Adrià Casajús
b8be0f470a
Remove old webhook to send plan changes and rely on events ( #2265 )
2024-10-15 11:01:26 +02:00
Carlos Quintana
4986ace59f
fix: emit mailboxes change event from alias_mailbox_utils ( #2264 )
2024-10-15 09:39:40 +02:00
Carlos Quintana
f3ca74d9b3
chore: unify change alias mailboxes logic ( #2262 )
2024-10-14 20:25:17 +02:00
Carlos Quintana
bdb0c8bd08
feat: alias audit log ( #2261 )
...
* feat: alias audit log
* feat: crontab to delete old alias_audit_log entries
* Unified messages
---------
Co-authored-by: Adrià Casajús <adria.casajus@proton.ch>
2024-10-14 12:45:00 +02:00
Carlos Quintana
b269ce81e6
fix: missing branch on get_alias_recipient_name ( #2254 )
...
* fix: missing branch on get_alias_recipient_name
* test: add test for missing else branch
2024-10-09 10:46:48 +02:00
Carlos Quintana
9bc0c7d24d
chore: extract alias recipient name into function ( #2252 )
2024-10-08 12:48:53 +02:00
Adrià Casajús
eac73c4e8b
On alias transfer send the proper events ( #2249 )
2024-10-04 13:17:59 +00:00
Carlos Quintana
9d5697b624
chore: DNS validation improvements ( #2248 )
...
* chore: DNS validation improvements
* fix: do not show domains pending deletion
* fix: generate verification token if null
* revert: dmarc cleanup
2024-10-03 13:04:17 +02:00
Adrià Casajús
06ab116476
Fix: Allow to create mailboxes for a custom domain if they are not sl domains ( #2236 )
2024-10-02 13:50:51 +00:00
Carlos Quintana
b97a1dd52c
fix: improve MX and SPF domain handling ( #2246 )
...
* fix: improve MX and SPF domain handling
* fix: do not use get_instance function
* fix: legacy use of tuples instead of MxRecord
* refactor: rename partner custom domain variables
2024-10-02 15:46:10 +02:00
Carlos Quintana
940db18383
chore: extract set_custom_domain_mailboxes from controller ( #2244 )
...
* chore: extract set_custom_domain_mailboxes from controller
* test: set_custom_domain_mailboxes
* feat: improve set_custom_domain_mailboxes performance
2024-10-01 11:25:00 +02:00
Adrià Casajús
b59ca3e47c
Move more contact creation logic to a single function ( #2234 )
...
* Move more contact creation logic to a single function
* Reordered parameters
* Fix invalid arguments
2024-09-27 16:04:32 +02:00
Adrià Casajús
38d377acb3
Extract contact creation logic to an external function ( #2228 )
...
* Extract contact creation logic to an external function
* PR comments
2024-09-20 10:11:57 +02:00
Carlos Quintana
b5866fa779
feat: allow to define partner records ( #2225 )
2024-09-18 12:12:42 +02:00
Carlos Quintana
f6708dd0b6
chore: refactor dns to improve testability ( #2224 )
...
* chore: refactor DNS client to its own class
* chore: adapt code calling DNS and add tests to it
* chore: refactor old dkim check not to clear flag
2024-09-17 16:15:10 +02:00
Carlos Quintana
065cc3db92
chore: refactor create custom domain ( #2221 )
...
* fix: scripts/new-migration to use poetry again
* chore: add migration to add custom_domain.partner_id
* chore: refactor create_custom_domain
* chore: allow to specify partner_id to custom_domain
* refactor: can_use_domain return cause
* refactor: remove intermediate result class
2024-09-17 10:30:55 +02:00
Adrià Casajús
5301d2410d
Send alias creation time in alias status change event also and rename some proto fields ( #2217 )
2024-09-13 14:25:38 +02:00
Adrià Casajús
486b6a7ad1
Send the alias creation time in the alias creation event ( #2216 )
2024-09-13 13:39:41 +02:00
Adrià Casajús
025d4feba0
Sync on partner user creation + several fixes ( #2214 )
...
* Do not close session since it leads to orphan user object
* Redirect instead of render to avoid having to have a mailbox object
* On inital partner link/login trigger sync
* Update github action upload/artifact to v4
* Remove sys.exit used to test script locally
* Simplified script to update alias flags and note
2024-09-12 16:58:20 +02:00
Adrià Casajús
b61a171de3
Add tests that all events have all the info we need ( #2211 )
...
* Add tests that all events have all the info we need
* Reorder
* Fix import
2024-09-10 11:05:24 +02:00
Adrià Casajús
80d1369bf9
Update tests
2024-08-05 11:54:44 +02:00
Adrià Casajús
ab26dd3cb4
Fix missing test
2024-08-02 17:57:54 +02:00
Adrià Casajús
4c035ca340
Return mailbox activation on mailbox creation
2024-08-02 14:53:46 +02:00
Adrià Casajús
ea138070fd
Added test to create mailbox without sending an email
2024-08-02 14:32:30 +02:00
Adrià Casajús
b0849bff6d
Allow to skip sending the mailbox verification email when creating a mailbox
2024-08-02 14:28:18 +02:00
Adrià Casajús
9b2e8c2e44
Use different errors when handling mailboxes ( #2178 )
...
* Use different errors when handling mailboxes
* Update test
2024-08-02 07:19:27 +00:00
Adrià Casajús
2478def834
Allow to create pre-verified mailboxes
2024-08-01 17:19:03 +02:00
Adrià Casajús
7b44226317
Fix invalid import
2024-07-30 18:11:57 +02:00
Adrià Casajús
b80e56a988
Move set default mailbox to settings ( #2173 )
2024-07-30 18:00:24 +02:00
Adrià Casajús
6faec9ba4d
Enforce user match on mailbox verification and improve logging ( #2172 )
2024-07-30 15:43:32 +02:00
Adrià Casajús
d11c2686b9
Move mailbox management to a module ( #2164 )
2024-07-30 13:36:48 +02:00
Adrià Casajús
127bb5b98c
Replace poetry with rye ( #2163 )
2024-07-25 16:18:49 +02:00
Adrià Casajús
666bf86441
Rename method to account for domain being a string and not an int ( #2161 )
2024-07-23 15:58:52 +00:00
Adrià Casajús
a7aec0c37a
Move set default domain for alias to an external function ( #2158 )
...
* Move set default alias to a separate method to reuse it
* Add tests
* Find domains by domain not by id
* Revert models and setting changes
* Remove non required function
2024-07-23 14:17:23 +00:00
Carlos Quintana
71ce0f6253
chore: add retry counter to event ( #2159 )
2024-07-23 14:11:16 +00:00