diff --git a/src/app/organization/organizationBillingChangePaymentController.js b/src/app/organization/organizationBillingChangePaymentController.js index dc82d5fb..a064db97 100644 --- a/src/app/organization/organizationBillingChangePaymentController.js +++ b/src/app/organization/organizationBillingChangePaymentController.js @@ -16,11 +16,11 @@ }).then(function (response) { $scope.card = null; if (existingPaymentMethod) { - $analytics.eventTrack('Changed Payment Method'); + $analytics.eventTrack('Changed Organization Payment Method'); toastr.success('You have changed your payment method.'); } else { - $analytics.eventTrack('Added Payment Method'); + $analytics.eventTrack('Added Organization Payment Method'); toastr.success('You have added a payment method.'); } diff --git a/src/app/organization/organizationBillingController.js b/src/app/organization/organizationBillingController.js index e66e9f47..e22764d9 100644 --- a/src/app/organization/organizationBillingController.js +++ b/src/app/organization/organizationBillingController.js @@ -15,7 +15,7 @@ $scope.changePayment = function () { var modal = $uibModal.open({ animation: true, - templateUrl: 'app/organization/views/organizationBillingChangePayment.html', + templateUrl: 'app/settings/views/settingsBillingChangePayment.html', controller: 'organizationBillingChangePaymentController', resolve: { existingPaymentMethod: function () { diff --git a/src/app/services/apiService.js b/src/app/services/apiService.js index 1127a198..034b6e38 100644 --- a/src/app/services/apiService.js +++ b/src/app/services/apiService.js @@ -127,6 +127,7 @@ postDelete: { url: _apiUri + '/accounts/delete', method: 'POST', params: {} }, postPremium: { url: _apiUri + '/accounts/premium', method: 'POST', params: {} }, putStorage: { url: _apiUri + '/accounts/storage', method: 'POST', params: {} }, + putPayment: { url: _apiUri + '/accounts/payment', method: 'POST', params: {} }, putCancelPremium: { url: _apiUri + '/accounts/cancel-premium', method: 'POST', params: {} }, putReinstatePremium: { url: _apiUri + '/accounts/reinstate-premium', method: 'POST', params: {} }, getBilling: { url: _apiUri + '/accounts/billing', method: 'GET', params: {} } diff --git a/src/app/settings/settingsBillingChangePaymentController.js b/src/app/settings/settingsBillingChangePaymentController.js new file mode 100644 index 00000000..05025b80 --- /dev/null +++ b/src/app/settings/settingsBillingChangePaymentController.js @@ -0,0 +1,34 @@ +angular + .module('bit.organization') + + .controller('settingsBillingChangePaymentController', function ($scope, $state, $uibModalInstance, apiService, stripe, + $analytics, toastr, existingPaymentMethod) { + $analytics.eventTrack('settingsBillingChangePaymentController', { category: 'Modal' }); + $scope.existingPaymentMethod = existingPaymentMethod; + + $scope.submit = function () { + $scope.submitPromise = stripe.card.createToken($scope.card).then(function (response) { + var request = { + paymentToken: response.id + }; + + return apiService.accounts.putPayment(null, request).$promise; + }).then(function (response) { + $scope.card = null; + if (existingPaymentMethod) { + $analytics.eventTrack('Changed Payment Method'); + toastr.success('You have changed your payment method.'); + } + else { + $analytics.eventTrack('Added Payment Method'); + toastr.success('You have added a payment method.'); + } + + $uibModalInstance.close(); + }); + }; + + $scope.close = function () { + $uibModalInstance.dismiss('cancel'); + }; + }); diff --git a/src/app/settings/settingsBillingController.js b/src/app/settings/settingsBillingController.js index cea01fcd..3172f22c 100644 --- a/src/app/settings/settingsBillingController.js +++ b/src/app/settings/settingsBillingController.js @@ -14,7 +14,7 @@ $scope.changePayment = function () { var modal = $uibModal.open({ animation: true, - templateUrl: 'app/organization/views/settingsBillingChangePayment.html', + templateUrl: 'app/settings/views/settingsBillingChangePayment.html', controller: 'settingsBillingChangePaymentController', resolve: { existingPaymentMethod: function () { diff --git a/src/app/organization/views/organizationBillingChangePayment.html b/src/app/settings/views/settingsBillingChangePayment.html similarity index 100% rename from src/app/organization/views/organizationBillingChangePayment.html rename to src/app/settings/views/settingsBillingChangePayment.html diff --git a/src/index.html b/src/index.html index b2aa3683..0d2a2720 100644 --- a/src/index.html +++ b/src/index.html @@ -216,6 +216,7 @@ +