Son NK
b9dba9c2c3
improve wording
2020-12-14 11:48:08 +01:00
Son NK
3dd8ed7840
Create /dashboard/coinbase_checkout, remove extend_subscription route
2020-12-14 11:34:59 +01:00
Son NK
f19a7e1bca
Add COINBASE_API_KEY and COINBASE_YEARLY_PRICE config
2020-12-14 11:33:39 +01:00
Son NK
369c9dafce
remove duplicated
2020-12-13 19:56:17 +01:00
Son NK
530160567b
fix coinbase button not displayed on pricing page
2020-12-13 19:51:00 +01:00
Son NK
1348b58672
only show coinbase option for user who has can_use_coinbase=True
2020-12-13 19:28:46 +01:00
Son NK
1961d2f18e
Add User.can_use_coinbase column
2020-12-13 19:28:13 +01:00
Son NK
fbe48b7b3e
add extend subscription link on settings page
2020-12-13 19:14:54 +01:00
Son NK
6c21b83975
add coinbase option on pricing page
2020-12-13 19:14:11 +01:00
Son NK
436e31229f
Create extend_subscription page
2020-12-13 19:13:26 +01:00
Son NK
0542adb761
Add COINBASE_WEBHOOK_SECRET, COINBASE_CHECKOUT_ID config
2020-12-13 19:11:49 +01:00
Son NK
02c74e6a5a
take into account Coinbase in can_upgrade(), is_paid(), _lifetime_or_active_subscription()
2020-12-13 19:08:06 +01:00
Son NK
9329cf04ad
Create CoinbaseSubscription model
2020-12-13 19:05:43 +01:00
Son NK
8527fed69e
pricing page: improve wording
2020-12-13 17:04:05 +01:00
Son Nguyen Kim
bf139f83b3
Merge pull request #342 from herrboyer/linting
...
Linting
2020-12-07 17:45:50 +01:00
Son NK
ce3dae2a07
inform user when an alias can't be created when a directory is disabled
2020-12-07 10:55:13 +01:00
Son NK
37a74bc093
refactor: rename
2020-12-07 10:50:42 +01:00
Son NK
4fb7b7bd2c
user can change directory disabled
2020-12-07 10:49:40 +01:00
Son NK
05d4ec1c2f
Add directory.disabled column
2020-12-07 10:48:43 +01:00
Son NK
a40bbe74fe
show include_sender_in_reverse_alias as checked if user hasn't set any value
2020-12-07 10:23:36 +01:00
Renaud Boyer
5d948faf56
black
2020-12-06 22:11:58 +01:00
Renaud Boyer
f2f13958c7
linting
2020-12-06 22:11:22 +01:00
Renaud Boyer
a2f3aeeece
linting
2020-12-06 22:10:42 +01:00
Renaud Boyer
2b9cb44cdb
linting
2020-12-06 22:10:16 +01:00
Renaud Boyer
c09b6ef675
linting
2020-12-06 22:08:35 +01:00
Renaud Boyer
1c73f07d18
linting
2020-12-06 22:08:05 +01:00
Renaud Boyer
a8d67f94e2
linting
2020-12-06 22:07:18 +01:00
Renaud Boyer
f3303ee6bb
linting
2020-12-06 22:06:03 +01:00
Renaud Boyer
4e93e511ec
linting
2020-12-06 22:05:13 +01:00
Renaud Boyer
f1fb0ebe1f
linting
2020-12-06 22:04:21 +01:00
Renaud Boyer
b7e6270a18
linting
2020-12-06 22:03:47 +01:00
Renaud Boyer
a45b6df78c
linting
2020-12-06 22:03:06 +01:00
Renaud Boyer
479a9d1a35
linting
2020-12-06 22:02:18 +01:00
Renaud Boyer
47b1398cad
linting
2020-12-06 22:01:43 +01:00
Renaud Boyer
4bf22771af
linting
2020-12-06 22:01:38 +01:00
Renaud Boyer
43d9dbc1fc
linting
2020-12-06 22:00:01 +01:00
Son NK
b0e39949cb
fix embed video on mobile view
2020-12-06 19:39:12 +01:00
Son NK
fec281b84f
Add include_sender_in_reverse_alias on Setting page
2020-12-06 19:38:37 +01:00
Son NK
ce2d68a64d
take into account include_sender_in_reverse_alias when creating reverse-alias
2020-12-06 19:37:20 +01:00
Son NK
eab09d8c32
Add User.include_sender_in_reverse_alias column. Null for existing user, False for new user.
2020-12-06 19:36:39 +01:00
Renaud Boyer
7bac9e82b9
linting
2020-12-06 18:04:29 +01:00
Renaud Boyer
7e1a474875
linting
2020-12-06 18:02:47 +01:00
Renaud Boyer
1ced8f76b7
linting
2020-12-06 18:02:23 +01:00
Renaud Boyer
4bcc0d107f
linting
2020-12-06 18:01:55 +01:00
Renaud Boyer
fad64ff064
linting
2020-12-06 18:00:41 +01:00
Renaud Boyer
fefbaeb143
linting
2020-12-06 18:00:06 +01:00
Renaud Boyer
1e5185b328
linting
2020-12-06 17:59:07 +01:00
Renaud Boyer
bcdb4c08d9
linting
2020-12-06 17:58:56 +01:00
Renaud Boyer
a46a03be85
linting
2020-12-06 17:57:10 +01:00
Son NK
83df119178
do not replace for "application/*"
2020-12-04 11:33:49 +01:00
Son NK
59daaa3164
ignore multipart/signed when replacing message
2020-12-03 17:52:11 +01:00
Son NK
255a7e085a
add index on user_id, mailbox_id, ... if possible
2020-12-02 17:33:03 +01:00
Son NK
81f9f9f41b
optimize get_stats(): use session.query instead of EmailLog.query
2020-12-02 17:30:56 +01:00
Son NK
450b101e6e
add /live endpoint
2020-12-02 16:34:28 +01:00
Son NK
66abbf2614
make sure to remove \n from alias name
2020-12-02 12:25:23 +01:00
Son NK
8551dade7c
hide replace reverse alias option
2020-12-01 18:36:24 +01:00
Son NK
cd680bcd7f
ignore content type like image/, video/, audio/ in replace()
2020-12-01 18:34:38 +01:00
Son NK
2107bd4b08
remove Black Friday promo
2020-12-01 10:07:53 +01:00
Son NK
652bb6a369
take into account multipart/mixed in replace()
2020-11-30 19:45:45 +01:00
Son NK
692c81ac2a
add warning about Gmail issue if reverse-alias replacement option
2020-11-30 19:16:10 +01:00
Son NK
cefa68d392
Create replace() in email_utils
2020-11-30 15:15:13 +01:00
Son NK
0b95ca33b8
use no encoding for 8bit and binary
2020-11-30 10:49:04 +01:00
Son NK
f804332c2d
refactor: create EmailEncoding enum
2020-11-30 10:48:16 +01:00
Son NK
86636b2eb7
fix delete user profile picture
2020-11-27 16:36:21 +01:00
Son NK
d61f45ea86
use 7bit as default encoding
2020-11-26 17:22:17 +01:00
Son NK
1241838b26
take into account message encoding in add_header()
2020-11-26 17:03:50 +01:00
Son NK
e2a7061429
add get_encoding() and encode_text()
2020-11-26 17:01:05 +01:00
Son NK
d35faf7154
comment out paddle issue annoucement
2020-11-26 10:39:44 +01:00
Son NK
adfbfe8026
Use load_public_key_and_check when adding new PGP key
2020-11-26 10:27:32 +01:00
Son NK
5b9eb8686a
add id to mailbox repr
2020-11-26 10:08:09 +01:00
Son NK
03383eb181
display Paddle issue as announcement on pricing page
2020-11-25 17:43:02 +01:00
Son NK
ca625e60d5
fix add pgp
2020-11-25 17:29:54 +01:00
Son NK
bb8c9451c4
catch all exception in load_public_key()
2020-11-25 14:31:14 +01:00
Son NK
4381314f6f
preload email_log.mailbox
2020-11-24 21:51:25 +01:00
Son NK
297857a140
Remove _MAILBOX_ID_HEADER
2020-11-24 16:50:55 +01:00
Son NK
6b07be5677
add email_log.mailbox_id column
2020-11-24 16:35:16 +01:00
Son NK
bcb2657de3
add remove button on custom domain name
2020-11-24 12:02:47 +01:00
Son NK
3d75ef974a
user can turn on/off pgp on mailbox that has valid pgp_finger_print
2020-11-24 11:22:41 +01:00
Son NK
cbbb472d06
refactor
2020-11-24 11:22:41 +01:00
Son NK
c707342695
Use pgp_enabled() instead of pgp_finger_print
2020-11-24 11:22:41 +01:00
Son NK
5997e5b5b5
add Mailbox.disable_pgp column
2020-11-24 11:22:41 +01:00
Son NK
33e6342a9c
use warning log when user uses premium domain
2020-11-23 10:43:50 +01:00
Son NK
836b602316
fix
2020-11-22 13:50:57 +01:00
Son NK
bcdf522174
create normalize_reply_email(): handle case where reply email contains space, quote, etc
2020-11-22 13:07:09 +01:00
Son NK
a1d5b01143
make sure mailbox email is valid
2020-11-22 12:18:31 +01:00
Son NK
fbf242f6c6
handle new name can be null
2020-11-22 12:10:19 +01:00
Son NK
f069d2f083
use getaddresses to parse multiple address from To, CC header. Remove get_addrs_from_header()
2020-11-21 19:15:02 +01:00
Son NK
8aed5ced3f
make sure a custom domain name does not contain a linebreak
2020-11-20 18:40:07 +01:00
Son NK
78ddf16c87
make sure alias name does not contain a linebreak
2020-11-20 18:39:23 +01:00
Son NK
c25a5b50f6
make sure reply_email only contain lowercase
2020-11-20 10:03:40 +01:00
Son NK
75c3fa1c11
make sure reply-email only uses ascii-encoded char
2020-11-18 15:36:39 +01:00
Son NK
ed22701cbe
fix duplicate pinned alias in get_alias_infos_with_pagination_v3
2020-11-18 12:08:36 +01:00
Son NK
9ca129cb97
use warning level for cannot decode error
2020-11-18 11:43:25 +01:00
Son NK
5b9dc88c67
make sure alias prefix cannot be more than 40 chars
2020-11-18 10:38:35 +01:00
Son NK
0224e5f8a6
Fix SpamAssassin: init all class fields
2020-11-18 10:28:32 +01:00
Son NK
319078fceb
use contact email when generating reply-email
2020-11-18 10:24:39 +01:00
Son NK
0963049d1f
use utf-8 when unknown charset in parseaddr_unicode()
2020-11-18 10:03:58 +01:00
Son NK
28d42a7a22
Use get_header_unicode() in get_addrs_from_header()
2020-11-18 10:03:00 +01:00
Son NK
be510ea1d7
use utf-8 if unknown charset in get_header_unicode()
2020-11-18 10:02:10 +01:00
Son NK
6ed6218895
black
2020-11-17 09:27:45 +01:00
Son NK
145fc9c67c
Add reverse_alias_address to GET /api/aliases/:alias_id/activities
2020-11-17 09:27:30 +01:00
Son NK
aada12f17e
return reverse_alias_address in POST /api/aliases/:alias_id/contacts and GET /api/aliases/:alias_id/contacts
2020-11-16 19:39:00 +01:00
Son NK
9154b4656d
refactor: create is_reply_email()
2020-11-16 19:22:19 +01:00
Son NK
3d153f5203
make sure user can't choose "ra" as directory name
2020-11-16 19:18:33 +01:00
Son NK
1926408a13
Add dns_utils.get_ns()
2020-11-16 19:16:06 +01:00
Son NK
75ba1669e0
Create generate_reply_email() and refactor
2020-11-16 19:15:09 +01:00
Son NK
15a6d9630a
Handle sender_format in PATCH /api/setting
2020-11-15 19:43:37 +01:00
Son NK
c794e73abd
Add EnumE.has_name(), EnumE.get_value()
2020-11-15 19:43:01 +01:00
Son NK
f0f81930bc
Return "sender_format" in GET /api/setting
2020-11-15 19:35:07 +01:00
Son NK
d8c9078708
Add EnumE.get_name()
2020-11-15 19:34:00 +01:00
Son NK
aee917a3ef
Add GET /api/custom_domains/:custom_domain_id/trash
2020-11-15 19:24:54 +01:00
Son NK
de495b9afe
return nb_alias in GET /api/custom_domains
2020-11-15 19:13:00 +01:00
Son NK
9d24b1b88a
GET /api/custom_domains
2020-11-15 19:09:25 +01:00
Son NK
f6568aca6a
Return pinned in GET /api/aliases/:alias_id, GET /api/v2/aliases
2020-11-15 19:01:11 +01:00
Son NK
f500a495b7
User can pin an alias
2020-11-15 18:46:43 +01:00
Son NK
ae05c164c9
Support pinned in PATCH /api/aliases/:alias_id
2020-11-15 18:46:27 +01:00
Son NK
6c7018dd33
Take into account pinned alias in get_alias_infos_with_pagination_v3
2020-11-15 18:42:29 +01:00
Son NK
abf50e302b
Add Alias.pinned column
2020-11-15 18:38:07 +01:00
Son NK
08902bf784
small style refactor
2020-11-15 18:31:10 +01:00
Son NK
9cfb6d412a
Add /api/v5/alias/options
2020-11-14 16:45:22 +01:00
Son NK
f452c79aec
Add /v2/setting/domains
2020-11-14 16:37:36 +01:00
Son NK
f62c568dd0
Add Contact.invalid_email column
2020-11-14 15:54:06 +01:00
Son NK
3489e41fdb
Add NOREPLY setting
2020-11-14 15:53:20 +01:00
Son NK
2c46d1db8e
Add PGP_SIGNER and display if it's set
2020-11-14 13:00:14 +01:00
Son NK
a072d6c0cd
only report the paddle error if it's not 147
2020-11-14 12:55:53 +01:00
Son NK
f16676e921
email.message_from_string can also throw LookupError when non-existent charset is set
2020-11-13 18:08:56 +01:00
Son NK
b4e5e3eecb
user can choose a referral code
2020-11-13 16:18:09 +01:00
Son NK
25de8001e2
fix circular import
2020-11-12 17:56:03 +01:00
Son NK
1c061ceb59
Schedule domain deletion instead of deleting it immediately
2020-11-12 17:41:47 +01:00
Son NK
ec4d879836
change promotion to 1st year only
2020-11-10 22:37:58 +01:00
Son NK
5570300699
use 2 random words when creating random alias
2020-11-10 18:52:31 +01:00
Son NK
4e16eb7403
fix
2020-11-10 17:42:23 +01:00
Son NK
4666d21f63
email.message_from_string can also throw KeyError when 'content-transfer-encoding' is absent
2020-11-10 17:26:24 +01:00
Son NK
632a5bbbc8
handle UnicodeEncodeError in copy() and to_bytes()
2020-11-10 16:02:19 +01:00
Son NK
c3f73b25b2
decode the subject
2020-11-09 21:16:50 +01:00
Son NK
b2f9479bce
failover when ascii encoding fails
2020-11-09 20:58:39 +01:00
Son NK
44c3ac1741
Replace 2.99 by 3, 29.99 by 30
2020-11-09 17:56:26 +01:00
Son NK
a35256d161
fix paddle
2020-11-09 17:34:58 +01:00
Son NK
2cc7cb6a37
use to_bytes instead of .as_bytes()
2020-11-09 17:02:10 +01:00
Son NK
15466903d1
Support OTHER_PADDLE_MONTHLY_PRODUCT_IDS, OTHER_PADDLE_YEARLY_PRODUCT_IDS config
2020-11-09 16:56:17 +01:00
Son NK
3f8e5d0a8b
add more logging
2020-11-08 22:39:49 +01:00
Son NK
a9297078d3
fix dkim clipboard
2020-11-08 22:39:38 +01:00
Son NK
76389647bb
add black friday coupon code
2020-11-08 16:31:24 +01:00
Son NK
4be182320e
black
2020-11-07 13:00:58 +01:00
Son NK
e659680875
add_header()
2020-11-07 13:00:12 +01:00
Son NK
f57f29a97b
Able to set a generic subject for PGP-enabled mailbox
2020-11-07 12:58:51 +01:00
Son NK
7cc57106de
Add Mailbox.generic_subject column
2020-11-07 12:48:44 +01:00
Son NK
6c626520d3
handle_bounce_reply_phase
2020-11-04 12:32:15 +01:00
Son NK
f4f2db0f04
use the same error structure in apple endpoints
2020-11-03 16:13:10 +01:00
Son NK
6e0394d980
fix filter not working when alias has several mailboxes
2020-11-03 15:10:57 +01:00
Son NK
4b8a2a1851
add tests for sign_data
2020-11-03 13:30:13 +01:00
Son NK
c1b8f717b5
improve DNS page
2020-11-03 13:12:22 +01:00
Son NK
4b6368b378
make sure only verified mailbox can be used as default
2020-11-03 12:43:01 +01:00
Son NK
19ac657c1c
add GET /api/v2/mailboxes
2020-11-03 12:14:13 +01:00
Son NK
273537e7ae
use same mailbox format for "POST /api/mailboxes" and "GET /api/mailboxes"
2020-11-03 11:22:01 +01:00
Son NK
a989545505
make sure alias contact address is valid
2020-11-03 11:13:43 +01:00
Son NK
04a418e655
fix contact name always converted to lowercase
2020-11-03 11:11:55 +01:00
Son NK
9fafddd603
use is_valid_email instead of regex
2020-11-03 11:11:09 +01:00
Son NK
751cc05534
check contact address in POST /aliases/<int:alias_id>/contacts
2020-11-03 11:10:32 +01:00
Son NK
72a34e28be
add is_valid_email()
2020-11-03 11:09:37 +01:00
Son NK
a890557c7f
Use check_alias_prefix() to check alias prefix
2020-11-03 10:39:08 +01:00
Son NK
8d0e243c83
sign PGP forwarded email if PGP_SENDER_PRIVATE_KEY
2020-11-02 19:09:57 +01:00
Son NK
3f150e5944
add new param PGP_SENDER_PRIVATE_KEY_PATH
2020-11-02 19:06:47 +01:00
Son NK
ec1b7dd8b8
return latest_activity=null if there's no activity in GET /api/v2/aliases
2020-11-01 12:32:20 +01:00
Son NK
38ca2341bc
fix mailbox query in get_alias_infos_with_pagination_v3
2020-11-01 12:24:19 +01:00
Son NK
e49169b887
Reset default random alias domain setting if user is not premium
2020-11-01 09:37:09 +01:00
Son NK
28563b9653
fix duplicated display
2020-10-30 13:05:45 +01:00
Son NK
c076c7c7f3
PATCH /api/setting
2020-10-28 17:47:26 +01:00
Son NK
12f7485cb1
Add GET /api/setting/domains
2020-10-28 17:30:57 +01:00
Son NK
77bf9537d0
Add GET /api/setting
2020-10-28 17:23:58 +01:00
Son NK
91534d3cf2
Add PATCH /api/user_info
2020-10-28 17:12:21 +01:00
Son NK
3f40e3c1cf
return profile_picture_url in GET /user_info
2020-10-28 17:11:33 +01:00
Son NK
6c816d51d6
fix load_public_key_and_check, remove IncorrectPassphrasePGPException
2020-10-28 12:21:42 +01:00
Son NK
9210459a72
add pgpy
...
- add pgpy to poetry
- add test PGP keys to local_data
- add encrypt_file_with_pgpy()
- use randomly pgpy
2020-10-28 11:50:14 +01:00
Son NK
71be3b27f7
redirect user to dashboard when setup is done
2020-10-28 10:49:50 +01:00
Son NK
a2254cfdf8
remove pgp debugging code
2020-10-27 20:27:34 +01:00
Son NK
1abebe8067
improve how to use reverse-alias
2020-10-27 18:59:59 +01:00
Son NK
6803d4bf42
fix import error
2020-10-26 10:32:56 +01:00
Son NK
b09bb42b2d
handle case where highlight_alias_id is not a number
2020-10-26 10:31:38 +01:00
Son NK
f0b46c1887
use warning log for /alias/options
2020-10-26 10:31:19 +01:00
Son NK
477481c41e
save the data for debugging when pgp fails
2020-10-24 19:03:19 +02:00
Son NK
83f3309149
use warning log for /v3/alias/options
2020-10-24 16:28:07 +02:00
Son NK
c140d3f842
improve reverse-alias instruction use
2020-10-24 16:23:47 +02:00
Son NK
9f50ab4cce
Handle IntegrityError when creating new alias
2020-10-24 15:50:29 +02:00
Son NK
5da7953a64
handle the case a directory alias is created concurrently
2020-10-23 11:55:01 +02:00
Son NK
85a1d67c6f
put browser extension onboarding email to the welcome email
2020-10-22 11:46:15 +02:00
Son NK
bc1eeb4f01
move TOTP to top
2020-10-22 11:09:37 +02:00
Son NK
677f150fef
add unsubscribe header to com emails
2020-10-22 10:44:05 +02:00
Son NK
ea45ac119e
Refactor: create Alias.unsubscribe_link
2020-10-22 10:37:02 +02:00
Son NK
4f7b30c204
Set user.paid_lifetime if paid coupon
2020-10-21 19:31:25 +02:00
Son NK
050c2feaeb
Add LifetimeCoupon.paid column
2020-10-21 19:31:07 +02:00
Son NK
459f821036
fix name
2020-10-20 20:09:44 +02:00
Son NK
a001132497
improve wording
2020-10-20 18:07:21 +02:00
Son NK
14b86749df
add more precision on what is account email
2020-10-20 18:02:52 +02:00
Son NK
6921ab05fd
reorganise settings sections
2020-10-20 17:47:58 +02:00
Son NK
635182e1ef
move lifetime case to first
2020-10-20 17:45:06 +02:00
Son NK
acce32fcc8
add doc
2020-10-20 17:42:05 +02:00
Son NK
32e25f5378
bring back alias/options v1,2,3
2020-10-20 17:31:43 +02:00
Son NK
828799010b
Add CustomDomain.nb_failed_checks column
2020-10-20 16:50:01 +02:00
Son NK
8482a55df6
display whether a domain is premium
2020-10-20 16:44:22 +02:00
Son NK
03521b5a84
do not check alias_domain_prefix when DISABLE_ALIAS_SUFFIX is set
2020-10-20 16:42:05 +02:00
Son NK
886d3a761c
delete /alias/options v1,v2,v3
2020-10-19 12:08:47 +02:00
Son NK
a2a4e50f27
remove potential duplicate in available_alias_domains
2020-10-15 17:02:54 +02:00
Son NK
1524bb4e4b
black
2020-10-15 16:52:55 +02:00
Son NK
dbf0404aa9
rename public_domain -> sl_domain if applicable
2020-10-15 16:52:38 +02:00
Son NK
4a32db5b5d
rename PublicDomain -> SLDomain
2020-10-15 16:51:07 +02:00
Son NK
0a4fc76b61
optimize import
2020-10-15 16:45:28 +02:00
Son NK
adff510359
use PublicDomain instead if ALIAS_DOMAINS
2020-10-15 16:45:08 +02:00
Son NK
521d8e51a5
small fix
2020-10-15 16:25:56 +02:00
Son NK
1fcf166c00
small refactor: add should_add_dkim_signature
2020-10-15 16:24:04 +02:00
Son NK
e79522b638
take into account Premium domains
2020-10-15 16:21:31 +02:00
Son NK
dcbd7baabc
Add PublicDomain.premium_only column
2020-10-15 16:08:06 +02:00
Son NK
90163220cf
rename email_domain_can_be_used_as_mailbox -> email_can_be_used_as_mailbox
2020-10-15 16:05:47 +02:00
Son NK
f56b0cddb2
use exception log for /alias/options endpoints
2020-10-15 16:02:04 +02:00
Son NK
cd15c64731
Add PREMIUM_ALIAS_DOMAINS config
2020-10-15 16:01:44 +02:00
Son NK
805e78cad1
rename email_belongs_to_alias_domains -> email_belongs_to_default_domains
2020-10-14 18:46:05 +02:00
Son NK
6557b7157f
handle the Paddle 147 error
2020-10-12 17:37:04 +02:00
Son NK
8268568f08
add mailbox.disabled column. Disable a mailbox if it fails tests for 10 days consecutive.
2020-10-12 13:28:21 +02:00
Son Nguyen Kim
4e45a619cd
Merge pull request #302 from TheLastProject/feature/custom_domain_random_suffix
...
Support random suffix for personal domains
2020-10-11 18:06:06 +02:00
Sylvia van Os
9702037573
Reformat with Black
2020-10-09 23:00:10 +02:00
Sylvia van Os
26d0437009
Make prefix generation configurable per domain
2020-10-09 22:54:13 +02:00
Son NK
5486f54955
refactor verify_prefix
2020-10-09 22:08:29 +02:00
Son NK
8dbd3c1c68
more detailed error message when an alias can't be created
2020-10-09 11:48:52 +02:00
Sylvia van Os
6b085960cb
Merge branch 'master' of https://github.com/simple-login/app into feature/custom_domain_random_suffix
2020-10-07 18:52:54 +02:00
Sylvia van Os
739fb50b04
Format with Black
2020-10-05 21:12:13 +02:00
Sylvia van Os
aeef9ccca9
Support random suffix for personal domains
2020-10-05 21:00:52 +02:00
Son Nguyen Kim
a4bcf59bfe
Merge pull request #297 from TheLastProject/feature/dedupe_email
...
Dedupe email address
2020-10-04 15:08:15 +02:00
Son NK
7e425c0338
disable login if user is disabled
2020-10-04 12:49:43 +02:00
Son NK
6c37a91c6d
add User.disabled field
2020-10-04 12:49:43 +02:00
Son NK
e225bffc30
add backref for some models
2020-10-04 12:49:43 +02:00
Son Nguyen Kim
73e90e6892
Merge pull request #298 from TheLastProject/feature/autogenerated_icon
...
Show icon if address was autogenerated
2020-10-03 10:54:41 +02:00
Sylvia van Os
ff0eaa4bbf
Show icon if address was autogenerated
2020-10-02 20:52:29 +02:00
Sylvia van Os
7be674c13b
Reformat with Black
2020-10-01 21:51:50 +02:00
Sylvia van Os
d8ed1cbbc3
Dedupe email address
2020-10-01 21:35:11 +02:00
Son NK
cbdcab7d24
handle the ValueError in SpamAssassin
2020-09-30 17:24:03 +02:00
Son NK
770b15aba3
do not hardcode spamd user
2020-09-30 14:01:49 +02:00
Son NK
6a4622fca9
replace cx42 by spamd for SpamAssassin
...
get rid of "info: spamd: handle_user (userdir) unable to find user: 'cx42'" error
2020-09-30 12:47:39 +02:00
Son NK
772a2e7355
add "export alias" button
2020-09-30 12:20:18 +02:00
Son NK
8ed619687f
ignore UnicodeDecodeError when parsing SpamAssassin response
2020-09-30 12:00:05 +02:00
Son NK
8517e7d356
refactor com emails: remove non-uses, move to the right location
2020-09-30 11:51:43 +02:00
Son Nguyen Kim
4e7aec7dce
Merge pull request #293 from TheLastProject/patch-1
...
Add dot after DKIM
2020-09-30 11:09:01 +02:00
Son NK
91e3cc5dcb
able to set a different host than 127.0.0.1 and apply black format
2020-09-30 10:32:21 +02:00
Son NK
078368362c
copy spamassassin client code from https://github.com/petermat/spamassassin_client
2020-09-30 10:29:52 +02:00
Sylvia van Os
b95c44e3db
Add dot after DKIM
...
To prevent the domain name being added after it
2020-09-29 19:17:56 +02:00
Son NK
e661f90ce7
do not hard exit when memory exceeds the threshold
2020-09-29 12:33:36 +02:00
Son NK
571e39bb30
user can add/remove authorized address
2020-09-28 21:09:20 +02:00
Son NK
0830bba218
Add AuthorizedAddress model
2020-09-28 17:40:54 +02:00
Son NK
d6d686c4c3
add argument commit= to create()
2020-09-28 17:40:30 +02:00
Son NK
53f66d0f3c
handle the "past due" subscription case: downgrade a subscription if it's renewed
2020-09-24 09:34:35 +02:00
Son NK
f274bac053
fix typo
2020-09-23 19:36:54 +02:00
Son NK
d81ad2fd12
sanitize mailbox before creating: remove empty space
2020-09-17 17:02:50 +02:00
Son NK
4b697fc897
parseaddr_unicode: handle case where name is bytes
2020-09-16 17:34:33 +02:00
Son NK
03dfafe1cf
handle linebreak in parseaddr_unicode
2020-09-16 17:28:01 +02:00
Son NK
5480f6d35b
handle case highlight_id is not int
2020-09-14 19:54:00 +02:00
Son NK
40892f8253
contact email can contain whitespace
2020-09-14 18:21:30 +02:00
Son NK
299f7d3fba
remove unnecessary sanitize
2020-09-14 17:58:15 +02:00
Son NK
491f4de120
add Contact mail_from and from_header column
2020-09-14 17:55:55 +02:00
Son NK
ed2e748d1e
sanitize envelope mail_from and rcpt_tos
2020-09-14 17:30:01 +02:00
Son NK
c48b5038f3
sanitize rcpt_to in greylisting_needed
2020-09-14 12:20:16 +02:00
Son NK
18263c2fd5
handle case alias already created in try_auto_create_catch_all_domain()
2020-09-14 12:18:15 +02:00
Son NK
e291a71037
fix duplicate contact on contact page
2020-09-14 11:38:01 +02:00
Son NK
1026f0763d
fix wording
2020-09-12 14:57:33 +02:00
Son NK
c6eba9f125
improve welcome email
2020-09-12 14:34:32 +02:00
Son NK
3545ae7d97
improve intro
2020-09-12 14:32:55 +02:00
Son NK
2cfaa93a5f
create a first alias to receive SimpleLogin newsletter when user is created
2020-09-12 14:31:31 +02:00
Son NK
8fe508c5d3
Add User.newsletter_alias_id column
2020-09-12 14:30:49 +02:00
Son NK
c625a178e8
use RequestException instead of ConnectionError
2020-09-11 16:55:32 +02:00
Son NK
76175dc517
update batch import wording
2020-09-11 16:49:39 +02:00
Son NK
f664243e42
add batch-import page
2020-09-10 20:14:55 +02:00
Son NK
6da48298a6
Add BatchImport model
2020-09-10 20:05:25 +02:00
Son NK
a660a05f83
use warning for problem with random alias default domain
2020-09-10 09:32:51 +02:00
Son NK
a0b50762ee
remove "how to use" on custom domain page
2020-09-08 13:51:46 +02:00
Son NK
7b6e58ef95
always show the "how to send email" help
2020-09-08 13:51:00 +02:00
Son NK
d1eb1ea799
handle case apple server not accessible
2020-09-05 20:56:03 +02:00
Son NK
5cf0a4bcfe
handle case alias can be None in toggle_alias
2020-09-05 20:54:08 +02:00
Son NK
2d395f99bb
make sure to remove whitespace in alias
2020-09-02 09:56:16 +02:00
Son NK
6629b8687b
set cookie setup_done=true on the setup_done page
2020-09-01 20:47:57 +02:00
Son NK
4cb3e54821
send at max 1 email / 30 days for DNS issue on custom domain
2020-08-31 17:36:27 +02:00
Son NK
85b87bbacb
improve send_email_with_rate_control to use on any day range
2020-08-31 17:32:46 +02:00
Son NK
e4c4797cdb
do not mark a domain as unverified if it fails the MX check
2020-08-31 17:11:18 +02:00
Son NK
63e228d9f4
only alert on invalid mailbox that has too many email logs
2020-08-30 19:59:39 +02:00
Son NK
77c67c5314
create aliases_for_mailbox() and nb_email_log_for_mailbox()
2020-08-30 19:56:45 +02:00
Son NK
e117726cd9
send alert email when a mailbox is an email alias
2020-08-30 19:06:50 +02:00
Son NK
ffc59a6fad
Add check_custom_domain cronjob
2020-08-29 19:05:32 +02:00
Son NK
a3d919db2e
take into account mailbox in alias search
2020-08-29 19:03:33 +02:00
Son NK
37a53757eb
add send_email_at_most_times
2020-08-27 10:43:30 +02:00
Son NK
fdedc24358
black new version
2020-08-27 10:20:48 +02:00
Son NK
9c72f4dec0
Add Alias.disable_email_spoofing_check column
2020-08-26 14:39:03 +02:00
Son NK
4101142253
black
2020-08-26 11:45:24 +02:00
Son NK
f213469e9f
display nb-reply, nb-forward on alias contact page
2020-08-26 11:45:07 +02:00
Son NK
cd687664d1
fix email template
2020-08-25 13:03:34 +02:00
Son NK
ab911fd55e
do not forward cycle email: email sent to alias from its mailbox
2020-08-25 12:51:19 +02:00
Son Nguyen Kim
637bc569eb
Merge pull request #260 from FabioWidmer/improvements-1
...
Improvements for Self Hosting & More
2020-08-24 20:16:59 +02:00
Son NK
9237f43c19
use warning log level for tampered alias
2020-08-24 19:58:21 +02:00
Son NK
17c7303fb5
add get_header_from_bounce()
2020-08-24 10:17:22 +02:00
Son NK
eb6647d62e
fix
2020-08-23 20:24:46 +02:00
Son NK
77bfa67402
fix delete_alias: do not use IntegrityError
2020-08-23 20:17:50 +02:00
Fabio Widmer
6a45010740
Remove secret variables from Jinja
2020-08-22 18:38:44 +02:00
Son NK
ef196c5b4a
use 5.5 as max spam score
2020-08-22 16:58:51 +02:00
Son NK
00a08d898a
refactor: do not use latest_activity in subquery
2020-08-21 23:10:23 +02:00
Son NK
d7583f1733
handle case where alias does not have any activity in get_alias_infos_with_pagination_v3
2020-08-21 20:39:18 +02:00
Son NK
30fe09185f
create get_alias_infos_with_pagination_v3 - reduce nb queries used in get_alias_infos_with_pagination_v2
2020-08-21 19:51:48 +02:00
Son NK
dc8c2f403e
try to fix Message.as_bytes() by trying different policies
2020-08-21 12:01:11 +02:00
Son NK
c77b0c07b4
fix alias sorting
2020-08-20 10:11:41 +02:00
Son NK
b8e0ee424c
pass userId to Paddle
2020-08-20 09:44:45 +02:00
Son NK
7e345e4db3
fix typo
2020-08-19 10:03:07 +02:00
Son NK
7f34dc1a20
remove auto email fill-up on paddle
2020-08-19 09:22:54 +02:00
Fabio Widmer
aa18b7ecd1
Add variables to Jinja
2020-08-18 08:47:41 +02:00
Fabio Widmer
28dbafe1f7
Hide deprecated social login if not used
2020-08-16 12:57:12 +02:00
Son NK
0c6a5f4333
add EmailLog.spam_score column
2020-08-16 11:59:53 +02:00
Son NK
359eec23c0
take into account spam email during reply phase on refused email page
2020-08-15 16:58:11 +02:00
Son NK
f9300009e5
refactor: rename forward -> contact
2020-08-15 16:56:16 +02:00
Son NK
bf555ed605
detect spam in reply phase
2020-08-15 16:53:57 +02:00
Son NK
08db23658a
add SPAMASSASSIN_HOST param
2020-08-15 16:33:48 +02:00
Son NK
c0f263ee70
add Monitoring model
2020-08-15 13:15:20 +02:00
Son NK
d8e4396a70
add HOST param
2020-08-14 19:09:45 +02:00
Fabio Widmer
fbb17b1f57
Fix email_utils.py formatting
2020-08-14 16:50:59 +02:00
Fabio Widmer
9fa9dbe821
Fix email_utils.py formatting
2020-08-14 16:30:43 +02:00
Fabio Widmer
9226492f83
More self hosting improvements
2020-08-14 16:23:29 +02:00
Son NK
89830e2173
fix import
2020-08-14 12:06:26 +02:00
Son NK
6bc0c5ada4
fix Mailbox.delete: use alias_utils.delete_alias
2020-08-14 12:03:41 +02:00
Son NK
b4eb110971
fix Directory.create: use alias_utils.delete_alias
2020-08-14 12:02:54 +02:00
Son NK
2cae0200a8
use delete_alias(alias,user) instead of Alias.delete, DomainDeletedAlias.create, DeletedAlias.create
2020-08-14 12:02:33 +02:00
Son NK
4434ad62dd
handle the case 2 users want to use the same email address
2020-08-13 11:00:48 +02:00
Son NK
b7cbaa6e84
delete the expired ChangeEmail object
2020-08-13 10:59:39 +02:00
Fabio Widmer
8e71e8e7f4
A few (self hosting) improvements
2020-08-12 16:12:41 +02:00
Fabio Widmer
d0ed69f8aa
Add Plausible Analytics support
2020-08-12 15:24:34 +02:00
Son NK
b395c2ebd0
use warning log for FIDO error
2020-08-12 12:48:51 +02:00
Son NK
9def7df974
also search for PGP key in contact
2020-08-08 10:26:24 +02:00
Son NK
8a11e42da9
notify admin when user cancels
2020-08-07 10:01:11 +02:00
Son NK
c74857c7e7
use alias name when searching
2020-08-07 09:56:44 +02:00
Son NK
2f00294ba3
replace pgp_enabled by disable_pgp
2020-08-06 14:22:28 +02:00
Son NK
1f0ef13ff2
do not require user to re-enter TOTP code when cancelling TOTP
2020-08-05 12:30:56 +02:00
Son NK
f17608df50
add link back to home page in recovery page
2020-08-05 12:28:20 +02:00
Son NK
6cb589350b
avoid adding a built-in domain as custom domain
2020-08-04 21:07:45 +02:00
Son NK
a3051b3d45
black
2020-08-04 20:12:15 +02:00
Son NK
b3ca7d1d5b
Return pgp_enabled in GET /api/v2/aliases
2020-08-04 20:11:59 +02:00
Son NK
03841693ba
Return support_pgp in GET /api/v2/aliases
2020-08-04 20:09:42 +02:00
Son NK
f2fb599664
Optimize Alias.get_contacts() to retrieve the latest reply for each contact in a single query
2020-08-04 11:37:59 +02:00
Son NK
918b18870f
show mailboxes that a catch-all alias belongs to
2020-08-01 12:41:48 +02:00
Son NK
41e2283d93
domain catch-all alias belongs to domain mailboxes
2020-08-01 12:31:43 +02:00
Son NK
f5bc166f39
able to choose mailboxes for a domain
2020-08-01 12:31:02 +02:00
Son NK
ec8f120085
small fixes in directory.py
2020-08-01 12:22:52 +02:00
Son NK
e8fc9752b5
Add DomailMailbox model
2020-08-01 12:20:59 +02:00
Son NK
ed22f5116f
fix api key counter not correctly incremented
2020-08-01 10:14:59 +02:00
Son NK
68eeb2e121
add rel="noopener" for target="_blank" link
2020-07-30 10:09:10 +02:00
Son NK
efe1ab641f
add hCaptcha check
2020-07-23 12:43:55 +02:00
Son NK
307e3c93c6
Add HCAPTCHA_SECRET, HCAPTCHA_SITEKEY param
2020-07-23 12:40:50 +02:00
Son NK
38a6bcc461
add warning log
2020-07-23 11:32:11 +02:00
Son NK
d89e41d0e5
use user.max_spam_score if present
2020-07-23 11:11:43 +02:00
Son NK
8e9968a7d9
Add User.max_spam_score column
2020-07-23 11:09:28 +02:00
Son NK
6437ee46e0
use LOG.exception instead of LOG.error to provide stacktrace
2020-07-17 12:59:07 +02:00
Son NK
7f29756230
do not hardcode oauth urls
2020-07-16 23:48:47 +02:00
Son NK
515b3510a8
use warning when user is out of quota
2020-07-15 19:14:37 +02:00
Son NK
8f17cda794
use warning error for alias expiration error
2020-07-13 20:40:26 +02:00
Son NK
28c96d0d35
return 412 when alias ceration time is expired
2020-07-11 19:23:56 +02:00
Son NK
1bbc416ec1
fix the case public domain is also a custom domain for a specific user: check for public domain first.
2020-07-05 11:45:00 +02:00
Son NK
f9cb40aa5b
user can choose a random alias domain in a list of public domains
2020-07-04 23:29:06 +02:00
Son NK
4b479ea003
take into account user.default_random_alias_public_domain_id in create_new_random()
2020-07-04 23:27:02 +02:00
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