34 lines
		
	
	
		
			903 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			34 lines
		
	
	
		
			903 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
// #docplaster
 | 
						|
// #docregion
 | 
						|
import { Injectable }    from '@angular/core';
 | 
						|
 | 
						|
import { LoggerService } from './logger.service';
 | 
						|
import { UserService }   from './user.service';
 | 
						|
 | 
						|
// #docregion injectables, injectable
 | 
						|
@Injectable()
 | 
						|
export class UserContextService {
 | 
						|
// #enddocregion injectables, injectable
 | 
						|
  name: string;
 | 
						|
  role: string;
 | 
						|
  loggedInSince: Date;
 | 
						|
 | 
						|
  // #docregion ctor, injectables
 | 
						|
  constructor(private userService: UserService, private loggerService: LoggerService) {
 | 
						|
   // #enddocregion ctor, injectables
 | 
						|
    this.loggedInSince = new Date();
 | 
						|
   // #docregion ctor, injectables
 | 
						|
  }
 | 
						|
  // #enddocregion ctor, injectables
 | 
						|
 | 
						|
  loadUser(userId: number) {
 | 
						|
    let user = this.userService.getUserById(userId);
 | 
						|
    this.name = user.name;
 | 
						|
    this.role = user.role;
 | 
						|
 | 
						|
    this.loggerService.logDebug('loaded User');
 | 
						|
  }
 | 
						|
// #docregion injectables, injectable
 | 
						|
}
 | 
						|
// #enddocregion injectables, injectable
 |