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
Henry Oswald
c8084406d3
user notifications auto created on login for joinging groups
2016-02-17 16:24:09 +00:00
Henry Oswald
ef148da7aa
remove un needed require
2016-02-12 17:15:13 +00:00
Henry Oswald
5c5888b5dc
Merge branch 'pr/221'
2016-02-11 11:44:45 +00:00
Henry Oswald
de0589b051
added notifications calls for sending to api and mark as read
...
not creating it yet
2016-02-05 14:13:38 +00:00
Henry Oswald
47eebb1840
add null check and default empty object for subscirption dashboard
2016-02-03 17:41:05 +00:00
Henry Oswald
7994528c92
make site licence regex more specific
2016-02-03 16:08:29 +00:00