Son
|
6cdf5637aa
|
validate the alias address before creating
|
2022-01-09 20:22:41 +01:00 |
|
Son
|
a0727435eb
|
use warning level
|
2022-01-09 20:13:41 +01:00 |
|
Son
|
c5e4dd6d16
|
save email for debug with error name as prefix
|
2022-01-08 16:58:23 +01:00 |
|
Son
|
862d0e7a11
|
warn users if SL is used with another forwarding service
|
2022-01-08 00:42:03 +01:00 |
|
Son
|
ed4acebdb1
|
delete the email log in reply phase if NonReverseAliasInReplyPhase
|
2022-01-08 00:28:26 +01:00 |
|
Son
|
01ba5e8bf0
|
return 5** if CannotCreateContactForReverseAlias
|
2022-01-08 00:16:16 +01:00 |
|
Son
|
20b6ce29fc
|
take into account authorized_address when checking email loop
|
2022-01-08 00:09:45 +01:00 |
|
Son
|
d4e31257fa
|
make sure to output exception name in log
|
2022-01-07 16:45:12 +01:00 |
|
Son
|
fb87225d2d
|
raise error when receiving emails sent from reverse alias
|
2022-01-07 16:14:21 +01:00 |
|
Son
|
d4e1aec875
|
refactor
|
2022-01-07 14:57:47 +01:00 |
|
Son
|
6b31b8926e
|
fix comment
|
2022-01-07 14:27:53 +01:00 |
|
Son
|
1bdae7fbe8
|
handle CannotCreateContactForReverseAlias when user creates a new contact
|
2022-01-07 10:47:36 +01:00 |
|
Son
|
5195c9de8b
|
raise error when a non reverse-alias is used during the reply phase
|
2022-01-07 10:34:08 +01:00 |
|
Son
|
84d1f22a7b
|
add Contact.automatic_created column to know which contact is created during the forward phase
|
2022-01-07 10:21:31 +01:00 |
|
Son
|
ad622df071
|
make sure a contact with website_email=reverse alias of another contact can't be created
|
2022-01-07 10:04:12 +01:00 |
|
Son
|
b2e4578953
|
add yield_per_query() helper
|
2022-01-06 18:50:54 +01:00 |
|
Son
|
d1b9fb8bb5
|
add type annotation for Session
|
2022-01-06 18:30:14 +01:00 |
|
Son
|
37bb7655d5
|
remove unused import
|
2022-01-06 15:30:33 +01:00 |
|
Son
|
9ff323c746
|
make sure to set custom_domain_id when creating a new alias
|
2022-01-06 15:29:37 +01:00 |
|
Son
|
b7e8324e5a
|
move get_custom_domain() to alias_utils
|
2022-01-06 15:20:09 +01:00 |
|
Son
|
33bd7dbcd6
|
refactor
|
2022-01-06 14:57:01 +01:00 |
|
Son
|
de9f994fe2
|
check suffix in try_auto_create
|
2022-01-06 11:12:26 +01:00 |
|
Son
|
4976f48944
|
add /phone/provider2/sms
|
2022-01-05 18:14:51 +01:00 |
|
Son
|
b505ceebe9
|
add PHONE_PROVIDER_2_HEADER, PHONE_PROVIDER_2_SECRET config
|
2022-01-05 18:14:14 +01:00 |
|
Son
|
385dd1e755
|
handle out-of-office email in addition to bounce
|
2022-01-05 15:30:44 +01:00 |
|
Son
|
ffc621596a
|
fix is_automatic_out_of_office: only use "Auto-Submitted" header
|
2022-01-05 15:21:54 +01:00 |
|
Son
|
6cb55e27f3
|
make sure alias that starts with bounce prefix can't be automatically created
|
2022-01-05 15:16:04 +01:00 |
|
Son
|
5e2ea81a6c
|
do not consider out-of-office as bounce
|
2022-01-04 18:06:08 +01:00 |
|
Son
|
2ed7c5fcdb
|
only return active number
|
2022-01-04 16:26:38 +01:00 |
|
Son
|
4ac8da1e8f
|
poll messages on the phone reservation page
|
2022-01-04 16:24:50 +01:00 |
|
Son
|
4d8c89105f
|
GET /api/phone/reservations/:reservation_id
|
2022-01-04 16:22:41 +01:00 |
|
Son
|
d51c32ad51
|
always return 200 for phone provider1 callback
|
2022-01-04 14:58:41 +01:00 |
|
Son
|
72bd998b9b
|
fix logging
|
2022-01-04 14:58:24 +01:00 |
|
Son
|
bc2f9ad45f
|
add PhoneNumber.comment column
|
2022-01-04 14:54:55 +01:00 |
|
Son
|
127f8daad7
|
add /phone/provider1/sms
|
2022-01-04 14:53:22 +01:00 |
|
Son
|
3484f71dac
|
add PHONE_PROVIDER_1_HEADER and PHONE_PROVIDER_1_SECRET config
|
2022-01-04 14:52:56 +01:00 |
|
Son
|
a4b113b7fa
|
remove DISPOSABLE_FILE_PATH
|
2022-01-04 09:40:10 +01:00 |
|
Son
|
d38fa95eed
|
make sure number of minutes is specified
|
2022-01-04 09:35:34 +01:00 |
|
Son
|
325207d6ba
|
Use InvalidMailboxDomain instead of DISPOSABLE_EMAIL_DOMAINS
|
2022-01-03 10:33:21 +01:00 |
|
Son
|
4332fd3244
|
Create InvalidMailboxDomain model
|
2022-01-03 10:31:33 +01:00 |
|
Son
|
85fb859dcb
|
show error when a domain can't be used as random alias default domain
|
2022-01-03 10:05:06 +01:00 |
|
Son
|
34118f459a
|
ignore smtp error in send_trial_end_soon_email()
|
2022-01-03 09:59:52 +01:00 |
|
Son
|
558200113c
|
remove unnecessary code in send_email()
|
2022-01-01 11:47:45 +01:00 |
|
Son
|
01a8a0343e
|
log when an alias is deleted
|
2021-12-31 11:18:08 +01:00 |
|
Son
|
61226545c2
|
handle the 2 consecutive dots in alias
|
2021-12-31 11:15:24 +01:00 |
|
Son
|
9ee449722a
|
new domain has ownership verified if its root has the ownership verified
|
2021-12-31 11:10:36 +01:00 |
|
Son
|
a6f5b755aa
|
set apple_sub.product_id
|
2021-12-30 16:20:31 +01:00 |
|
Son
|
e1d82b7e0d
|
Add AppleSubscription.product_id col
|
2021-12-30 16:20:18 +01:00 |
|
Son
|
30ba566457
|
take into account _MACAPP_MONTHLY_PRODUCT_ID in verify_receipt
|
2021-12-30 16:15:33 +01:00 |
|
Son
|
22cf8cfe38
|
send Custom/smtp_connection_time to newrelic
|
2021-12-30 14:17:46 +01:00 |
|
Son
|
2cd50c582a
|
remove NEWRELIC_CONFIG_PATH
|
2021-12-30 14:15:49 +01:00 |
|
Son
|
c5185eddf3
|
Revert "log "Custom/smtp_connection_time" metric in newrelic"
This reverts commit 378bad6253 .
|
2021-12-30 11:55:48 +01:00 |
|
Son
|
378bad6253
|
log "Custom/smtp_connection_time" metric in newrelic
|
2021-12-30 11:46:01 +01:00 |
|
Son
|
a64968f6e5
|
consider utf-8 email encoding as no encoding
|
2021-12-30 11:36:52 +01:00 |
|
Son
|
b3469ba9d4
|
log how much time to get a smtp connection
|
2021-12-30 11:28:50 +01:00 |
|
Son
|
c14a7b4f7a
|
use with ... for smtp
|
2021-12-29 17:09:24 +01:00 |
|
Son
|
f439e39580
|
cache smtp server and remove POSTFIX_PORT_FORWARD
|
2021-12-29 16:26:37 +01:00 |
|
Son
|
733a9c42b0
|
delete activation code before sending email to avoid any delay
|
2021-12-29 10:26:42 +01:00 |
|
Son
|
80b0af91e5
|
allow user to create alias with domain that has ownership verified (and might not have MX verified)
|
2021-12-29 10:24:22 +01:00 |
|
Son
|
b9e2a79933
|
enable email sending retry in cron job
|
2021-12-28 16:42:01 +01:00 |
|
Son
|
a270c72d60
|
add random_alias_suffix to settings api
|
2021-12-28 15:24:58 +01:00 |
|
Son
|
229dc7fd44
|
fix test
|
2021-12-28 15:09:33 +01:00 |
|
Son
|
83be94b43e
|
user can create aliases for domains that don't have mx verified
|
2021-12-28 12:01:32 +01:00 |
|
Son
|
fc42db43ca
|
add new sender formats: NAME_ONLY, AT_ONLY, NO_NAME
|
2021-12-28 10:49:37 +01:00 |
|
Son
|
24a392818b
|
sl_sendmail tries by default 2 times before giving up: replace can_retry by retries
|
2021-12-27 17:03:44 +01:00 |
|
Son
|
2cf1c4143a
|
reduce sleep time between sl_sendmail failure
|
2021-12-27 17:00:11 +01:00 |
|
Son
|
a6569d47dd
|
do not put price in plan_name to take into account discount
|
2021-12-26 22:04:45 +01:00 |
|
Son
|
584772f798
|
fix upgrade_channel
|
2021-12-23 19:28:57 +01:00 |
|
Son
|
879b364a47
|
return 421 to retry when SMTPRecipientsRefused error
|
2021-12-23 18:17:29 +01:00 |
|
Son
|
544df7034d
|
do not retry sending email in send_email()
|
2021-12-16 21:31:01 +01:00 |
|
Son
|
75d6b1dab5
|
add more logging
|
2021-12-16 15:09:15 +01:00 |
|
Son
|
64c6ef2cbe
|
retry when SMTPRecipientsRefused too
|
2021-12-16 15:06:26 +01:00 |
|
Son
|
a142a430d2
|
use sl_sendmail instead of smtp.sendmail
|
2021-12-16 10:32:10 +01:00 |
|
Son
|
eec2880c41
|
fix case signed_suffix is None
|
2021-12-15 17:12:27 +01:00 |
|
Son
|
79ca39a625
|
use regex_match instead of re.fullmatch()
|
2021-12-14 15:00:32 +01:00 |
|
Son
|
5e7730c35c
|
refactor: move regex_match() to its own file
|
2021-12-14 15:00:32 +01:00 |
|
Son
|
f3e8fc10a9
|
use re instead of re2 if error "Argument 'pattern' has incorrect type (expected bytes, got PythonRePattern)"
|
2021-12-11 19:38:22 +01:00 |
|
Son
|
a021bba811
|
fix toggle contact should only be used by authenticated user
|
2021-12-06 18:39:12 +01:00 |
|
Son
|
c6a2af3c3c
|
remove unused admin column
|
2021-12-06 18:04:23 +01:00 |
|
Son
|
3e2c120a73
|
phone reservation page
- add twilio lib
- create phone listing, reservation page
- add twilio callback to receive messages
|
2021-12-02 17:03:13 +01:00 |
|
Son
|
7109dc7120
|
add models for phone: Country, Number, Reservation, Message
|
2021-12-02 16:50:26 +01:00 |
|
Son
|
daca70f2b4
|
add TWILIO_AUTH_TOKEN config
|
2021-12-02 16:30:30 +01:00 |
|
Son
|
226ce9333c
|
return error if invalid alias address
|
2021-12-02 16:17:41 +01:00 |
|
Son
|
e1123961cf
|
check if user has lifetime license on pricing page
|
2021-12-01 17:41:20 +01:00 |
|
Son
|
4d388a202c
|
allow user with manual or coinbase subscription to switch to paddle
|
2021-12-01 17:16:01 +01:00 |
|
Son
|
c6f49821c7
|
remove unused import
|
2021-12-01 10:39:08 +01:00 |
|
Son
|
34509cbbb3
|
delete account is protected by password
|
2021-12-01 10:11:18 +01:00 |
|
Son
|
4ffa5c9345
|
display expires date
|
2021-11-30 10:33:31 +01:00 |
|
Son
|
94a90665ea
|
black format
|
2021-11-29 16:46:03 +01:00 |
|
Son
|
21bd4ed97e
|
display all user payment channels on admin
|
2021-11-29 16:26:41 +01:00 |
|
Son
|
c29b5100fb
|
delete User.subscription_cancelled
|
2021-11-29 16:17:24 +01:00 |
|
Son
|
325a1a9524
|
remove unused User.premium_end
|
2021-11-29 11:35:28 +01:00 |
|
Son
|
5f47d172e0
|
move fake_data() to dedicated fiel
|
2021-11-28 11:51:31 +01:00 |
|
Son
|
c356c75494
|
show coupon expires date when user buys a coupon
|
2021-11-26 18:20:46 +01:00 |
|
Son
|
4d0f6811b2
|
error if coupon is expired
|
2021-11-26 18:11:03 +01:00 |
|
Son
|
06d459ba99
|
Add coupon.expires_date column
|
2021-11-26 18:10:23 +01:00 |
|
Son
|
6d1b6720cf
|
set content_type for plain text message
|
2021-11-25 10:34:59 +01:00 |
|
Son
|
dd6e265aa0
|
add RSPAMD_SIGN_DKIM and add "X-SimpleLogin-Want-Signing" header
|
2021-11-25 10:34:42 +01:00 |
|
Son
|
4c33b63f97
|
better way to know whether this is the last page
|
2021-11-23 14:44:48 +01:00 |
|
Son
|
cd553608a5
|
fix
|
2021-11-23 14:35:37 +01:00 |
|