(function () { "use strict"; var streamApp = angular.module('streamApp'); streamApp.directive('loginDirective', ['userService', '$routeParams', '$location', LoginDirective]); function LoginDirective(userService, $routeParams, $location) { return { restrict: 'E', scope: { callBack: '=' }, templateUrl: '/App/Directives/login/loginDirective.html?v=6.0.0c', link: function (scope, element, attrs, tabsCtrl) { scope.loginKey = function (keyEvent) { if (keyEvent.which === 13) scope.login(); }; scope.model = {}; scope.createPassword = function (email) { $('.upload').show(); userService.createToken(email) .then((data) => { scope.message = data.message; scope.validated = true; scope.errorMessage = ''; scope.$broadcast('password'); $('.upload').hide(); }) .catch(processError); }; if ($routeParams.token) { scope.tryLogin = true; userService.login($routeParams.token) .then(function (data) { //success //var last = $routeParams.start; $('.upload').hide(); if (!scope.callBack) { $location.url('/'); /* if (last && !last.includes('login')) { $location.url(last); } else { } */ } else { scope.callBack(); } }) .catch(processError) .then(() => scope.tryLogin = false); } function processError(err) { scope.errorMessage = err.data.message || 'There was an issue - please try again.'; scope.message = ''; $('.upload').hide(); } } }; } }());