9827b8b
Allow finishing adming command
Stephen Paul Weber created
9827b8b
Allow finishing adming command
Stephen Paul Weber created
c92ea39
Say what customer was affected
Stephen Paul Weber created
74b3ab7
NoCustomer is not registered
Stephen Paul Weber created
688e78b
Merge branch 'max-call-length'
* max-call-length: Calculate the maximum allowable call length
Stephen Paul Weber created
39e3b0f
Merge branch 'credit-card-blacklist'
* credit-card-blacklist: Credit card blacklist
Stephen Paul Weber created
72b4436
Credit card blacklist
Any card on the list is just treated as though it is not present, preventing it from being used.
Stephen Paul Weber created
e636c33
Calculate the maximum allowable call length
Asterisk could use this to actually limit the call, for example.
Stephen Paul Weber created
c3bd04f
Merge branch 'trustlevel-repo'
* trustlevel-repo:
TrustLevel{,Repo}
Stephen Paul Weber created
b16e8df
TrustLevel{,Repo}
To determine how much permission a customer account should have to take risky actions. Seperate from their plan, this is not how much they could do in theory, but how much the system will allow in practise due to perceived risk. Starts out with a simple model based on amount of settled payments, and being used to decide what is an "expensive" route for outbound calls.
Stephen Paul Weber created
2b3ebc3
Merge branch 'insert-settled-after'
* insert-settled-after: Credit card transactions settle after 90 days, bills instantly
Stephen Paul Weber created
6e76abb
Update to schema with settled_after
Stephen Paul Weber created
fa0e681
Merge branch 'bill-with-note'
* bill-with-note: Add a note when billing account
Stephen Paul Weber created
bb33b0c
Add a note when billing account
Stephen Paul Weber created
42add6d
Credit card transactions settle after 90 days, bills instantly
Stephen Paul Weber created
a688701
Merge branch 'activate-with-balance'
* activate-with-balance: If customer already has enough balance, just bill them and finish New BillPay registration step Save plan to DB as soon as it is selected Move credit_to lookup into relevant class
Stephen Paul Weber created
8291b15
If customer already has enough balance, just bill them and finish
Stephen Paul Weber created
4ef20f6
New BillPay registration step
Assumes they have enough balance (anyone using this step must be sure of this) and then does the billing before proceeding to finish.
Stephen Paul Weber created
27be78a
Save plan to DB as soon as it is selected
Customer will appear as instantly expired (having been active for 1 second in the immediate past). This can replace the pending_plan key for BTC activations. It also serves as a record for mail-in activation of what plan they had selected. Once the account is really activated the tiny row is removed.
Stephen Paul Weber created
2e7f0c4
Move credit_to lookup into relevant class
Stephen Paul Weber created
8fd61ce
Merge branch 'monthly-billing'
* monthly-billing: Allow the DB to notify us to bill a customer Command.execution setter Bill plan command Clearer name for lock bypass factory
Stephen Paul Weber created
3b7abeb
Allow the DB to notify us to bill a customer
Stephen Paul Weber created
8a4e129
Command.execution setter
Stephen Paul Weber created
655624d
Bill plan command
Implements the full logic of the billing_monthly_cronjob for one customer by reusing code that has been written more robustly in sgx-jmp for some time. This will allow the cronjob to just execute this command once a day for each expiring customer to get all the correct billing behaviours.
Stephen Paul Weber created
456a45b
Clearer name for lock bypass factory
Stephen Paul Weber created
ba03284
Declines should be an Int
Previously this retured a string and everywhere that used it had to convert it into an it, or handle it if it's nil. That's dumb. Now it's always an int, and `nil.to_i` is 0 anyway so I don't have to check that either.
Christopher Vollick created
36f007c
Do not allow nil tndetails
Stephen Paul Weber created
613c6f8
LazyObject is not nil, so safenav doesn't work
Stephen Paul Weber created
e90dcfa
Support older ruby
Stephen Paul Weber created
0fd3bd9
Order Transactions by Date
In my testing the natural order just happened to be the date order because I had so little data. But in the real world we should probably be more explicit!
Christopher Vollick created
adef6c1
Do not get CNAM during admin command
Since this is used by the billing cronjob and hitting BW so much is too expensive.
Stephen Paul Weber created
b5ae161
Refactor CustomerInfoForm to use find_by_format
Stephen Paul Weber created
6dbcb84
Unused dead code
Stephen Paul Weber created
e6bdcc9
Shunt call to voicemail on exception
Stephen Paul Weber created
bff79b5
Respond to Proper Cancel Stanza
Previously cancels would be treated as an error, but then would be caught so that they could respond with receipt of the cancel later. But, we weren't setting @iq in these cases, because it was an error, so we would actually respond to the wrong stanza; specifically the one before the cancel. This was bad and wrong and led to the bot sitting there waiting for the cancel before moving on with its life.
Christopher Vollick created
45c0721
Proc !== method
Stephen Paul Weber created
d570ca9
Set Sentry user from CustomerRepo
We don't always use this to get the current user, so make it optional.
Stephen Paul Weber created
67c9b0e
Import some hotfixes from prod
Stephen Paul Weber created
0e75ca4
Strip lidb name
Stephen Paul Weber created
c95d2db
Transaction Note Can Be Null
Not only is it allowed, but actually there's a ton of empty notes. Every monthly account activation is missing a note, so practically every user that has transactions will have empty notes.
Christopher Vollick created
0051c8e
Handle Empty Admin Menu Response
Some automated processes don't care for our menu, and rather than crashing it should just consider our process to be done.
Christopher Vollick created
e5759b3
Merge branch 'tx-list'
* tx-list: Admin Command Menu + Admin Financial View Transactions List Customer Financials Telephone Link
Stephen Paul Weber created
1c36e69
Admin Command Menu + Admin Financial View
I've added a new command to show financial information about the user. But more importantly I've added an infinite admin subsystem which allows me to go into a user and then run multiple commands on them. For now it's just these two info commands, but in the future I'd like to add mutative commands here. Finally, since I sometimes look up multiple users in a pretty short timeframe I made the menu open and if I put something into the list that doesn't parse as one of the actions it instead switches the current user so I don't have to do "cancel", "customer", and then put the next one in. I can just have the session open and put stuff in as needed.
Christopher Vollick created
6fb0be1
Transactions List
Using the new Financials object a user can list their transaction list We only show the user the date, amount, and method.
Christopher Vollick created
a5cf98a
Customer Financials
I've pulled out information about payment methods and bitcoin into its own thing. It's kind of a repository, except that it only exposes fetchers and doesn't load anything generally. There's also a few new methods here that aren't used yet, but will be shortly.
Christopher Vollick created
c668050
Telephone Link
Sometimes I need to go there to look something up or change a setting, and every time I do I have to navigate through the UI to a number I already know. This should make that faster.
Christopher Vollick created
e6fa970
Strip fwd value from form before saving
Stephen Paul Weber created
880e5e8
Someone legit hit the 4k limit
Stephen Paul Weber created
7c1ef85
Document new search option
Stephen Paul Weber created
92916f6
A legit user hit 3500. Wow
Stephen Paul Weber created
e30cf10
Merge branch 'state-search'
* state-search: Finish state search and add test Add state search - for granularity & jmp-register
Stephen Paul Weber created