protected override void OnAppearing() { base.OnAppearing(); if (App.access_code != null) { userProfileViewModel.FacebookData(); } MessagingCenter.Subscribe <UserProfileViewModel, String>(this, "LoginSuccess", async(sender, message) => { MessagingCenter.Unsubscribe <UserProfileViewModel>(this, "LoginSuccess"); MessagingCenter.Unsubscribe <UserProfileViewModel>(this, "LoginFailure"); if (message == "NAV") { if (userProfileViewModel.UserPassword == "fb@trainme") { ViewModels.SignupViewModel signupViewModel = new ViewModels.SignupViewModel(); signupViewModel.EmailAddress = userProfileViewModel.Username; signupViewModel.Password = userProfileViewModel.UserPassword; signupViewModel.Name = App.FacebookProfile.Name; signupViewModel.UserIcon = App.FacebookProfile.Picture.Data.Url; signupViewModel.SelectedView = App.SelectedView; App.Current.MainPage = new Views.UserInformationPage(signupViewModel); } else { await DisplayAlert("Alert", "No user exist. Please sign up.", "OK"); } } else { Application.Current.MainPage = new RootPage(userProfileViewModel.SelectedView); } }); MessagingCenter.Subscribe <UserProfileViewModel, String>(this, "LoginFailure", async(sender, message) => { await DisplayAlert("Alert", message, "Ok"); }); }
async void HandleAction(Models.FacebookUser arg1, string arg2) { try { App.FacebookUser = arg1; App.access_code = arg1.Token; var loginRequestModel = new Models.LoginRequestModel("App", arg1.Email, App.SelectedView, "fb@trainme"); var message = await App.TodoManager.Login(loginRequestModel); if (message == "Success") { ViewModels.SignupViewModel signupViewModel = new ViewModels.SignupViewModel(); signupViewModel.EmailAddress = App.FacebookUser.Email; signupViewModel.Password = "******"; //signupViewModel.Name = arg1.FirstName + " " + arg1.LastName; signupViewModel.UserIcon = arg1.Picture; signupViewModel.SelectedView = App.SelectedView; var data = App.LoginResponse; if (data.Profile == null || data.Profile == "") { await this.Navigation.PushAsync(new Views.UserInformationPage(signupViewModel)); } else { var member = App.LoginResponse; CredentialsService.SaveCredentials(App.FacebookUser.Email, "fb@trainme", member, App.FacebookUser, userType: App.SelectedView); Application.Current.MainPage = new RootPage(App.SelectedView); } } else { await DisplayAlert("Alert", message, "Ok"); } } catch (Exception ex) { await DisplayAlert("Alert", ex.Message, "Ok"); } }
public async void NavigateAsync(int id) { Page newPage; if (!Pages.ContainsKey(id)) { switch (id) { case (int)MenuType.TraineeProfile: Pages.Add(id, new HanselmanNavigationPage(new Views.TraineeProfilePage(this))); break; case (int)MenuType.TrainerProfile: Pages.Add(id, new HanselmanNavigationPage(new Views.TrainerProfilePage())); break; case (int)MenuType.CoachList: Pages.Add(id, new HanselmanNavigationPage(new Views.CoachListPage())); break; case (int)MenuType.Contact: Pages.Add(id, new HanselmanNavigationPage(new Views.ScheduleList())); break; case (int)MenuType.Settings: ViewModels.SignupViewModel signupViewModel = new ViewModels.SignupViewModel(); signupViewModel.UserIcon = App.LoginResponse.basicInfo.ImageUrl; App.Current.MainPage = new HanselmanNavigationPage(new Views.UserInformationPage(signupViewModel)); return; case (int)MenuType.Logout: App.LoginResponse = new Models.LoginResponse.Member(); App.TrainerData = new Models.LoginResponse.Member(); App.FacebookUser = null; App.InstagramUser = null; App.InstagramMedia = null; //App.FacebookProfile = new Models.FacebookProfile(); App.SelectedView = null; App.access_code = null; App.InstaAccessToken = null; await CredentialsService.DeleteCredentials(); Application.Current.MainPage = new NavigationPage(new Views.SelectionPage()); //await this.Navigation.PushAsync(new NavigationPage(new LoginPage(selectedView))); return; } } newPage = Pages[id]; if (newPage == null) { return; } Detail = newPage; this.IsPresented = false; }
protected override void OnAppearing() { base.OnAppearing(); if (App.access_code != null) { userProfileViewModel.FacebookData(); } MessagingCenter.Subscribe <Object, string>(this, "InstagramLogin", async(arg1, arg2) => { try { if (!string.IsNullOrEmpty(arg2)) { var instaResult = await App.TodoManager.GetInstaToken(arg2); if (instaResult == "Success") { userProfileViewModel.IsServiceInProgress = true; //var result = await App.TodoManager.GetInstagramInfo(App.InstaAccessToken); await App.TodoManager.GetInstagramMedia(App.InstaAccessToken); var loginRequestModel = new Models.LoginRequestModel("Fb", App.InstagramUser.data.username, App.SelectedView, "fb@trainme"); var message = await App.TodoManager.Login(loginRequestModel); if (message.Equals("Success")) { ViewModels.SignupViewModel signupViewModel = new ViewModels.SignupViewModel(); signupViewModel.EmailAddress = App.InstagramUser.data.username; signupViewModel.Password = "******"; //signupViewModel.Name = App.InstagramUser.data.full_name; signupViewModel.UserIcon = App.InstagramUser.data.profile_picture; signupViewModel.SelectedView = App.SelectedView; var data = App.LoginResponse; if (data.Profile == null || data.Profile == "") { await this.Navigation.PushAsync(new Views.UserInformationPage(signupViewModel)); } else { //var member = App.SelectedView == "Trainee" ? App.LoginResponse : App.TrainerData; CredentialsService.SaveCredentials(App.InstagramUser.data.username, "fb@trainme", App.LoginResponse, instagramUser: App.InstagramUser, instagramMedia: App.InstagramMedia, userType: App.SelectedView); Application.Current.MainPage = new RootPage(App.SelectedView); } } else { await DisplayAlert("Alert", message, "Ok"); } } } } catch (Exception ex) { System.Diagnostics.Debug.WriteLine(ex.ToString()); await DisplayAlert("Alert", "something went wrong", "Ok"); } userProfileViewModel.IsServiceInProgress = false; }); MessagingCenter.Subscribe <UserProfileViewModel, String>(this, "LoginSuccess", async(sender, message) => { MessagingCenter.Unsubscribe <UserProfileViewModel>(this, "LoginSuccess"); MessagingCenter.Unsubscribe <UserProfileViewModel>(this, "LoginFailure"); if (message == "NAV") { if (userProfileViewModel.UserPassword == "fb@trainme") { ViewModels.SignupViewModel signupViewModel = new ViewModels.SignupViewModel(); signupViewModel.EmailAddress = userProfileViewModel.Username; signupViewModel.Password = userProfileViewModel.UserPassword; //signupViewModel.Name = App.FacebookProfile.Name; //signupViewModel.UserIcon = App.FacebookProfile.Picture.Data.Url; signupViewModel.SelectedView = App.SelectedView; await this.Navigation.PushAsync(new Views.UserInformationPage(signupViewModel)); } else { await DisplayAlert("Alert", "Incorrect Username or Password. Please try again.", "OK"); } } else { if (userProfileViewModel.IsRememberMe) { var member = App.LoginResponse; CredentialsService.SaveCredentials(userName: App.LoginResponse.Email, password: App.LoginResponse.Password, member: member, userType: App.SelectedView); } Application.Current.MainPage = new NavigationPage(new RootPage(userProfileViewModel.SelectedView)); } }); MessagingCenter.Subscribe <UserProfileViewModel, String>(this, "LoginFailure", async(sender, message) => { await DisplayAlert("Alert", message, "Ok"); }); }