Skip to content

Instantly share code, notes, and snippets.

@galek
Created June 15, 2019 12:34
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save galek/d5dedd919c88735d03de50b6418f0a5a to your computer and use it in GitHub Desktop.
Save galek/d5dedd919c88735d03de50b6418f0a5a to your computer and use it in GitHub Desktop.
PageHelper
import { NavController } from 'ionic-angular';
import { AccountPageLogin } from '../pages/account-login/account-login';
import { AccountPagePasswordNew } from '../pages/account-password-new/account-password-new';
import { AccountPagePasswordReset } from '../pages/account-password-reset/account-password-reset';
import { AccountPageReg } from '../pages/account-reg/account-reg';
import { AccountPageShared } from '../pages/account-shared/account-shared';
import { InformationAndContactsShared } from "../pages/InformationAndContactsShared/InformationAndContactsShared"
import { InformationAndContacts } from "../pages/InformationAndContacts/InformationAndContacts"
import { MyProfilePage } from '../pages/MyProfilePage/MyProfilePage'
import { AddressPage } from '../pages/account-address-address/account-address-address'
import { AnyInformationPage } from '../pages/AnyInformationPage/AnyInformationPage';
import { SearchPage } from '../pages/search-module/search-module';
import { ProductPage } from '../pages/product-page/product-page';
import { OrderStatus } from '../pages/OrderStatus/OrderStatus';
import { CategoryPage } from '../pages/Category/Category';
export enum CodesOfPages {
Catalog = 0,
Cart,
ToPay,
Profile
}
export class PagesHelper {
static goToCatalog(navCtrl: NavController, isRoot: boolean = false) {
PagesHelper.goToAnyPage(navCtrl, SearchPage, isRoot);
}
static goToLogin(navCtrl: NavController, isRoot: boolean = false) {
PagesHelper.goToAnyPage(navCtrl, AccountPageLogin, isRoot);
}
static goToPsswordNew(navCtrl: NavController, isRoot: boolean = false) {
PagesHelper.goToAnyPage(navCtrl, AccountPagePasswordNew, isRoot);
}
static goToPsswordForget(navCtrl: NavController, isRoot: boolean = false) {
PagesHelper.goToAnyPage(navCtrl, AccountPagePasswordReset, isRoot);
}
static goToRegistration(navCtrl: NavController, isRoot: boolean = false) {
PagesHelper.goToAnyPage(navCtrl, AccountPageReg, isRoot);
}
static goToAccountShared(navCtrl: NavController, isRoot: boolean = false) {
PagesHelper.goToAnyPage(navCtrl, AccountPageShared, isRoot);
}
static goToChat(navCtrl: NavController, isRoot: boolean = false) {
alert("[Заглушка] goToChat");
}
static goToInformationContacts(navCtrl: NavController, isRoot: boolean = false) {
PagesHelper.goToAnyPage(navCtrl, InformationAndContacts, isRoot);
}
static goToInformationContactsShared(navCtrl: NavController, isRoot: boolean = false) {
PagesHelper.goToAnyPage(navCtrl, InformationAndContactsShared, isRoot);
}
static goToMyProfilePage(navCtrl: NavController, isRoot: boolean = false) {
PagesHelper.goToAnyPage(navCtrl, MyProfilePage, isRoot);
}
static goToShippingMethods(navCtrl: NavController, isRoot: boolean = false) {
console.assert(navCtrl != undefined, "Not exist navctrl");
if (!navCtrl) return;
//TODO: replace magic constant
navCtrl.push(AnyInformationPage, { reqBody: { information_id: 11 } });
}
static goToOrdersChecksByManager(navCtrl: NavController, isRoot: boolean = false) {
alert("[Заглушка] goToOrdersChecksByManager");
}
static goToOrdersWaitsPay(navCtrl: NavController, isRoot: boolean = false) {
alert("[Заглушка] goToOrdersWaitsPay");
}
static goToOrdersInShipping(navCtrl: NavController, isRoot: boolean = false) {
alert("[Заглушка] goToOrdersInShipping");
}
static goToOrdersEnds(navCtrl: NavController, isRoot: boolean = false) {
alert("[Заглушка] goToOrdersEnds");
}
static goToOrdersCanceled(navCtrl: NavController, isRoot: boolean = false) {
alert("[Заглушка] goToOrdersCanceled");
}
static goToAddressPage(navCtrl: NavController, isRoot: boolean = false) {
PagesHelper.goToAnyPage(navCtrl, AddressPage, isRoot);
}
static goToProductPage(navCtrl: NavController, isRoot: boolean = false, params: any = null) {
PagesHelper.goToAnyPage(navCtrl, ProductPage, isRoot, params);
}
static goToCategory(navCtrl: NavController, isRoot: boolean = false, params: any = null) {
PagesHelper.goToAnyPage(navCtrl, CategoryPage, isRoot, params);
}
static goToAnyPage(navCtrl: NavController, page: any, isRoot: boolean = false, params: any = null) {
console.assert(navCtrl != undefined, "Not exist navctrl");
if (!navCtrl) return;
console.assert(page != undefined, "Not exist page");
if (!page) return;
if (isRoot)
navCtrl.setRoot(page, params);
else
navCtrl.push(page, params);
}
static goToPageToolbar(navCtrl: NavController, pageid: CodesOfPages) {
if (!navCtrl) return;
if (!navCtrl.getActiveChildNav()) return;
navCtrl.getActiveChildNav().select(pageid);
navCtrl.pop();
}
static goToWaitingPay(navCtrl: NavController, _status: string, _root: boolean = false) {
this.goToAnyPage(navCtrl, OrderStatus, _root, {
status: _status, title: "Ожидает оплаты", ShowSubHeader: false, ShowBuyButton: true
});
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment