From 0e2ea65918358eb9cd6fe78c9f8650ab9a6e579f Mon Sep 17 00:00:00 2001 From: itelo Date: Wed, 19 Oct 2016 22:12:47 -0200 Subject: [PATCH] fix(users): fix redirect when signup or add provider (#1573) Fixes the issue of the redirect after Social login authentication, on signup or user profile add provider. --- ...anage-social-accounts.client.controller.js | 13 +++++++++-- .../manage-social-accounts.client.view.html | 12 +++++----- .../users.authentication.server.controller.js | 22 ++++++++++--------- 3 files changed, 29 insertions(+), 18 deletions(-) diff --git a/modules/users/client/controllers/settings/manage-social-accounts.client.controller.js b/modules/users/client/controllers/settings/manage-social-accounts.client.controller.js index 1551fce1..0e1c954e 100644 --- a/modules/users/client/controllers/settings/manage-social-accounts.client.controller.js +++ b/modules/users/client/controllers/settings/manage-social-accounts.client.controller.js @@ -5,15 +5,16 @@ .module('users') .controller('SocialAccountsController', SocialAccountsController); - SocialAccountsController.$inject = ['$scope', 'UsersService', 'Authentication', 'Notification']; + SocialAccountsController.$inject = ['$state', '$window', 'UsersService', 'Authentication', 'Notification']; - function SocialAccountsController($scope, UsersService, Authentication, Notification) { + function SocialAccountsController($state, $window, UsersService, Authentication, Notification) { var vm = this; vm.user = Authentication.user; vm.hasConnectedAdditionalSocialAccounts = hasConnectedAdditionalSocialAccounts; vm.isConnectedSocialAccount = isConnectedSocialAccount; vm.removeUserSocialAccount = removeUserSocialAccount; + vm.callOauthProvider = callOauthProvider; // Check if there are additional accounts function hasConnectedAdditionalSocialAccounts() { @@ -42,5 +43,13 @@ function onRemoveSocialAccountError(response) { Notification.error({ message: response.message, title: ' Remove failed!' }); } + + // OAuth provider request + function callOauthProvider(url) { + url += '?redirect_to=' + encodeURIComponent($state.$current.url.prefix); + + // Effectively call OAuth authentication route: + $window.location.href = url; + } } }()); diff --git a/modules/users/client/views/settings/manage-social-accounts.client.view.html b/modules/users/client/views/settings/manage-social-accounts.client.view.html index 0fe8b324..1e52f715 100644 --- a/modules/users/client/views/settings/manage-social-accounts.client.view.html +++ b/modules/users/client/views/settings/manage-social-accounts.client.view.html @@ -18,7 +18,7 @@

Unconnected social accounts: