add customers and staffs

This commit is contained in:
Sai Naw Wun
2020-09-13 21:49:39 +06:30
parent aa8a6765de
commit eccea7ee02
45 changed files with 2094 additions and 1027 deletions

View File

@@ -36,20 +36,21 @@ class MainModel extends ChangeNotifier {
});
Services.instance.authService.onAuthStatus().listen((event) {
this.user = event;
_initUser(user);
notifyListeners();
});
}
bool faqEditable() {
return this.user != null && false;
return this.user != null && this.user.hasSupport();
}
bool termEditable() {
return this.user != null && false;
return this.user != null && this.user.hasSupport();
}
bool contactEditable() {
return this.user != null && false;
return this.user != null && this.user.hasSupport();
}
bool isLogin() {
@@ -81,13 +82,13 @@ class MainModel extends ChangeNotifier {
models.add(model);
}
// void _initUser(User user) {
// models.forEach((m) => m.initUser(user));
void _initUser(User user) {
models.forEach((m) => m.initUser(user));
// if (firebaseMessaging != null) {
// firebaseMessaging.subscribeToTopic(user.docID);
// }
// }
// if (firebaseMessaging != null) {
// firebaseMessaging.subscribeToTopic(user.docID);
// }
}
void _initSetting(Setting setting) {
models.forEach((m) => m.initSetting(setting));
@@ -106,6 +107,7 @@ class MainModel extends ChangeNotifier {
void _loadUser() async {
try {
this.user = await Services.instance.authService.getUser();
_initUser(user);
} finally {
this.isLoaded = true;
notifyListeners();
@@ -143,13 +145,27 @@ class MainModel extends ChangeNotifier {
Future<void> signout() {
this.user = null;
// logout models
models.forEach((m) => m.logout());
notifyListeners();
return Services.instance.authService.signout();
}
Future<bool> hasInvite() async {
return Services.instance.authService.hasInvite();
}
Future<void> signup(String userName) async {
await Services.instance.authService.signup(userName);
this.user = await Services.instance.authService.getUser();
this.user =
await Services.instance.authService.getUser(refreshIdToken: true);
notifyListeners();
}
Future<void> updateProfile(String newUserName) async {
await Services.instance.authService.updateProfile(newUserName);
this.user =
await Services.instance.authService.getUser(refreshIdToken: true);
notifyListeners();
}
}