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