Commit e02d6ae5c34328b09540708d0eba2cf32053f3a1
1 parent
976d69f6
Exists in
master
and in
9 other branches
Fixed design mode service auth lifecycle
Showing
4 changed files
with
13 additions
and
6 deletions
Show diff stats
src/app/admin/layout-edit/designMode.service.ts
... | ... | @@ -6,11 +6,13 @@ import {INoosferoLocalStorage} from "./../../shared/models/interfaces"; |
6 | 6 | export class DesignModeService { |
7 | 7 | @Output() onToggle: EventEmitter<boolean> = new EventEmitter<boolean>(); |
8 | 8 | |
9 | - //private designModeOn: boolean = false; | |
10 | - | |
11 | 9 | isInDesignMode(): boolean { |
12 | 10 | return this.$localStorage.settings.designModeOn; |
13 | 11 | } |
12 | + | |
13 | + destroy() { | |
14 | + this.$localStorage.settings = {}; | |
15 | + } | |
14 | 16 | |
15 | 17 | setInDesignMode(value: boolean) { |
16 | 18 | if (this.$localStorage.settings.designModeOn !== value) { | ... | ... |
src/app/admin/layout-edit/designModeToggler.component.spec.ts
... | ... | @@ -22,7 +22,8 @@ describe('DesignModeToggler Component', () => { |
22 | 22 | template: htmlTemplate, |
23 | 23 | directives: [DesignModeTogglerComponent], |
24 | 24 | providers: [ |
25 | - helpers.createProviderToValue('DesignModeService', designModeService) | |
25 | + helpers.createProviderToValue('DesignModeService', designModeService), | |
26 | + helpers.createProviderToValue('AuthService', helpers.mocks.authService), | |
26 | 27 | ] |
27 | 28 | }); |
28 | 29 | helper = new ComponentTestHelper<DesignModeTogglerComponent>(cls, done); | ... | ... |
src/app/admin/layout-edit/designModeToggler.component.ts
1 | 1 | import {Component, Inject} from 'ng-forward'; |
2 | 2 | import {DesignModeService} from './designMode.service'; |
3 | +import {AuthService, AuthEvents} from '../../login' | |
4 | + | |
3 | 5 | @Component({ |
4 | 6 | selector: 'noosfero-design-toggler', |
5 | 7 | templateUrl: 'app/admin/layout-edit/designModeToggler.html' |
6 | 8 | }) |
7 | -@Inject(DesignModeService) | |
9 | +@Inject(DesignModeService, AuthService) | |
8 | 10 | export class DesignModeTogglerComponent { |
9 | 11 | |
10 | 12 | icon: string = " <i class='glyphicon glyphicon-wrench'></i> "; |
11 | 13 | |
12 | - constructor(private designModeService: DesignModeService) { | |
14 | + constructor(private designModeService: DesignModeService, private authService: AuthService) { | |
15 | + this.authService.subscribe(AuthEvents[AuthEvents.logoutSuccess], () => { | |
16 | + this.designModeService.destroy(); | |
17 | + }); | |
13 | 18 | } |
14 | 19 | |
15 | 20 | private _inDesignMode: boolean = false; | ... | ... |
src/app/profile/custom-content/custom-content.component.spec.ts
... | ... | @@ -25,7 +25,6 @@ describe("Components", () => { |
25 | 25 | helpers.createProviderToValue("$uibModal", helpers.mocks.$modal), |
26 | 26 | helpers.createProviderToValue("ProfileService", profileService), |
27 | 27 | helpers.createProviderToValue("NotificationService", notificationService), |
28 | - //helpers.createProviderToValue("DesignModeService", helpers.mocks.designModeService) | |
29 | 28 | helpers.createProviderToValue("DesignModeService", designModeService) |
30 | 29 | ] |
31 | 30 | }); | ... | ... |