Commit graph

379 commits

Author SHA1 Message Date
Son NK
2b4dc3cdcc when a custom domain is default and has random_prefix_generation enabled, use the random_prefix as the first choice 2021-01-02 18:17:53 +01:00
Son NK
c252665e46 flake8 2020-12-31 14:40:43 +01:00
Son NK
33dd6083c7 rename available_suffixes_more_info -> get_available_suffixes 2020-12-31 14:27:04 +01:00
Son NK
5a3b79b4cf replace available_suffixes by available_suffixes_more_info 2020-12-31 14:25:44 +01:00
Son NK
75d1b090cd rename default_random_alias_public_domain_id -> default_alias_public_domain_id 2020-12-31 14:14:56 +01:00
Son NK
b9d8f11f2d put the default domain to top 2020-12-31 13:59:03 +01:00
Son NK
b3d1085e0c fix test 2020-12-18 16:52:03 +01:00
Son NK
10f15f78c8 optimize import 2020-12-18 16:25:30 +01:00
Son NK
8111beb6ff refactoring test 2020-12-18 16:24:38 +01:00
Son NK
091ff3ad2c Add decode_text() 2020-12-18 10:43:06 +01:00
Son NK
3a8cdce650 Create should_disable 2020-12-16 18:50:09 +01:00
Son NK
6eaeb1fcf6 update coinbase webhook 2020-12-14 11:36:34 +01:00
Son NK
7094a0b694 remove unused var 2020-12-13 19:31:16 +01:00
Son NK
43a021dd88 send a reminder when a coinbase subscription is ending soon 2020-12-13 19:18:58 +01:00
Son NK
b00841f679 add /coinbase to handle Coinbase callback 2020-12-13 19:18:23 +01:00
Son Nguyen Kim
bf139f83b3
Merge pull request #342 from herrboyer/linting
Linting
2020-12-07 17:45:50 +01:00
Renaud Boyer
5d948faf56 black 2020-12-06 22:11:58 +01:00
Son NK
ce2d68a64d take into account include_sender_in_reverse_alias when creating reverse-alias 2020-12-06 19:37:20 +01:00
Renaud Boyer
0d535c8765 linting 2020-12-06 17:54:54 +01:00
Renaud Boyer
6945cb633d linting 2020-12-06 17:49:26 +01:00
Renaud Boyer
079e548ab7 linting 2020-12-06 17:48:24 +01:00
Renaud Boyer
7bcc72cc02 linting 2020-12-06 17:47:37 +01:00
Renaud Boyer
f360488eca linting 2020-12-06 17:47:05 +01:00
Renaud Boyer
0f48121fd5 linting 2020-12-06 17:46:10 +01:00
Renaud Boyer
d88aeeab7f linting 2020-12-06 17:45:07 +01:00
Renaud Boyer
6b416bcbbe linting 2020-12-06 14:51:13 +01:00
Renaud Boyer
99b4fc9625 linting 2020-12-06 14:13:20 +01:00
Renaud Boyer
57ef3ac35c linting 2020-12-06 14:10:13 +01:00
Renaud Boyer
419051cdd5 linting 2020-12-06 14:05:38 +01:00
Renaud Boyer
f746d17a02 linting 2020-12-06 14:05:00 +01:00
Son NK
cefa68d392 Create replace() in email_utils 2020-11-30 15:15:13 +01:00
Son NK
0b95ca33b8 use no encoding for 8bit and binary 2020-11-30 10:49:04 +01:00
Son NK
f804332c2d refactor: create EmailEncoding enum 2020-11-30 10:48:16 +01:00
Son NK
d61f45ea86 use 7bit as default encoding 2020-11-26 17:22:17 +01:00
Son NK
e2a7061429 add get_encoding() and encode_text() 2020-11-26 17:01:05 +01:00
Son NK
609d59d23f improve logging 2020-11-25 15:20:00 +01:00
Son NK
bcdf522174 create normalize_reply_email(): handle case where reply email contains space, quote, etc 2020-11-22 13:07:09 +01:00
Son NK
a1d5b01143 make sure mailbox email is valid 2020-11-22 12:18:31 +01:00
Son NK
824a610aa6 refactor test_mailbox 2020-11-22 12:15:32 +01:00
Son NK
f069d2f083 use getaddresses to parse multiple address from To, CC header. Remove get_addrs_from_header() 2020-11-21 19:15:02 +01:00
Son NK
78ddf16c87 make sure alias name does not contain a linebreak 2020-11-20 18:39:23 +01:00
Son NK
c25a5b50f6 make sure reply_email only contain lowercase 2020-11-20 10:03:40 +01:00
Son NK
75c3fa1c11 make sure reply-email only uses ascii-encoded char 2020-11-18 15:36:39 +01:00
Son NK
5b9dc88c67 make sure alias prefix cannot be more than 40 chars 2020-11-18 10:38:35 +01:00
Son NK
319078fceb use contact email when generating reply-email 2020-11-18 10:24:39 +01:00
Son NK
e06c872bc0 add test for get_addrs_from_header() 2020-11-18 10:04:23 +01:00
Son NK
145fc9c67c Add reverse_alias_address to GET /api/aliases/:alias_id/activities 2020-11-17 09:27:30 +01:00
Son NK
aada12f17e return reverse_alias_address in POST /api/aliases/:alias_id/contacts and GET /api/aliases/:alias_id/contacts 2020-11-16 19:39:00 +01:00
Son NK
9154b4656d refactor: create is_reply_email() 2020-11-16 19:22:19 +01:00
Son NK
75ba1669e0 Create generate_reply_email() and refactor 2020-11-16 19:15:09 +01:00
Son NK
15a6d9630a Handle sender_format in PATCH /api/setting 2020-11-15 19:43:37 +01:00
Son NK
c794e73abd Add EnumE.has_name(), EnumE.get_value() 2020-11-15 19:43:01 +01:00
Son NK
f0f81930bc Return "sender_format" in GET /api/setting 2020-11-15 19:35:07 +01:00
Son NK
dec7969ead add tests.utils.pretty() 2020-11-15 19:34:13 +01:00
Son NK
d8c9078708 Add EnumE.get_name() 2020-11-15 19:34:00 +01:00
Son NK
aee917a3ef Add GET /api/custom_domains/:custom_domain_id/trash 2020-11-15 19:24:54 +01:00
Son NK
de495b9afe return nb_alias in GET /api/custom_domains 2020-11-15 19:13:00 +01:00
Son NK
9d24b1b88a GET /api/custom_domains 2020-11-15 19:09:25 +01:00
Son NK
f6568aca6a Return pinned in GET /api/aliases/:alias_id, GET /api/v2/aliases 2020-11-15 19:01:11 +01:00
Son NK
ae05c164c9 Support pinned in PATCH /api/aliases/:alias_id 2020-11-15 18:46:27 +01:00
Son NK
6c7018dd33 Take into account pinned alias in get_alias_infos_with_pagination_v3 2020-11-15 18:42:29 +01:00
Son NK
9cfb6d412a Add /api/v5/alias/options 2020-11-14 16:45:22 +01:00
Son NK
f452c79aec Add /v2/setting/domains 2020-11-14 16:37:36 +01:00
Son NK
632a5bbbc8 handle UnicodeEncodeError in copy() and to_bytes() 2020-11-10 16:02:19 +01:00
Son NK
e659680875 add_header() 2020-11-07 13:00:12 +01:00
Son NK
8b356eef01 remove a test that can randomly fail 2020-11-05 10:48:32 +01:00
Son NK
f4f2db0f04 use the same error structure in apple endpoints 2020-11-03 16:13:10 +01:00
Son NK
6e0394d980 fix filter not working when alias has several mailboxes 2020-11-03 15:10:57 +01:00
Son NK
4b8a2a1851 add tests for sign_data 2020-11-03 13:30:13 +01:00
Son NK
4b6368b378 make sure only verified mailbox can be used as default 2020-11-03 12:43:01 +01:00
Son NK
19ac657c1c add GET /api/v2/mailboxes 2020-11-03 12:14:13 +01:00
Son NK
5ee74c74b6 do not use url_for() in api tests 2020-11-03 12:07:48 +01:00
Son NK
273537e7ae use same mailbox format for "POST /api/mailboxes" and "GET /api/mailboxes" 2020-11-03 11:22:01 +01:00
Son NK
a989545505 make sure alias contact address is valid 2020-11-03 11:13:43 +01:00
Son NK
751cc05534 check contact address in POST /aliases/<int:alias_id>/contacts 2020-11-03 11:10:32 +01:00
Son NK
72a34e28be add is_valid_email() 2020-11-03 11:09:37 +01:00
Son NK
a890557c7f Use check_alias_prefix() to check alias prefix 2020-11-03 10:39:08 +01:00
Son NK
ec1b7dd8b8 return latest_activity=null if there's no activity in GET /api/v2/aliases 2020-11-01 12:32:20 +01:00
Son NK
92ea8de374 fix test name 2020-11-01 12:29:15 +01:00
Son NK
38ca2341bc fix mailbox query in get_alias_infos_with_pagination_v3 2020-11-01 12:24:19 +01:00
Son NK
c076c7c7f3 PATCH /api/setting 2020-10-28 17:47:26 +01:00
Son NK
12f7485cb1 Add GET /api/setting/domains 2020-10-28 17:30:57 +01:00
Son NK
77bf9537d0 Add GET /api/setting 2020-10-28 17:23:58 +01:00
Son NK
91534d3cf2 Add PATCH /api/user_info 2020-10-28 17:12:21 +01:00
Son NK
3f40e3c1cf return profile_picture_url in GET /user_info 2020-10-28 17:11:33 +01:00
Son NK
9210459a72 add pgpy
- add pgpy to poetry
- add test PGP keys to local_data
- add encrypt_file_with_pgpy()
- use randomly pgpy
2020-10-28 11:50:14 +01:00
Son NK
71be3b27f7 redirect user to dashboard when setup is done 2020-10-28 10:49:50 +01:00
Son NK
c6b6083c46 Revert "remove alias options v1,v2,v3 tests"
This reverts commit 8da14ca8ca.
2020-10-20 17:32:01 +02:00
Son NK
8da14ca8ca remove alias options v1,v2,v3 tests 2020-10-20 17:03:32 +02:00
Son NK
4a32db5b5d rename PublicDomain -> SLDomain 2020-10-15 16:51:07 +02:00
Son NK
adff510359 use PublicDomain instead if ALIAS_DOMAINS 2020-10-15 16:45:08 +02:00
Son NK
e79522b638 take into account Premium domains 2020-10-15 16:21:31 +02:00
Son NK
805e78cad1 rename email_belongs_to_alias_domains -> email_belongs_to_default_domains 2020-10-14 18:46:05 +02:00
Son NK
8dbd3c1c68 more detailed error message when an alias can't be created 2020-10-09 11:48:52 +02:00
Son NK
859bc7976e create create-alias tests when alias is already existed 2020-10-09 11:37:56 +02:00
Sylvia van Os
d8ed1cbbc3 Dedupe email address 2020-10-01 21:35:11 +02:00
Son NK
063885ccf7 Add get_mailbox_from_mail_from() 2020-09-28 17:41:16 +02:00
Son NK
d6d686c4c3 add argument commit= to create() 2020-09-28 17:40:30 +02:00
Son NK
fdedc24358 black new version 2020-08-27 10:20:48 +02:00
Son NK
17c7303fb5 add get_header_from_bounce() 2020-08-24 10:17:22 +02:00
Son NK
77bfa67402 fix delete_alias: do not use IntegrityError 2020-08-23 20:17:50 +02:00
Son NK
2f00294ba3 replace pgp_enabled by disable_pgp 2020-08-06 14:22:28 +02:00
Son NK
b3ca7d1d5b Return pgp_enabled in GET /api/v2/aliases 2020-08-04 20:11:59 +02:00
Son NK
03841693ba Return support_pgp in GET /api/v2/aliases 2020-08-04 20:09:42 +02:00
Son NK
d89e41d0e5 use user.max_spam_score if present 2020-07-23 11:11:43 +02:00
Son NK
d0776b770f add GET /api/logout 2020-07-04 12:10:04 +02:00
Son NK
0d3a3e0c48 Create POST /api/api_key 2020-07-04 11:41:31 +02:00
Son NK
5705842415 add email_utils.copy() 2020-06-12 00:02:07 +02:00
Son NK
dfe708b4fb return user email in /api/auth/mfa 2020-06-09 17:20:37 +02:00
Son NK
0002531bc0 return user email in /api/auth/login 2020-06-09 17:19:03 +02:00
Son NK
89f200fbc6 format 2020-06-03 21:32:37 +02:00
Son NK
9fc0748fcc Support setting alias name in POST /api/v3/alias/custom/new 2020-06-03 21:22:29 +02:00
Son NK
48dc0dd1cc change mailboxes to mailbox_ids 2020-06-02 20:06:32 +02:00
Son NK
d055989239 Create POST /api/v3/alias/custom/new 2020-06-02 09:33:56 +02:00
Son NK
48998ff07e return nb_alias in GET /mailboxes 2020-05-31 11:52:01 +02:00
Son NK
0530a8aab5 return creation_timestamp in GET /mailboxes 2020-05-31 11:49:53 +02:00
Son NK
78d9a88328 Add default field to GET /api/mailboxes 2020-05-27 14:18:20 +02:00
Son NK
1e03f26cfa Return whether there's more notification in GET /api/notifications 2020-05-23 22:51:00 +02:00
Son NK
dae357dd6b Add GET /api/notifications, /api/notifications/:notification_id 2020-05-23 19:54:06 +02:00
Son NK
6280512adf move get mailboxes to mailbox.py 2020-05-23 16:46:10 +02:00
Son NK
3eb6700232 user can cancel mailbox email change 2020-05-23 16:43:48 +02:00
Son NK
2f087de061 can update mailbox email 2020-05-23 16:40:28 +02:00
Son NK
a76ad0485f PUT /api/mailboxes/:mailbox_id: update mailbox 2020-05-23 16:26:26 +02:00
Son NK
5ae39c85c6 Add DELETE /api/mailboxes/:mailbox_id 2020-05-23 16:18:12 +02:00
Son NK
722bff319e add POST /api/mailboxes: create a new mailbox 2020-05-23 16:17:42 +02:00
Son NK
2fbc2c171b check domain trash when creating custom alias in api 2020-05-23 12:02:01 +02:00
Son NK
b167297808 Support disable_pgp in update alias endpoint 2020-05-16 20:51:07 +02:00
Sibren Vasse
a5f24e0227 Add more From: sender formatting options 2020-05-16 18:44:31 +02:00
Son NK
362d101bab Merge branch 'master' into multiple-mailboxes
# Conflicts:
#	app/dashboard/templates/dashboard/custom_alias.html
#	email_handler.py
#	templates/emails/com/newsletter/mobile-darkmode.html
2020-05-16 11:28:25 +02:00
Son NK
2978bfb281 Fix user cannot change personal email back and better naming.
Happens when user
- changes their personal email
- wants to change back: they can't as this email is already used as mailbox
2020-05-15 23:18:30 +02:00
Son NK
aba0a534c0 When a mailbox is deleted, only put alias that has this mailbox as single mailbox to global trash 2020-05-15 16:47:55 +02:00
Son NK
e52f2ca6de Support multiple mailboxes in custom alias page 2020-05-10 20:09:54 +02:00
Son NK
90dae2e3c8 Support mailbox_ids in PUT /api/aliases/:alias_id 2020-05-10 20:09:54 +02:00
Son NK
165d986561 add mailboxes to GET /api/v2/aliases 2020-05-10 20:09:54 +02:00
Son NK
53e04a8066 fix test 2020-05-10 10:42:18 +02:00
Son NK
b95b758692 Optimize imports 2020-05-09 20:49:38 +02:00
Son NK
d9f1fb9130 Create send_email_with_rate_control(): same as send_email() but with rate control 2020-05-09 20:43:17 +02:00
Son NK
753e82d490 Add DMARC 2020-05-03 12:01:31 +02:00
Son NK
c35fbf9797 fix test_encode_decode 2020-05-02 16:26:50 +02:00
Son NK
d32669f515 Add /api/v2/alias/custom/new 2020-05-02 16:22:17 +02:00
Son NK
72e9b52b29 Add /api/v4/alias/options 2020-05-02 16:21:18 +02:00
Son NK
9874422700 refactor custom_alias: create available_suffixes() 2020-05-02 12:34:11 +02:00
Son NK
0edcc25289 refactor verify_prefix_suffix: remove user_custom_domains param 2020-05-02 12:27:54 +02:00
Son NK
db92003e5f Anti tamper: avoid submitting any suffix 2020-05-02 12:15:03 +02:00
Son NK
ca2b177e02 fix test: use valid domain 2020-04-27 23:15:30 +02:00
Son NK
96d93c824a fix test 2020-04-27 20:22:25 +02:00
Son NK
63af3297f7 return alias name in GET /api/v2/aliases 2020-04-26 10:38:58 +02:00
Son NK
7a2fc007e8 Accept "name" in PUT /api/aliases/:alias_id 2020-04-26 10:38:16 +02:00
Son NK
a422f33323 Add GET /api/mailboxes 2020-04-25 23:42:56 +02:00
Son NK
88ddca54c1 return mailbox in GET /api/v2/aliases 2020-04-25 23:42:56 +02:00