From 3990a5d736fb63f2bf8a88e3007692f7d38a681a Mon Sep 17 00:00:00 2001 From: Simon Detheridge Date: Thu, 25 Apr 2019 15:20:55 +0100 Subject: [PATCH] Merge pull request #1724 from sharelatex/ta-subscription-canceled-page Add Subscription Canceled Page GitOrigin-RevId: b490ff008dd888911e8168606d90ae92662c0745 --- .../Subscription/SubscriptionController.coffee | 9 ++++++++- .../Subscription/SubscriptionRouter.coffee | 2 ++ .../views/subscriptions/canceled_subscription.pug | 15 +++++++++++++++ .../web/public/src/main/subscription-dashboard.js | 2 +- .../SubscriptionControllerTests.coffee | 2 +- 5 files changed, 27 insertions(+), 3 deletions(-) create mode 100644 services/web/app/views/subscriptions/canceled_subscription.pug diff --git a/services/web/app/coffee/Features/Subscription/SubscriptionController.coffee b/services/web/app/coffee/Features/Subscription/SubscriptionController.coffee index 992f051806..6edd79b94f 100644 --- a/services/web/app/coffee/Features/Subscription/SubscriptionController.coffee +++ b/services/web/app/coffee/Features/Subscription/SubscriptionController.coffee @@ -159,7 +159,14 @@ module.exports = SubscriptionController = if err? logger.err err:err, user_id:user._id, "something went wrong canceling subscription" return next(err) - res.redirect "/user/subscription" + # Note: this redirect isn't used in the main flow as the redirection is + # handled by Angular + res.redirect "/user/subscription/canceled" + + canceledSubscription: (req, res, next)-> + user = AuthenticationController.getSessionUser(req) + res.render "subscriptions/canceled_subscription", + title: "subscription_canceled" cancelV1Subscription: (req, res, next) -> user_id = AuthenticationController.getLoggedInUserId(req) diff --git a/services/web/app/coffee/Features/Subscription/SubscriptionRouter.coffee b/services/web/app/coffee/Features/Subscription/SubscriptionRouter.coffee index e7f251e208..57c1dba8c8 100644 --- a/services/web/app/coffee/Features/Subscription/SubscriptionRouter.coffee +++ b/services/web/app/coffee/Features/Subscription/SubscriptionRouter.coffee @@ -17,6 +17,8 @@ module.exports = webRouter.get '/user/subscription/thank-you', AuthenticationController.requireLogin(), SubscriptionController.successful_subscription + webRouter.get '/user/subscription/canceled', AuthenticationController.requireLogin(), SubscriptionController.canceledSubscription + webRouter.get '/subscription/group', AuthenticationController.requireLogin(), SubscriptionGroupController.redirectToSubscriptionGroupAdminPage webRouter.delete '/subscription/group/user', AuthenticationController.requireLogin(), SubscriptionGroupController.removeSelfFromGroup diff --git a/services/web/app/views/subscriptions/canceled_subscription.pug b/services/web/app/views/subscriptions/canceled_subscription.pug new file mode 100644 index 0000000000..22a77634e0 --- /dev/null +++ b/services/web/app/views/subscriptions/canceled_subscription.pug @@ -0,0 +1,15 @@ +extends ../layout + +block content + .content.content-alt + .container + .row + .col-md-8.col-md-offset-2 + .card(ng-cloak) + .page-header + h2 #{translate("subscription_canceled")} + .alert.alert-info + p #{translate("to_modify_your_subscription_go_to")} + a(href="/user/subscription") #{translate("manage_subscription")}. + p + a.btn.btn-primary(href="/project") < #{translate("back_to_your_projects")} diff --git a/services/web/public/src/main/subscription-dashboard.js b/services/web/public/src/main/subscription-dashboard.js index b1c5b310fd..22f7cf8d51 100644 --- a/services/web/public/src/main/subscription-dashboard.js +++ b/services/web/public/src/main/subscription-dashboard.js @@ -231,7 +231,7 @@ define(['base'], function(App) { $scope.inflight = true return $http .post('/user/subscription/cancel', body) - .then(() => location.reload()) + .then(() => (location.href = '/user/subscription/canceled')) .catch(() => console.log('something went wrong changing plan')) } diff --git a/services/web/test/unit/coffee/Subscription/SubscriptionControllerTests.coffee b/services/web/test/unit/coffee/Subscription/SubscriptionControllerTests.coffee index b19cd2bd45..3c9d1d7385 100644 --- a/services/web/test/unit/coffee/Subscription/SubscriptionControllerTests.coffee +++ b/services/web/test/unit/coffee/Subscription/SubscriptionControllerTests.coffee @@ -293,7 +293,7 @@ describe "SubscriptionController", -> done() it "should redurect to the subscription page", (done)-> - @res.redirect.calledWith("/user/subscription").should.equal true + @res.redirect.calledWith("/user/subscription/canceled").should.equal true done() describe "recurly callback", ->