UNPKG

pulseauthenticate

Version:

Common Authentication library for pulse angular apps

97 lines (95 loc) 11.5 kB
"use strict"; var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata = (this && this.__metadata) || function (k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports, "__esModule", { value: true }); var core_1 = require("@angular/core"); var router_1 = require("@angular/router"); var alert_service_1 = require("../services/alert.service"); var authentication_service_1 = require("../services/authentication.service"); var LoginComponent = (function () { function LoginComponent(route, router, authenticationService, alertService) { this.route = route; this.router = router; this.authenticationService = authenticationService; this.alertService = alertService; this.model = {}; this.loading = false; this.showLoginPage = true; this.projectName = 'Pulse'; } LoginComponent.prototype.ngOnInit = function () { this.authenticationService.logout(); this.returnUrl = this.route.snapshot.queryParams['returnUrl'] || '/'; var url = decodeURIComponent(window.location.href); var project = url.split('?returnUrl=')[1]; if (typeof project == 'undefined' || project.length < 1 || project == '/' || project == '') { this.projectName = 'Pulse'; } else { var result = project.replace('/', '').replace(/([A-Z])/g, " $1"); var finalResult = result.charAt(0).toUpperCase() + result.slice(1); this.projectName = finalResult; } }; LoginComponent.prototype.login = function () { var _this = this; this.loading = true; this.authenticationService.login(this.model.username, this.model.password) .subscribe(function (data) { if (data && data.success) { _this.router.navigate([_this.returnUrl]); } else { _this.alertService.error(data.errorMessage); _this.loading = false; } }, function (error) { console.log(error); _this.alertService.error("Invalid Username / password"); _this.loading = false; }); }; LoginComponent.prototype.showForgotPassword = function () { this.showLoginPage = false; }; LoginComponent.prototype.forgotPassword = function () { var _this = this; this.loading = true; this.authenticationService.forgotPassword(this.model.username) .subscribe(function (data) { if (data && data.success) { _this.alertService.success(data.errorMessage); } else { _this.alertService.error(data.errorMessage); _this.loading = false; } }, function (error) { console.log(error); _this.alertService.error("Invalid Email"); _this.loading = false; }); }; LoginComponent.prototype.cancelForgotPassword = function () { this.showLoginPage = true; }; return LoginComponent; }()); LoginComponent = __decorate([ core_1.Component({ template: "\n <div class=\"btsPulse-login__container container-fluid\">\n <div class=\"btsPulse-login__row row\">\n <div class=\"btsPulse-login__header dd-brandBg-primary col-lg-5 col-md-5\">\n <div class=\"btsPulse-login__headerCont\">\n <span class=\"btsPulse-login__headerTitle dd-brandBorder-secondary\">{{projectName}}</span>\n <div class=\"btsPulse-login__headerLogo\">\n <img src=\"./assets/images/bts_logo1.png\" />\n </div>\n </div>\n </div>\n <div class=\"btsPulse-login__details col-lg-7 col-md-7\">\n <div class=\"btsPulse-login__detailsCont container-fluid\">\n <div class=\"btsPulse-login__content\" *ngIf=\"showLoginPage\">\n <div class=\"btsPulse-login__title\">Welcome !</div>\n <!--<div class=\"alert alert-danger\" role=\"alert\">\n <button type=\"button\" class=\"close\" data-dismiss=\"alert\" aria-label=\"Close\">\n <span aria-hidden=\"true\">&times;</span>\n </button>\n <strong>Warning !</strong> Incorrect login details.\n </div>-->\n <form name=\"form\" (ngSubmit)=\"f.form.valid && login()\" #f=\"ngForm\" novalidate>\n <div class=\"form-group btsPulse-login__inputWrapper\" [ngClass]=\"{ 'has-error': f.submitted && !username.valid }\">\n <!--<label for=\"username\">Username</label>-->\n <span class=\"btsPulse-login__usernameIcon\"><i class=\"icon user-01\"></i></span>\n <input type=\"text\" class=\"form-control btsPulse-login__inputField\" name=\"username\" placeholder=\"Username\" [(ngModel)]=\"model.username\" #username=\"ngModel\" required />\n <div *ngIf=\"f.submitted && !username.valid\" class=\"help-block\">Username is required</div>\n </div>\n \n \n <div class=\"form-group btsPulse-login__inputWrapper\" [ngClass]=\"{ 'has-error': f.submitted && !password.valid }\">\n <!--<label for=\"password\">Password</label>-->\n <span class=\"btsPulse-login__passwordIcon\"><i class=\"icon lock-01\"></i></span>\n <input type=\"password\" class=\"form-control btsPulse-login__inputField\" name=\"password\" placeholder=\"Password\" [(ngModel)]=\"model.password\" #password=\"ngModel\" required />\n <div *ngIf=\"f.submitted && !password.valid\" class=\"help-block\">Password is required</div>\n </div>\n \n <button [disabled]=\"loading\" class=\"btn btn-primary btsPulse-login__button dd-brandBg-secondary\"><i class=\"icon login-01\"></i>Login</button>\n <!--<img *ngIf=\"loading\" src=\"data:image/gif;base64,R0lGODlhEAAQAPIAAP///wAAAMLCwkJCQgAAAGJiYoKCgpKSkiH/C05FVFNDQVBFMi4wAwEAAAAh/hpDcmVhdGVkIHdpdGggYWpheGxvYWQuaW5mbwAh+QQJCgAAACwAAAAAEAAQAAADMwi63P4wyklrE2MIOggZnAdOmGYJRbExwroUmcG2LmDEwnHQLVsYOd2mBzkYDAdKa+dIAAAh+QQJCgAAACwAAAAAEAAQAAADNAi63P5OjCEgG4QMu7DmikRxQlFUYDEZIGBMRVsaqHwctXXf7WEYB4Ag1xjihkMZsiUkKhIAIfkECQoAAAAsAAAAABAAEAAAAzYIujIjK8pByJDMlFYvBoVjHA70GU7xSUJhmKtwHPAKzLO9HMaoKwJZ7Rf8AYPDDzKpZBqfvwQAIfkECQoAAAAsAAAAABAAEAAAAzMIumIlK8oyhpHsnFZfhYumCYUhDAQxRIdhHBGqRoKw0R8DYlJd8z0fMDgsGo/IpHI5TAAAIfkECQoAAAAsAAAAABAAEAAAAzIIunInK0rnZBTwGPNMgQwmdsNgXGJUlIWEuR5oWUIpz8pAEAMe6TwfwyYsGo/IpFKSAAAh+QQJCgAAACwAAAAAEAAQAAADMwi6IMKQORfjdOe82p4wGccc4CEuQradylesojEMBgsUc2G7sDX3lQGBMLAJibufbSlKAAAh+QQJCgAAACwAAAAAEAAQAAADMgi63P7wCRHZnFVdmgHu2nFwlWCI3WGc3TSWhUFGxTAUkGCbtgENBMJAEJsxgMLWzpEAACH5BAkKAAAALAAAAAAQABAAAAMyCLrc/jDKSatlQtScKdceCAjDII7HcQ4EMTCpyrCuUBjCYRgHVtqlAiB1YhiCnlsRkAAAOwAAAAAAAAAAAA==\" />-->\n \n <div class=\"form group btsPulse-login__forgotPassword\">\n <a (click)=\"showForgotPassword()\">Forgot Password?</a>\n </div>\n </form>\n </div>\n <div class=\"btsPulse-forgotPassword__content\" *ngIf=\"!showLoginPage\">\n <div class=\"btsPulse-forgotPassword__title\">Forgot Password !</div>\n <form name=\"form\" (ngSubmit)=\"f.form.valid && forgotPassword()\" #f=\"ngForm\" novalidate>\n <div class=\"btsPulse-forgotPassword__textCont\">If you have forgotten your password, simply enter your email address below, and click \"Reset password\". You will then receive an email with instructions about how to choose a new password.</div>\n <div class=\"form-group btsPulse-forgotPassword__emailText\" [ngClass]=\"{ 'has-error': f.submitted && !username.valid }\">\n <span class=\"btsPulse-forgotPassword__emailIcon\"><i class=\"icon email-01\"></i></span>\n <input type=\"text\" class=\"form-control btsPulse-email__inputField\" placeholder=\"Enter Email Id\" name=\"username\" [(ngModel)]=\"model.username\" #username=\"ngModel\" required />\n <div *ngIf=\"f.submitted && !username.valid\" class=\"help-block\">Email is required</div>\n </div>\n <div class=\"form-group\">\n <button (click)=\"cancelForgotPassword()\" class=\"btn btn-primary btsPulse-email__cancelButton dd-brandBg-secondary\"><i class=\"icon cancel-01\"></i>Cancel</button>\n <button [disabled]=\"loading\" (click)=\"forgotPassword()\" class=\"btn btn-primary btsPulse-email__resetButton dd-brandBg-secondary\"><i class=\"icon reset-01\"></i>Reset</button>\n <img *ngIf=\"loading\" src=\"data:image/gif;base64,R0lGODlhEAAQAPIAAP///wAAAMLCwkJCQgAAAGJiYoKCgpKSkiH/C05FVFNDQVBFMi4wAwEAAAAh/hpDcmVhdGVkIHdpdGggYWpheGxvYWQuaW5mbwAh+QQJCgAAACwAAAAAEAAQAAADMwi63P4wyklrE2MIOggZnAdOmGYJRbExwroUmcG2LmDEwnHQLVsYOd2mBzkYDAdKa+dIAAAh+QQJCgAAACwAAAAAEAAQAAADNAi63P5OjCEgG4QMu7DmikRxQlFUYDEZIGBMRVsaqHwctXXf7WEYB4Ag1xjihkMZsiUkKhIAIfkECQoAAAAsAAAAABAAEAAAAzYIujIjK8pByJDMlFYvBoVjHA70GU7xSUJhmKtwHPAKzLO9HMaoKwJZ7Rf8AYPDDzKpZBqfvwQAIfkECQoAAAAsAAAAABAAEAAAAzMIumIlK8oyhpHsnFZfhYumCYUhDAQxRIdhHBGqRoKw0R8DYlJd8z0fMDgsGo/IpHI5TAAAIfkECQoAAAAsAAAAABAAEAAAAzIIunInK0rnZBTwGPNMgQwmdsNgXGJUlIWEuR5oWUIpz8pAEAMe6TwfwyYsGo/IpFKSAAAh+QQJCgAAACwAAAAAEAAQAAADMwi6IMKQORfjdOe82p4wGccc4CEuQradylesojEMBgsUc2G7sDX3lQGBMLAJibufbSlKAAAh+QQJCgAAACwAAAAAEAAQAAADMgi63P7wCRHZnFVdmgHu2nFwlWCI3WGc3TSWhUFGxTAUkGCbtgENBMJAEJsxgMLWzpEAACH5BAkKAAAALAAAAAAQABAAAAMyCLrc/jDKSatlQtScKdceCAjDII7HcQ4EMTCpyrCuUBjCYRgHVtqlAiB1YhiCnlsRkAAAOwAAAAAAAAAAAA==\" />\n </div>\n </form>\n </div>\n </div>\n </div>\n </div>\n </div>\n ", }), __metadata("design:paramtypes", [router_1.ActivatedRoute, router_1.Router, authentication_service_1.AuthenticationService, alert_service_1.AlertService]) ], LoginComponent); exports.LoginComponent = LoginComponent; //# sourceMappingURL=login.component.js.map