mirror of
https://github.com/ionic-team/ionic-framework.git
synced 2025-08-19 11:41:20 +08:00
chore(conference-app): updates
This commit is contained in:
@ -2,11 +2,7 @@
|
||||
<ion-header>
|
||||
<ion-toolbar color="primary">
|
||||
<ion-buttons slot="start">
|
||||
<ion-menu-toggle>
|
||||
<ion-button>
|
||||
<ion-icon slot="icon-only" name="menu"></ion-icon>
|
||||
</ion-button>
|
||||
</ion-menu-toggle>
|
||||
<ion-menu-button></ion-menu-button>
|
||||
</ion-buttons>
|
||||
<ion-title>About</ion-title>
|
||||
<ion-buttons slot="end">
|
||||
|
@ -2,11 +2,7 @@
|
||||
<ion-header>
|
||||
<ion-toolbar color="primary">
|
||||
<ion-buttons slot="start">
|
||||
<ion-menu-toggle>
|
||||
<ion-button>
|
||||
<ion-icon slot="icon-only" name="menu"></ion-icon>
|
||||
</ion-button>
|
||||
</ion-menu-toggle>
|
||||
<ion-menu-button></ion-menu-button>
|
||||
</ion-buttons>
|
||||
<ion-title>Account</ion-title>
|
||||
</ion-toolbar>
|
||||
|
@ -15,118 +15,120 @@
|
||||
Navigate
|
||||
</ion-list-header>
|
||||
|
||||
<ion-item (click)="selectTab(0)">
|
||||
<ion-icon slot="start" name="calendar"></ion-icon>
|
||||
<ion-label>
|
||||
Schedule
|
||||
</ion-label>
|
||||
</ion-item>
|
||||
<ion-menu-toggle>
|
||||
<ion-item (click)="selectTab(0, '/app/tabs/(schedule:schedule)')">
|
||||
<ion-icon slot="start" name="calendar"></ion-icon>
|
||||
<ion-label>
|
||||
Schedule
|
||||
</ion-label>
|
||||
</ion-item>
|
||||
</ion-menu-toggle>
|
||||
|
||||
<!-- <ion-menu-toggle> -->
|
||||
<ion-item (click)="selectTab(1)">
|
||||
<ion-menu-toggle>
|
||||
<ion-item (click)="selectTab(1, '/app/tabs/(speakers:speakers)')">
|
||||
<ion-icon slot="start" name="contacts"></ion-icon>
|
||||
<ion-label>
|
||||
Speakers
|
||||
</ion-label>
|
||||
</ion-item>
|
||||
<!-- </ion-menu-toggle> -->
|
||||
</ion-menu-toggle>
|
||||
|
||||
<!-- <ion-menu-toggle> -->
|
||||
<ion-item (click)="selectTab(2)">
|
||||
<ion-menu-toggle>
|
||||
<ion-item (click)="selectTab(2, '/app/tabs/(map:map)')">
|
||||
<ion-icon slot="start" name="map"></ion-icon>
|
||||
<ion-label>
|
||||
Map
|
||||
</ion-label>
|
||||
</ion-item>
|
||||
<!-- </ion-menu-toggle> -->
|
||||
</ion-menu-toggle>
|
||||
|
||||
<!-- <ion-menu-toggle> -->
|
||||
<ion-item (click)="selectTab(3)">
|
||||
<ion-menu-toggle>
|
||||
<ion-item (click)="selectTab(3, '/app/tabs/(about:about)')">
|
||||
<ion-icon slot="start" name="information-circle"></ion-icon>
|
||||
<ion-label>
|
||||
About
|
||||
</ion-label>
|
||||
</ion-item>
|
||||
<!-- </ion-menu-toggle> -->
|
||||
</ion-menu-toggle>
|
||||
</ion-list>
|
||||
|
||||
<ion-list>
|
||||
<ion-list *ngIf="loggedIn">
|
||||
<ion-list-header>
|
||||
Account
|
||||
</ion-list-header>
|
||||
|
||||
<!-- <ion-menu-toggle> -->
|
||||
<ion-item (click)="navigate('/account')">
|
||||
<ion-icon slot="start" name="person"></ion-icon>
|
||||
<ion-label>
|
||||
Account
|
||||
</ion-label>
|
||||
</ion-item>
|
||||
<!-- </ion-menu-toggle> -->
|
||||
<ion-menu-toggle>
|
||||
<ion-item (click)="navigate('/account')">
|
||||
<ion-icon slot="start" name="person"></ion-icon>
|
||||
<ion-label>
|
||||
Account
|
||||
</ion-label>
|
||||
</ion-item>
|
||||
</ion-menu-toggle>
|
||||
|
||||
<!-- <ion-menu-toggle> -->
|
||||
<ion-item (click)="navigate('/support')">
|
||||
<ion-icon slot="start" name="help"></ion-icon>
|
||||
<ion-label>
|
||||
Support
|
||||
</ion-label>
|
||||
</ion-item>
|
||||
<!-- </ion-menu-toggle> -->
|
||||
<ion-menu-toggle>
|
||||
<ion-item (click)="navigate('/support')">
|
||||
<ion-icon slot="start" name="help"></ion-icon>
|
||||
<ion-label>
|
||||
Support
|
||||
</ion-label>
|
||||
</ion-item>
|
||||
</ion-menu-toggle>
|
||||
|
||||
<!-- <ion-menu-toggle> -->
|
||||
<ion-item (click)="logout()">
|
||||
<ion-icon slot="start" name="log-out"></ion-icon>
|
||||
<ion-label>
|
||||
Logout
|
||||
</ion-label>
|
||||
</ion-item>
|
||||
<!-- </ion-menu-toggle> -->
|
||||
<ion-menu-toggle>
|
||||
<ion-item (click)="logout()">
|
||||
<ion-icon slot="start" name="log-out"></ion-icon>
|
||||
<ion-label>
|
||||
Logout
|
||||
</ion-label>
|
||||
</ion-item>
|
||||
</ion-menu-toggle>
|
||||
|
||||
</ion-list>
|
||||
|
||||
<ion-list>
|
||||
<ion-list *ngIf="!loggedIn">
|
||||
<ion-list-header>
|
||||
Account
|
||||
</ion-list-header>
|
||||
|
||||
<!-- <ion-menu-toggle> -->
|
||||
<ion-item (click)="navigate('/login')">
|
||||
<ion-icon slot="start" name="log-in"></ion-icon>
|
||||
<ion-label>
|
||||
Login
|
||||
</ion-label>
|
||||
</ion-item>
|
||||
<!-- </ion-menu-toggle> -->
|
||||
<ion-menu-toggle>
|
||||
<ion-item (click)="navigate('/login')">
|
||||
<ion-icon slot="start" name="log-in"></ion-icon>
|
||||
<ion-label>
|
||||
Login
|
||||
</ion-label>
|
||||
</ion-item>
|
||||
</ion-menu-toggle>
|
||||
|
||||
<!-- <ion-menu-toggle> -->
|
||||
<ion-item (click)="navigate('/support')">
|
||||
<ion-icon slot="start" name="help"></ion-icon>
|
||||
<ion-label>
|
||||
Support
|
||||
</ion-label>
|
||||
</ion-item>
|
||||
<!-- </ion-menu-toggle> -->
|
||||
<ion-menu-toggle>
|
||||
<ion-item (click)="navigate('/support')">
|
||||
<ion-icon slot="start" name="help"></ion-icon>
|
||||
<ion-label>
|
||||
Support
|
||||
</ion-label>
|
||||
</ion-item>
|
||||
</ion-menu-toggle>
|
||||
|
||||
<!-- <ion-menu-toggle> -->
|
||||
<ion-item (click)="navigate('/sign-up')">
|
||||
<ion-icon slot="start" name="person-add"></ion-icon>
|
||||
<ion-label>
|
||||
Sign-up
|
||||
</ion-label>
|
||||
</ion-item>
|
||||
<!-- </ion-menu-toggle> -->
|
||||
<ion-menu-toggle>
|
||||
<ion-item (click)="navigate('/sign-up')">
|
||||
<ion-icon slot="start" name="person-add"></ion-icon>
|
||||
<ion-label>
|
||||
Sign-up
|
||||
</ion-label>
|
||||
</ion-item>
|
||||
</ion-menu-toggle>
|
||||
</ion-list>
|
||||
|
||||
<ion-list>
|
||||
<ion-list-header>
|
||||
Tutorial
|
||||
</ion-list-header>
|
||||
<!-- <ion-menu-toggle> -->
|
||||
<ion-menu-toggle>
|
||||
<ion-item (click)="openTutorial()">
|
||||
<ion-icon slot="start" name="hammer"></ion-icon>
|
||||
<ion-label>Show Tutorial</ion-label>
|
||||
</ion-item>
|
||||
<!-- </ion-menu-toggle> -->
|
||||
</ion-menu-toggle>
|
||||
</ion-list>
|
||||
</ion-content>
|
||||
</ion-page>
|
||||
|
@ -25,6 +25,7 @@ export class AppComponent implements OnInit {
|
||||
loggedIn = false;
|
||||
constructor(
|
||||
private events: Events,
|
||||
private menu: MenuController,
|
||||
private router: Router,
|
||||
private userData: UserData) {
|
||||
}
|
||||
@ -35,44 +36,54 @@ export class AppComponent implements OnInit {
|
||||
}
|
||||
|
||||
checkLoginStatus() {
|
||||
// vanilla promise resolve does not work
|
||||
return this.userData.isLoggedIn().then((loggedIn) => {
|
||||
this.loggedIn = true;
|
||||
// this.loggedIn = loggedIn;
|
||||
// console.log('this.loggedIn: ', this.loggedIn);
|
||||
return this.updateLoggedInStatus(loggedIn);
|
||||
});
|
||||
}
|
||||
|
||||
updateLoggedInStatus(loggedIn: boolean) {
|
||||
setTimeout(() => {
|
||||
this.loggedIn = loggedIn;
|
||||
}, 300);
|
||||
}
|
||||
|
||||
listenForLoginEvents() {
|
||||
this.events.subscribe('user:login', () => {
|
||||
this.loggedIn = true;
|
||||
this.updateLoggedInStatus(true);
|
||||
});
|
||||
|
||||
this.events.subscribe('user:signup', () => {
|
||||
this.loggedIn = true;
|
||||
this.updateLoggedInStatus(true);
|
||||
});
|
||||
|
||||
this.events.subscribe('user:logout', () => {
|
||||
this.loggedIn = false;
|
||||
this.updateLoggedInStatus(false);
|
||||
});
|
||||
}
|
||||
|
||||
selectTab(index: number) {
|
||||
selectTab(index: number, fallbackUrl: string) {
|
||||
const tabs = document.querySelector('ion-tabs');
|
||||
let promise: Promise<any> = null;
|
||||
if (tabs) {
|
||||
return tabs.componentOnReady().then(() => {
|
||||
promise = tabs.componentOnReady();
|
||||
promise.then(() => {
|
||||
return tabs.select(index);
|
||||
});
|
||||
} else {
|
||||
promise = this.navigate(fallbackUrl);
|
||||
}
|
||||
return promise.then(() => {
|
||||
return this.menu.toggle();
|
||||
});
|
||||
}
|
||||
|
||||
navigate(url: string) {
|
||||
this.router.navigateByUrl(url);
|
||||
return this.router.navigateByUrl(url);
|
||||
}
|
||||
|
||||
logout() {
|
||||
this.userData.logout().then(() => {
|
||||
this.navigate('/app/tabs/(schedule:schedule)');
|
||||
return this.navigate('/app/tabs/(schedule:schedule)');
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -2,11 +2,7 @@
|
||||
<ion-header>
|
||||
<ion-toolbar>
|
||||
<ion-buttons slot="start">
|
||||
<ion-menu-toggle>
|
||||
<ion-button>
|
||||
<ion-icon slot="icon-only" name="menu"></ion-icon>
|
||||
</ion-button>
|
||||
</ion-menu-toggle>
|
||||
<ion-menu-button></ion-menu-button>
|
||||
</ion-buttons>
|
||||
|
||||
<ion-title>Login</ion-title>
|
||||
|
@ -2,11 +2,7 @@
|
||||
<ion-header>
|
||||
<ion-toolbar color="primary">
|
||||
<ion-buttons slot="start">
|
||||
<ion-menu-toggle>
|
||||
<ion-button>
|
||||
<ion-icon slot="icon-only" name="menu"></ion-icon>
|
||||
</ion-button>
|
||||
</ion-menu-toggle>
|
||||
<ion-menu-button></ion-menu-button>
|
||||
</ion-buttons>
|
||||
<ion-title>Map</ion-title>
|
||||
</ion-toolbar>
|
||||
|
@ -2,11 +2,7 @@
|
||||
<ion-header>
|
||||
<ion-toolbar color="primary">
|
||||
<ion-buttons slot="start">
|
||||
<ion-menu-toggle>
|
||||
<ion-button>
|
||||
<ion-icon slot="icon-only" name="menu"></ion-icon>
|
||||
</ion-button>
|
||||
</ion-menu-toggle>
|
||||
<ion-menu-button></ion-menu-button>
|
||||
</ion-buttons>
|
||||
|
||||
<ion-segment [(ngModel)]="segment" (ionChange)="updateSchedule()" color="light">
|
||||
|
@ -2,11 +2,7 @@
|
||||
<ion-header>
|
||||
<ion-toolbar color="primary">
|
||||
<ion-buttons slot="start">
|
||||
<ion-menu-toggle>
|
||||
<ion-button>
|
||||
<ion-icon slot="icon-only" name="menu"></ion-icon>
|
||||
</ion-button>
|
||||
</ion-menu-toggle>
|
||||
<ion-menu-button></ion-menu-button>
|
||||
<ion-back-button text="Schedule"></ion-back-button>
|
||||
</ion-buttons>
|
||||
<ion-title>{{session?.name}}</ion-title>
|
||||
|
@ -2,13 +2,7 @@
|
||||
<ion-header>
|
||||
<ion-toolbar>
|
||||
<ion-buttons slot="start">
|
||||
<ion-menu-toggle>
|
||||
<ion-menu-toggle>
|
||||
<ion-button>
|
||||
<ion-icon slot="icon-only" name="menu"></ion-icon>
|
||||
</ion-button>
|
||||
</ion-menu-toggle>
|
||||
</ion-menu-toggle>
|
||||
<ion-menu-button></ion-menu-button>
|
||||
</ion-buttons>
|
||||
<ion-title>Signup</ion-title>
|
||||
</ion-toolbar>
|
||||
|
@ -2,6 +2,7 @@
|
||||
<ion-header>
|
||||
<ion-toolbar color="primary">
|
||||
<ion-buttons slot="start">
|
||||
<ion-menu-button></ion-menu-button>
|
||||
<ion-back-button text="Speakers"></ion-back-button>
|
||||
</ion-buttons>
|
||||
<ion-title>{{speaker?.name}}</ion-title>
|
||||
|
@ -2,11 +2,7 @@
|
||||
<ion-header>
|
||||
<ion-toolbar color="primary">
|
||||
<ion-buttons slot="start">
|
||||
<ion-menu-toggle>
|
||||
<ion-button>
|
||||
<ion-icon slot="icon-only" name="menu"></ion-icon>
|
||||
</ion-button>
|
||||
</ion-menu-toggle>
|
||||
<ion-menu-button></ion-menu-button>
|
||||
</ion-buttons>
|
||||
<ion-title>Speakers</ion-title>
|
||||
</ion-toolbar>
|
||||
|
@ -2,11 +2,7 @@
|
||||
<ion-header>
|
||||
<ion-toolbar>
|
||||
<ion-buttons slot="start">
|
||||
<ion-menu-toggle>
|
||||
<ion-button>
|
||||
<ion-icon slot="icon-only" name="menu"></ion-icon>
|
||||
</ion-button>
|
||||
</ion-menu-toggle>
|
||||
<ion-menu-button></ion-menu-button>
|
||||
</ion-buttons>
|
||||
<ion-title>Support</ion-title>
|
||||
</ion-toolbar>
|
||||
|
Reference in New Issue
Block a user