document.write('
Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. import { Injectable } from \'@angular/core\';
  2. import { Http } from \'@angular/http\';
  3. import { Storage, LocalStorage } from \'ionic-angular\';
  4. import \'rxjs/add/operator/map\';
  5. import \'rxjs/add/operator/timeout\';
  6.  
  7. import * as config from \'../../config/config\';
  8. import * as TokenManager from \'../../utils/token-manager\';
  9. import { UserManagementService } from \'../user-management-service/user-management-service\';
  10.  
  11. @Injectable()
  12. export class AuthService {
  13.   private authToken: string = null;
  14.   constructor(private http: Http,
  15.     private userMgt: UserManagementService) { }
  16.  
  17.   login(data) {
  18.     return new Promise(resolve => {
  19.       this.http.post(config.apiUrl + \'/rest/user/login?method=normal\', data)
  20.         .map(res => res.json())
  21.         .subscribe(data => {
  22.           if (data.success) {
  23.             this.authToken = data.data.token;
  24.             TokenManager.saveToken(this.authToken).then(() => {
  25.               this.userMgt.fetchProfile().then(() => {
  26.                 resolve(data);
  27.               });
  28.  
  29.             });
  30.           } else {
  31.             this.authToken = null;
  32.             resolve(data);
  33.           }
  34.         });
  35.     });
  36.   }
  37. }
');