fnakstad / angular-client-side-auth

One way to implement authentication/authorization in Angular applications
http://angular-client-side-auth.herokuapp.com/
MIT License
1.63k stars 346 forks source link

If a user already exists don't send to index. #86

Open cleversprocket opened 10 years ago

cleversprocket commented 10 years ago

When registering a new user and a 403 is returned because there is already one with the same name, they should not be sent to the index page but kept on the register page so they can try again.

Here's a quick solution. Let me know if there's a better one!:

//file: controllers.js
//...
.controller('RegisterCtrl',
//...
$scope.register = function () {
            Auth.register({
                username: $scope.username,
                password: $scope.password,
                role: $scope.role
            },
            function () {
                $location.path('/');
            },
            function (err) {
                $rootScope.error = err;
//If there is an error then stay on the register page
                if(err !== null) {
                    $location.path('/register');
                }
            });
        };
}]);
fnakstad commented 9 years ago

Excellent observation! Thank you so much. I'd be happy to receive a PR for this since you've already solved it. If it's too much bother, let me know and I will make the changes myself :)