Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import { Storage } from '@ionic/storage';
- //import { NativeStorage } from '@ionic-native/native-storage/';
- import { UtilsProvider } from './../providers/utils/utils';
- /* import others libraries */
- import { Component, ViewChild, TestabilityRegistry } from '@angular/core';
- import { Nav, Platform, LoadingController, AlertController, MenuController } from 'ionic-angular';
- import { StatusBar } from '@ionic-native/status-bar';
- import { SplashScreen } from '@ionic-native/splash-screen';
- /* import providers */
- import { DatabaseProvider } from '../providers/database/database';
- import { UserProvider } from './../providers/user/user';
- /* import pages */
- import { HomePage } from '../pages/home/home';
- import { LoginPage } from '../pages/login/login';
- import { ProductPage } from '../pages/product/product';
- import { ClientPage } from '../pages/client/client';
- import { ChartPage } from '../pages/chart/chart';
- import {NgZone} from '@angular/core';
- @Component({
- templateUrl: 'app.html'
- })
- export class MyApp {
- @ViewChild(Nav) nav:Nav;
- rootPage: any = null;
- pages: Array<{title: string, subtitle: string, component: any, icon: any}>;
- emailu: string;
- numcgc: string;
- token: string;
- codven: string;
- user: any;
- constructor(platform: Platform, statusBar: StatusBar, splashScreen: SplashScreen, private dbProvider: DatabaseProvider, public loadingCtrl: LoadingController, public alertCtrl: AlertController, private userProvider: UserProvider, private utils: UtilsProvider, ngzone: NgZone, private storage: Storage) {
- platform.ready().then(() => {
- statusBar.overlaysWebView(false);
- statusBar.backgroundColorByHexString('#405491');
- splashScreen.hide();
- this.storage.get("user").then((user) => {
- if(user) {
- ngzone.run(() => {
- this.emailu = user.emailu;
- this.token = user.token;
- this.codven = user.codven;
- dbProvider.createDatabase();
- this.nav.setRoot(HomePage);
- });
- } else {
- this.emailu = '';
- this.token = '';
- this.codven = '';
- this.openLoginPage(splashScreen);
- }
- }).catch((err) => {console.log("app.component.ts " + err.message)});
- });
- this.pages = [
- { title: 'Pedidos', subtitle: '', component: HomePage, icon: 'document'},
- { title: 'Clientes', subtitle: '', component: ClientPage, icon: 'person'},
- { title: 'Produtos', subtitle: '', component: ProductPage, icon: 'cube'},
- { title: 'Relatórios', subtitle: '', component: ChartPage, icon: 'podium'},
- { title: 'Sistema Online', subtitle: '', component: null, icon: 'cloud'},
- { title: 'Sincronizar', subtitle: '', component: null, icon: 'sync'},
- { title: 'Sair', subtitle: '', component: null, icon: 'power'}
- ];
- }
- private openLoginPage(splashScreen: SplashScreen) {
- splashScreen.hide();
- this.rootPage = LoginPage;
- }
- openPage(page) {
- if(page.title == 'Sair') {
- this.nav.setRoot(LoginPage)
- this.nav.popToRoot();
- } else if(page.title == 'Sincronizar') {
- if(this.utils.checkConnection()) {
- let loader = this.loadingCtrl.create({content: "Sincronizando, aguarde..."});
- loader.present().then(() => {
- this.dbProvider.syncDatabase(this.token, this.codven).then(() => {
- loader.dismiss();
- this.nav.push('HomePage');
- }).catch((err) => {
- loader.dismiss();
- this.utils.showAlert('Sincronizar', err.message);
- });
- });
- } else {
- this.utils.showAlert('Sincronizar', 'Você não está conectado a internet, verifique!');
- }
- } else if(page.title == 'Sistema Online') {
- window.open("http://200.98.129.191:8080/dashboard/", '_system', 'location=yes');
- } else {
- this.nav.push(page.component);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement