Commit 24a44ec43365b93c26c09a94ff52ab2d66992464
1 parent
f75c68d0
Exists in
master
and in
9 other branches
Fixed design mode state
Showing
3 changed files
with
14 additions
and
7 deletions
Show diff stats
src/app/admin/layout-edit/designMode.service.ts
| 1 | -import {Injectable, Output, EventEmitter} from 'ng-forward'; | 1 | +import {Injectable, Output, EventEmitter, Inject} from 'ng-forward'; |
| 2 | +import {INoosferoLocalStorage} from "./../../shared/models/interfaces"; | ||
| 2 | 3 | ||
| 3 | @Injectable() | 4 | @Injectable() |
| 5 | +@Inject("$localStorage") | ||
| 4 | export class DesignModeService { | 6 | export class DesignModeService { |
| 5 | @Output() onToggle: EventEmitter<boolean> = new EventEmitter<boolean>(); | 7 | @Output() onToggle: EventEmitter<boolean> = new EventEmitter<boolean>(); |
| 6 | 8 | ||
| 7 | - private designModeOn: boolean = false; | 9 | + //private designModeOn: boolean = false; |
| 8 | 10 | ||
| 9 | isInDesignMode(): boolean { | 11 | isInDesignMode(): boolean { |
| 10 | - return this.designModeOn; | 12 | + return this.$localStorage.settings.designModeOn; |
| 11 | } | 13 | } |
| 12 | 14 | ||
| 13 | setInDesignMode(value: boolean) { | 15 | setInDesignMode(value: boolean) { |
| 14 | - if (this.designModeOn !== value) { | ||
| 15 | - this.designModeOn = value; | ||
| 16 | - this.onToggle.next(this.designModeOn); | 16 | + if (this.$localStorage.settings.designModeOn !== value) { |
| 17 | + this.$localStorage.settings.designModeOn = value; | ||
| 18 | + this.onToggle.next(value); | ||
| 17 | } | 19 | } |
| 18 | } | 20 | } |
| 19 | 21 | ||
| 20 | - constructor() { | 22 | + constructor(private $localStorage: INoosferoLocalStorage) { |
| 23 | + if (!this.$localStorage.settings) { | ||
| 24 | + this.$localStorage.settings = {}; | ||
| 25 | + } | ||
| 21 | } | 26 | } |
| 22 | } | 27 | } |
src/app/login/session.service.ts
| @@ -16,6 +16,7 @@ export class SessionService { | @@ -16,6 +16,7 @@ export class SessionService { | ||
| 16 | 16 | ||
| 17 | destroy() { | 17 | destroy() { |
| 18 | delete this.$localStorage.currentUser; | 18 | delete this.$localStorage.currentUser; |
| 19 | + delete this.$localStorage.settings; | ||
| 19 | }; | 20 | }; |
| 20 | 21 | ||
| 21 | currentUser(): noosfero.User { | 22 | currentUser(): noosfero.User { |
src/app/shared/models/interfaces.ts
| @@ -8,4 +8,5 @@ export interface UserResponse { | @@ -8,4 +8,5 @@ export interface UserResponse { | ||
| 8 | 8 | ||
| 9 | export interface INoosferoLocalStorage extends angular.storage.ILocalStorageService { | 9 | export interface INoosferoLocalStorage extends angular.storage.ILocalStorageService { |
| 10 | currentUser: noosfero.User; | 10 | currentUser: noosfero.User; |
| 11 | + settings: any; | ||
| 11 | } | 12 | } |