Only notify expired users once a week
Fix Dhall signature
The config got updated, but the signature was missed.
Fix intermittent notification non-delivery
We need to wait until all EventMachine items in flight are complete before we
allow the process to terminate or some of them might not happen. So when the
process wants to exit, wait until the EM thread is done. Use next_tick to make
sure our stop command only happens when the EM queue is next clear.
update schemas to include hotfix from prod and sqitch tag for prod
Update schema and INSERT to plan_log using new range type
plan_log has been updated to use a range type, so our INSERTs need to be
updated as well.
Allow new users to opt-in to balance auto-top-up
We don't have auto top up built yet, but once we do they will be able to start
getting it right away instead of needing to manually turn it on later.
hotfix from prod, avoid crash on old session
docs say there is a better error in UI for this case already
include sentry when there is a dsn
Always a bonus, maybe of 0
Does not take both those arguments anymore
Do not try query when values is empty
If there are no values to query with, then the SQL will be invalid and throw an
error, so just return empty for that case.
No crash when there are no new transactions to process
Found during initial migration, when a request comes in and it turns out there
are no new transactions, we should not try to set nothing to Redis since that
will throw an exception.
Block users who get too many card declines
If a customer has > 2 card declines in 24 hours or an ip has > 4, then treat all
attempts as declines without looking as an anti-fraud measure.
We're seeing trouble in production where users activate more than once, which
results in suboptimal DB contents. If they're already active, just redirect
them back to complete registration.
Log plan name on exception to sentry
Allow activating an account via credit card on web
This is designed to work with current jmp-register flows pending new-register
existing. Link a user to https://pay.jmp.chat/<jid>/activate?return_to=... and
they can choose to buy 5 months of service in either USD or CAD on a supported
credit card. The card will be vaulted onto their newly-minted customer_id and
the amount immediately billed. No account balance will be set or used, but
rather a plan_log row created starting now and expiring in 5 months.