Son
|
4ed60ba1d0
|
set dmarc and dkim to False for subdomain
|
2021-11-05 18:09:04 +01:00 |
|
Son
|
58e92e7462
|
user can add subdomain
|
2021-11-05 11:44:39 +01:00 |
|
Son
|
ef734d7045
|
add User.can_use_subdomain column
|
2021-11-05 11:44:04 +01:00 |
|
Son
|
3f1020d5d7
|
Add CustomDomain.is_sl_subdomain and SLDomain.can_use_subdomain columns
|
2021-11-05 11:29:10 +01:00 |
|
Son
|
516898af59
|
move all template files to templates/
|
2021-11-04 15:05:22 +01:00 |
|
Son
|
4a47e8c9c6
|
refactor: move template files to templates/
|
2021-11-04 15:00:39 +01:00 |
|
Son
|
0de85fdce3
|
redirect user directly to the client page if user has already authorized the client
|
2021-11-04 14:59:01 +01:00 |
|
Son
|
a03d87b62c
|
move files to templates/
|
2021-11-04 14:48:56 +01:00 |
|
Son
|
f8b6b20dd8
|
not create html in send_email if html isn't set
|
2021-11-04 14:27:33 +01:00 |
|
Son
|
014b7d5b1f
|
improve wording on setting page
|
2021-11-03 12:36:07 +01:00 |
|
Son
|
0ae40d599a
|
user can block contact directly on the dashboard
|
2021-11-03 11:29:46 +01:00 |
|
Son
|
51a85011b1
|
rename "send email" to "contacts"
|
2021-11-03 10:23:40 +01:00 |
|
Son
|
accbf882c4
|
user can set one_click_unsubscribe_block_sender setting
|
2021-11-03 10:11:47 +01:00 |
|
Son
|
31e39314d5
|
return "block_forward" for /api/aliases/{alias.id}/contacts
|
2021-11-02 15:55:16 +01:00 |
|
Son
|
4369137e25
|
block the sender via one click unsubscribe
|
2021-11-02 15:44:43 +01:00 |
|
Son
|
368a2f1b47
|
Add User.one_click_unsubscribe_block_sender column
|
2021-11-02 15:41:49 +01:00 |
|
Son
|
caa8656748
|
create /dashboard/block_contact/:contact_id
|
2021-11-02 15:30:18 +01:00 |
|
Son
|
b50f1d60b2
|
refactor: create headers constants for List-Unsubscribe
|
2021-11-02 14:36:37 +01:00 |
|
Son
|
52a19818b7
|
save email whose bounce info can't be parsed for debugging
|
2021-11-02 14:32:16 +01:00 |
|
Son
|
fbb1451352
|
rename file
|
2021-11-02 11:43:04 +01:00 |
|
Son
|
7fef62f67a
|
Add MessageIDMatching.email_log_id column
|
2021-11-01 18:41:36 +01:00 |
|
Son
|
db226c5706
|
black
|
2021-11-01 17:58:20 +01:00 |
|
Son
|
e67969cdcf
|
add processID to log format
|
2021-11-01 17:45:24 +01:00 |
|
Son
|
2691fff217
|
handle UnicodeDecodeError in replace()
|
2021-11-01 10:11:36 +01:00 |
|
Son
|
507d10cd89
|
user can block/unblock contact
|
2021-10-28 10:19:34 +02:00 |
|
Son
|
bc4805b1fa
|
Add POST /api/contacts/:contact_id/toggle
|
2021-10-28 10:14:20 +02:00 |
|
Son
|
9620f97449
|
add Contact.block_forward column
|
2021-10-28 10:12:56 +02:00 |
|
Son
|
02a005d076
|
increase message_id length to 1024
|
2021-10-27 16:06:56 +02:00 |
|
Son
|
8aa7b1b773
|
set client.referral_id=None when a referral is deleted
|
2021-10-26 12:06:49 +02:00 |
|
Son
|
b41b695228
|
include the referral code when user signs up via SIWSL
|
2021-10-26 12:06:16 +02:00 |
|
Son
|
04bcc24ad7
|
user can set client.referral
|
2021-10-26 12:04:16 +02:00 |
|
Son
|
1aff59e112
|
improve client UI
|
2021-10-26 11:55:42 +02:00 |
|
Son
|
f19655fc93
|
add client.referral_id column
|
2021-10-26 11:55:27 +02:00 |
|
Son
|
a0165d6381
|
remove not working on gmail part
|
2021-10-25 15:39:49 +02:00 |
|
Son
|
3d071d27a6
|
improve wording, add client url
|
2021-10-25 15:18:42 +02:00 |
|
Son
|
0fbd351bed
|
handle the referral url that has ?slref=code part
|
2021-10-25 15:02:02 +02:00 |
|
Son
|
83c5eded80
|
Referral name is required
|
2021-10-25 15:01:32 +02:00 |
|
Son
|
8cb413d5fd
|
remove unused import
|
2021-10-25 14:47:07 +02:00 |
|
Son
|
7e0609c39a
|
do not display nb_paid_user for client
|
2021-10-25 14:36:23 +02:00 |
|
Son
|
d701b84110
|
decode and encode email payload for quoted-printable email in replace()
|
2021-10-25 14:34:13 +02:00 |
|
Son
|
8680c0a739
|
do do not use the ra+ prefix for reverse alias
|
2021-10-25 14:33:42 +02:00 |
|
Son
|
befec56a86
|
display nb paid user on SIWSL app
|
2021-10-25 11:10:23 +02:00 |
|
Son
|
8bafdfc879
|
improve SIWSL wording
|
2021-10-25 11:09:30 +02:00 |
|
Son
|
9299904fc9
|
small refactor
|
2021-10-24 10:40:05 +02:00 |
|
Son
|
083b56b9a6
|
if user.disable_automatic_alias_note, do not add alias note
|
2021-10-23 18:24:28 +02:00 |
|
Son
|
50b0dc3767
|
Add User.disable_automatic_alias_note column
|
2021-10-23 17:40:57 +02:00 |
|
Son
|
d41ab5f5de
|
use words.txt instead of words_alpha.txt
|
2021-10-23 17:31:56 +02:00 |
|
Son
|
b0822519eb
|
only show the navigation arrow when #contacts > PAGE_LIMIT
|
2021-10-23 16:08:43 +02:00 |
|
Son
|
4a90c79753
|
make sure mailbox_ids is a list in /api/v3/alias/custom/new
|
2021-10-23 15:55:39 +02:00 |
|
Son
|
ecdce2307f
|
make sure input of /api/v3/alias/custom/new is a dict
|
2021-10-23 15:52:17 +02:00 |
|
Son
|
5843fa94a0
|
handle encoding typo
|
2021-10-19 18:05:56 +02:00 |
|
Son
|
9fb6e45077
|
fix the help text too close to the input
|
2021-10-19 17:38:29 +02:00 |
|
Son
|
421c121d59
|
black
|
2021-10-19 14:03:51 +02:00 |
|
Son
|
be7ae3021a
|
rename is_reply_email -> is_reverse_alias, make sure reverse-alias must end with EMAIL_DOMAIN
|
2021-10-19 12:14:16 +02:00 |
|
Son
|
1483f2e103
|
Add EmailLog.message_id, sl_message_id and MessageIDMatching table
|
2021-10-18 17:25:59 +02:00 |
|
Son
|
462164ff16
|
use tldextract to extract hostname
|
2021-10-18 11:45:48 +02:00 |
|
Son
|
d6edd59450
|
use warning level
|
2021-10-18 09:55:28 +02:00 |
|
Son
|
0b06c46f65
|
handle missing content-transfer-encoding
|
2021-10-17 17:19:44 +02:00 |
|
Son
|
283a6a530d
|
handle case address.parse can also parse an URL and return UrlAddress
|
2021-10-17 12:52:59 +02:00 |
|
Son
|
34564f6fa4
|
Add Metric2.nb_total_bounced_last_24h column
|
2021-10-15 10:46:22 +02:00 |
|
Son
|
4d740a4dc0
|
flake8
|
2021-10-15 10:39:29 +02:00 |
|
Son
|
57bfa7e933
|
make sure that a domain already used in a verified mailbox can't be added
|
2021-10-15 10:32:20 +02:00 |
|
Son
|
fcb94f0331
|
add Bounce.info column
|
2021-10-14 15:45:29 +02:00 |
|
Son
|
3bdeda3e04
|
add get_mailbox_bounce_info()
|
2021-10-14 15:10:16 +02:00 |
|
Son
|
05cf085511
|
fix
|
2021-10-13 13:32:27 +02:00 |
|
Son
|
cfe88b5df2
|
use job system to delete domain
|
2021-10-13 11:43:44 +02:00 |
|
Son
|
fbabe6fb44
|
use job system for deleting mailbox
|
2021-10-13 11:40:15 +02:00 |
|
Son
|
3a0b125323
|
fix table name
|
2021-10-13 10:52:41 +02:00 |
|
Son
|
e13a974e53
|
disable rate limiting
|
2021-10-13 10:30:04 +02:00 |
|
Son
|
074dd875dc
|
comment out "Submit for approval" section
|
2021-10-12 14:39:29 +02:00 |
|
Son
|
372466ab06
|
do not use flask-sqlalchemy
- add __tablename__ for all models
- use sa and orm instead of db
- rollback all changes in tests
- remove session in @app.teardown_appcontext
|
2021-10-12 14:36:47 +02:00 |
|
Son
|
653a03ac11
|
show tooltip on highlighted alias
|
2021-10-12 09:58:17 +02:00 |
|
Son
|
8394d7340c
|
format
|
2021-10-12 09:51:11 +02:00 |
|
Son
|
ee0ed7d9ec
|
refactor: use headers.py
|
2021-10-11 12:21:14 +02:00 |
|
Son
|
5821294ae9
|
refactor: use headers.py
|
2021-10-11 12:10:18 +02:00 |
|
Son
|
9bb83fe3e2
|
fix email thread: do not delete original message id
|
2021-10-11 12:00:37 +02:00 |
|
Son
|
a7f82b2110
|
fix test
|
2021-10-11 11:47:07 +02:00 |
|
Son
|
5d7e10f776
|
make sure when user changes password, log user out on other browsers
|
2021-10-11 11:30:41 +02:00 |
|
Son
|
fdc23b3107
|
add User.alternative_id column
|
2021-10-11 11:30:10 +02:00 |
|
Son
|
cef6579946
|
add User.lifetime_coupon_id column
|
2021-10-04 17:14:34 +02:00 |
|
Son
|
9c528b913c
|
add LifetimeCoupon.comment column
|
2021-10-04 16:48:33 +02:00 |
|
Son
|
4638155bbc
|
allow import aliases for domains that have ownership_verified
|
2021-10-02 19:18:38 +02:00 |
|
Son Nguyen Kim
|
9528bdcb2e
|
user can enable the ignore_loop_email
|
2021-09-27 15:58:04 +02:00 |
|
Son Nguyen Kim
|
339d611e63
|
remove Contact.from_header column
|
2021-09-27 12:19:33 +02:00 |
|
Son Nguyen Kim
|
8301015afd
|
do not use email_validator in get_email_domain_part()
|
2021-09-27 12:13:41 +02:00 |
|
Son Nguyen Kim
|
408322217d
|
allow user having apple subscription to switch to web subscription
|
2021-09-27 09:59:33 +02:00 |
|
Son Nguyen Kim
|
51a7dbfa52
|
Revert "not dkim sign"
This reverts commit b14534db2c .
|
2021-09-25 18:47:15 +02:00 |
|
Son Nguyen Kim
|
b14534db2c
|
not dkim sign
|
2021-09-23 19:32:06 +02:00 |
|
Son Nguyen Kim
|
469c2011aa
|
use ~all instead of -all for SPF
|
2021-09-23 10:30:59 +02:00 |
|
Son Nguyen Kim
|
0ed0ac9ea7
|
handle "text/x-python-script" in replace()
|
2021-09-23 09:19:07 +02:00 |
|
Son Nguyen Kim
|
d7d301b9c3
|
add missing h1
|
2021-09-22 16:03:58 +02:00 |
|
Son Nguyen Kim
|
3b16e502b3
|
add debug info when an email is sent from reverse-alias
|
2021-09-22 09:58:40 +02:00 |
|
Son Nguyen Kim
|
3443499ab9
|
add note for alias auto created with directory too
|
2021-09-22 09:45:42 +02:00 |
|
Son Nguyen Kim
|
1a32b654d0
|
refactor
|
2021-09-22 09:45:00 +02:00 |
|
Son Nguyen Kim
|
7674d8480e
|
refactor: rename
|
2021-09-22 09:44:35 +02:00 |
|
Son Nguyen Kim
|
ff1238a56f
|
add alias note when auto creating alias via domain
|
2021-09-22 09:43:48 +02:00 |
|
Son Nguyen Kim
|
8024b35f1d
|
refactor
|
2021-09-21 14:11:59 +02:00 |
|
Son Nguyen Kim
|
d8280af93c
|
refactor: rename
|
2021-09-21 14:09:24 +02:00 |
|
Son Nguyen Kim
|
5e9fb83150
|
fix typo
|
2021-09-21 14:08:52 +02:00 |
|
Son Nguyen Kim
|
636879ac1a
|
use another icon for pin
|
2021-09-21 12:20:44 +02:00 |
|
Son Nguyen Kim
|
9279b20975
|
only put pinned alias in default sorting
|
2021-09-21 12:20:29 +02:00 |
|
Son Nguyen Kim
|
0075cee1ee
|
default to UUID for api key code if the previous one is already used
|
2021-09-21 11:27:37 +02:00 |
|
Son Nguyen Kim
|
3c81f982ca
|
display N/A if api key name is null
|
2021-09-21 11:26:05 +02:00 |
|
Son Nguyen Kim
|
65ce47b6f7
|
Allow ApiKey.name to be null
|
2021-09-21 11:25:52 +02:00 |
|
Son Nguyen Kim
|
18acfd9a42
|
handle case mailbox new address is already used
|
2021-09-21 11:19:22 +02:00 |
|
Son Nguyen Kim
|
19088ba85f
|
refactor
|
2021-09-21 11:17:32 +02:00 |
|
Son Nguyen Kim
|
d9d67df126
|
remove unique constraint on TransactionalEmail.email
|
2021-09-21 11:15:40 +02:00 |
|
Son Nguyen Kim
|
bcc5126500
|
remove any restriction on regex
|
2021-09-21 10:57:47 +02:00 |
|
Son Nguyen Kim
|
1d09d76cb2
|
use re2 instead of re to avoid ReDOS attack
|
2021-09-21 10:57:36 +02:00 |
|
Son Nguyen Kim
|
2c60414796
|
when new rule is created, go to the rule list section
|
2021-09-21 10:43:02 +02:00 |
|
Son Nguyen Kim
|
84880ae32a
|
fix error with rule regex doesn't save if error
|
2021-09-21 10:42:32 +02:00 |
|
Son Nguyen Kim
|
1e3afa257c
|
validate regex before creating rule
|
2021-09-21 10:42:02 +02:00 |
|
Son Nguyen Kim
|
f160ebec4e
|
add debug zone to auto create page
|
2021-09-21 10:14:36 +02:00 |
|
Son Nguyen Kim
|
809f547742
|
remove CustomDomain.auto_create_regex
|
2021-09-21 09:48:07 +02:00 |
|
Son Nguyen Kim
|
e5a8ce1492
|
use AutoCreateRule instead of custom_domain.auto_create_regex when creating new alias
|
2021-09-20 18:29:36 +02:00 |
|
Son Nguyen Kim
|
56c72d5fba
|
create auto create page, remove custom domain auto_create_regex part
|
2021-09-20 18:28:43 +02:00 |
|
Son Nguyen Kim
|
f36f8b94e2
|
Create AutoCreateRule, AutoCreateRuleMailbox model
|
2021-09-20 18:23:19 +02:00 |
|
Son Nguyen Kim
|
0055ca976b
|
add flush option to ModelMixin.create()
|
2021-09-20 18:16:52 +02:00 |
|
Son Nguyen Kim
|
17c13ee37f
|
ignore smtp error in handle_bounce_forward_phase()
|
2021-09-20 13:51:16 +02:00 |
|
Son Nguyen Kim
|
cfb7b7cefc
|
fix setting
|
2021-09-20 13:43:54 +02:00 |
|
Son Nguyen Kim
|
005a760710
|
handle case catch_all is enabled but custom_domain.auto_create_regex is already set
|
2021-09-20 12:32:39 +02:00 |
|
Son Nguyen Kim
|
153831ed1a
|
remove obsolete sender formats
|
2021-09-20 12:27:36 +02:00 |
|
Son Nguyen Kim
|
98b472d925
|
use "pin" instead of "favorite"
|
2021-09-19 19:50:50 +02:00 |
|
Son Nguyen Kim
|
530bc8591e
|
support | in auto create alias regex
|
2021-09-19 09:36:19 +02:00 |
|
Son Nguyen Kim
|
cbc20dd268
|
remove unused import
|
2021-09-18 19:19:17 +02:00 |
|
Son Nguyen Kim
|
838f1dc86d
|
add beta mention to auto create alias regex
|
2021-09-18 19:16:43 +02:00 |
|
Son
|
9b89d7cc5d
|
update package
|
2021-09-18 18:48:31 +02:00 |
|
Son
|
ec2812bfa4
|
handle invalid email in email_can_be_used_as_mailbox
|
2021-09-18 18:46:26 +02:00 |
|
Son Nguyen Kim
|
8b676bc4af
|
not disable alias if ALIAS_AUTOMATIC_DISABLE is not set
|
2021-09-17 18:05:35 +02:00 |
|
Son Nguyen Kim
|
de3207ac4b
|
Add ALIAS_AUTOMATIC_DISABLE
|
2021-09-17 18:05:18 +02:00 |
|
Son Nguyen Kim
|
344f8e67d2
|
take into account custom_domain.auto_create_regex in try_auto_create_catch_all_domain()
|
2021-09-17 17:43:12 +02:00 |
|
Son Nguyen Kim
|
a6c874e914
|
Use validate_email in get_email_local_part and get_email_domain_part
|
2021-09-17 17:42:52 +02:00 |
|
Son Nguyen Kim
|
2b84168d68
|
validate address in try_auto_create
|
2021-09-17 17:42:16 +02:00 |
|
Son Nguyen Kim
|
0b127216ee
|
user can set custom_domain.auto_create_regex
|
2021-09-17 17:41:36 +02:00 |
|
Son Nguyen Kim
|
58d36e9cd8
|
add CustomDomain.auto_create_regex column
|
2021-09-17 17:35:36 +02:00 |
|
Son Nguyen Kim
|
b990c052ac
|
move domain mailboxes to domain detail page and only enable it if catch-all is on
|
2021-09-17 11:54:37 +02:00 |
|
Son Nguyen Kim
|
512ade83b4
|
improve wording & styling on custom domain info page
|
2021-09-17 11:38:07 +02:00 |
|
Son Nguyen Kim
|
785a619385
|
Add debug_info decorator
|
2021-09-17 10:31:26 +02:00 |
|
Son Nguyen Kim
|
da0ddd5a34
|
Merge pull request #619 from Dattito/fix-wrong-description-of-error
fixed wrong description of error
|
2021-09-15 11:23:11 +02:00 |
|
Son Nguyen Kim
|
695a628e68
|
save email that can't be DKIM signed to temp dir to investigate
|
2021-09-15 09:29:08 +02:00 |
|
Son Nguyen Kim
|
3441d2ccf1
|
add new param TEMP_DIR
|
2021-09-15 09:28:08 +02:00 |
|
David Siregar
|
1cc8f7f2e3
|
fixed wrong description of error
|
2021-09-14 21:28:51 +02:00 |
|
Son Nguyen Kim
|
567bee9a0b
|
add exception trace when dkim fails
|
2021-09-14 09:13:39 +02:00 |
|
Son Nguyen Kim
|
e4ed192cce
|
rename
|
2021-09-13 19:50:15 +02:00 |
|
Son Nguyen Kim
|
106358da5f
|
handle yahoo complaint
|
2021-09-13 19:49:40 +02:00 |
|
Son Nguyen Kim
|
b3012376c3
|
use another DKIM header if one fails
|
2021-09-13 16:04:32 +02:00 |
|
Son Nguyen Kim
|
6e42e536db
|
ignore email sent from a mailbox to its alias if user.ignore_loop_email
|
2021-09-10 18:15:22 +02:00 |
|
Son Nguyen Kim
|
62044e6db1
|
Add User.ignore_loop_email column
|
2021-09-10 18:14:51 +02:00 |
|
Son Nguyen Kim
|
4949afc791
|
black
|
2021-09-10 17:42:07 +02:00 |
|
Son Nguyen Kim
|
e5a388dffb
|
optimize import
|
2021-09-10 17:37:33 +02:00 |
|