UNPKG

tfabrica

Version:

library for TFabrica - TechSol

78 lines 4.12 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 http_1 = require("@angular/http"); require("rxjs/Rx"); var rxjs_1 = require("rxjs"); var tfabrica_userdata_model_1 = require("../models/tfabrica.userdata.model"); var tfabrica_shared_service_1 = require("../main/tfabrica.shared.service"); var TfabricaLoginService = (function () { function TfabricaLoginService(_http, _shared) { this._http = _http; this._shared = _shared; this.loginUrl = "/api/Auth/Authenticate"; } TfabricaLoginService.prototype.login = function (username, password) { var _this = this; this.loginUrl = this._shared.appSettings.authenticationApiUrl; this.loginUrl = this._shared.appSettings.getauthenticationApiUrl(); console.log("Start call service: " + this.loginUrl); var bodyString = { Username: username, Password: password }; var headers = new http_1.Headers({ 'Content-Type': 'application/json' }); // ... Set content type to JSON var options = new http_1.RequestOptions({ headers: headers }); // Create a request option return this._http.post(this.loginUrl, bodyString, options) // ...using post request .map(function (res) { return _this.extractLoginData(res); }) // ...and calling .json() on the response to return data .catch(function (err) { return _this.handleError(err); }); //...errors if any }; TfabricaLoginService.prototype.extractLoginData = function (res) { if (res.status < 200 || res.status >= 300) { throw new Error('Bad response status: ' + res.status); } var userData = new tfabrica_userdata_model_1.TfabricaUserData(); var response = res.json(); userData.username = response['user']['username']; userData.name = response['user']['name']; userData.surname = response['user']['surname']; userData.sourceImage = response['user']['sourceImage']; userData.token = response.token; userData.isLogged = true; return userData || {}; }; TfabricaLoginService.prototype.handleError = function (error) { var errMsg = error.message || 'Server error'; console.error(errMsg); // log to console instead return rxjs_1.Observable.throw(errMsg); }; TfabricaLoginService.prototype.logout = function () { localStorage.removeItem('userData'); }; TfabricaLoginService.prototype.getUser = function () { return JSON.parse(localStorage.getItem('userData')); }; TfabricaLoginService.prototype.isLoggedIn = function () { return this.getUser() !== null; }; TfabricaLoginService.prototype.updateUser = function (userData) { localStorage.setItem('userData', JSON.stringify(userData)); }; return TfabricaLoginService; }()); TfabricaLoginService = __decorate([ core_1.Injectable(), __metadata("design:paramtypes", [http_1.Http, tfabrica_shared_service_1.TfabricaSharedService]) ], TfabricaLoginService); exports.TfabricaLoginService = TfabricaLoginService; exports.AUTH_PROVIDERS = [ { provide: TfabricaLoginService, useClass: TfabricaLoginService } ]; //# sourceMappingURL=tfabrica.login.service.js.map