Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import { Injectable } from '@angular/core';
- import { Observable } from 'rxjs/Observable';
- import { AngularFire } from 'angularfire2';
- import 'rxjs/add/operator/map';
- export class User {
- name: string;
- email: string;
- constructor(name: string, email: string) {
- this.name = name;
- this.email = email;
- }
- }
- /*
- Generated class for the AuthService provider.
- See https://angular.io/docs/ts/latest/guide/dependency-injection.html
- for more info on providers and Angular 2 DI.
- */
- @Injectable()
- export class AuthService {
- currentUser: User;
- errorMessage: '';
- constructor(private af: AngularFire) {
- }
- public login(credentials) {
- if (credentials.email === null || credentials.password === null) {
- return Observable.throw("Bitte geben Sie ihre Daten ein");
- } else {
- return Observable.create(observer => {
- //Firebase auth check
- this.af.auth.login({
- email: credentials.email,
- password: credentials.password
- }).then((success) => {
- this.currentUser = new User('admin', 'admin@admin.de');
- observer.next(true);
- observer.complete();
- }).catch((err) => {
- observer.next(false);
- observer.complete();
- });
- })
- }
- }
- public register(credentials) {
- if (credentials.email === null || credentials.password === null) {
- return Observable.throw("Bitte geben Sie ihre vollständigen Daten ein");
- } else {
- //firebase user creation
- return Observable.create(observer => {
- if (this.checkCredentials(credentials)) {
- this.af.auth.createUser({
- email: credentials.email,
- password: credentials.password
- }).then((success) => {
- observer.next(true);
- observer.complete();
- }).catch((err) => {
- observer.next(false);
- observer.complete();
- });
- } else {
- observer.error("Bitte verwenden Sie eine TU E-Mail");
- observer.complete();
- }
- })
- }
- }
- public checkCredentials(credentials) {
- if (credentials.email.indexOf('@tu-bs.de') != -1) {
- return true;
- } else {
- this.errorMessage += "No Tu-Mail;"
- return false;
- }
- }
- public getErrorMessage() {
- return this.errorMessage;
- }
- public getUserInfo() : User {
- return this.currentUser;
- }
- public logut() {
- return Observable.create(observer => {
- this.currentUser = null;
- observer.next(true);
- observer.complete();
- })
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement