From dcf7f3ea1d14e92099130e30d396b53bfa198f7f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B3zsef=20Farkas?= Date: Mon, 27 Feb 2017 19:26:08 +0100 Subject: [PATCH] Add privilige screen component Closes #259 --- electron/src/app.module.ts | 2 ++ electron/src/app/app.routes.ts | 5 ++++ .../missing-device.component.ts | 2 +- .../src/components/privilige-checker/index.ts | 1 + .../privilige-checker.component.html | 4 +++ .../privilige-checker.component.scss | 11 +++++++ .../privilige-checker.component.ts | 29 +++++++++++++++++++ 7 files changed, 53 insertions(+), 1 deletion(-) create mode 100644 electron/src/components/privilige-checker/index.ts create mode 100644 electron/src/components/privilige-checker/privilige-checker.component.html create mode 100644 electron/src/components/privilige-checker/privilige-checker.component.scss create mode 100644 electron/src/components/privilige-checker/privilige-checker.component.ts diff --git a/electron/src/app.module.ts b/electron/src/app.module.ts index dba59920..516c7960 100644 --- a/electron/src/app.module.ts +++ b/electron/src/app.module.ts @@ -11,6 +11,7 @@ import { DragulaModule } from 'ng2-dragula/ng2-dragula'; import { Select2Module } from 'ng2-select2/ng2-select2'; import { MissingDeviceComponent } from './components/missing-device/missing-device.component'; +import { PriviligeCheckerComponent } from './components/privilige-checker'; import { UhkMessageComponent } from './components/uhk-message'; import { AddOnComponent } from './shared/components/add-on'; import { KeyboardSliderComponent } from './shared/components/keyboard/slider'; @@ -141,6 +142,7 @@ const storeConfig = { SettingsComponent, KeyboardSliderComponent, MissingDeviceComponent, + PriviligeCheckerComponent, UhkMessageComponent, CancelableDirective ], diff --git a/electron/src/app/app.routes.ts b/electron/src/app/app.routes.ts index fccb65fc..4a750fa6 100644 --- a/electron/src/app/app.routes.ts +++ b/electron/src/app/app.routes.ts @@ -3,6 +3,7 @@ import { ModuleWithProviders } from '@angular/core'; import { RouterModule, Routes } from '@angular/router'; import { MissingDeviceComponent } from './../components/missing-device/missing-device.component'; +import { PriviligeCheckerComponent } from './../components/privilige-checker'; import { MainAppComponent } from './../main-app/main-app.component'; import { mainAppRoutes } from './../main-app/main-app.routes'; @@ -11,6 +12,10 @@ const appRoutes: Routes = [ path: 'detection', component: MissingDeviceComponent }, + { + path: 'privilige', + component: PriviligeCheckerComponent + }, { path: '', component: MainAppComponent, diff --git a/electron/src/components/missing-device/missing-device.component.ts b/electron/src/components/missing-device/missing-device.component.ts index b0dd9b8e..e86b79f7 100644 --- a/electron/src/components/missing-device/missing-device.component.ts +++ b/electron/src/components/missing-device/missing-device.component.ts @@ -21,7 +21,7 @@ export class MissingDeviceComponent { .ignoreElements() .subscribe({ complete: () => { - router.navigate(['/']); + router.navigate(['/privilige']); } }); } diff --git a/electron/src/components/privilige-checker/index.ts b/electron/src/components/privilige-checker/index.ts new file mode 100644 index 00000000..36fd62d5 --- /dev/null +++ b/electron/src/components/privilige-checker/index.ts @@ -0,0 +1 @@ +export * from './privilige-checker.component'; diff --git a/electron/src/components/privilige-checker/privilige-checker.component.html b/electron/src/components/privilige-checker/privilige-checker.component.html new file mode 100644 index 00000000..589c4845 --- /dev/null +++ b/electron/src/components/privilige-checker/privilige-checker.component.html @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/electron/src/components/privilige-checker/privilige-checker.component.scss b/electron/src/components/privilige-checker/privilige-checker.component.scss new file mode 100644 index 00000000..ecab5076 --- /dev/null +++ b/electron/src/components/privilige-checker/privilige-checker.component.scss @@ -0,0 +1,11 @@ +.privilige-checker-wrapper { + height: 100%; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; +} + +uhk-message { + max-width: 50%; +} diff --git a/electron/src/components/privilige-checker/privilige-checker.component.ts b/electron/src/components/privilige-checker/privilige-checker.component.ts new file mode 100644 index 00000000..b353cfa7 --- /dev/null +++ b/electron/src/components/privilige-checker/privilige-checker.component.ts @@ -0,0 +1,29 @@ +import { Component } from '@angular/core'; +import { Router } from '@angular/router'; + +import { Observable } from 'rxjs/Observable'; +import 'rxjs/add/observable/of'; + +@Component({ + selector: 'privilige-checker', + templateUrl: 'privilige-checker.component.html', + styleUrls: ['privilige-checker.component.scss'] +}) +export class PriviligeCheckerComponent { + + constructor(router: Router) { + this.checkPermissions() + .subscribe(hasPermisson => { + if (hasPermisson) { + router.navigate(['/privilige']); + } + }); + } + + checkPermissions(): Observable { + return Observable.of(true); + } + + setUpPermissions() { } + +}