コード例 #1
0
        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");
            });
        }
コード例 #2
0
        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");
            }
        }
コード例 #3
0
ファイル: RootPage.cs プロジェクト: gouravfreedom/ArkhoFinal
        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;
        }
コード例 #4
0
        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");
            });
        }