mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-31 17:38:48 +00:00
#878 fix user info demo
This commit is contained in:
@@ -21,6 +21,8 @@ import { AlfrescoSettingsService } from './AlfrescoSettings.service';
|
||||
import { AlfrescoApiService } from './AlfrescoApi.service';
|
||||
import * as alfrescoApi from 'alfresco-js-api';
|
||||
import { AlfrescoApi } from 'alfresco-js-api';
|
||||
import { Subject } from 'rxjs/Subject';
|
||||
|
||||
/**
|
||||
* The AlfrescoAuthenticationService provide the login service and store the ticket in the localStorage
|
||||
*/
|
||||
@@ -29,6 +31,10 @@ export class AlfrescoAuthenticationService {
|
||||
|
||||
alfrescoApi: AlfrescoApi;
|
||||
|
||||
public loginSubject: Subject<any> = new Subject<any>();
|
||||
|
||||
public logoutSubject: Subject<any> = new Subject<any>();
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
* @param settingsService
|
||||
@@ -84,6 +90,7 @@ export class AlfrescoAuthenticationService {
|
||||
return Observable.fromPromise(this.callApiLogin(username, password))
|
||||
.map((response: any) => {
|
||||
this.saveTickets();
|
||||
this.loginSubject.next(response);
|
||||
return {type: this.settingsService.getProviders(), ticket: response};
|
||||
})
|
||||
.catch(this.handleError);
|
||||
@@ -109,6 +116,7 @@ export class AlfrescoAuthenticationService {
|
||||
return Observable.fromPromise(this.callApiLogout())
|
||||
.map(res => <any> res)
|
||||
.do(response => {
|
||||
this.logoutSubject.next(response);
|
||||
return response;
|
||||
})
|
||||
.catch(this.handleError);
|
||||
|
@@ -64,7 +64,6 @@ import { AlfrescoAuthenticationService, AlfrescoSettingsService } from 'ng2-alfr
|
||||
<ng2-alfresco-userinfo [menuOpenType]="left"></ng2-alfresco-userinfo>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- LOGIN COMPONENT -->
|
||||
<alfresco-login [providers]="providers"
|
||||
[disableCsrf]="disableCsrf"></alfresco-login>`,
|
||||
|
@@ -1,4 +1,4 @@
|
||||
<div id="userinfo_container">
|
||||
<div id="userinfo_container" *ngIf="isLoggedIn()">
|
||||
<div *ngIf="ecmUser || bpmUser" class="button-profile" id="user-profile" data-automation-id="user-profile">
|
||||
<img id="logged-user-img"
|
||||
[src]="getUserAvatar()"
|
||||
|
@@ -47,9 +47,13 @@ export class UserInfoComponent implements AfterViewChecked, OnInit {
|
||||
private baseComponentPath = module.id.replace('components/user-info.component.js', '');
|
||||
|
||||
ecmUser: EcmUserModel;
|
||||
|
||||
bpmUser: BpmUserModel;
|
||||
|
||||
anonymousImageUrl: string = this.baseComponentPath + 'img/anonymous.gif';
|
||||
|
||||
bpmUserImage: any;
|
||||
|
||||
ecmUserImage: any;
|
||||
|
||||
constructor(private ecmUserService: EcmUserService,
|
||||
@@ -59,6 +63,10 @@ export class UserInfoComponent implements AfterViewChecked, OnInit {
|
||||
if (translate) {
|
||||
translate.addTranslationFolder('node_modules/ng2-alfresco-userinfo/src');
|
||||
}
|
||||
|
||||
authService.loginSubject.subscribe((response) => {
|
||||
this.getUserInfo();
|
||||
});
|
||||
}
|
||||
|
||||
ngAfterViewChecked() {
|
||||
@@ -69,10 +77,18 @@ export class UserInfoComponent implements AfterViewChecked, OnInit {
|
||||
}
|
||||
|
||||
ngOnInit() {
|
||||
this.getUserInfo();
|
||||
}
|
||||
|
||||
getUserInfo() {
|
||||
this.getEcmUserInfo();
|
||||
this.getBpmUserInfo();
|
||||
}
|
||||
|
||||
isLoggedIn() {
|
||||
return this.authService.isLoggedIn();
|
||||
}
|
||||
|
||||
getEcmUserInfo(): void {
|
||||
if (this.authService.isEcmLoggedIn()) {
|
||||
this.ecmUserService.getCurrentUserInfo()
|
||||
|
Reference in New Issue
Block a user