Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import {Injectable, EventEmitter} from "@angular/core";
- import {Http, Headers, Response, RequestOptions} from "@angular/http";
- import {Observable} from "rxjs/Observable";
- import {AuthHttp} from "./auth.http";
- import {User} from "./user";
- @Injectable()
- export class AuthService {
- authKey = "auth";
- constructor(private http: AuthHttp) {
- }
- // Persist auth into localStorage or removes it if a NULL argument is given
- setAuth(auth: any): boolean {
- if (auth) {
- localStorage.setItem(this.authKey, JSON.stringify(auth));
- }
- else {
- localStorage.removeItem(this.authKey);
- }
- return true;
- }
- // Retrieves the auth JSON object (or NULL if none)
- getAuth(): any {
- var i = localStorage.getItem(this.authKey);
- if (i) {
- return JSON.parse(i);
- }
- else {
- return null;
- }
- }
- // Returns TRUE if the user is logged in, FALSE otherwise.
- isLoggedIn(): boolean {
- return localStorage.getItem(this.authKey) != null;
- }
- **get() {
- return this.http.get("api/Accounts")
- .map(response => <User>response.json());
- }**
- }
- /// <summary>
- /// GET: api/accounts
- /// </summary>
- /// <returns>A Json-serialized object representing the current account.</returns>
- [HttpGet()]
- public IActionResult Get()
- {
- var id = GetCurrentUserId();
- //var id = User.FindFirst(ClaimTypes.NameIdentifier).Value;
- var user = DbContext.Users.Where(i => i.Id == id).FirstOrDefault();
- if (user != null) return new JsonResult(new UserViewModel()
- {
- Type = user.Type,
- UserName = user.UserName,
- Email = user.Email,
- DisplayName = user.DisplayName,
- PhoneNumber = user.PhoneNumber,
- DisplayPhoneNumber = user.DisplayPhoneNumber,
- Description = user.Description
- }, DefaultJsonSettings);
- else return NotFound(new { error = String.Format("User ID {0} has not been found", id) });
- }
- export class User {
- constructor(
- public Type: number,
- public UserName: string,
- public DisplayName: string,
- public PhoneNumber: string,
- public DisplayPhoneNumber: boolean,
- public Description: string,
- public Password: string,
- public PasswordNew: string,
- public Email: string
- ) {
- }
- }
- import {Component, OnInit} from "@angular/core";
- import {Router, ActivatedRoute} from "@angular/router";
- import {AuthService} from "./auth.service";
- import {AuthHttp} from "./auth.http";
- import {User} from "./user";
- @Component({
- selector: "home",
- templateUrl: "templates/home.component.html",
- //template: `<h1>Home Component</h1>`
- })
- export class HomeComponent {
- isRegister: boolean;
- currentUser: User;
- constructor(
- public router: Router,
- public authService: AuthService,
- private activatedRoute: ActivatedRoute
- ) {
- //this.isRegister = this.authService.isLoggedIn();
- //console.log(this.isRegister);
- }
- ngOnInit() {
- if (this.authService.isLoggedIn()) {
- this.authService.get().subscribe(
- User => this.currentUser = User
- );
- console.log(this.isRegister);
- console.log(this.currentUser.UserName);
- }
- }
- }
- <div *ngIf="currentUser"><h1>{{currentUser.UserName}}</h1></div>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement