Commit Graph

783 Commits

Author SHA1 Message Date
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