Alberto Fernández Capel
1c485c1884
Improve error handling
2018-05-31 16:42:09 +01:00
Alberto Fernández Capel
d262de14d6
Use team invites to join domain licensed teams
2018-05-31 16:15:47 +01:00
Alberto Fernández Capel
39c8595c27
Split SubscriptionGroupInvites and rename to DomainSubscriptionJoin
...
To not cause confusion with team invites.
They are not really an invite because they are user initiated, but
more of a user choosing to join a team.
2018-05-31 14:25:47 +01:00
Alberto Fernández Capel
11edfde153
Accept & revoke team invites
2018-05-31 11:54:50 +01:00
Alberto Fernández Capel
9aa95cb0d5
Show team invites
2018-05-30 13:06:27 +01:00
James Allen
e0e88b25fe
Make agrument checking more robust
2018-05-30 12:48:08 +01:00
Alberto Fernández Capel
7e09c0e0b1
First stab at email token invites (WIP)
2018-05-30 11:29:21 +01:00
James Allen
c5b553d4a6
Notify v1 by default
2018-05-29 17:31:15 +01:00
James Allen
301ae80f99
Allow refreshFeatures to notify v1 to update its features
2018-05-29 17:21:42 +01:00
Alberto Fernández Capel
b52fbdbfa4
Unit test SubscriptionGroupHandler.replaceUserReferencesInGroups
2018-05-29 15:37:04 +01:00
Alberto Fernández Capel
259d690f7c
Add method to update user references
2018-05-29 12:00:22 +01:00
Tim Alby
5fbe5c5537
remove UserLocator
...
Use UserGetter instead
2018-05-28 14:11:13 +02:00
Tim Alby
bbaca91e57
add UserGetter#getUserByMainEmail
...
Use only that method to find users by email.
2018-05-28 14:11:09 +02:00
James Allen
50bd60dd51
Split FeaturesUpdater out of SubscriptionUpdater
2018-05-22 10:05:08 +01:00
James Allen
0830c473ad
Update unit tests and refactor to make more testable
2018-05-22 10:05:08 +01:00
James Allen
4deaf7865d
Guard against no apis.v1 setting
2018-05-22 10:05:08 +01:00
James Allen
b1f378208d
Properly merge subscriptions from different places
2018-05-22 10:05:08 +01:00
Hayden Faulds
304a6bc332
use ProjectGetter rather than Project directly
2018-02-16 08:55:09 +00:00
Alberto Fernández Capel
a81b56556f
Add test for SubscriptionViewModelBuilder
2018-01-09 17:00:56 +00:00
Alberto Fernández Capel
6d007bfe74
DRY logic to get subscription from Recurly
...
We were making two calls to recurly: one from the SubscriptionController
and another from the SubscriptionViewModelBuilder. This change moves
all the logic to the builder so we only have to do one call.
2018-01-05 16:32:29 +00:00
Alberto Fernández Capel
79eddcc736
Fix subscription page for members of a group
...
For a member of a group LimitationsManager.userHasSubscriptionOrIsGroupMember
doesn't return any subscription, so when the controller tries to
access subscription.recurlySubscription_id there's an error.
SubscriptionViewModelBuilder already knows how to handle the case
in which the user is a member of a group but has not subscription
of their own, so guarding against the crash is enough to fix
the issue.
2018-01-05 16:28:49 +00:00
Shane Kilkelly
56ec81bb3e
Change 'oveleafPlanCode' to 'v1PlanCode'
2017-12-18 13:52:37 +00:00
Shane Kilkelly
eefe56d0f7
Fix up error handling in SubscriptionUpdater
2017-12-08 11:37:24 +00:00
Shane Kilkelly
a675e774b8
Fix how the getOverleafPlanCode
integration is done
2017-12-08 11:29:11 +00:00
Shane Kilkelly
3adbc52089
Add a method to explicitely refresh subscription feature
2017-12-07 16:28:07 +00:00
Shane Kilkelly
4e86a03b46
Fix a problem with the order of module initialization
2017-12-07 15:06:32 +00:00
Shane Kilkelly
e7d8848a6a
Include possible overleaf subscription in feature setting
2017-12-04 15:12:26 +00:00
Shane Kilkelly
cc9986cefd
Remove the obsolete update-billing-details page
2017-11-28 11:52:14 +00:00
Shane Kilkelly
22c163c60a
Move the recurly-billing-details link up to main subscription page
2017-11-28 11:40:48 +00:00
Shane Kilkelly
c121653dc4
Add error-handling to attempt to get user subscription
2017-11-23 16:22:57 +00:00
Shane Kilkelly
caa65dddc1
Send user to hosted recurly billing-details page.
...
And remove our update-billing-details form, the APIs for which will be
deprecated soon.
2017-11-23 16:16:13 +00:00
Shane Kilkelly
069f49d5a6
Change getCollaboratorCount
to getInvitedCollaboratorCount
.
...
And update the one call-site in LimitationsManager. This function
is used to limit invites, so it makes sense to explicitely limit
this to Invited members of the project.
2017-09-20 10:29:47 +01:00
James Allen
10f362a77a
Add SubscriptionUpdater.deleteSubscription
2017-08-02 09:59:45 +02:00
Shane Kilkelly
8e55b77055
Move recurly callback to the public api router.
2017-07-20 13:51:11 +01:00
Henry Oswald
3da5ef818c
null check subscription for group admin panel
2017-06-22 14:07:07 +01:00
James Allen
4cecbae6b6
Use an email based invite system for groups, not holding accounts
2017-06-08 12:12:08 +01:00
Shane Kilkelly
01ee104f77
Revert "update to newest mongoose"
...
This reverts commit 7b05891ba0e87e4cf00fd6b1ea87d7406dc70989.
2017-05-10 15:31:17 +01:00
Shane Kilkelly
c5c0364d49
update to newest mongoose
2017-05-08 16:09:59 +01:00
James Allen
08699d7aa2
Handle a 404 from Recurly if account doesn't exist
2017-03-28 15:46:58 +01:00
James Allen
7aa4c0c030
Check Recurly for subscription as well before creating subscription
2017-03-27 12:07:43 +01:00
James Allen
b086d7afa2
Refactor rate limiting code around sending invites
2017-01-27 16:26:58 +01:00
Shane Kilkelly
a5d2183441
if Recurly error, parse body xml rather than using regex match
2016-12-06 10:39:59 +00:00
Shane Kilkelly
e03d16e0cd
Deleting user: if subscription is already cancelled, ignore and proceed.
2016-11-30 16:03:18 +00:00
Shane Kilkelly
acce8853ba
Remove redundant baseUrl
from plans page.
2016-11-25 15:24:50 +00:00
Shane Kilkelly
22101d0305
If user is sent to login page with explicit redirect, obey
2016-11-24 11:38:13 +00:00
Shane Kilkelly
1538f140f3
update test timestamp
2016-10-27 09:41:51 +01:00
Shane Kilkelly
dfd13e0815
Update AB test timestamp
2016-10-26 14:24:00 +01:00
Shane Kilkelly
8c1d110688
Remove debug logs
2016-10-21 16:21:21 +01:00
Shane Kilkelly
d5a7514923
Add AB test for plans (+15 squashed commits)
...
Squashed commits:
[45c2237] Add a `subscription-form-switch-to-student` event
[1ad9b8f] change experiment name, and re-enable switch-to-student workflow
[f7cdb78] Remove debug
[4b9778a] Incorporate collaborator alternative plans
[701e80b] Add collaborator plans for heron and ibis
[287aa0f] AB test plans from editor page
[c74052e] Fix change-plan view for default plans
[1a947d6] Use correct plan codes
[1eecda7] Adjust prices
[69c4c7b] Introduce two plans
[8b8d5f8] Rename sixpack experiment
[c332002] Fix up the change-plan page
[c7af52d] Overhaul change-plan page, show only plans from current generation
[33d86bf] update plan
[5bbd946] Add a basic plans AB test
2016-10-21 16:17:37 +01:00
Henry Oswald
adc6b429e6
record when a subscription is canceled
2016-10-10 15:29:54 +01:00
Shane Kilkelly
a0f156e1a9
wipe out more session access
2016-09-22 15:33:50 +01:00
Shane Kilkelly
64c9a3ae18
Fix logic, was wrong way around
2016-09-22 11:16:50 +01:00
Shane Kilkelly
438ac45854
fix unit tests
2016-09-07 16:40:49 +01:00
Shane Kilkelly
cc5ddc92bb
use getSessionUser
rather than getLoggedInUser
2016-09-07 10:30:58 +01:00
Shane Kilkelly
ab2c1e82fb
WIP: refactor
2016-09-05 15:58:31 +01:00
Shane Kilkelly
47b1a5099a
Better logging when plan is null.
2016-08-31 10:40:30 +01:00
Shane Kilkelly
f59d5d836d
Check plan, return error if not valid.
...
This prevents a crash later when we refer to properties
of the plan object, which can end up being `null` when
the `planCode` is either missing, or not a valid code.
2016-08-31 10:18:53 +01:00
Shane Kilkelly
4a76fcd13b
Change first param of getMemberSubscriptions
to user_or_id
, to match semantics of usage.
...
This function works whether a user object, or an ObjectId is passed, but the `user_id`
param name is confusing.
2016-08-30 14:26:57 +01:00
James Allen
bcc8bfbe6c
Redirect to working update billing details end point that shows a nice message
2016-08-22 17:36:33 +01:00
Shane Kilkelly
03aa9b87f1
Add debug query string origin
to invocations of the updateSubscription endpoint.
2016-08-22 10:09:54 +01:00
Shane Kilkelly
c02854c9d8
Improve log messages
2016-08-19 11:52:50 +01:00
Shane Kilkelly
07cd75cd64
Add an expect404
option to apiRequest.
...
Suppress error generation when 404 response is encountered.
2016-08-19 11:52:04 +01:00
Shane Kilkelly
4a6df04c21
Merge branch 'master' into pr-subscription-improvements
2016-08-18 12:53:56 +01:00
Shane Kilkelly
fc068b62a2
defend against undefined plan_code
2016-08-17 08:51:35 +01:00
Shane Kilkelly
81d0edf716
Improve error handling
2016-08-16 15:19:36 +01:00
Shane Kilkelly
3a3688d3d0
Include invites count in canAddXCollaborators
2016-08-02 15:42:50 +01:00
Shane Kilkelly
3aea3a68d1
Check the truth of subscription.customAccount
, rather than definition.
2016-07-19 10:28:43 +01:00
Shane Kilkelly
effc3727be
Don’t show upgrade prompts for users with custom subscription accounts.
...
Set `hasValidSubscription` to true if user subscription is custom.
2016-07-19 10:15:45 +01:00
Shane Kilkelly
6581bc4ecf
set postal_code as zip
2016-06-28 14:15:47 +01:00
Shane Kilkelly
465d09dcfe
Test the createSubscription action (+4 squashed commits)
...
Squashed commits:
[fc9c8f9] Add tests for createBillingInfo
[db9f90e] Test the createSubscription stage
[c17151d] Check that userExists gets set
[1367c96] Act on buddy-check feedback
2016-06-28 13:59:52 +01:00
Shane Kilkelly
709f8f2bea
start testing the paypal workflow.
2016-06-27 16:34:00 +01:00
Shane Kilkelly
401565ba23
Fix references to the RecurlyWrapper object.
2016-06-27 12:14:43 +01:00
Shane Kilkelly
9938787e4a
fix a few silly issues. Appears to work now
2016-06-27 10:38:10 +01:00
Shane Kilkelly
72c73809f6
Generate address xml from object.
2016-06-27 09:44:40 +01:00
Shane Kilkelly
026e9f46c8
WIP: process appears to work, setting address correctly
2016-06-24 15:03:46 +01:00
Shane Kilkelly
56bc840b88
WIP: fix up error handling and account for possibility of account already existing.
2016-06-24 14:11:28 +01:00
Shane Kilkelly
249381b6a8
WIP: initial work on sending address to recurly for paypal subscriptions
2016-06-24 11:42:58 +01:00
Henry Oswald
101e98ed83
simpliyfied dashboard & fixed error with leave group shown to group owner
...
- always show the manage button if you are the group owne
- only show the recurly subscription part if you are the subscription owner
- always try and loop through groups you can leave
2016-06-16 09:17:43 +01:00
Henry Oswald
424e09ec05
getGroupSubscriptionMemberOf gets plan code
2016-04-05 16:03:46 +01:00
Henry Oswald
3d719af71e
if subscription is downgraded don't use plan code on subscription, use default instead
2016-03-31 18:04:20 +01:00
Henry Oswald
81cd2adfd3
member_ids != members_id
2016-03-31 17:36:06 +01:00
Henry Oswald
d80191c03b
added more logging and missing err handler in subscription updater
2016-03-31 17:28:03 +01:00
Henry Oswald
5a201153c7
refactored subscription updater again adding _setUsersMinimumFeatures
...
single place you can call and the users minimum features are set
2016-03-31 16:58:16 +01:00
Henry Oswald
cb3eb88af2
Merge branch 'subscriptionimprovements'
2016-03-31 11:58:56 +01:00
Henry Oswald
db8fb63bb5
fixed change payment details page
...
also increased size of year field for firefox users
and removed unnded options in new plan page
2016-03-31 11:54:52 +01:00
Henry Oswald
c554b0630d
if user has subscription before joining group is given option to cancel personal one
2016-03-22 16:59:47 +00:00
Henry Oswald
a6859e22b3
if user is member of group on downgrade use the group subscription
2016-03-22 16:05:46 +00:00
Henry Oswald
7fb0249b2b
null check subscription for custom accounts page
2016-03-22 14:19:46 +00:00
James Allen
de02928454
Merge branch 'master' into ja_email_tokens
2016-03-17 17:01:26 +00:00
James Allen
1bd8b8d1a3
Delete SecurityManager and replace with (unwritten) AuthorizationManager
2016-03-10 17:17:26 +00:00
Henry Oswald
940586f654
sped up unit tests to improve speed
...
also removed some unneeded requires.
2016-03-09 12:51:19 +00:00
Henry Oswald
a33b480c67
added more logging to subscription group handler
2016-03-09 11:20:17 +00:00
James Allen
a50bdaf5cc
Refactor LimitationsManager to use CollaboratorsHandler
2016-03-07 15:32:04 +00:00
Henry Oswald
43102e0ffc
lowercase and trim add user to group email address
2016-02-25 14:15:56 +00:00
Henry Oswald
b504732733
fixed calls to addUserToGroup and added more logging
2016-02-22 16:50:41 +00:00
Henry Oswald
103bb1c88f
add more error logging to group handler
2016-02-22 16:01:26 +00:00
Henry Oswald
85a8bc97ed
add leave group button for group subscriptions
2016-02-19 12:27:32 +00:00
Henry Oswald
29e4b324fd
improve calls for invite notifications and auto mark as read
2016-02-18 11:43:43 +00:00
Henry Oswald
f824a3e28a
kill off dead code in group handler
2016-02-18 11:42:26 +00:00
Henry Oswald
fc4bd94a6e
don't create notification if user is already part of group
2016-02-18 10:06:21 +00:00