|
14 | 14 |
|
15 | 15 | import { Injectable } from '@angular/core'; |
16 | 16 | import { Location } from '@angular/common'; |
17 | | -import { Platform, AlertController } from 'ionic-angular'; |
| 17 | +import { Platform, AlertController, NavController, NavOptions } from 'ionic-angular'; |
18 | 18 | import { TranslateService } from '@ngx-translate/core'; |
19 | 19 | import { CoreAppProvider } from '@providers/app'; |
20 | 20 | import { CoreConfigProvider } from '@providers/config'; |
@@ -416,14 +416,20 @@ export class CoreLoginHelperProvider { |
416 | 416 | /** |
417 | 417 | * Go to the initial page of a site depending on 'userhomepage' setting. |
418 | 418 | * |
| 419 | + * @param {NavController} [navCtrl] NavController to use. Defaults to app root NavController. |
| 420 | + * @param {string} [page] Name of the page to load after loading the main page. |
| 421 | + * @param {any} [params] Params to pass to the page. |
| 422 | + * @param {NavOptions} [options] Navigation options. |
419 | 423 | * @return {Promise<any>} Promise resolved when done. |
420 | 424 | */ |
421 | | - goToSiteInitialPage(): Promise<any> { |
| 425 | + goToSiteInitialPage(navCtrl?: NavController, page?: string, params?: any, options?: NavOptions): Promise<any> { |
| 426 | + navCtrl = navCtrl || this.appProvider.getRootNavController(); |
| 427 | + |
422 | 428 | // Due to DeepLinker, we need to remove the path from the URL before going to main menu. |
423 | 429 | // IonTabs checks the URL to determine which path to load for deep linking, so we clear the URL. |
424 | 430 | this.location.replaceState(''); |
425 | 431 |
|
426 | | - return this.appProvider.getRootNavController().setRoot('CoreMainMenuPage'); |
| 432 | + return navCtrl.setRoot('CoreMainMenuPage', { redirectPage: page, redirectParams: params }, options); |
427 | 433 | } |
428 | 434 |
|
429 | 435 | /** |
|
0 commit comments