Commit graph

2124 commits

Author SHA1 Message Date
Son NK
4542a8353e add User.available_domains_for_random_alias(), default_random_alias_domain() 2020-07-04 23:24:32 +02:00
Son NK
955231199e Add User.default_random_alias_public_domain_id 2020-07-04 23:23:39 +02:00
Son NK
ee9b796b7d Add PublicDomain model 2020-07-04 23:18:11 +02:00
Son NK
4cd0227477 refactoring: move model methods below fields 2020-07-04 22:46:09 +02:00
Son NK
5ed39b47ca add setup-done page 2020-07-04 19:42:48 +02:00
Son NK
d59e9a6238 use warning level for apple server issue 2020-07-04 18:24:34 +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
5b3ec91300 login user in api auth endpoints 2020-07-04 10:39:38 +02:00
Son NK
df96773959 show nb paid user on referral page 2020-07-02 08:48:59 +02:00
Son NK
96ac15a3e0 add user.is_paid() and referral.nb_paid_user() 2020-07-02 08:48:37 +02:00
Son NK
40b4273111 take into account /verifyReceipt can return 5** 2020-06-30 20:10:12 +02:00
Son NK
c41bffbbae refactor: use SESSION_COOKIE_NAME instead of hardcoding "slapp" 2020-06-28 21:17:18 +02:00
Son NK
b23259cacd add Mailbox.nb_failed_checks 2020-06-28 11:17:36 +02:00
Son NK
ec0f5ccd3a only return verified mailbox in alias.mailboxes 2020-06-28 11:15:29 +02:00
Son NK
204f5f9a0c fix alias can be none in delete alias endpoint 2020-06-28 09:48:21 +02:00
Son NK
02bd45bc4a fix alias can be none in update alias endpoint 2020-06-28 09:48:21 +02:00
Son NK
b2f82ba4a8 use custom domain to generate a random alias if user enables this option 2020-06-25 13:05:25 +02:00
Son NK
abe9768db4 user can update the random alias domain 2020-06-25 13:04:27 +02:00
Son NK
040c6d1f9e add User.default_random_alias_domain_id 2020-06-25 13:02:43 +02:00
Son NK
c91b44fa97 set rate limit to 5/minute on new alias routes 2020-06-24 10:32:22 +02:00
Son NK
774ffcae3b enable CORS on /api endpoints 2020-06-24 10:30:01 +02:00
Son NK
45a8b360e4 handle case where alias is None 2020-06-19 23:44:16 +02:00
Son NK
ee6a1a672d fix POST /v2/alias/custom/new when DISABLE_ALIAS_SUFFIX is set 2020-06-15 23:35:20 +02:00
Son NK
1a22d0cf9b fix domain can be null in self-hosting
# Conflicts:
#	app/api/views/new_custom_alias.py
#	app/dashboard/views/custom_alias.py
2020-06-15 15:58:05 +02:00
Son NK
4906d3a4a8 add more logging in email_domain_can_be_used_as_mailbox 2020-06-14 12:00:02 +02:00
Son NK
5705842415 add email_utils.copy() 2020-06-12 00:02:07 +02:00
Son NK
1dc2e9c54f fix retry pgp 2020-06-12 00:01:21 +02:00
Son NK
4ee38823b8 make sure to strip and lower email 2020-06-11 23:35:24 +02:00
Son NK
cadbe7d32b order alias.mailboxes 2020-06-10 22:32:00 +02:00
Son NK
9e2f1c5f9f try to load the public key if encrypt fails for 1st time 2020-06-10 22:28:15 +02:00
Son NK
d0c65ea378 send transactional email from SENDER if set 2020-06-10 13:55:47 +02:00
Son NK
9abfa3e98c Add new param SENDER, SENDER_DIR 2020-06-10 13:54:42 +02:00
Son NK
b47d95226d generate html from plaintext if not set 2020-06-10 12:18:39 +02:00
Son NK
0c4e48c906 remove bounced_email param from send_email_with_rate_control 2020-06-10 12:17:04 +02:00
Son NK
da7b46ef97 remove bounced_email param from send_email 2020-06-10 12:15:57 +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
1101ba5afa add Mailbox.nb_email_log and aliases 2020-06-09 17:02:45 +02:00
Son NK
582a971b80 remove pgp retry mechanism 2020-06-08 23:05:35 +02:00
Son NK
e988573cb4 hard exit when memory is more than 300MB 2020-06-08 13:53:27 +02:00
Son NK
d85b32d56f prettify contact manager page 2020-06-07 13:41:59 +02:00
Son NK
08f4891492 use breadcrumb for contact header 2020-06-07 13:41:59 +02:00
Son NK
6cccb450b0 fix contact order on alias contact manager page 2020-06-07 13:41:59 +02:00
Son NK
7b2d86552b fix popup display when edit contact 2020-06-07 13:41:59 +02:00
Son NK
f708ee6bb2 improve wordings in alias contact manager page 2020-06-07 13:41:59 +02:00
Son NK
afe975b8c3 User can add PGP key to for a contact 2020-06-07 13:40:24 +02:00
Son NK
c593253c7d Add pgp_public_key,pgp_finger_print columns to Contact model 2020-06-07 13:40:24 +02:00
Son Nguyen Kim
49a81db951
Merge pull request #223 from simple-login/pgp-fix
Fix intermitten PGP errors
2020-06-07 13:38:37 +02:00
Son NK
ce4992c7fb check if alias exists 2020-06-07 12:50:30 +02:00
Son NK
16df2acb29 stop the email handler process when PGP error 2020-06-07 11:41:35 +02:00
Son NK
123f3583fd log memory usage in encrypt_file() 2020-06-07 10:23:36 +02:00
Son NK
c8cd066d25 try encrypt again if fail 2020-06-06 23:06:34 +02:00
Son NK
e5b60d9251 prettify directory page 2020-06-05 23:25:37 +02:00
Son NK
83e540d1d4 Create directory alias with directory mailboxes 2020-06-05 22:30:32 +02:00
Son NK
bc01479a72 user can update directory mailboxes 2020-06-05 22:13:35 +02:00
Son NK
18b530fe6f Able to set mailboxes when creating directory 2020-06-05 22:12:21 +02:00
Son NK
8161d89c39 Create DirectoryMailbox model 2020-06-05 22:08:08 +02:00
Son NK
9603683c18 log the failed encrypted content to debug 2020-06-05 10:10:21 +02:00
Son NK
50a7442d02 update notification email 2020-06-03 21:37:44 +02:00
Son NK
ecab3ea6ed take into account the case premium user obtains a lifetime license
- do not show subscription expired date
- show lifetime plan message on settings page
2020-06-03 21:32:15 +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
d76aad3f17 format 2020-06-03 20:05:05 +02:00
Son NK
89dd8663ce fix alias is None 2020-06-03 20:04:54 +02:00
Son NK
acac06188c fix mailbox.nb_alias(): take into account multiple mailboxes per alias case 2020-06-03 09:06:38 +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
b356ea1b28 force convert header to string, sometimes addrs is Header object 2020-06-01 21:14:23 +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
fa06c5cd4b make sure user cannot reuse the old password 2020-05-30 19:50:33 +02:00
Son Nguyen Kim
1e00ea300a
Merge pull request #214 from FozzieHi/reword
Reword some sentences.
2020-05-29 19:59:39 +02:00
George
a9460f120b
Change 2FA text 2020-05-29 13:51:56 +01:00
George
d10a993e9d
Fix typo 2020-05-29 13:46:50 +01:00
George
b9fd211acb
Fix lifetime user message 2020-05-29 13:46:06 +01:00
George
007768a5bb
User is able to view recovery codes. 2020-05-29 13:34:14 +01:00
George
c28484130b
Fix 2FA message 2020-05-29 13:33:14 +01:00
George
1c57dca4f3
Fix 2FA message 2020-05-29 13:32:55 +01:00
George
8635b37281
Add catch-all domains 2020-05-29 13:32:15 +01:00
George
9af4a6949a
Fix API key wording 2020-05-29 13:31:20 +01:00
Son NK
683b3e54d8 remove User.can_use_fido column: anyone can setup FIDO 2020-05-28 20:38:29 +02:00
George
a87f7e4be9
Change words 2020-05-27 21:53:48 +01:00
George
6f78802c0a
Rename text box requirements. 2020-05-27 21:52:45 +01:00
George
d9e29cc989
Reword 2FA page. 2020-05-27 19:49:13 +01:00
George
972f651eca
Reword pricing page. 2020-05-27 19:45:29 +01:00
George
aa8a8fafff
Change plan text. 2020-05-27 19:34:25 +01:00
Son NK
7a708ec41b Fix fido setup not working on Firefox
- disable form automatic submit when entering
- replace button by span to avoid automatic submit when clicking on the button on firefox
- check if key name is not empty
2020-05-27 20:28:31 +02:00
George
8c6cce9051
Change plan wording. 2020-05-27 19:04:16 +01:00
George
fd58557f19
Reword the settings page. 2020-05-27 18:48:05 +01:00
George
299e51cc08
Reword some sentences. 2020-05-27 18:23:33 +01:00
Son NK
78d9a88328 Add default field to GET /api/mailboxes 2020-05-27 14:18:20 +02:00
Son NK
2fb4b38e28 add alias.cannot_be_disabled 2020-05-27 14:11:32 +02:00
Son NK
eb6bfdd56f only show upgrade button to "free" lifetime user 2020-05-27 00:20:09 +02:00
Son NK
2f0a5aa429 add user.paid_lifetime column 2020-05-27 00:18:45 +02:00
Son NK
ba5d71dd75 Use FIRST_ALIAS_DOMAIN instead of EMAIL_DOMAIN when creating random alias 2020-05-26 09:07:36 +02:00
Son NK
62017592e1 Add ALIAS_DOMAINS config 2020-05-25 19:51:30 +02:00
Son Nguyen Kim
7d0ab3651f
Merge pull request #209 from SibrenVasse/rate_limit
Implement rate limiting
2020-05-25 12:18:19 +02:00
Sibren Vasse
31a1f94a5f Implement rate limiting 2020-05-25 11:39:33 +02:00
Son NK
b65328afe7 workaround browser cache for webauthn.js 2020-05-25 00:10:12 +02:00
Son NK
c68fad741b Improve how to use directory 2020-05-24 23:55:49 +02:00
Son NK
22c5513909 fix ForeignKeyViolation 2020-05-24 20:35:52 +02:00
Sibren Vasse
3c7e03f83d Add remember option to FIDO mfa path 2020-05-24 19:23:16 +02:00
Sibren Vasse
097ac771b0 Prevent OTP replay attacks by invalidating last token 2020-05-24 19:23:16 +02:00
Sibren Vasse
35bb1645a3 Allow user to disable mfa for browser for 30 days 2020-05-24 19:23:16 +02:00
Sibren Vasse
e15ab7f932 Add autofocus to login screen 2020-05-24 19:23:16 +02:00
Sibren Vasse
8c946d7026 Remove token when submitted value is incorrect 2020-05-24 19:23:16 +02:00
Son Nguyen Kim
eb60028b1f
Merge pull request #199 from developStorm/webauthn-multiple-keys
Support Multiple Keys for WebAuthn
2020-05-24 18:56:42 +02:00
Son NK
44fbffb679 add how to use for contact page 2020-05-23 23:21:00 +02:00
Son NK
0b1131a412 improve wording 2020-05-23 23:20:47 +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
c47fb44c1e Pagination for contact page 2020-05-23 22:34:46 +02:00
Son NK
b01c91423f display notifications. user can mark a notification as read. 2020-05-23 19:54:06 +02:00
Son NK
dae357dd6b Add GET /api/notifications, /api/notifications/:notification_id 2020-05-23 19:54:06 +02:00
Son NK
a2e7de0bab Add Notification model 2020-05-23 19:54:06 +02:00
Son NK
dfb427e6da format 2020-05-23 19:50:36 +02:00
Son NK
9bb17533c1 no need to check for deletedAlias when changing mailbox or user email 2020-05-23 19:50:04 +02:00
Son NK
adce27b88b Add DomainDeletedAlias.get_by check when creating custom alias 2020-05-23 19:49:40 +02:00
Son NK
605e8d1f23 Fix DomainDeletedAlias check in Alias.create 2020-05-23 19:48:45 +02:00
Son NK
a4f8dc9c9d Use AliasInTrashError instead of DeletedAlias.get_by check when trying to create alias automatically 2020-05-23 19:45:26 +02:00
Son NK
c73820920b check DomainDeletedAlias when creating new alias 2020-05-23 19:35:18 +02:00
Son NK
1d598252e7 format 2020-05-23 19:18:50 +02:00
Son NK
6fc380c0d9 remove unused imports 2020-05-23 19:18:35 +02:00
Son NK
42b3666f45 use the alias v2 format for GET /api/aliases/:alias_id, POST /api/v2/alias/custom/new, POST /api/v2/alias/random/new 2020-05-23 19:18:24 +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
95ae2ec254 Add migrate_domain_trash() to move deleted alias to the correct trash 2020-05-23 12:17:50 +02:00
Son NK
2fbc2c171b check domain trash when creating custom alias in api 2020-05-23 12:02:01 +02:00
Son NK
40ec9f44a4 check if an alias is domain trash before creating it 2020-05-23 11:51:35 +02:00
Son NK
17acaec214 save deleted alias to domain trash if it belongs to a custom domain, otherwise global trash 2020-05-23 11:49:34 +02:00
Son NK
a3ff19dac4 create custom domain trash page 2020-05-23 11:48:43 +02:00
Son NK
bad3c39921 Add DomainDeletedAlias to store all deleted aliases for a domain 2020-05-23 11:44:15 +02:00
Son NK
a512fbc6e5 use POSTFIX_PORT instead of 25 if it's set 2020-05-21 20:43:12 +02:00
Son NK
817e4e0f87 add POSTFIX_PORT param 2020-05-21 20:43:12 +02:00
Son NK
6cc8dd548c use warning level for "emails were sent to in the last 24h" error 2020-05-21 20:07:04 +02:00
Son NK
281331bc51 use warning level for "Alias creation time expired" error 2020-05-21 20:05:54 +02:00
Son NK
cb036f651d do not call lower() on signed_suffix 2020-05-20 18:23:13 +02:00
Son NK
32a9bd9095 make sure to use lowercase for mailbox email 2020-05-20 18:16:18 +02:00
Son NK
93d972df09 make sure to use lowercase for alias email 2020-05-20 18:12:14 +02:00
Son NK
2217805d8c no need to move alias to global trash when a domain is deleted 2020-05-20 10:16:55 +02:00
devStorm
4fd7bf40ab
use dt filter 2020-05-18 14:05:03 -07:00
devStorm
7bd97e13b0
fido_model -> fidos 2020-05-18 13:55:38 -07:00
devStorm
ea914e0378
Rename FIDO->Fido 2020-05-18 13:54:05 -07:00
devStorm
7d1a744fe2
typo 2020-05-18 13:47:42 -07:00
devStorm
5c3d2c19c8
module level and can be prefixed 2020-05-18 13:46:13 -07:00
devStorm
c0a751ff13
Put button inside the form 2020-05-18 13:45:02 -07:00
Son NK
300ece2440 pycharm format 2020-05-18 19:15:20 +02:00
Son NK
e22f5d1c63 Improve wordings 2020-05-18 19:14:52 +02:00
Son Nguyen Kim
484aca1342
Merge pull request #197 from SibrenVasse/remove-reply-string
Remove reply string
2020-05-18 19:09:43 +02:00
devStorm
0a59dd5638
Activate key on enter 2020-05-18 05:27:57 -07:00
devStorm
d91fbb563a
Remove debug keys 2020-05-18 05:11:54 -07:00
devStorm
45023cd775
Copywriting consistency 2020-05-18 05:10:19 -07:00
devStorm
b64ed7ad63
key management page 2020-05-18 05:07:06 -07:00
devStorm
6ea17b4feb
remove debug code for sudo 2020-05-18 03:03:14 -07:00
devStorm
6509053fa8
named key 2020-05-18 02:55:41 -07:00
devStorm
0cdd0b3b07
black 2020-05-18 02:15:52 -07:00
devStorm
f79eb90d2a
sudo mode 2020-05-18 02:14:40 -07:00
devStorm
35f0c094fe
black 2020-05-18 01:04:45 -07:00
devStorm
419aa95f1f
more verify 2020-05-18 01:02:58 -07:00
devStorm
ec91d280bb
Verify 2020-05-18 00:08:06 -07:00
devStorm
2b8febe0b9
black 2020-05-18 00:06:24 -07:00
devStorm
9fb91c83e7
more setup 2020-05-18 00:01:27 -07:00
devStorm
f2f6e13af7
DB & Setup ready for multi-keys 2020-05-17 22:05:37 -07:00
Sibren Vasse
e905e151ca Create user setting for replacing reverse alias (default: false) 2020-05-17 19:40:46 +02:00
Son Nguyen Kim
1997c207ed
Merge pull request #196 from SibrenVasse/error_handling
Move api error handling to global error handler
2020-05-17 18:02:23 +02:00
Sibren Vasse
2d7bd225e9 Move api error handling to global error handler 2020-05-17 15:27:24 +02:00
Son NK
12b76dd33b Merge branch 'master' into alias-disable-pgp 2020-05-17 10:46:44 +02:00
Son NK
87d52216cb reformat 2020-05-17 10:35:11 +02:00
Son NK
20e66edbaa fix redirection to next page 2020-05-17 10:28:00 +02:00
Son NK
2e208ed505 display recovery code options on mfa and fido page 2020-05-17 10:27:20 +02:00
Son NK
da4e0bf384 create /auth/recovery page 2020-05-17 10:17:52 +02:00
Son NK
043ecd4fac redirect user to recovery codes page after MFA setup. Remove all recovery codes when user is no more MFA. 2020-05-17 10:11:38 +02:00
Son NK
3f7842ed3e create /recovery_code page 2020-05-17 10:05:55 +02:00
Son NK
aaa1a869ea add RecoveryCode model 2020-05-17 09:59:07 +02:00
Son NK
13bb9810b6 use can disable PGP on an alias 2020-05-16 20:51:07 +02:00
Son NK
5e6454e6de use a different class for alias toggle 2020-05-16 20:51:07 +02:00
Son NK
b167297808 Support disable_pgp in update alias endpoint 2020-05-16 20:51:07 +02:00
Son NK
95213b6d85 Add alias.disable_pgp column 2020-05-16 20:51:07 +02:00
Son NK
62ed7def00 fix wording 2020-05-16 20:50:27 +02:00
Sibren Vasse
a5f24e0227 Add more From: sender formatting options 2020-05-16 18:44:31 +02:00
Son NK
a4d17e7afc use multiple-select instead of bootstrap-select 2020-05-16 12:17:26 +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 Nguyen Kim
d97b52184e
Merge pull request #186 from SibrenVasse/dark_flash
Frontend improvements
2020-05-15 23:37:30 +02:00
Son NK
7ed77a66b2 format 2020-05-15 23:18:42 +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
ff1aa72b1d lazy load alias._mailboxes and alias.mailbox 2020-05-15 16:46:02 +02:00
Son NK
0b652cf3f8 remove AliasMailbox.user_id column 2020-05-15 16:35:57 +02:00
Son NK
355b4dc2cf remove too verbose log 2020-05-15 15:30:19 +02:00
Sibren Vasse
012bc52694 Fix formatting 2020-05-15 13:42:48 +02:00
Sibren Vasse
e44d92705c Add missing last_page check (index) Move disabled class to correct element (alias_log) 2020-05-15 13:42:48 +02:00
Sibren Vasse
cb269a1bbe Change pagination style 2020-05-15 13:42:48 +02:00
Son Nguyen Kim
4d87df01a3
Merge pull request #181 from developStorm/webauthn-patch-1
Auto activate WebAuthn authentication
2020-05-14 20:39:49 +02:00
Son Nguyen Kim
50cdbc2b74
Merge pull request #183 from simple-login/api-error
API Error handling for 404 and 500
2020-05-14 20:36:53 +02:00
Son Nguyen Kim
2def79e689
Merge pull request #187 from SibrenVasse/domain_check
On domain check fail, update database
2020-05-14 20:36:02 +02:00
Sibren Vasse
c7530947d3 On domain check fail, update database 2020-05-14 15:05:04 +02:00
Son NK
3a1af9f424 fall back for UnicodeDecodeError 2020-05-14 13:27:04 +02:00
Son NK
ee19957d5d Add 405 error 2020-05-13 23:28:00 +02:00
Son NK
5c8c741a6a API Error handling for 404 and 500 2020-05-13 22:02:38 +02:00
Son NK
e6c37cad0b Handle case where data["receipt"]["in_app"] is empty 2020-05-13 21:41:34 +02:00
Son NK
2b71fee712 use warning log level for "No existing AppleSub" error 2020-05-13 21:38:25 +02:00
devStorm
a9967c9a4d
Auto activate WebAuthn authentication 2020-05-11 19:17:51 -07:00
Son NK
591fee301e prettify dns page 2020-05-11 23:23:08 +02:00
Son NK
70e842789e make pages compatible with dark-theme 2020-05-11 23:22:15 +02:00
Son NK
cbfeee4e28 display list of mailboxes in alias contact manager 2020-05-10 20:09:54 +02:00
Son NK
8f35290a21 fix overflow error when there are several mailboxes 2020-05-10 20:09:54 +02:00
Son NK
bc55b98e12 display mailbox that a bounce affects 2020-05-10 20:09:54 +02:00
Son NK
0f09ef681c Add EmailLog.bounced_mailbox_id 2020-05-10 20:09:54 +02:00
Son NK
4b479defa8 Support alias having multiple mailboxes in forward phase 2020-05-10 20:09:54 +02:00
Son NK
e704497b0f make sure prefix is not empty before submitting 2020-05-10 20:09:54 +02:00
Son NK
e52f2ca6de Support multiple mailboxes in custom alias page 2020-05-10 20:09:54 +02:00
Son NK
b375f87d2c User can update multiple mailboxes 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
684e8983ef Add AliasMailbox table 2020-05-10 20:09:54 +02:00
Son NK
47430725a7 improve doc 2020-05-10 20:09:54 +02:00
Son Nguyen Kim
8535853730
Merge pull request #177 from simple-login/darkmode-2
Dark mode implementation
2020-05-10 20:09:14 +02:00
doanguyen
7ef78c991f Dark mode implementation
* Using CSS variable as a solution
* The new darkmode css is now live in another file so that upgarding
dashboard.css doesn't affect the darkmode itself
* Used a naive darkmode controller by client javascript. No persistance
state is stored in the backend at the moment
2020-05-10 16:52:14 +02:00
Son NK
92cd75f14a Add DISABLE_ONBOARDING param 2020-05-10 14:43:41 +02:00
Son NK
cde8452e5b Fix Google oauth_state KeyError 2020-05-10 11:34:32 +02:00
Son NK
9ddb8ff2d4 add more info to spf alert email. Set the max number of emails per 24h to 1 2020-05-10 10:37:56 +02:00
Son NK
ac6d1c1106 able to set nb max alert in send_email_with_rate_control 2020-05-10 10:34:39 +02:00
Son NK
8244fa01e7 only show advanced options when spf_available 2020-05-10 09:21:55 +02:00
Son NK
0bfd6b3ec7 remove deleted_alias page 2020-05-10 09:20:08 +02:00
Son NK
526df4ea09 fix DeletedALias 2020-05-09 23:39:57 +02:00
Son NK
06c1128ee6 reformat 2020-05-09 23:12:46 +02:00
Son NK
178515dbde alert user when spf fails 2020-05-09 23:00:30 +02:00
Son NK
4e4eda4efa display enforce-SPF option. Change wording. 2020-05-09 22:29:32 +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
7fdef16f37 add SentAlert model to keep track of alert emails sent to user 2020-05-09 20:40:36 +02:00
Son Nguyen Kim
b95d815e5c
Merge pull request #168 from simple-login/global-trash
Global trash
2020-05-09 18:08:51 +02:00
Son Nguyen Kim
5fa2a86f23
Merge pull request #170 from developStorm/webauthn-patch
🐛 WebAuthn bug fixes
2020-05-09 18:05:34 +02:00
Son Nguyen Kim
54b32be321
Merge pull request #174 from simple-login/spf-update
Spf update
2020-05-09 18:04:43 +02:00
Son Nguyen Kim
16d8737770
Merge pull request #171 from SibrenVasse/secure_cookie
Session cookie flags.
2020-05-09 18:03:15 +02:00
Son NK
295c2fd03f Hide the SPF toggle 2020-05-09 17:34:59 +02:00
Son NK
2d8f056e11 Fix wording 2020-05-09 17:26:26 +02:00
Son Nguyen Kim
e23887bb37
Merge pull request #164 from SibrenVasse/spf
Enforce SPF
2020-05-09 14:37:09 +02:00
Sibren Vasse
001079bdc5 Enforce SPF 2020-05-09 14:15:08 +02:00
Sibren Vasse
e7c3a127b8 Set samesite and secure attributes of session cookie. Enable strong session protection. 2020-05-09 14:13:37 +02:00
devStorm
d236f906ad
🐛 WebAuthn bug fixes
- User may not have name
- user_verification should be discouraged to work on iOS
2020-05-08 14:21:38 -07:00
Son NK
e68eab44b0 allow user who has TOTP enabled to continue using the mobile app 2020-05-08 20:23:13 +02:00
Son NK
75a28c53cf fix grammar mistake 2020-05-08 13:40:21 +02:00
Son NK
ad194c46f2 remove lifetime licence in pricing page 2020-05-08 12:38:42 +02:00
Son NK
cf35fe2646 Put all aliases belonging to a domain to global trash when the domain is deleted 2020-05-07 22:50:45 +02:00
Son NK
9898d85722 Put all aliases belonging to a directory to global trash when this directory is deleted 2020-05-07 22:42:39 +02:00
Son NK
7a1f944887 Put all aliases belonging to a mailbox to global trash when this mailbox is deleted 2020-05-07 22:40:53 +02:00
Son NK
0441e5e2a9 Remove DeletedAlias.user_id column 2020-05-07 22:40:30 +02:00
Son NK
5b4eafce50 fix formatting 2020-05-07 22:28:49 +02:00
Son NK
2f5a03dcad make sure to add alias into global trash when deleting it 2020-05-07 22:27:27 +02:00
Son NK
300f1d7032 Override Alias.create to check in global trash first 2020-05-07 22:23:36 +02:00
Son Nguyen Kim
18e50e4a28
Merge pull request #167 from simple-login/disable-social-login-signup
disable sign-up via social login
2020-05-07 22:02:08 +02:00
Son NK
ccb30a2def disable sign-up via social login 2020-05-07 22:01:14 +02:00
Son Nguyen Kim
a785e664e9
Merge pull request #165 from simple-login/same-mailbox-different-user
Same mailbox different user
2020-05-07 21:56:36 +02:00
Son NK
f929f23acc return 403 if user enables FIDO 2020-05-07 21:54:36 +02:00
Son NK
c85ea1538e Allow the same mailbox used by different user 2020-05-07 21:47:11 +02:00
Son NK
f8e896541d replace Mailbox.email unique constraint by (email, user_id) 2020-05-07 21:46:16 +02:00
Son NK
806f7016ae fix: wrongly set alias custom_domain when custom_domain is in EMAIL_ALIAS 2020-05-07 20:48:11 +02:00
Son NK
101ab408b2 black format 2020-05-07 18:01:12 +02:00
Son NK
4709237b92 only user with can_use_fido can use fido 2020-05-07 17:58:24 +02:00
Son NK
18d62a81d1 add User.can_use_fido 2020-05-07 17:56:25 +02:00
Son NK
84c529c867 optimize import 2020-05-07 17:49:29 +02:00
Son NK
fe1262686e black format 2020-05-07 17:48:44 +02:00
Son Nguyen Kim
e35fb631cf
Merge pull request #159 from developStorm/master
Implement WebAuthn
2020-05-07 17:47:06 +02:00
devStorm
2290a90b09
Use try-else 9b8340f3e0 (r421465450) 2020-05-07 05:41:34 -07:00
devStorm
b0c39635a5
Remove credential_id variable 2020-05-07 05:37:03 -07:00
devStorm
e4895b52a0
fix SITE_URL 2020-05-07 05:34:17 -07:00
devStorm
f7e3320242
model - fido_enabled 2020-05-07 05:32:52 -07:00
devStorm
9b8340f3e0
Black formatted 2020-05-07 02:53:28 -07:00
devStorm
0052dad13e
Do not show full error msg to user 2020-05-07 02:48:56 -07:00
devStorm
282cbe25a3
Calculate RP_ID in config 2020-05-07 02:39:30 -07:00
devStorm
c38b3c768c
fix SimpleLogin brand name 2020-05-07 02:34:19 -07:00
devStorm
3ab3f819b7
Make RP_ID a constant 2020-05-07 02:33:24 -07:00
devStorm
b8b1313db9
typo 'infomation' 2020-05-07 02:31:42 -07:00
Son NK
16de59a9f5 mailbox can be other user's email 2020-05-06 12:34:52 +02:00
Son NK
35b1972730 increase the expired alias creation session to 600 secs 2020-05-06 10:10:47 +02:00
Son NK
d9e9a54082 add more info in "alias expire" error 2020-05-06 10:09:17 +02:00
Son NK
e9d03d1d4b Handle the case where a deleted mailbox verification link is clicked 2020-05-06 10:06:05 +02:00
devStorm
ced02a8f20
remove debug code 2020-05-05 14:26:26 -07:00
devStorm
fc001cfc24
fix exception handling 2020-05-05 14:13:01 -07:00
devStorm
370b71ebd3
Setting page options 2020-05-05 05:28:27 -07:00
devStorm
9da6054ec0
Allow to use either OTP or FIDO for 2FA 2020-05-05 05:16:33 -07:00
devStorm
650d6e35f0
FIDO login middleware 2020-05-05 05:03:29 -07:00
Son NK
103418dff7 Strip off http:// or https:// prefix in domain 2020-05-05 12:46:32 +02:00
Son NK
3eb904c882 set max length for domain 2020-05-05 12:46:11 +02:00
devStorm
286b1143ca
Store sign count 2020-05-05 03:16:52 -07:00
devStorm
705941b8b8
Unlink security key 2020-05-05 02:20:52 -07:00
devStorm
a32b69078f
Key registration (Backend) 2020-05-05 01:58:42 -07:00
devStorm
3ce4dfb371
Security key setup page (front-end) 2020-05-05 01:32:49 -07:00
Sibren Vasse
0e4799030d Add default alias name to custom domain 2020-05-03 19:35:02 +02:00
Son NK
4ca6b02047 fix DKIM cname check 2020-05-03 12:48:42 +02:00
Son NK
753e82d490 Add DMARC 2020-05-03 12:01:31 +02:00
Son NK
a270987f70 Add CustomDomain.dmarc_verified column 2020-05-03 11:51:22 +02:00
Son NK
6a42673229 remove the copy button, use CNAME for DKIM 2020-05-03 11:19:14 +02:00
Son NK
625def2367 use 2-column layout for api key, domain, directory, mailbox 2020-05-03 10:48:21 +02:00
Son NK
8a147e36a7 create how-to-use section for api key, domain, directory, mailbox 2020-05-03 10:47:29 +02:00
Son NK
fe73005d49 fix referral display on mobile 2020-05-03 10:46:35 +02:00
Son NK
eff0eb9e32 can delete referral 2020-05-02 18:14:09 +02:00
Son NK
1667356742 User can update/create referral name 2020-05-02 18:11:10 +02:00
Son NK
3ce3a05c7b Add referral name 2020-05-02 18:08:05 +02:00
Son NK
62bec84900 Add obsolete warnings 2020-05-02 16:23:40 +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
abeb246b2c add alias suffix anti-tampering to oauth authorize 2020-05-02 12:50:19 +02:00
Son NK
9874422700 refactor custom_alias: create available_suffixes() 2020-05-02 12:34:11 +02:00
Son NK
c7ebee2118 Fix suggested_emails: only return enabled aliases 2020-05-02 12:28:44 +02:00
Son NK
8467d2b934 fix <select>: add "form-control" class on all <select> 2020-05-02 12:28:20 +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
9a4df685da remove referral section from Settings 2020-05-01 18:32:35 +02:00
Son NK
95a90a9979 use log warning for verifyReceipt 2020-05-01 18:31:06 +02:00
Son NK
ef58b935d4 remove unused code 2020-04-30 22:39:31 +02:00
Son NK
7277c30735 use bootbox instead of notie 2020-04-30 22:37:39 +02:00
Son NK
9be813b96d fix naming 2020-04-29 16:57:28 +02:00
Son NK
8ae51998f5 take into account MacApp 2020-04-29 15:50:06 +02:00
Son NK
9c60cd3d88 Add MACAPP_APPLE_API_SECRET param 2020-04-29 15:47:03 +02:00
Son NK
b750c6e011 prettify some pages 2020-04-28 20:25:40 +02:00
Son NK
0bb311464c remove custom-select as it's not displayed properly 2020-04-28 20:23:24 +02:00
Son NK
cc6293d698 Order mailbox by created order 2020-04-28 20:22:37 +02:00
Son NK
d46e8e52a4 Order directory by created order 2020-04-28 20:09:57 +02:00
Son NK
d453c83974 order api key by created order 2020-04-28 20:08:45 +02:00
Son NK
e1d8c55a66 add mention of MyDigiPassword to the 2FA app list 2020-04-28 19:52:18 +02:00
Son NK
6acbf2f8dc do not accept email without MX record 2020-04-27 23:08:34 +02:00
Son NK
96366ddcfa Deprecate social login, prettify some pages 2020-04-27 23:08:21 +02:00
Son NK
a069fe7b6a do not return error when user doesn't exist on forgot_password 2020-04-27 22:57:55 +02:00
Son NK
26a094469b remove logout.html 2020-04-27 22:56:44 +02:00
Son Nguyen Kim
af9e93ea30
Merge pull request #143 from simple-login/check-mx
Check MX record of email domain to see if it is disposed
2020-04-27 20:54:28 +02:00
Son NK
fd90811e85 Prettify alias contact manager 2020-04-27 19:58:55 +02:00
Son NK
acacab887e Check MX record of email domain to see if it is disposed 2020-04-27 18:17:50 +02:00
Son NK
01cc07b9fe change the general stats: display #alias, forward, reply, block 2020-04-27 09:30:08 +02:00
Son NK
23c17b8cff Fix filker reset when going to next page 2020-04-27 09:29:27 +02:00
Son NK
131a0473fd Move alias activity details into collapsed section 2020-04-26 18:53:00 +02:00
Son NK
76b4611bc2 Show global stats 2020-04-26 18:49:23 +02:00
Son NK
c350bca488 collapsible filters 2020-04-26 18:24:43 +02:00
Son NK
18d1b59845 add vuejs to package.json 2020-04-26 17:51:47 +02:00
Son NK
7b2e4da87f Support alias filter 2020-04-26 13:04:27 +02:00
Son NK
12714ae601 Add Only enabled alias sorting option 2020-04-26 12:31:10 +02:00
Son NK
4c64393df1 Add other sorting options: A-Z, Z-A, new-old, old-new 2020-04-26 12:25:12 +02:00
Son NK
7021fd650b User can update alias name 2020-04-26 10:41:08 +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
22bfb4082e add alias.name column 2020-04-26 10:37:40 +02:00
Son NK
04713eff3d show alias creation date in "more" section if not shown yet 2020-04-26 10:02:10 +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
Son NK
ee7e783f2a keep sort param when redirecting back to index 2020-04-25 15:31:20 +02:00
Son NK
a2666cc4fe remove "set-mailbox" form post 2020-04-25 15:30:19 +02:00
Son NK
1a081f87c4 Remove "set-note" post form 2020-04-25 15:28:25 +02:00
Son NK
fb9dc23529 remove form POST switch-email-forwarding 2020-04-25 15:26:07 +02:00
Son NK
bbcd4fc355 remove "trigger-email" 2020-04-25 15:21:35 +02:00
Son NK
af431c3d8b Handle alias can be None when deleting 2020-04-25 15:16:46 +02:00
Son NK
97544ac760 Update mailbox using ajax
refactor: return Mailbox in User.mailboxes()
2020-04-25 13:49:40 +02:00
Son NK
489153a750 Support update mailbox_id in PUT /aliases/:aliasID 2020-04-25 13:49:40 +02:00
Son NK
203eba9917 use Ajax for save note 2020-04-25 13:49:39 +02:00
Son NK
36aee86590 support sorting: Oldest Alias to Newest, 2020-04-25 13:49:39 +02:00
Son NK
ca6350cc27 optimize import in all files 2020-04-25 13:49:39 +02:00
Son NK
95b71435f9 refactoring: use get_alias_infos_with_pagination_v2 2020-04-25 13:49:39 +02:00
Son NK
72f3e47c3c remove show_intro_test_send_email, highlight from AliasInfo 2020-04-25 13:49:39 +02:00
Son NK
1c9d953044 add mailbox to AliasInfo 2020-04-25 13:49:39 +02:00
Son NK
5839c637f6 use pagination for alias 2020-04-25 13:49:39 +02:00
Son NK
4727249958 do not use alias_info.highlight 2020-04-25 13:49:39 +02:00
Son NK
6c1b39bc04 remove AliasInfo.latest_activity 2020-04-25 13:49:39 +02:00
Son NK
0c73a36773 disable/enable the send-email button when alias is enabled/disabled 2020-04-25 13:43:32 +02:00
Son NK
187d8c0ef2 put alias button to left, search to right 2020-04-25 13:43:14 +02:00
Son NK
f34b9f6ca6 Prettify alias page: use collapsible layout 2020-04-25 13:42:53 +02:00
Son NK
c61213fae9 use ajax to switch on/off alias 2020-04-25 13:42:53 +02:00
Son NK
48202e905f rename verify_api_key -> require_api_auth 2020-04-25 13:42:53 +02:00
Son NK
78e94da08c support user already authenticated in verify_api_key 2020-04-25 13:42:53 +02:00
Son NK
7d35baddd4 do not ask for confirmation when enable/disable alias 2020-04-24 09:47:25 +02:00
Son NK
ba105f076e Fix "new" badge appear on alias modification 2020-04-24 09:45:49 +02:00
Son NK
fc4572e9ba make logo a bit smaller 2020-04-24 09:43:26 +02:00
Son NK
6a67f7946f fix facebook might not return email 2020-04-24 09:17:21 +02:00
Son NK
734b104c27 remove text on registration waiting page 2020-04-23 22:10:14 +02:00
Son NK
7fff8f84d8 add more debug log 2020-04-21 20:17:43 +02:00
Son NK
318b47af36 Handle the case invalid input for /api/apple/update_notification 2020-04-21 15:54:43 +02:00
Son NK
e50b0d5da5 implement apple_update_notification 2020-04-21 09:34:16 +02:00
Son NK
15219f7021 Support Apple grace period 2020-04-20 23:31:25 +02:00
Son NK
04e7cc448e fix blocked -> block 2020-04-20 19:58:10 +02:00
Son NK
840f827b45 Handle the case "Restore Purchase" on another account 2020-04-19 23:13:43 +02:00
Son NK
b5b4fe2773 make sure original_transaction_id is unique 2020-04-19 23:13:07 +02:00
Son NK
d5e868e629 Fix apple payment 2020-04-19 22:54:21 +02:00
Son NK
34635bf854 use Log.error to know when /api/apple/update_notification is called 2020-04-19 16:06:37 +02:00
Son NK
bca1e227c7 Add /apple/update_notification to test Apple notif 2020-04-19 11:50:29 +02:00
Son NK
1bba38edb6 Add POST /apple/process_payment 2020-04-19 11:13:38 +02:00
Son NK
85fd4412ba take into account AppleSubscription in premium formula 2020-04-19 10:58:32 +02:00
Son NK
2a837f9213 remove user.is_cancel() 2020-04-19 10:54:15 +02:00
Son NK
f7f1e7f358 replace user.next_bill_date() by sub.next_bill_date.strftime("%Y-%m-%d") 2020-04-19 10:54:05 +02:00
Son NK
b0118e615a Add AppleSubscription model 2020-04-18 20:47:33 +02:00
Son NK
7b965e4121 Add APPLE_API_SECRET param 2020-04-18 20:47:11 +02:00
Son NK
cf016caa91 Refuse disposable emails in can_be_used_as_personal_email() 2020-04-16 09:43:14 +02:00
Son NK
6fa46042dc Add DISPOSABLE_FILE_PATH param 2020-04-16 09:42:34 +02:00
Son NK
746cd2eb66 Use FIRST_ALIAS_DOMAIN in directory and custom alias 2020-04-15 22:52:30 +02:00
Son NK
28101612db Use FIRST_ALIAS_DOMAIN to create first alias 2020-04-15 22:51:18 +02:00
Son NK
8ebc26f4e7 add FIRST_ALIAS_DOMAIN param 2020-04-15 22:36:50 +02:00
Son NK
a434413304 Add terms and condition mention in register page 2020-04-15 22:32:12 +02:00
Son NK
c17ecba202 add more logging 2020-04-15 21:34:22 +02:00
Son NK
3c9e6fc991 make sure to strip and lower email in input 2020-04-15 21:12:45 +02:00
Son NK
5f784d683a Prettify 2020-04-15 09:16:42 +02:00
Son NK
29c9295e01 set File.user_id to nullable to correspond to existing installation 2020-04-15 09:00:23 +02:00
Son NK
1410d5617f Fix code compatibility with 2x version 2020-04-14 22:42:20 +02:00
Son NK
6cfd534192 Add LOAD_PGP_EMAIL_HANDLER param. Load PGP keys if LOAD_PGP_EMAIL_HANDLER is set 2020-04-14 12:46:12 +02:00
Son NK
ed76a8ae8d reformat 2020-04-13 20:51:29 +02:00
Son NK
b838157ad5 User who has lifetime licence or giveaway manual subscriptions can decide to upgrade to a paid plan 2020-04-13 20:50:48 +02:00
Son NK
260ded14ea rename should_upgrade -> should_show_upgrade_button 2020-04-13 20:49:35 +02:00
Son NK
7beae4d846 Add ManualSubscription.is_giveaway column 2020-04-13 20:48:47 +02:00
Son NK
3d10fab3a6 Make sure to show intro to user only once 2020-04-13 13:23:17 +02:00
Son NK
dee6d4959d Add User.intro_shown column 2020-04-13 13:22:52 +02:00
Son NK
6f59e7ea37 Update pricing page 2020-04-12 20:15:02 +02:00
Son NK
e44860329b Make sure user cannot create more than 50 directories 2020-04-12 20:14:49 +02:00
Son NK
b041591133 Prettify Settings 2020-04-12 19:43:46 +02:00
Son NK
9b91f4a4a4 support changing plan 2020-04-12 19:43:07 +02:00
Son NK
076d9899ea rename 2020-04-12 19:27:14 +02:00
Son NK
70c294bee0 Remove lifetime licence mention for students/professors/... 2020-04-12 11:59:23 +02:00
Son NK
6e1ac4b0e8 Add copy to clipboard in DNS setting 2020-04-11 20:01:47 +02:00
Son NK
a0cdf3ae95 allow user having manual sub or canceled sub to upgrade to lifetime 2020-04-11 10:47:32 +02:00
Son NK
89c41f972c Add id to settings section 2020-04-09 23:01:29 +02:00
Son NK
bb2476203f User can create referrals 2020-04-09 22:39:39 +02:00
Son NK
8fc88b8253 Set referral when creating User 2020-04-09 22:22:26 +02:00
Son NK
cdf23d04fc Add Referral model 2020-04-09 22:20:06 +02:00
Son NK
a54ac0b3da Add LANDING_PAGE_URL param 2020-04-09 22:18:03 +02:00
Son NK
4789e439db rename auth_login to auth 2020-04-09 20:31:53 +02:00
Son NK
a548c84694 Make MAX_NB_EMAIL_FREE_PLAN available in all email templates 2020-04-08 23:06:56 +02:00
Son NK
5d0519ed86 Add GET /api/v2/aliases 2020-04-06 22:26:35 +02:00
Son NK
7ed317e334 Show alias creation date when no activity 2020-04-05 20:05:49 +02:00
Son NK
cfdaf659f9 Make UI more consistent 2020-04-05 19:59:48 +02:00
Son NK
b19dfc6ef4 Use forward/reply/blocked icon on alias page 2020-04-05 19:42:30 +02:00
Son NK
e83f11342d prettify alias activity page 2020-04-05 19:28:57 +02:00
Son NK
460c306712 Order alias by latest activity instead of alias creation date. Show the latest activity & contact 2020-04-05 19:03:17 +02:00
Son NK
af9178e216 Use non-beta logo 2020-04-05 18:58:22 +02:00
Son NK
bf0f8a913a remove AliasInfo.id 2020-04-05 16:57:47 +02:00
Son NK
b0c3634e72 use dataclass for AliasInfo, remove note 2020-04-05 16:57:28 +02:00
Son NK
67d6ce1cea rename 2020-04-05 16:33:43 +02:00
Son NK
425fdc66c6 Move methods to api/serializer.py 2020-04-05 16:32:38 +02:00
Son NK
f15488f96b refactor: move get_alias_infos_with_pagination, get_alias_info to alias.py 2020-04-05 16:21:13 +02:00
Son NK
2619333cc6 remove uses of website_from 2020-04-05 15:39:48 +02:00
Son NK
afceabeef5 add Contact.new_addr() 2020-04-05 15:21:04 +02:00
Son NK
d1e5b9f9b7 set contact name, use website_email instead of website_from in alias endpoint 2020-04-05 12:58:06 +02:00
Son NK
c686767d4d Fix parseaddr_unicode: take into account email only case 2020-04-05 12:56:17 +02:00
Son NK
6c68b3cda7 Fix website_send_to: prefer using name instead of website_from 2020-04-05 12:48:59 +02:00
Son NK
fbcac59c7f Set contact name when adding contact via contact manager 2020-04-05 12:29:00 +02:00
Son NK
9c22bf479a rename 2020-04-05 12:19:37 +02:00
Son NK
fa8e0aee45 Add contact.name column 2020-04-05 12:18:18 +02:00
Son NK
5fff1e86ce Add parseaddr_unicode() 2020-04-05 12:07:40 +02:00
Son NK
6258ef0c11 Only display website_email instead of website_from in contact manager, alias log and refused emails 2020-04-05 12:02:08 +02:00
Son NK
3baddc9206 rename 2020-04-04 20:04:42 +02:00
Son NK
f7e5ab1e34 reaname 2020-04-04 19:21:31 +02:00
Son NK
4d8040c80d Add reverse_alias to GET /api/aliases/:alias_id/activities 2020-04-04 19:18:07 +02:00
Son NK
1c5d6e3299 rename 2020-04-04 19:11:10 +02:00
Son NK
655090242e Fix greylog query 2020-04-04 18:07:05 +02:00
Son NK
eccc8a71e9 use MAX_ACTIVITY_DURING_MINUTE instead of MIN_TIME_BETWEEN_ACTIVITY 2020-04-04 17:22:27 +02:00
Son NK
8caebc0142 Return 421 when there's too much activity on an alias or mailbox 2020-04-04 16:27:22 +02:00
Son NK
c1f5c07d86 Move alias auto-creation to alias_utils 2020-04-04 15:24:27 +02:00
Son NK
0c2bce6931 Add PGP Encryption to pricing page 2020-04-03 23:39:27 +02:00
Son NK
58ca77e2ae Add browser extension onboarding email 2020-04-02 23:26:17 +02:00
Son NK
3550447a66 use BytesIO as input when encrypting 2020-04-02 21:30:36 +02:00
Son NK
55190ff358 use msg.as_bytes() instead of msg.as_string().encode() 2020-04-02 21:30:36 +02:00
Son NK
5ff8ae00e5 only lower the email part when creating new contact 2020-04-02 21:30:36 +02:00
Son NK
7f85ec30bd Improve contact manager: lowercase the contact address before adding 2020-04-01 20:31:47 +02:00
Son NK
9500cc6cee Take into account spamassassin spam report 2020-03-30 22:05:31 +02:00
Son NK
ca5e3ac477 Refactoring: better naming 2020-03-30 21:46:52 +02:00
Son NK
9563b706f2 Add EmailLog is_spam, spam_status column 2020-03-30 21:42:25 +02:00
Son NK
7c0e4b369a fix contact not highlighted after creation 2020-03-30 21:41:18 +02:00
Son NK
4c1c02db60 Add /v3/alias/options 2020-03-29 23:13:04 +02:00
Son NK
88d63bd931 add UNSUBSCRIBER config 2020-03-28 23:15:45 +01:00
Son NK
7f49312255 use user preferred sender format 2020-03-28 22:37:00 +01:00
Son NK
33fd40f6ce User can choose which sender format they prefer 2020-03-28 22:36:19 +01:00
Son NK
65ca7d2a71 add User.use_via_format_for_sender column 2020-03-28 22:35:29 +01:00
Son NK
aa3a13c3ca Replace To or CC header when forward/reply 2020-03-28 19:16:55 +01:00
Son NK
5b9f3c2763 add contact.is_cc column 2020-03-28 19:05:27 +01:00
Son NK
97dff83453 return full alias info in POST /api/alias/random/new 2020-03-26 19:50:22 +01:00
Son NK
d4a32451c1 return full alias info in POST /api/alias/custom/new 2020-03-26 19:48:36 +01:00
Son NK
159aa76aae GET /api/aliases/:alias_id 2020-03-26 19:44:00 +01:00
Son NK
78b24623af reformat: create serialize_alias_info() 2020-03-26 19:35:44 +01:00
Son NK
9e04081186 send mailbox onboarding email 2020-03-24 21:19:45 +01:00
Son NK
c02b8298fc send pgp onboarding email to user on 2nd day 2020-03-24 21:01:38 +01:00
Son NK
bf98fa00b7 Fix alias display 2020-03-22 23:30:55 +01:00
Son NK
86ef7f54d9 RefusedEmail.path can be null 2020-03-22 16:51:21 +01:00
Son NK
88039844ef remove "subject" from DKIM 2020-03-22 15:08:26 +01:00
Son NK
b8093aefa3 Handle invalid email when user signs up 2020-03-21 11:11:52 +01:00
Son NK
8abdf655fc make aliasUsedOn.user_id non nullable 2020-03-20 12:29:37 +01:00
Son NK
7d4a9efb5d set user_id when creating AliasUsedOn 2020-03-20 12:29:11 +01:00
Son NK
92de2102ad Add AliasUsedOn.user_id col 2020-03-20 12:13:00 +01:00
Son NK
5d0b4d4aca Fix: filter email log by current user 2020-03-20 11:39:45 +01:00
Son NK
783b1937d5 make user_id non nullable on contact, email_log and file 2020-03-20 10:17:52 +01:00
Son NK
6e54b4fed8 make sure to set user_id when creating contact 2020-03-20 09:54:38 +01:00
Son NK
abd2278c24 make sure to set File.user_id 2020-03-20 09:52:00 +01:00
Son NK
cd19997424 Add File.user_id, Contact.user_id, EmailLog.user_id columns 2020-03-20 09:51:15 +01:00
Son NK
a529943dc4 Only premium user can add PGP key 2020-03-19 19:15:42 +01:00
Son Nguyen Kim
44e2e175ef
Merge pull request #115 from simple-login/rename
Rename
2020-03-19 10:39:05 +01:00
Son NK
b0f2d7b85a always return 200 in /forgot_password 2020-03-18 21:55:50 +01:00
Son NK
a1fad2216f Improve error 2020-03-18 21:37:45 +01:00
Son NK
2079b16431 add "in_trial" to /user_info 2020-03-18 19:08:16 +01:00
Son NK
f2d5230449 Add POST /api/auth/forgot_password 2020-03-18 18:43:04 +01:00
Son NK
ba6b8d2711 return email in /user_info 2020-03-18 18:34:37 +01:00
Son NK
aaf254a26d order alias by creation date 2020-03-17 21:47:11 +01:00
Son NK
a521002b2c Fix duplicate results 2020-03-17 20:16:20 +01:00
Son NK
a465b1d3ca rename get_alias_info -> get_alias_infos 2020-03-17 19:59:48 +01:00
Son NK
fbef076a14 Take into account query in GET /api/aliases 2020-03-17 19:32:45 +01:00
Son NK
0d725588ae Add DELETE /api/contacts/:contact_id 2020-03-17 19:18:26 +01:00
Son NK
81b5e919a3 Return contact id 2020-03-17 12:38:50 +01:00
Son NK
ac27ea5847 Improve UI 2020-03-17 12:06:26 +01:00
Son NK
2d90d35647 rename gen_email_id -> alias_id 2020-03-17 12:01:18 +01:00
Son NK
4f281bdbbb rename GenEmail -> Alias, gen_email to alias whenever possible 2020-03-17 11:51:40 +01:00
Son NK
bea870ef8b rename ForwardEmailLog to EmailLog 2020-03-17 11:10:50 +01:00
Son NK
f2d630e597 rename forward_id to contact_id 2020-03-17 11:05:53 +01:00
Son NK
17974de746 rename ForwardEmail to Contact 2020-03-17 10:56:59 +01:00
Son Nguyen Kim
269bca8ff3
Merge pull request #114 from simple-login/pgp-for-everyone
Open PGP to everyone
2020-03-17 09:53:42 +01:00
Son NK
cc6e8a00a5 Wording: rename refused email to Quarantine 2020-03-17 09:43:12 +01:00
Son NK
ea43b8f685 Open PGP to everyone 2020-03-17 09:22:29 +01:00
Son NK
8faf34ce40 Use warning level for /v2/alias/options 2020-03-16 21:10:53 +01:00
Son Nguyen Kim
1e10b4d675
Merge pull request #113 from simple-login/fix-custom-domain-not-set
Fix custom domain not set
2020-03-15 23:38:25 +01:00
Son NK
ccc005b8b2 Do not set domain for ALIAS_DOMAINS 2020-03-15 23:33:50 +01:00
Son NK
93292c88c9 Fix not setting custom domain when creating alias via API 2020-03-15 23:18:43 +01:00
Son NK
ee1642bf99 use a more consistent format 2020-03-15 23:10:20 +01:00
Son NK
17f3c112b9 do not use formataddr to generate website email 2020-03-15 23:02:06 +01:00
Son NK
027cbb10d9 use parseaddr instead of get_email_part 2020-03-15 22:32:48 +01:00
Son NK
6b6fca2281 use email.utils.parseaddr and formataddr instead of get_email_name 2020-03-15 22:29:53 +01:00
Son NK
b19be41a5e Support download email file in browser 2020-03-15 18:39:59 +01:00
Son NK
eb3063a57f Improve wording 2020-03-15 18:06:57 +01:00
Son NK
45d560fd70 fix 2020-03-15 12:14:43 +01:00
Son NK
e21e27eefa Hide download for deleted refused emails 2020-03-15 11:14:58 +01:00
Son NK
71a9fc38a9 Add cronjob to delete refused emails 2020-03-15 11:11:16 +01:00
Son NK
a923d9ad6a Add refused_email.deleted column 2020-03-15 11:10:37 +01:00
Son NK
69198ff08a delete all unnecessary headers in PGP 2020-03-14 22:24:02 +01:00
Son NK
0bb9830680 Store the bounced email in email handling. 2020-03-14 16:34:23 +01:00
Son NK
c3b85115ca Add refused-email view 2020-03-14 16:19:56 +01:00
Son NK
0de13ca4d9 add RefusedEmail model 2020-03-14 16:07:34 +01:00
Son NK
28c6c68a80 Use a better mailbox validation page 2020-03-14 14:45:37 +01:00
Son NK
f87746e071 POST /api/aliases/:alias_id/contacts 2020-03-14 12:55:38 +01:00
Son NK
d7cb5ed26e GET /api/aliases/:alias_id/contacts 2020-03-14 12:22:43 +01:00
Son NK
bfd729b889 PUT /api/aliases/:alias_id 2020-03-14 11:38:39 +01:00
Son NK
a9fdfc799f Add LOCAL_FILE_UPLOAD param 2020-03-13 14:37:48 +01:00
Son NK
cf257a92ec use utf-8 for PGP 2020-03-13 12:54:52 +01:00
Son NK
e713efee98 reformat 2020-03-13 10:34:41 +01:00
Son NK
ab082a5f9b fix get_json returns 400 2020-03-11 14:02:35 +01:00
Son NK
1098f17c0c Support note in POST /api/alias/random/new 2020-03-11 12:24:30 +01:00
Son NK
aad06f73e9 Support note in POST /api/alias/custom/new 2020-03-11 12:23:43 +01:00
Son NK
417009b3be return note in GET /api/aliases 2020-03-11 12:16:45 +01:00
Son NK
9d25d099e1 use mailbox_already_used instead of email_already_used 2020-03-09 14:01:27 +01:00
Son NK
fefc8cab71 Merge branch 'master' into staging 2020-03-09 13:55:10 +01:00
Son Nguyen Kim
e4f3cb8e86
Merge pull request #102 from simple-login/cancel-sub
Cancel sub
2020-03-09 13:38:33 +01:00
Son NK
3be593ed09 prettify mailbox detail page 2020-03-09 13:35:32 +01:00
Son NK
86c1c8e54f fix button word-break: use flex 2020-03-09 10:42:58 +01:00
Son NK
3ef7285288 reduce logging level 2020-03-09 09:48:33 +01:00
Son NK
1c5c5896f8 Handle SMTPRecipientsRefused in send_email 2020-03-09 09:22:40 +01:00
Son NK
b05daecd28 Handle unsign can generate other exceptions 2020-03-09 09:17:40 +01:00
Son NK
aadda7cb0d handle the case new_email can be None if user cancels change in the meantime 2020-03-09 09:14:21 +01:00
Son NK
743170e983 Add more guide on mailbox detail 2020-03-09 09:09:22 +01:00
Son NK
c1c3224a41 Merge branch 'cancel-sub' into staging 2020-03-08 23:13:23 +01:00
Son NK
911c38710e Only user with can_use_pgp on can use GPG 2020-03-08 23:12:35 +01:00
Son NK
612e4f6717 encrypt forwarded emails to gpg-enabled mailbox 2020-03-08 23:07:23 +01:00
Son NK
5d5131f32c display 🗝 for PGP-enabled mailbox 2020-03-08 22:59:46 +01:00
Son NK
6200d4d1a0 redirect user to mailbox detail page when creating new mailbox 2020-03-08 22:59:19 +01:00
Son NK
76e30dfbe8 add User.can_use_pgp column 2020-03-08 13:07:03 +01:00
Son NK
486df7fefc set mailbox.pgp_finger_print when adding PGP key 2020-03-08 12:51:53 +01:00
Son NK
2eef010bad add pgp_utils 2020-03-08 12:51:33 +01:00
Son NK
24fd19d6d9 user can set/remove pgp key 2020-03-08 12:30:48 +01:00
Son NK
fbb5c0bf93 add pgp_public_key, pgp_finger_print to Mailbox model 2020-03-08 11:55:39 +01:00
Son NK
f905fa626c add GNUPGHOME config 2020-03-08 11:54:59 +01:00
Son NK
84f3d7c278 TODO: add next_bill_date check on active subscription next April 2020-03-08 11:36:09 +01:00
Son NK
08e6f89585 increase size on ForwardEmail columns 2020-03-08 11:33:54 +01:00
Son NK
1acbf173ea Handle subscription cancel directly 2020-03-08 10:28:13 +01:00
Son NK
aea717eafc add paddle_utils.cancel_subscription 2020-03-08 10:27:50 +01:00
Son NK
8aacd5e6da Add PADDLE_AUTH_CODE config 2020-03-08 10:27:26 +01:00
Son NK
fac833b8e6 support the case user wants to re-add their real email as mailbox 2020-03-08 10:05:13 +01:00
Son NK
3b454b9a80 fix test 2020-03-05 20:32:08 +01:00
Son NK
a6f4059d5d make sure to set mailbox_id when creating GenEmail 2020-03-05 17:03:07 +01:00
Son NK
faa82e7b5a make GenEmail.mailbox_id non-nullable 2020-03-05 17:00:43 +01:00
Son NK
cb3ea63066 show error if no such email exists from Github 2020-03-05 16:46:02 +01:00
Son NK
90dc05725a use github email that is "verified" and "primary" 2020-03-05 16:45:49 +01:00
Son NK
ca70d26285 black format 2020-03-05 11:00:58 +01:00
Son NK
a0372a15de fix github email can contain uppercase char 2020-03-05 10:58:58 +01:00
Son NK
85321313c1 add a warning on payment page for canceled user 2020-03-05 10:22:53 +01:00
Son NK
3492935f95 Canceled user can upgrade again: the payment method is changed immediately though 2020-03-05 09:13:28 +01:00
Son NK
83d32244a5 remove Beta tag on mailboxes 2020-03-05 08:56:47 +01:00
Son NK
f8ad733b91 display next_bill_date on billing page for canceled subscription 2020-03-05 08:11:35 +01:00
Son NK
b15eeb10c5 If POSTFIX_SUBMISSION_TLS, use port 587 2020-03-03 10:49:27 +01:00
Son NK
3410475223 Add POSTFIX_SUBMISSION_TLS config 2020-03-03 10:48:27 +01:00
Son NK
7e4eb9e0db use MAILBOX_SECRET instead of FLASK_SECRET 2020-02-29 18:18:52 +07:00
Son NK
330bf91d95 remove unused code 2020-02-29 18:15:50 +07:00
Son NK
f395841770 only premium plan can add additional mailbox 2020-02-29 18:12:55 +07:00
Son NK
aeed62e95b All users use full-mailbox
- remove can_use_multiple_mailbox col
- remove full_mailbox col
2020-02-29 00:03:35 +07:00
Son NK
7e1119406d New user will have mailbox enabled by default 2020-02-28 22:53:13 +07:00
Son NK
66654a3635 prettify alias page 2020-02-28 22:39:15 +07:00
Son Nguyen Kim
959b372854
Merge pull request #96 from simple-login/api-register
Api register
2020-02-28 19:22:27 +07:00
Son NK
bf3cbd033e add migration script 2020-02-28 19:09:01 +07:00
Son NK
32cd2fd650 Add related endpoints for registration
POST /api/auth/register
POST /api/auth/activate
POST /api/auth/reactivate
2020-02-28 19:02:01 +07:00
Son NK
c025acc826 Add AccountActivation model 2020-02-28 19:00:45 +07:00
Son Nguyen Kim
db621af1e5
Merge pull request #95 from simple-login/api-social-login
Add API endpoints for Facebook & Google login
2020-02-28 17:56:09 +07:00
Son NK
4d1d236066 add POST /api/auth/google 2020-02-28 17:29:33 +07:00
Son NK
02d26df292 add /api/auth/facebook 2020-02-28 17:26:28 +07:00
Son NK
16718806ba fix 2020-02-27 22:57:37 +07:00
Son NK
91d5d1c9ac fix test 2020-02-27 22:31:38 +07:00
Son NK
9d23fc5ab3 small refacto 2020-02-27 22:26:29 +07:00
Son NK
659861198b make salt is nullable 2020-02-27 22:26:19 +07:00
Son NK
87b6df9408 save which social network user uses in SocialAuth table 2020-02-27 22:16:12 +07:00
Son NK
7f70dd1678 make User.password nullable, add SocialAuth model 2020-02-27 22:15:22 +07:00
Son NK
f74beb2227 Improve deleted alias page 2020-02-23 17:36:45 +07:00
Son Nguyen Kim
321b81d794
Merge pull request #92 from simple-login/manual-sub
Manual sub
2020-02-23 17:07:53 +07:00
Son NK
77baf60ca4 Show user current plan in settings 2020-02-23 17:02:49 +07:00
Son NK
c1bd2f83e3 Remind user that their manual sub is ending soon. 2020-02-23 17:01:23 +07:00
Son NK
fb62322794 User who has valid manual sub is premium 2020-02-23 16:31:55 +07:00
Son NK
b2eb084720 Add ManualSubscription model 2020-02-23 16:31:14 +07:00
Son NK
9958e1ab8e only full mailbox user can set default mailbox 2020-02-23 16:17:09 +07:00
Son NK
ec3a41e53c Prettify waiting activation page 2020-02-23 16:01:03 +07:00
Son NK
f20930ac4e Assign random alias to default mailbox if user is full mailbox 2020-02-23 15:51:40 +07:00
Son NK
1fcbe32990 Can set a mailbox as default 2020-02-23 15:51:26 +07:00
Son NK
7febe6e15b cannot delete default mailbox 2020-02-23 15:41:53 +07:00
Son NK
9669c04414 Add user.default_mailbox_id col 2020-02-23 15:40:41 +07:00
Son NK
0a5113962f remove autofocus on directory & mailbox 2020-02-23 15:10:59 +07:00
Son NK
3c2762dfad only show mailbox when mailbox email != user email 2020-02-23 14:40:37 +07:00
Son NK
6615631b4e improve logging 2020-02-23 14:38:53 +07:00
Son NK
362032b803 full_mailbox user can use mailbox 2020-02-23 14:09:57 +07:00
Son NK
731d898774 Handle mailbox change 2020-02-23 14:08:55 +07:00
Son NK
aa784a0593 use red text for delete button 2020-02-23 14:04:20 +07:00
Son NK
571ff03115 handle case where mailbox_email is the same as user email 2020-02-23 14:04:00 +07:00
Son NK
18a6a50e38 Add Mailbox.new_email col 2020-02-23 14:02:02 +07:00
Son NK
e4bb85ac87 Full-mailbox User can change alias mailbox 2020-02-23 13:58:09 +07:00
Son NK
a467830a23 Add custom-select class to select element 2020-02-23 13:53:02 +07:00
Son NK
bc0dc0265d Show mailbox when creating alias for user who has full_mailbox enabled 2020-02-23 13:41:59 +07:00
Son NK
70802bff17 Create User.mailboxes() 2020-02-23 13:41:27 +07:00
Son NK
f662adf237 Add User.full_mailbox col 2020-02-23 13:39:52 +07:00
Son Nguyen Kim
773e24dd9a
Merge pull request #90 from simple-login/handle-bounced
Handle bounced
2020-02-22 22:37:11 +07:00
Son NK
332b4559f3 Prettify unsubscribe page 2020-02-22 22:10:09 +07:00
Son NK
dddea7c54f fix formatting 2020-02-22 21:10:31 +07:00
Son NK
f80de382fe Prettify alias log 2020-02-22 21:09:07 +07:00
Son NK
85eca009ac send_email accepts bounced_email (optional) param 2020-02-22 20:39:45 +07:00
Son NK
74d1f87db0 disable bounced email in alias log 2020-02-22 13:27:22 +07:00
Son NK
0e7a77130c Add ForwardEmailLog.bounced col 2020-02-22 12:53:05 +07:00
Son NK
a9a5f145aa fix showing unverified mailbox when creating new alias 2020-02-21 21:59:13 +07:00
Son NK
5f9ad01849 take into account the case an email is primary but not verified on github 2020-02-19 23:56:07 +07:00
Son NK
8639265946 allow user to show/hide api-key 2020-02-19 23:45:08 +07:00
Son NK
c4765a28d6 pycharm format 2020-02-19 23:44:48 +07:00
Son NK
fc09f911a4 refactor email-handler: extract try_auto_create() 2020-02-19 22:15:27 +07:00
Son NK
f1c7c83dc3 prettify help section in custom alias 2020-02-18 11:59:03 +07:00
Son NK
ab2aa2bfbb strip contact email before adding 2020-02-18 11:54:51 +07:00
Son NK
b806d843e5 prettify custom alias page: show limits on the alias prefix 2020-02-18 11:54:35 +07:00
Son NK
8f8857704a Add deleted alias page 2020-02-15 21:47:27 +07:00
Son NK
8bbecb2cd1 Delete wrongly-aligned notification on mobile. Improve wordings 2020-02-15 21:38:28 +07:00
Son NK
fd5e162d9b format alias-log 2020-02-15 21:37:24 +07:00
Son NK
0ced6bbb4f Prettify billing page 2020-02-15 21:22:46 +07:00
Son NK
83c2bb2b23 fix change email in settings 2020-02-14 09:34:19 +07:00
Son NK
641f8dfe9e Improve settings design 2020-02-13 17:05:34 +07:00
Son NK
5c4f46fdc2 Separate email change in setting screen 2020-02-13 16:57:17 +07:00
Son NK
580dc6c8d6 do not send an email when user creates a new app 2020-02-12 18:33:39 +07:00
Son NK
7598a167d0 Improve emails that inform unauthorized user 2020-02-11 22:58:30 +07:00
Son NK
b41a61165c use mailbox_email when notifying user attempt to send from his alias 2020-02-11 22:46:53 +07:00
Son NK
eec2020f0f only user with can_use_multiple_mailbox enabled can use this feature 2020-02-11 22:43:32 +07:00
Son NK
c5feede87d add User.can_use_multiple_mailbox column 2020-02-11 22:42:51 +07:00
Son NK
890bf1b3ed Add Mailbox to pricing, remove beta badge from directory 2020-02-10 23:52:41 +07:00
Son NK
144c7fcc6c fix verification email should be sent to mailbox 2020-02-10 23:50:18 +07:00
Son NK
fc167b8b41 Display alias mailbox on alias page 2020-02-10 23:23:02 +07:00
Son NK
b76a71819a User can choose mailbox when creating a new alias 2020-02-10 23:19:42 +07:00
Son NK
b5d961a498 Take into account mailbox in contact manager and improve wording. 2020-02-10 23:18:19 +07:00
Son NK
8a531f6c86 User can add/delete/verify mailbox 2020-02-10 23:17:05 +07:00
Son NK
821372fdfd add email_already_used() and use it when creating user 2020-02-10 23:16:30 +07:00
Son NK
eca2422be4 Add Mailbox model, GenEmail.mailbox_id column 2020-02-10 23:11:09 +07:00
Son Nguyen Kim
421f69b681 Merge pull request #78 from simple-login/fix-query
use case-insensitive query when searching for alias
2020-02-08 22:07:01 +07:00
Son NK
4cd8697abc use case-insensitive query when searching for alias 2020-02-08 22:00:40 +07:00
Son NK
1086275af3 add_dkim_signature: make sure to delete DKIM-Signature header before 2020-02-07 22:04:27 +07:00
Son NK
dec36ceeec Fix add_or_replace_header: make sure to delete all header occurrences before 2020-02-07 22:04:27 +07:00
Son NK
4c383663f4 Fix delete_header not deleting all header occurences 2020-02-07 22:04:27 +07:00
Son NK
e10981f85e able to create word-based or uuid-based in /api/alias/random/new endpoint 2020-02-07 21:30:46 +07:00
Son NK
dd02a50bad Improve wordings
- forgot password page
- login page
- activation email
- reset password email
2020-02-06 11:37:10 +07:00
Son NK
3092536b40 add GET /api/aliases/:alias_id/activities endpoint 2020-02-05 18:57:11 +07:00
Son NK
c5dc4fec4c add POST /api/aliases/:alias_id/toggle endpoint 2020-02-05 18:28:54 +07:00
Son NK
1241199e23 add "enabled" to returned alias 2020-02-05 18:23:13 +07:00
Son NK
c90a4899d2 Add DELETE /api/aliases/:alias_id endpoint 2020-02-05 18:21:17 +07:00
Son NK
14b48835ae reuse ApiKey if same device 2020-02-05 18:05:26 +07:00
Son NK
98487aba10 take into account "note" in search 2020-02-05 17:38:23 +07:00
Son NK
11b04d5e4a user can update note in alias list page 2020-02-05 17:38:02 +07:00
Son NK
145bed893f user can set note when creating custom alias 2020-02-05 17:36:06 +07:00
Son NK
ebadcfb175 add GenEmail.note column 2020-02-05 15:45:29 +07:00
Son NK
ec248dcae6 use another sentry project for the front-end using SENTRY_FRONT_END_DSN param 2020-02-05 14:38:29 +07:00
Son NK
6fe689dc17 use store instead of localStorage to detect whether the intro has been shown 2020-02-05 14:33:00 +07:00
Son NK
1e4bab765d use PAGE_LIMIT in alias_log 2020-02-04 23:28:05 +07:00
Son NK
40cac56986 GET /api/aliases 2020-02-04 23:26:59 +07:00
Son NK
f7d000d34e alert when /alias/options is used 2020-02-04 23:01:33 +07:00
Son NK
f3c61f9a61 use left-join when fetching alias 2020-02-04 23:00:55 +07:00
Son NK
c7903d534a use null instead of "" in /api/auth/login 2020-02-04 18:32:57 +07:00
Son NK
6be5d53e4e Merge branch 'nocdn' into welcome-email-serie
# Conflicts:
#	cron.py
2020-02-04 17:20:35 +07:00
Son NK
cb2c6af4e4 npm qrious 2020-02-04 16:53:25 +07:00
Son NK
1c960f7c33 rename _render -> render 2020-02-03 13:47:34 +07:00
Son NK
55dcf9e6a2 black format 2020-02-03 13:47:13 +07:00
Son NK
9dd7698636 organize emails into transactional/ and com/ 2020-02-03 13:47:13 +07:00
Son NK
0f4e803639 WIP send user onboarding email 1day after the account creation 2020-02-03 13:28:08 +07:00
Son NK
61229200a5 create job runner 2020-02-03 13:11:11 +07:00
Son NK
ffee8757ea add Job model 2020-02-03 13:09:48 +07:00
Son NK
28b349e1d3 rename _render -> render 2020-02-03 13:00:58 +07:00
Son NK
e29021f46a black format 2020-02-02 21:49:38 +07:00
Son NK
271ead133b organize emails into transactional/ and com/ 2020-02-02 21:49:22 +07:00
Son NK
cbcf93a9d9 put more space for alias 2020-02-02 21:16:00 +07:00
Son NK
a30397a88f Improve alias page UI
- use 1 column layout for alias page when screen is <lg
- reduce space between search bar and header
- move alias switch to the right
2020-02-02 20:50:56 +07:00
Son NK
c1a162e68b fix formating 2020-02-02 20:28:22 +07:00
Son NK
cb24f5cac1 make user.name optional in settings 2020-02-02 20:27:18 +07:00
Son NK
c649e3ba09 small fix 2020-01-30 15:08:26 +07:00
Son NK
8da4557325 send trial ending reminder when trial ends in 2-3 days 2020-01-30 14:19:09 +07:00
Son NK
01abc48f62 add trial information into welcome email 2020-01-30 13:54:33 +07:00
Son NK
ad1cf3af8c fix test 2020-01-30 13:20:32 +07:00
Son NK
2ca97368f8 Handle trial period
- user can upgrade to lifetime if in trial or free
- free or trial user can buy a subscription
- user has all features when in trial
2020-01-30 10:53:17 +07:00
Son NK
354e5f9a67 add User.trial_end column 2020-01-30 10:10:28 +07:00
Son NK
9f95edf203 Move billing button to setting page 2020-01-30 00:29:00 +07:00
Son NK
e810c99970 fix formatting 2020-01-30 00:18:31 +07:00
Son NK
48edb85fc9 Fix email case on register 2020-01-30 00:16:04 +07:00
Son Nguyen Kim
d1baca67ff
Merge pull request #61 from simple-login/custom-alias-oauth-authorize
Custom alias oauth authorize
2020-01-30 00:04:22 +07:00
Son Nguyen Kim
db5bd7d196
Merge pull request #59 from simple-login/fix-alias-log
Fix alias log
2020-01-29 23:59:26 +07:00
Son NK
cce330a442 check if alias is not deleted before in custom-alias page 2020-01-29 23:57:20 +07:00
Son NK
6cad537931 user can choose to create alias with custom domain on the authorize page 2020-01-29 23:56:44 +07:00
Son NK
f3f98e4a75 Improve authorize page UI for non-authenticated user 2020-01-29 23:50:50 +07:00
Son NK
9e2adb42c6 Order alias log by recency 2020-01-29 10:42:46 +07:00
Son NK
fc22593bf6 avoid email loop
Prevent user from adding a domain that they are using for their personal email.
2020-01-28 15:16:26 +07:00
Son NK
f76bdd8fe6 set DISABLE_REGISTRATION param to disable registration 2020-01-28 11:50:25 +07:00
Son NK
86b2e3eb77 fix formatting 2020-01-28 09:31:47 +07:00
Son NK
4dfa45886e add SUPPORT_NAME param 2020-01-28 09:29:04 +07:00
Son NK
9b9a3e7d07 fix formatting 2020-01-28 00:15:48 +07:00
Son NK
69e87137ec Fix PADDLE params 2020-01-28 00:02:59 +07:00
Son NK
a8bceac8a7 fix FLASK_SECRET 2020-01-28 00:02:47 +07:00
Son NK
2644996eee Make some params optional or with acceptable default values:
MAX_NB_EMAIL_FREE_PLAN
FLASK_SECRET
BUCKET
AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY
PADDLE_*
OPENID_PRIVATE_KEY_PATH
OPENID_PUBLIC_KEY_PATH
WORDS_FILE_PATH
GITHUB_*, GOOGLE_*, FACEBOOK_*
2020-01-27 23:27:41 +07:00
Son NK
813d801ba6 use 256 varchar for email fields 2020-01-26 23:22:16 +07:00
Son NK
bc6daab595 display domains that can be used on directory 2020-01-26 22:29:35 +07:00
Son NK
99ffd6149d use can_be_used_as_personal_email when user registers or change emails 2020-01-26 19:51:43 +07:00
Son NK
fc7a832969 add can_be_used_as_personal_email() 2020-01-25 22:40:30 +07:00
Son NK
8c14c25cec order alias by most recent ones 2020-01-23 20:19:58 +01:00
Son NK
d6020d5fa0 pass highlight_gen_email_id via url query instead of session. Remove HIGHLIGHT_GEN_EMAIL_ID 2020-01-23 20:15:47 +01:00
Son NK
8c91d64c77 fix not setting custom_domain id when creating alias 2020-01-23 11:45:52 +01:00
Son NK
00dac9a95a notify user if reply from alias is NOT sent from their personal email 2020-01-22 23:18:27 +01:00
Son NK
539bf56e97 improve custom alias check 2020-01-22 23:03:52 +01:00
Son NK
3f2f2cabf4 always use dropdown list for alias suffix 2020-01-22 22:51:52 +01:00
Son NK
b5357d0f4e Handle the case where a previous deleted alias is re-created via catch-all or directory feature 2020-01-22 22:48:30 +01:00
Son NK
926cc2935c take into account DISABLE_ALIAS_SUFFIX in /api/alias/options 2020-01-22 14:21:01 +01:00
Son NK
0c2b2ce60e fix styling 2020-01-22 14:08:00 +01:00
Son NK
da8b110839 small fix 2020-01-22 14:05:42 +01:00
Son NK
8e7f5e56d6 add "your domain" to user's owned domain 2020-01-22 14:04:38 +01:00
Son NK
bdf75951f1 support ALIAS_DOMAINS
- use verify_prefix_suffix() in /api/alias/custom/new
-
2020-01-22 10:24:17 +01:00
Son NK
d7ed0d77bd add email_belongs_to_alias_domains() to verify if an email belongs to one of the alias domains 2020-01-22 10:24:17 +01:00
Son NK
a6507a39e4 Add optional OTHER_ALIAS_DOMAINS setting. Create ALIAS_DOMAINS setting that is the list of domain user can use when creating alias. 2020-01-22 10:24:17 +01:00
Son NK
f7f8c6769d Improve custom alias help text 2020-01-22 10:24:17 +01:00
Son NK
c969e6919a Use the same design as on extension for custom alias: domains are presented in a dropdown list 2020-01-22 10:24:17 +01:00
Son NK
ef788f7458 add /api/auth/mfa 2020-01-20 15:00:56 +01:00
Son NK
d1734c3cf9 Create /api/auth/login 2020-01-20 14:51:28 +01:00
Son Nguyen Kim
204ccd34c9
Merge pull request #37 from simple-login/disable-suffix-option
Disable suffix option
2020-01-20 13:35:22 +01:00
Son NK
cfd3f5db8f Add more help message to api-key and custom-domain 2020-01-20 11:16:04 +01:00
Son Nguyen Kim
448d9d1a01
Merge pull request #35 from simple-login/directory-separator
Directory separator
2020-01-20 10:23:00 +01:00
Son Nguyen Kim
1fca5f5779
Merge pull request #33 from simple-login/cloudflar
Use Cloudflare DNS nameserver
2020-01-20 09:24:27 +01:00
Son NK
f56ba95b4d disable alias suffix by setting DISABLE_ALIAS_SUFFIX 2020-01-20 09:23:17 +01:00
Son NK
6f925170c5 Give more info on the directory 2020-01-19 22:34:31 +01:00
Son NK
6f414ba405 Support + and # as directory separator 2020-01-19 22:06:36 +01:00
Son Nguyen Kim
70e16bb415
Merge pull request #31 from simple-login/canceled-premium
Canceled premium
2020-01-19 14:57:45 +01:00
Son NK
d2501e5961 make sure to "strip" custom domain before adding to DB 2020-01-19 14:09:13 +01:00
Son NK
b865be760c Use CloudFlare DNS nameserver 2020-01-19 10:22:20 +01:00
Son NK
a03db0d129 create email templates 2020-01-16 22:27:45 +01:00
Son NK
13283b6327 Support cancelled premium users in custom domain & directory
- Freemium user can see custom domain and directory but could not add new.
- user who has added custom domain or directory before could delete them
2020-01-16 22:21:19 +01:00
Son NK
3f0aae6f02 send email notifying user that alias creation works only in premium plan 2020-01-16 22:06:36 +01:00
Son NK
e2974cdd60 make card responsive in alias log 2020-01-12 22:23:18 +01:00
Son NK
110b296f73 use alias_id instead of alias in contact manager page 2020-01-12 22:23:05 +01:00
Son NK
d5dd46f4b1 Fix email title as name now can be empty 2020-01-11 22:33:25 +01:00
Son NK
356b95ef80 fix formatting 2020-01-11 22:28:06 +01:00
Son NK
8c9512e61e do not ask for user name when register 2020-01-11 22:26:59 +01:00
Son NK
f860471d50 fix slash in url: use alias_id instead of alias 2020-01-11 21:48:25 +01:00
Son NK
47bf6646fc Load our paddle.js if their CDN doesn't work 2020-01-10 18:36:31 +01:00
Son Nguyen Kim
cdd69b381e
Merge pull request #27 from simple-login/staging
Fix postfix-python bouncing problem
2020-01-10 13:27:32 +01:00
doanguyen
ef2e390df3 Merge branch 'staging' of https://github.com/simple-login/app into staging 2020-01-10 11:28:08 +01:00
doanguyen
f8bd3800c3 better looking random button 2020-01-10 11:26:18 +01:00
Son NK
6778537083 only allow lowercase for alias 2020-01-09 20:43:03 +01:00
Son NK
a9e7b53161 make sure directory is lowercase only 2020-01-09 20:38:02 +01:00
Son NK
851ddce5a5 Merge remote-tracking branch 'origin/master' into directory
# Conflicts:
#	email_handler.py
2020-01-09 10:37:33 +01:00
Son Nguyen Kim
94ecfd7bbd
Merge pull request #23 from simple-login/spf-check
Spf check
2020-01-09 10:32:50 +01:00
Son NK
ecce1eff99 remove support for directory+anything@EMAIL_DOMAIN 2020-01-08 22:09:46 +01:00
Son NK
cdae3c5309 add Directory page to add/delete directory 2020-01-08 21:38:01 +01:00
Son NK
5a57e3bc44 Add Directory model and add directory_id column to GenEmail 2020-01-08 21:23:41 +01:00
doanguyen
f0c66d279b
Merge branch 'master' into staging 2020-01-08 21:10:57 +01:00
doanguyen
fd31b77b06 Polish the interface 2020-01-08 19:49:26 +01:00
Son Nguyen Kim
634861e279
Merge pull request #22 from simple-login/alias-dashboard
Alias dashboard
2020-01-08 16:29:22 +01:00
Son NK
434f82a244 fix formatting 2020-01-08 12:58:34 +01:00
Son NK
0300d38f56 make sure delete_header() delete all headers occurences 2020-01-08 12:42:25 +01:00
Son NK
d9f2ec214f add @ warning when setup DNS 2020-01-07 22:13:12 +01:00
Son NK
aa10cdb3ee If domain is not verified, clicking on 🚫 brings user to DNS page 2020-01-07 21:53:00 +01:00
Son NK
27b9312057 fix formatting 2020-01-07 19:50:36 +01:00
Son NK
ba46d8f7e0 add delete_header() 2020-01-07 19:49:26 +01:00
Son NK
44527c6c4e fix annotation on email_utils 2020-01-07 19:47:26 +01:00
Son NK
3bca9fde6b refactor: move add_or_replace_header to email_utils 2020-01-07 19:46:57 +01:00
doanguyen
d804a28c07 fix the format, again 2020-01-07 00:02:12 +01:00
doanguyen
6a99fd30c4 fix some minor bugs 2020-01-06 23:58:24 +01:00
Son NK
ca37ce5e5a add id to notification section in setting 2020-01-06 19:41:05 +01:00
Son NK
d527fcf648 Move "forgot password" button to a different position to avoid Keepass issue 2020-01-06 16:11:17 +01:00
doanguyen
8f1c56baf9 forget to push this local configuration 2020-01-05 23:03:56 +01:00
doanguyen
5ffdc45c87 fix DEBUG flag is not default in os environment 2020-01-05 22:53:00 +01:00
doanguyen
5af974fc5d alias log dashboard 2020-01-05 22:49:48 +01:00
Son NK
f52f4c821b Add /api/user_info 2020-01-05 22:48:38 +01:00
Son NK
377e6c657d add /api/alias/random/new 2020-01-05 21:15:16 +01:00
Son NK
c6db8db4a1 Improve error message 2020-01-05 21:14:40 +01:00
Son NK
d322d543af add more check to new custom alias 2020-01-05 20:48:32 +01:00
Son NK
96da841062 add /api/v2/alias/options that flattens the response 2020-01-05 20:47:09 +01:00
doanguyen
4e84815375 let debug configurable 2020-01-05 19:45:29 +01:00
Son NK
41329782a2 refactor dns_utils and add test_dns_utils 2020-01-05 19:02:05 +01:00
Son NK
47f691cacf fix formatting 2020-01-04 11:00:59 +01:00
Son NK
40c2040ddc use google nameserver 2020-01-04 10:58:19 +01:00
Son NK
d6aa6e7b94 Make sure to user lowercase for user email 2020-01-04 10:24:01 +01:00
Son NK
837ab8258e redirect to login page instead 2020-01-03 23:50:34 +01:00
Son NK
4208ba379f Fix user could go to MFA page directly 2020-01-03 23:42:35 +01:00
Son NK
5053d343d1 Split lifetime licence to a separate page 2020-01-03 22:40:44 +01:00
Son NK
abb2584a38 Prettify pricing page 2020-01-03 11:51:44 +01:00
Son NK
df0e706bdd Fix scrolling in dns page 2020-01-03 11:51:18 +01:00
Son NK
c9d58692bf Prettify some pages 2020-01-02 22:39:53 +01:00
Son NK
f986371ff5 make sure to scroll to the same position in DNS page 2020-01-02 22:39:08 +01:00
Son NK
ab3fe8a626 Flash errors when MX, SPF or DKIM fail 2020-01-02 22:22:09 +01:00
Son NK
3edd5f0b82 Show something when there's no DNS record 2020-01-02 22:21:54 +01:00
Son NK
fc985d64d9 Use catch-all for all dns query 2020-01-02 22:15:08 +01:00
Son NK
9704219576 Fix product tour wording 2020-01-02 22:12:03 +01:00
Son NK
be1b689463 Fix dns query could throw different kinds of exceptions 2020-01-02 22:08:37 +01:00
Son NK
2a05e320e1 remove beta on send email button 2020-01-02 22:05:34 +01:00
Son NK
553777bc05 Move intro button to footer 2020-01-02 12:14:49 +01:00
Son NK
21cdb973f0 Improve intro 2020-01-02 12:14:39 +01:00
Son NK
4c4c4a81b8 autofocus mfa token input 2020-01-01 23:52:25 +01:00
Son NK
ee3c75244e Fix custom domain has been added before 2020-01-01 23:51:40 +01:00
Son Nguyen Kim
b8ca2d0158
Merge pull request #16 from simple-login/lifetime
Lifetime coupon
2020-01-01 23:24:15 +01:00
Son NK
e609404e6f Add FLASK_PROFILER_PATH, FLASK_PROFILER_PASSWORD setting 2020-01-01 22:54:33 +01:00
Son NK
3c05230bd3 User can use lifetime coupon 2020-01-01 20:04:39 +01:00
Son NK
dc53d77a71 User is premium if they have lifetime deal 2020-01-01 20:02:48 +01:00
Son NK
98d2882719 Add LifetimeCoupon model and User.lifetime column 2020-01-01 20:02:30 +01:00
Son NK
026fe4addd get_subscription should only return *active* subscription. 2020-01-01 19:46:35 +01:00
Son Nguyen Kim
eceee66bfe
Merge pull request #14 from simple-login/alias-log
Alias log
2020-01-01 19:02:23 +01:00
doanguyen
e5b6cb8461 forget to remove the import 2019-12-31 20:22:46 +01:00
doanguyen
1162495b36 remove dataclasses completely, remove the slots magic 2019-12-31 20:20:17 +01:00
doanguyen
a20f790fda add py36 2019-12-31 20:08:59 +01:00
Son NK
652e623111 make sure that user cannot use any suffix 2019-12-31 17:11:42 +01:00
doanguyen
d42eea39cc consider to get rid of dataclass dependent 2019-12-31 11:22:18 +01:00
doanguyen
37ca4eaf20 working on paginate alias log page 2019-12-31 11:11:06 +01:00
Son Nguyen Kim
d63faa8ab3
Merge pull request #13 from simple-login/catch-all
Catch all
2019-12-30 22:18:54 +01:00
Son Nguyen Kim
43a96201ed
Merge pull request #12 from simple-login/email-notification
Email notification
2019-12-30 21:13:22 +01:00
Son NK
02880fbc47 fix redirection 2019-12-30 21:11:31 +01:00
doanguyen
ccaf304448 Remove unused file 2019-12-30 20:24:46 +01:00
Son NK
757fff71af Fix MX and SPF check
- take into account priority in MX check
- use EMAIL_DOMAIN in SPF instead of MX server
2019-12-30 19:37:50 +01:00
Son NK
ef8f87798b Fix MX DNS record 2019-12-30 18:58:44 +01:00
Son NK
c3620a1e45 Fix formatting 2019-12-30 18:53:49 +01:00
Son NK
8d85ab35f1 Move delete domain to domain info page 2019-12-30 18:51:55 +01:00
Son NK
174ee174f9 add gen_email.automatic_creation column 2019-12-30 18:48:07 +01:00
Son NK
96bb37f0f6 User can enable/disable catch-all on custom domain 2019-12-30 18:20:49 +01:00
Son NK
b9908a16b2 add get_email_local_part(), get_email_domain_part() to email_utils 2019-12-30 18:18:10 +01:00
Son NK
cae43fa0dd add custom_domain.catch_all column 2019-12-30 18:17:45 +01:00
Son NK
4b6717d8dd Split domain detail into Info and DNS page 2019-12-30 17:52:08 +01:00
Son NK
632484ee5c Update wording: remove "successfully" 2019-12-30 17:43:38 +01:00
Son NK
ca6c32f951 Fix formatting 2019-12-30 15:56:47 +01:00
Tung Nguyen
1289b08636 Merge remote-tracking branch 'nguyenkims/master' 2019-12-30 12:33:32 +00:00
Son NK
caa95df556 Prettify pricing page 2019-12-30 11:08:11 +01:00
Son NK
25d8f8926b Prettify UI 2019-12-30 10:36:13 +01:00
doanguyen
3e766f8126 blacked-again 2019-12-30 00:47:55 +01:00
doanguyen
4b3453dce8 Lol, str(True) != 1 2019-12-30 00:39:47 +01:00
doanguyen
c194ee3337 blacked 2019-12-30 00:37:07 +01:00
doanguyen
9466fd556c update migration file 2019-12-30 00:35:06 +01:00
doanguyen
84eb10232c notification setting 2019-12-30 00:33:59 +01:00
Son NK
b51ed259b4 fix cancel MFA: the secret needs to be reset too 2019-12-29 15:32:27 +01:00
Son NK
76eec998ea User who has enabled MFA can cancel MFA 2019-12-29 15:10:40 +01:00
Son NK
89664580b3 Move custom-domain to menu 2019-12-29 11:03:47 +01:00
Son NK
b391fa4c91 Move settings and api-key page to menu 2019-12-29 10:56:27 +01:00
doanguyen
6f256bcd3f minor comments on domain-detail branch 2019-12-29 10:48:46 +01:00
doanguyen
45c49f1e1a minor comments on domain-detail branch 2019-12-29 10:48:46 +01:00
Son NK
8dcb8dd249 move domain validation (mx, spf, mx) to domain detail page 2019-12-29 10:46:00 +01:00
Son NK
34faafe25e add custom_domain.spf_verified column 2019-12-29 10:46:00 +01:00
Son NK
a956e2de10 add dns_utils.get_txt_record 2019-12-29 10:46:00 +01:00
Son NK
90bd84e9cc add DKIM_PUBLIC_KEY_PATH setting 2019-12-29 10:46:00 +01:00
Son NK
d0218c86de display 🚫 for unverified domain 2019-12-29 10:46:00 +01:00
Son NK
ab3ce7bd4e fix formatting 2019-12-29 10:33:45 +01:00
doanguyen
3ca5b9628a update server_default parameter 2019-12-28 14:20:10 +01:00
doanguyen
f3719aa0f0 black formatted 2019-12-28 14:20:10 +01:00
doanguyen
3811bb6880 reformat 2019-12-28 14:20:10 +01:00
doanguyen
4a3b958131 reformat modified files, resolve PR https://github.com/simple-login/app/pull/5 2019-12-28 14:20:10 +01:00
doanguyen
10019ba4eb reverse previous commit 2019-12-28 14:20:10 +01:00
doanguyen
d026c596ac remove lambda function from config.py 2019-12-28 14:20:10 +01:00
doanguyen
e2e9cc6b5d Implement alias generator schemes 2019-12-28 14:20:10 +01:00
doanguyen
1393b80970 considering lazy loading for non-critical loc 2019-12-28 14:20:10 +01:00
Son NK
de0368c20f remove redundant code 2019-12-27 16:53:07 +00:00
Son NK
5b01071bec Redirect user to MFA page if they enable MFA 2019-12-27 16:53:07 +00:00
Son NK
c52f2d1603 Create auth/mfa page used by user who has enabled MFA 2019-12-27 16:53:07 +00:00
Son NK
fa66a71880 Display MFA setup to user who doesn't have MFA enabled 2019-12-27 16:53:07 +00:00
Son NK
e5b10b28a6 Create MFA Setup page if user enable MFA 2019-12-27 16:53:07 +00:00
Son NK
80facfe122 add User.otp_secret, enable_otp column 2019-12-27 16:53:07 +00:00
Son NK
1eefb9228f only parse CLOUDWATCH_LOG_GROUP, CLOUDWATCH_LOG_STREAM if CLOUDWATCH is enabled 2019-12-27 10:39:39 +01:00
Son NK
65d0848e2f show alias in confirmation message 2019-12-26 17:37:51 +00:00
Tung Nguyen
4f751e5cd2 fix typos and improve messages showing at the end users 2019-12-26 13:00:17 +00:00
Son NK
e09dfaa481 Fix pricing page message 2019-12-25 21:35:35 +00:00
Son NK
ed78e31b8b add custom_domain.dkim_verified column 2019-12-25 17:23:04 +00:00
Son NK
f80adae625 fix login error message 2019-12-23 19:00:31 +00:00
Son NK
bcbe239f60 User can generate quickly a random alias 2019-12-23 15:34:02 +00:00
Son NK
a8d112646e Add hint for alias prefix on custom alias page 2019-12-23 15:09:41 +00:00
Son NK
dbbfcac2d6 Still show a readable email name when there's no website_from 2019-12-23 15:09:41 +00:00
Son NK
3320a488f3 refactor s3.py 2019-12-23 15:09:41 +00:00
Son NK
a3f547fd22 rename create_custom_alias -> create_new 2019-12-22 16:34:10 +00:00
Son NK
91e38a744b remove GenEmail.custom column 2019-12-22 16:32:55 +00:00
Son NK
8f04f8ae0f rename can_create_new_custom_alias -> can_create_new_alias 2019-12-22 16:27:55 +00:00
Son NK
873133838d delete unused method 2019-12-22 16:21:02 +00:00
Son NK
0955f13593 User can export their data 2019-12-22 16:20:56 +00:00
Son NK
8756241774 Fix wording 2019-12-22 16:03:58 +00:00
Son NK
ec4d034593 Add Delete Account in setting 2019-12-22 16:03:40 +00:00
Son NK
17bb01f317 Fix wording 2019-12-22 15:59:41 +00:00
Son NK
41fe528441 use flash to display error in login 2019-12-22 15:59:00 +00:00
Son NK
ea1492904a only print out plaintext when NOT_SEND_EMAIL 2019-12-22 15:58:07 +00:00
Son NK
441fc773ba better UI for new alias page 2019-12-22 15:41:37 +00:00
Son NK
6b3fe06efc better UI for custom-alias page 2019-12-22 12:57:19 +00:00
Son NK
8d6988da16 add warning message for social login options. 2019-12-22 08:26:20 +00:00
Son NK
4147e19530 fix facebook error when user choose to not share email 2019-12-19 22:38:20 +02:00
Son NK
4799721667 remove DKIM-Signature if any 2019-12-17 19:06:17 +02:00
Son NK
a61b900675 Sign DKIM at app level
- add DKIM_PRIVATE_KEY_PATH param
- create email_utils.add_dkim_signature
- add DKIM signature for transactional emails
- add DKIM signature for forward & reply emails. In reply phase, only non-custom-domain emails have DKIM added.
2019-12-17 18:50:26 +02:00
Son NK
f8293bc618 make ADMIN_EMAIL optional 2019-12-16 19:36:59 +02:00
Son NK
66091b4f9e replace ENABLE_SENTRY by SENTRY_DSN 2019-12-16 19:30:17 +02:00
Son NK
c3b716f644 remove users.can_use_custom_domain flag 2019-12-15 21:52:24 +02:00
Son NK
1b88d2264e add beta badge for "send email" feature 2019-12-15 18:55:18 +02:00
Son NK
a8d00c3329 add tooltip for reverse-alias 2019-12-15 18:55:18 +02:00
Son NK
3e9233f346 replace the "test alias" by the alias manager page 2019-12-15 18:55:18 +02:00
Son NK
231fc6fd88 create alias contact manager page 2019-12-15 18:55:18 +02:00
Son NK
62e0ae27a0 move get_email_name, get_email_part to email_utils 2019-12-15 18:55:18 +02:00
Son NK
88cef1b90d add new param IGNORED_EMAILS and use it in cronjob 2019-12-15 18:55:18 +02:00
Son NK
9c9ad87c7d remove /api/alias/new 2019-12-15 18:55:18 +02:00
Son NK
565d406227 remove new_random_alias related test 2019-12-15 18:55:18 +02:00
Son NK
e5079e48da remove can_create_new_random_alias() 2019-12-15 18:55:18 +02:00
Son NK
ec62fad3a0 remove notify_admin, replace by general stats 2019-12-15 18:55:18 +02:00
Son NK
eba9e889bf add paddle_utils.verify_incoming_request 2019-12-15 18:55:18 +02:00
Son NK
d58f9d4c89 add new param PADDLE_PUBLIC_KEY_PATH 2019-12-15 18:55:18 +02:00
Son NK
e4ba4297e1 reformat using black 2019-12-15 18:55:18 +02:00
Son NK
dc66cf76e2 allow overriding postfix server 2019-12-15 18:55:18 +02:00
Son NK
3d95048e00 fix wording 2019-12-15 18:55:18 +02:00
Son NK
2412658a3e better UI for custom alias page 2019-12-15 18:55:18 +02:00
Son NK
4e6922adad disable late_payment in cron job 2019-12-15 18:55:18 +02:00
Son NK
7f908a9da8 display website_from on alias log 2019-12-15 18:55:18 +02:00
Son NK
d160971cc7 add ForwardEmail.website_from field 2019-12-15 18:55:17 +02:00
Son NK
631900ab4f use random_word instead of random_string for alias suffix 2019-12-15 18:55:17 +02:00
Son NK
c37ba0e1de website_email: use From header instead of envelope from 2019-12-15 18:55:17 +02:00
Son NK
9dd4a4afb7 take into account NOT_SEND_EMAIL param 2019-12-15 18:55:17 +02:00
Son NK
74fe984ae1 make sure alias pattern check is the same everywhere: Only letter, number, dash (-), underscore (_) can be used in alias prefix 2019-12-15 18:55:17 +02:00
Son NK
260b235328 remove random alias from pricing 2019-12-15 18:55:17 +02:00
Son NK
8e9aef1199 add website_name to suggested_emails 2019-12-15 18:55:17 +02:00
Son NK
779cb9c377 create a custom alias with "my-first-alias" for first time user 2019-12-15 18:55:17 +02:00
Son NK
139fc68bda create some random alias creation 2019-12-15 18:55:17 +02:00
Son NK
8b9a158ac2 create GenEmail.create_custom_alias that should replace all random alias 2019-12-15 18:55:17 +02:00
Son NK
b09f74c445 use the same log format for colored log 2019-12-15 18:55:17 +02:00
Son NK
4c8c48bb23 better UI for custom alias page 2019-12-15 18:55:17 +02:00
Son NK
6d21343748 remove create random email button 2019-12-15 18:55:17 +02:00
Son NK
7f6267cc4a call LOG.error on obsolete endpoints: /alias/new and /alias/random/new 2019-12-15 18:55:17 +02:00
Son NK
f37a155c1f still return custom alias option when user runs out of custom alias quota 2019-12-15 18:55:17 +02:00
Son NK
df3838480d add COLOR_LOG config 2019-12-15 18:55:17 +02:00
Son NK
4caafc7e7b use coloredlogs 2019-12-15 18:55:17 +02:00
Son NK
2e23a1bf19 add RESET_DB back 2019-12-15 18:55:17 +02:00
Son NK
d0f95e81b2 fix MX record can be unavailable 2019-12-15 18:55:17 +02:00
Son NK
5854ab8e10 support GET in /oauth/token 2019-12-15 18:55:17 +02:00
Son NK
d9c211d8da fix api create new custom alias 2019-12-15 18:55:17 +02:00
Son NK
ac9f896a7d improve pricing page 2019-12-15 18:55:17 +02:00
Son NK
3e4e0e931f add separator to highlight alias 2019-12-15 18:55:17 +02:00
Son NK
6723487a23 add SPF check 2019-12-15 18:55:17 +02:00
Son NK
48ff20906e better UI for alias list page 2019-12-15 18:55:17 +02:00
Son NK
ca05cd359a remove >3 characters on alias prefix 2019-12-15 18:55:17 +02:00
Son NK
6e387444f5 do not use RESET_DB to avoid potential error: uncomment fake_date locally if necessary 2019-12-15 18:55:17 +02:00
Son NK
a5615b22e7 make alias activity responsive 2019-12-15 18:55:17 +02:00
Son NK
c3056dc94c use website domain name as alias prefix suggestion (instead of full hostname) 2019-12-15 18:55:17 +02:00
Son NK
28c83107e9 only show intro when screen is big enough to show "developer" tab 2019-12-15 18:55:17 +02:00
Son NK
acea37d520 show intro on the first alias 2019-12-15 18:55:16 +02:00
Son NK
39311ab1ff Make dashboard responsive 2019-12-15 18:55:16 +02:00
Son NK
ccf93b1235 highlight disable/enable alias 2019-12-15 18:55:16 +02:00
Son NK
d4f7b6296d allow alias_prefix shorter 3 characters 2019-12-15 18:55:16 +02:00
Son NK
5b28d70fe0 fix custom alias html 2019-12-15 18:55:16 +02:00
Son NK
a9e781da84 use the latest used alias as recommendation 2019-12-15 18:55:16 +02:00
Son NK
d58ab8c808 fix create random alias: new alias not saved 2019-12-15 18:55:16 +02:00
Son NK
8250ab2f22 add /alias/custom/new and /alias/random/new 2019-12-15 18:55:16 +02:00
Son NK
ab4f5bf329 add /api/alias/options 2019-12-15 18:55:16 +02:00
Son NK
c58d9052e7 rename can_create_custom_email -> can_create_new_custom_alias, can_create_new_email -> can_create_new_random_alias 2019-12-15 18:55:16 +02:00
Son NK
6764a4b582 use "default" hostname if hostname is too short 2019-12-15 18:55:16 +02:00
Son NK
c012d3686a only premium user can add custom domain 2019-12-15 18:55:16 +02:00
Son NK
3f189163dd notify admin when user creates new custom domain or custom alias associated with custom domain 2019-12-15 18:55:16 +02:00
Son NK
0234af03d3 handle custom domain in custom alias 2019-12-15 18:55:16 +02:00
Son NK
3402d64249 display when a custom domain is created and number of aliases 2019-12-15 18:55:16 +02:00
Son NK
24cb2688ca add gen_email.custom_domain_id foreign key 2019-12-15 18:55:16 +02:00
Son NK
a827b27215 add custom_domain view 2019-12-15 18:55:16 +02:00
Son NK
5d9420a763 add EMAIL_SERVERS_WITH_PRIORITY and EMAIL_SERVERS config 2019-12-15 18:55:16 +02:00
Son NK
79a7985221 handle the case where no hostname is provided in /api/alias/new 2019-12-15 18:55:16 +02:00
Son NK
b59ffb94b2 Remove Stripe usage 2019-12-15 18:55:16 +02:00
Son NK
40254c54a3 remove stripe columns in User model 2019-12-15 18:55:16 +02:00
Son NK
8471f3a19f add external-link icon when appropriate 2019-12-15 18:55:16 +02:00
Son NK
2b00ceaa6b put extension download link to api-key page 2019-12-15 18:55:16 +02:00
Son NK
b514068340 add CustomDomain model 2019-12-15 18:55:16 +02:00
Son NK
975dc7ff21 fix query lost when post 2019-12-15 18:55:16 +02:00
Son NK
6ea43275ed remove user.can_use_api_key 2019-12-15 18:55:16 +02:00
Son NK
fd7f819803 allow cross_origin for /api/alias/new 2019-12-15 18:55:16 +02:00
Son NK
786d640511 fix migration 2019-12-15 18:55:16 +02:00
Son NK
7bedd40966 add user.can_use_custom_domain, user.can_use_api_key 2019-12-15 18:55:16 +02:00
Son NK
efd0e97ebd prettify api key page 2019-12-15 18:55:16 +02:00
Son NK
4f874eec43 Create API Key page 2019-12-15 18:55:16 +02:00
Son NK
6c4a173de5 create /api/alias/new using api-key as authentication 2019-12-15 18:55:16 +02:00
Son NK
565508689f create AliasUsedOn and ApiKey model 2019-12-15 18:55:16 +02:00
Son NK
a5e1a36718 lower case query before search 2019-12-15 18:55:16 +02:00
Son NK
b9bce29534 fix search input not large enough on mobile: use col-md-3 instead of col-3 2019-12-15 18:55:16 +02:00
Son NK
efd4f40fb7 add autofocus to custom alias 2019-12-15 18:55:16 +02:00
Son NK
f611d165c3 autofocus search field 2019-12-15 18:55:16 +02:00
Son NK
28c8fa0f4d add alias search 2019-12-15 18:55:16 +02:00
Son NK
e18bbd1cc4 improve wording 2019-12-15 18:55:16 +02:00
Son NK
108b41842e remove user.trial_expiration 2019-12-15 18:55:16 +02:00
Son NK
6e71541985 remove trial concept 2019-12-15 18:55:16 +02:00
Son NK
8dca65678e improve wording 2019-12-15 18:55:15 +02:00
Son NK
5a9d3b0245 alias activity: fix arrow hidden on mobile 2019-12-15 18:55:15 +02:00