private async void RegisterButton_Click(object sender, EventArgs e) { try { if (Chk_agree.Checked) { if (IMethods.CheckConnectivity()) { if (!String.IsNullOrEmpty(UsernameEditext.Text) || !String.IsNullOrEmpty(PasswordEditext.Text) || !String.IsNullOrEmpty(PasswordRepeatEditext.Text) || !String.IsNullOrEmpty(EmailEditext.Text)) { var check = IMethods.Fun_String.IsEmailValid(EmailEditext.Text); if (!check) { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_VerificationFailed), GetText(Resource.String.Lbl_IsEmailValid), GetText(Resource.String.Lbl_Ok)); } else { if (PasswordRepeatEditext.Text == PasswordEditext.Text) { progressBar.Visibility = ViewStates.Visible; RegisterButton.Visibility = ViewStates.Gone; var settingsResult = await Current.GetSettings(); if (settingsResult.Item1 == 200) { var PushID = settingsResult.Item2.PushId.ToString(); if (OneSignalNotification.OneSignalAPP_ID == "") { OneSignalNotification.OneSignalAPP_ID = PushID; if (AppSettings.ShowNotification) { OneSignalNotification.RegisterNotificationDevice(); } } var(Api_status, Respond) = await WoWonder_API.Requests.RequestsAsync.Global.Get_Create_Account( UsernameEditext.Text, PasswordEditext.Text, PasswordRepeatEditext.Text, EmailEditext.Text); if (Api_status == 200) { if (Respond is CreatAccountObject result) { Current.AccessToken = result.access_token; UserDetails.Username = UsernameEditext.Text; UserDetails.Full_name = UsernameEditext.Text; UserDetails.Password = PasswordEditext.Text; UserDetails.access_token = result.access_token; UserDetails.User_id = result.user_id; UserDetails.Status = "Active"; UserDetails.Cookie = result.access_token; UserDetails.Email = EmailEditext.Text; //Insert user data to database var user = new DataTables.LoginTB { UserID = UserDetails.User_id, access_token = UserDetails.access_token, Cookie = UserDetails.Cookie, Username = UsernameEditext.Text, Password = PasswordEditext.Text, Status = "Active", Lang = "" }; Classes.DataUserLoginList.Add(user); var dbDatabase = new SqLiteDatabase(); dbDatabase.InsertRow(user); dbDatabase.Dispose(); StartActivity(new Intent(this, typeof(AppIntroWalkTroutPage))); } progressBar.Visibility = ViewStates.Gone; RegisterButton.Visibility = ViewStates.Visible; Finish(); } else if (Api_status == 220) { //var dialog = new MaterialDialog.Builder(this); //dialog.Title(GetText(Resource.String.Lbl_ActivationSent)); //dialog.Content(GetText(Resource.String.Lbl_ActivationDetails) // .Replace("@", EmailEditext.Text)); //dialog.PositiveText(GetText(Resource.String.Lbl_Ok)).OnPositive(this); //dialog.AlwaysCallSingleChoiceCallback(); // dialog.Build().Show(); var obj = new IMethods.DialogPopup(this); var x = await obj.ShowDialog("Success", "Registration successful! We have sent you an email, Please check your inbox/spam to verify your email."); StartActivity(new Intent(this, typeof(MainActivity))); } else if (Api_status == 400) { var error = Respond as ErrorObject; if (error != null) { var errortext = error._errors.Error_text; var errorid = error._errors.Error_id; if (errorid == "3") { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_ErrorRegister_3), GetText(Resource.String.Lbl_Ok)); } else if (errorid == "4") { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_ErrorRegister_4), GetText(Resource.String.Lbl_Ok)); } else if (errorid == "5") { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_Something_went_wrong), GetText(Resource.String.Lbl_Ok)); } else if (errorid == "6") { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_ErrorRegister_6), GetText(Resource.String.Lbl_Ok)); } else if (errorid == "7") { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_ErrorRegister_7), GetText(Resource.String.Lbl_Ok)); } else if (errorid == "8") { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_ErrorRegister_8), GetText(Resource.String.Lbl_Ok)); } else if (errorid == "9") { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_ErrorRegister_9), GetText(Resource.String.Lbl_Ok)); } else if (errorid == "10") { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_ErrorRegister_10), GetText(Resource.String.Lbl_Ok)); } else if (errorid == "11") { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_ErrorRegister_11), GetText(Resource.String.Lbl_Ok)); } else { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), errortext, GetText(Resource.String.Lbl_Ok)); } } progressBar.Visibility = ViewStates.Gone; RegisterButton.Visibility = ViewStates.Visible; } else if (Api_status == 404) { progressBar.Visibility = ViewStates.Gone; RegisterButton.Visibility = ViewStates.Visible; IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_Error_Login), GetText(Resource.String.Lbl_Ok)); } } } else { progressBar.Visibility = ViewStates.Gone; RegisterButton.Visibility = ViewStates.Visible; IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_Error_Register_password), GetText(Resource.String.Lbl_Ok)); } } } else { progressBar.Visibility = ViewStates.Gone; RegisterButton.Visibility = ViewStates.Visible; IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_Please_enter_your_data), GetText(Resource.String.Lbl_Ok)); } } else { progressBar.Visibility = ViewStates.Gone; RegisterButton.Visibility = ViewStates.Visible; IMethods.DialogPopup.InvokeAndShowDialog(this, this.GetText(Resource.String.Lbl_Security), this.GetText(Resource.String.Lbl_Error_check_internet_connection), this.GetText(Resource.String.Lbl_Ok)); return; } } else { IMethods.DialogPopup.InvokeAndShowDialog(this, this.GetText(Resource.String.Lbl_Warning), this.GetText(Resource.String.Lbl_Error_Terms), this.GetText(Resource.String.Lbl_Ok)); } } catch (Exception ex) { Console.WriteLine(ex); progressBar.Visibility = ViewStates.Gone; RegisterButton.Visibility = ViewStates.Visible; IMethods.DialogPopup.InvokeAndShowDialog(this, this.GetText(Resource.String.Lbl_Authentication_failed), ex.Message, this.GetText(Resource.String.Lbl_Ok)); } }
private async void RegisterButtonOnClick(object sender, EventArgs eventArgs) { try { if (IMethods.CheckConnectivity()) { if (!string.IsNullOrEmpty(UsernameEditext.Text) || !string.IsNullOrEmpty(PasswordEditext.Text) || !string.IsNullOrEmpty(PasswordRepeatEditext.Text) || !string.IsNullOrEmpty(EmailEditext.Text)) { Settings st = new Settings(); Current.CurrentInstance.SetWebsiteURL(st.WebsiteUrl, st.ServerKey); var check = IMethods.Fun_String.IsEmailValid(EmailEditext.Text); if (!check) { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_VerificationFailed), GetText(Resource.String.Lbl_IsEmailValid), GetText(Resource.String.Lbl_Ok)); } else { if (PasswordRepeatEditext.Text == PasswordEditext.Text) { progressBar.Visibility = ViewStates.Visible; var settingsResult = await Current.GetWoWonder_Settings(st, "WoWonder_Native_Android"); if (settingsResult != null) { string PushID = ""; try { PushID = settingsResult["push_id_2"].ToString(); } catch (Exception e) { Console.WriteLine(e); } if (OneSignalNotification.OneSignalAPP_ID == "") { OneSignalNotification.OneSignalAPP_ID = PushID; if (Settings.ShowNotification) { OneSignalNotification.RegisterNotificationDevice(); } } var(Api_status, Respond) = await Client.Global.Get_Create_Account(UsernameEditext.Text, PasswordEditext.Text, PasswordRepeatEditext.Text, EmailEditext.Text, UserDetails.Device_ID); if (Respond.Api_status == 220) { var obj = new IMethods.DialogPopup(this); var x = await obj.ShowDialog("Success", "Registration successful! We have sent you an email, Please check your inbox/spam to verify your email."); //var data = ""; StartActivity(new Intent(this, typeof(First_Activity))); } else if (Api_status == 200) { if (Respond is Creat_Account_Object result) { WoWonder_API.Client.WebsiteUrl = st.WebsiteUrl; Current.CurrentInstance.ServerKey = st.ServerKey; Current.CurrentInstance.Access_token = result.access_token; UserDetails.Username = UsernameEditext.Text; UserDetails.Full_name = UsernameEditext.Text; UserDetails.Password = PasswordEditext.Text; UserDetails.access_token = result.access_token; UserDetails.User_id = result.user_id; UserDetails.Status = "Active"; UserDetails.Cookie = result.access_token; UserDetails.Email = EmailEditext.Text; //Insert user data to database var user = new DataTables.LoginTB { UserID = UserDetails.User_id, access_token = UserDetails.access_token, Cookie = UserDetails.Cookie, Username = UsernameEditext.Text, Password = PasswordEditext.Text, Status = "Active", Lang = "", Device_ID = UserDetails.Device_ID, }; Classes.DataUserLoginList.Add(user); var dbDatabase = new SqLiteDatabase(); dbDatabase.InsertRow(user); dbDatabase.Dispose(); if (Settings.Show_WalkTroutPage) { StartActivity(new Intent(this, typeof(AppIntroWalkTroutPage))); } else { StartActivity(new Intent(this, typeof(Tabbed_Main_Activity))); //Get data profile var data = API_Request.Get_MyProfileData_Api(this).ConfigureAwait(false); } } progressBar.Visibility = ViewStates.Invisible; Finish(); } else if (Api_status == 400) { var error = Respond as Error_Object; if (error != null) { var errortext = error._errors.Error_text; var errorid = error._errors.Error_id; if (errorid == "3") { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_ErrorRegister_3), GetText(Resource.String.Lbl_Ok)); } else if (errorid == "4") { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_ErrorRegister_4), GetText(Resource.String.Lbl_Ok)); } else if (errorid == "5") { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_something_went_wrong), GetText(Resource.String.Lbl_Ok)); } else if (errorid == "6") { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_ErrorRegister_6), GetText(Resource.String.Lbl_Ok)); } else if (errorid == "7") { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_ErrorRegister_7), GetText(Resource.String.Lbl_Ok)); } else if (errorid == "8") { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_ErrorRegister_8), GetText(Resource.String.Lbl_Ok)); } else if (errorid == "9") { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_ErrorRegister_9), GetText(Resource.String.Lbl_Ok)); } else if (errorid == "10") { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_ErrorRegister_10), GetText(Resource.String.Lbl_Ok)); } else if (errorid == "11") { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_ErrorRegister_11), GetText(Resource.String.Lbl_Ok)); } else { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), errortext, GetText(Resource.String.Lbl_Ok)); } } progressBar.Visibility = ViewStates.Invisible; } else if (Api_status == 404) { //var Error = Respond.ToString(); progressBar.Visibility = ViewStates.Invisible; IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_Error_Login), GetText(Resource.String.Lbl_Ok)); } } } else { progressBar.Visibility = ViewStates.Invisible; IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_Error_Register_password), GetText(Resource.String.Lbl_Ok)); } } } else { progressBar.Visibility = ViewStates.Invisible; IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_Please_enter_your_data), GetText(Resource.String.Lbl_Ok)); } } else { progressBar.Visibility = ViewStates.Invisible; //IMethods.DialogPopup.Hide_Loading_Dialog(this); IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_CheckYourInternetConnection), GetText(Resource.String.Lbl_Ok)); } } catch (Exception exception) { Crashes.TrackError(exception); progressBar.Visibility = ViewStates.Invisible; IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), exception.Message, GetText(Resource.String.Lbl_Ok)); } }
//Click Button Register private async void Btn_Register_OnClicked(object sender, EventArgs e) { try { if (!CrossConnectivity.Current.IsConnected) { await DisplayAlert(AppResources.Label_Error, AppResources.Label_Check_Your_Internet, AppResources.Label_OK); } else { UserDialogs.Instance.ShowLoading(AppResources.Label_Please_wait, MaskType.None); //API_Request.Session = Functions.RandomString(40); string Gender = "male"; using (var client = new HttpClient()) { var formContent = new FormUrlEncodedContent(new[] { new KeyValuePair <string, string>("username", Txt_Username.Text), new KeyValuePair <string, string>("password", Txt_password.Text), new KeyValuePair <string, string>("confirm_password", Txt_passwordConfirm.Text), new KeyValuePair <string, string>("email", Txt_Email.Text), new KeyValuePair <string, string>("gender", Gender), //new KeyValuePair<string, string>("s", API_Request.Session) }); var response = await client.PostAsync(API_Request.API_Register, formContent); response.EnsureSuccessStatusCode(); var Response_json = await response.Content.ReadAsStringAsync(); var data = JsonConvert.DeserializeObject <Dictionary <string, object> >(Response_json); string ApiStatus = data["api_status"].ToString(); if (ApiStatus == "200") { var successtype = data["success_type"].ToString(); if (successtype.Contains("registered")) { UserDialogs.Instance.HideLoading(); try { API_Request.User_id = data["user_id"].ToString(); API_Request.Session = data["session_id"].ToString(); //Insert user data to database DataTables.LoginTB user = new DataTables.LoginTB(); user.UserID = API_Request.User_id; user.Session = API_Request.Session; user.Username = Txt_Username.Text; user.Password = Txt_password.Text; user.Status = "Active"; Classes.DataUserLoginList.Add(user); SQL_Commander.Insert_Login_Credentials(user); //Messeges is login user Hamburg_Page.IsLogin = true; //Check User Status and Get data SQL_Commander.Get_data_Login_Credentials(); var s = Classes.SeconderyListPage.FirstOrDefault(a => a.Name_page == AppResources.Label_Login); if (s != null) { s.Name_page = AppResources.Label_Logout; s.Icon_page = IoniciconsFont.LogOut; } UserDialogs.Instance.HideLoading(); await Navigation.PopModalAsync(true); } catch (Exception exception) { exception.ToString(); await Navigation.PopAsync(); } } else if (successtype.Contains("verification")) { successtype = data["message"].ToString(); //await DisplayAlert("Error registered", successtype, "OK"); UserDialogs.Instance.ShowError(successtype); } } else if (ApiStatus == "400") { JObject errors = JObject.FromObject(data["errors"]); var error_id = errors["error_id"].ToString(); var error_text = errors["error_text"].ToString(); UserDialogs.Instance.HideLoading(); await DisplayAlert("Error", error_text, "OK"); } } } } catch (Exception ex) { var exception = ex.ToString(); await DisplayAlert(AppResources.Label_Error, AppResources.Label_Session_Dead, AppResources.Label_OK); UserDialogs.Instance.HideLoading(); } }
public async void OnCompleted(JSONObject json, GraphResponse response) { try { var data = json.ToString(); var result = JsonConvert.DeserializeObject <FacebookResult>(data); FB_email = result.email; var accessToken = AccessToken.CurrentAccessToken; if (accessToken != null) { FB_accessToken = accessToken.Token; progressBar.Visibility = ViewStates.Visible; Btn_Login.Visibility = ViewStates.Gone; var(apiStatus, respond) = await WoWonder_API.Current.GetSettings(); if (apiStatus == 200) { if (respond is GetSiteSettingsObject.Config res) { var PushID = res.pushId; if (OneSignalNotification.OneSignalAPP_ID == "") { OneSignalNotification.OneSignalAPP_ID = PushID; if (AppSettings.ShowNotification) { OneSignalNotification.RegisterNotificationDevice(); } } var(Api_status, respond2) = await WoWonder_API.Requests.RequestsAsync.Global.Get_SocialLogin(FB_accessToken, "facebook"); if (Api_status == 200) { if (respond2 is AuthObject auth) { Current.AccessToken = auth.access_token; UserDetails.Username = UsernameEditext.Text; UserDetails.Full_name = UsernameEditext.Text; UserDetails.Password = PasswordEditext.Text; UserDetails.access_token = auth.access_token; UserDetails.User_id = auth.user_id; UserDetails.Status = "Active"; UserDetails.Cookie = auth.access_token; UserDetails.Email = UsernameEditext.Text; //Insert user data to database var user = new DataTables.LoginTB() { UserID = UserDetails.User_id, access_token = UserDetails.access_token, Cookie = UserDetails.Cookie, Username = UsernameEditext.Text, Password = PasswordEditext.Text, Status = "Active", Lang = "" }; Classes.DataUserLoginList.Add(user); var dbDatabase = new SqLiteDatabase(); dbDatabase.InsertRow(user); dbDatabase.Dispose(); if (AppSettings.Show_WalkTroutPage) { StartActivity(new Intent(this, typeof(AppIntroWalkTroutPage))); } else { StartActivity(new Intent(this, typeof(Tabbed_Main_Page))); //Get data profile var dataUser = API_Request.Get_MyProfileData_Api(this).ConfigureAwait(false); } progressBar.Visibility = ViewStates.Gone; Btn_Login.Visibility = ViewStates.Visible; Finish(); } } else if (Api_status == 400) { if (respond is ErrorObject error) { var errortext = error._errors.Error_text; if (errortext.Contains("Invalid or expired access_token")) { API_Request.Logout(this); } } } else if (Api_status == 404) { var error = respond.ToString(); } progressBar.Visibility = ViewStates.Gone; Btn_Login.Visibility = ViewStates.Visible; } } } } catch (Exception exception) { progressBar.Visibility = ViewStates.Gone; Btn_Login.Visibility = ViewStates.Visible; IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), exception.Message, GetText(Resource.String.Lbl_Ok)); Console.WriteLine(exception); } }
public async void SetContentGoogle(GoogleSignInAccount acct) { try { //Successful log in hooray!! if (acct != null) { progressBar.Visibility = ViewStates.Visible; Btn_Login.Visibility = ViewStates.Gone; G_AccountName = acct.Account.Name; G_AccountType = acct.Account.Type; G_displayName = acct.DisplayName; G_firstName = acct.GivenName; G_lastName = acct.FamilyName; G_profileId = acct.Id; G_email = acct.Email; G_Img = acct.PhotoUrl.Path; G_Idtoken = acct.IdToken; G_ServerCode = acct.ServerAuthCode; var api = new GoogleAPI(); G_accessToken = await api.GetAccessTokenAsync(G_ServerCode); if (!string.IsNullOrEmpty(G_accessToken)) { var(apiStatus, settingsResult) = await WoWonder_API.Current.GetSettings(); if (apiStatus == 200) { if (settingsResult is GetSiteSettingsObject.Config res) { var PushID = res.pushId; if (OneSignalNotification.OneSignalAPP_ID == "") { OneSignalNotification.OneSignalAPP_ID = PushID; if (AppSettings.ShowNotification) { OneSignalNotification.RegisterNotificationDevice(); } } string key = IMethods.IApp.GetValueFromManifest(this, "com.google.android.geo.API_KEY"); var(Api_status, respond) = await Global.Get_SocialLogin(G_accessToken, "google", key); if (Api_status == 200) { if (respond is AuthObject auth) { Current.AccessToken = auth.access_token; UserDetails.Username = UsernameEditext.Text; UserDetails.Full_name = UsernameEditext.Text; UserDetails.Password = PasswordEditext.Text; UserDetails.access_token = auth.access_token; UserDetails.User_id = auth.user_id; UserDetails.Status = "Active"; UserDetails.Cookie = auth.access_token; UserDetails.Email = UsernameEditext.Text; //Insert user data to database var user = new DataTables.LoginTB() { UserID = UserDetails.User_id, access_token = UserDetails.access_token, Cookie = UserDetails.Cookie, Username = UsernameEditext.Text, Password = PasswordEditext.Text, Status = "Active", Lang = "" }; Classes.DataUserLoginList.Add(user); var dbDatabase = new SqLiteDatabase(); dbDatabase.InsertRow(user); dbDatabase.Dispose(); if (AppSettings.Show_WalkTroutPage) { StartActivity(new Intent(this, typeof(AppIntroWalkTroutPage))); } else { StartActivity(new Intent(this, typeof(Tabbed_Main_Page))); //Get data profile var data = API_Request.Get_MyProfileData_Api(this).ConfigureAwait(false); } Finish(); } } else if (Api_status == 400) { if (respond is ErrorObject error) { var errortext = error._errors.Error_text; if (errortext.Contains("Invalid or expired access_token")) { API_Request.Logout(this); } } } else if (Api_status == 404) { var error = respond.ToString(); } progressBar.Visibility = ViewStates.Gone; Btn_Login.Visibility = ViewStates.Visible; } } } } } catch (Exception exception) { progressBar.Visibility = ViewStates.Gone; Btn_Login.Visibility = ViewStates.Visible; IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), exception.Message, GetText(Resource.String.Lbl_Ok)); Console.WriteLine(exception); } }
private async void ButtonClickOnClick(object sender, EventArgs eventArgs) { try { if (!IMethods.CheckConnectivity()) { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_Error_check_internet_connection), GetText(Resource.String.Lbl_Ok)); } else { if (!string.IsNullOrEmpty(UsernameEditext.Text) || !string.IsNullOrEmpty(PasswordEditext.Text)) { progressBar.Visibility = ViewStates.Visible; Btn_Login.Visibility = ViewStates.Gone; var(apiStatus, response) = await WoWonder_API.Current.GetSettings(); if (apiStatus == 200) { if (response is GetSiteSettingsObject.Config result) { var PushID = result.pushId.ToString(); if (OneSignalNotification.OneSignalAPP_ID == "") { OneSignalNotification.OneSignalAPP_ID = PushID; if (AppSettings.ShowNotification) { OneSignalNotification.RegisterNotificationDevice(); } } string timeZone = IMethods.ITime.GetTimeZone(); var(Api_status, Respond) = await Global.Get_Auth(UsernameEditext.Text, PasswordEditext.Text, "UTC"); if (Api_status == 200) { if (Respond is AuthObject auth) { Current.AccessToken = auth.access_token; UserDetails.Username = UsernameEditext.Text; UserDetails.Full_name = UsernameEditext.Text; UserDetails.Password = PasswordEditext.Text; UserDetails.access_token = auth.access_token; UserDetails.User_id = auth.user_id; UserDetails.Status = "Active"; UserDetails.Cookie = auth.access_token; UserDetails.Email = UsernameEditext.Text; //Insert user data to database var user = new DataTables.LoginTB() { UserID = UserDetails.User_id, access_token = UserDetails.access_token, Cookie = UserDetails.Cookie, Username = UsernameEditext.Text, Password = PasswordEditext.Text, Status = "Active", Lang = "" }; Classes.DataUserLoginList.Add(user); var dbDatabase = new SqLiteDatabase(); dbDatabase.InsertRow(user); dbDatabase.Dispose(); if (AppSettings.Show_WalkTroutPage) { StartActivity(new Intent(this, typeof(AppIntroWalkTroutPage))); } else { StartActivity(new Intent(this, typeof(Tabbed_Main_Page))); //Get data profile var data = API_Request.Get_MyProfileData_Api(this).ConfigureAwait(false); } progressBar.Visibility = ViewStates.Gone; Finish(); } } else if (Api_status == 400) { var error = Respond as ErrorObject; if (error != null) { var errortext = error._errors.Error_text; var errorid = error._errors.Error_id; if (errorid == "3") { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_ErrorLogin_3), GetText(Resource.String.Lbl_Ok)); } else if (errorid == "4") { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_ErrorLogin_4), GetText(Resource.String.Lbl_Ok)); } else if (errorid == "5") { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_ErrorLogin_5), GetText(Resource.String.Lbl_Ok)); } else { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), errortext, GetText(Resource.String.Lbl_Ok)); } } } progressBar.Visibility = ViewStates.Gone; Btn_Login.Visibility = ViewStates.Visible; } } else if (apiStatus == 400) { var error = response as ErrorObject; if (error != null) { var errortext = error._errors.Error_text; var errorid = error._errors.Error_id; if (errorid == "3") { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_ErrorLogin_3), GetText(Resource.String.Lbl_Ok)); } else if (errorid == "4") { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_ErrorLogin_4), GetText(Resource.String.Lbl_Ok)); } else if (errorid == "5") { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_ErrorLogin_5), GetText(Resource.String.Lbl_Ok)); } else { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), errortext, GetText(Resource.String.Lbl_Ok)); } } } else if (apiStatus == 404) { //var Error = Respond.ToString(); IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_Error_Login), GetText(Resource.String.Lbl_Ok)); } } else { progressBar.Visibility = ViewStates.Gone; Btn_Login.Visibility = ViewStates.Visible; IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_Please_enter_your_data), GetText(Resource.String.Lbl_Ok)); } } } catch (Exception exception) { progressBar.Visibility = ViewStates.Gone; Btn_Login.Visibility = ViewStates.Visible; IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), exception.Message, GetText(Resource.String.Lbl_Ok)); Console.WriteLine(exception); } }
public async void SetContentGoogle(GoogleSignInAccount acct) { try { //Successful log in hooray!! if (acct != null) { progressBar.Visibility = ViewStates.Visible; mButtonViewSignIn.Visibility = ViewStates.Gone; G_AccountName = acct.Account.Name; G_AccountType = acct.Account.Type; G_displayName = acct.DisplayName; G_firstName = acct.GivenName; G_lastName = acct.FamilyName; G_profileId = acct.Id; G_email = acct.Email; G_Img = acct.PhotoUrl.Path; G_Idtoken = acct.IdToken; G_ServerCode = acct.ServerAuthCode; var api = new GoogleAPI(); G_accessToken = await api.GetAccessTokenAsync(G_ServerCode); if (!string.IsNullOrEmpty(G_accessToken)) { Current.CurrentInstance.SetWebsiteURL(st.WebsiteUrl, st.ServerKey); var settingsResult = await Current.GetWoWonder_Settings(st, "WoWonder_Native_Android"); if (settingsResult != null) { string PushID = ""; try { PushID = settingsResult["push_id_2"].ToString(); } catch (Exception e) { Console.WriteLine(e); } if (OneSignalNotification.OneSignalAPP_ID == "") { OneSignalNotification.OneSignalAPP_ID = PushID; if (Settings.ShowNotification) { OneSignalNotification.RegisterNotificationDevice(); } } string key = IMethods.IApp.GetValueFromManifest(this, "com.google.android.geo.API_KEY"); var(Api_status, respond) = await Client.Global.Get_SocialLogin(st, G_accessToken, "google", key); if (Api_status == 200) { if (respond is Auth_Object auth) { WoWonder_API.Client.WebsiteUrl = st.WebsiteUrl; Current.CurrentInstance.ServerKey = st.ServerKey; Current.CurrentInstance.Access_token = auth.access_token; UserDetails.Username = mEditTextEmail.Text; UserDetails.Full_name = mEditTextEmail.Text; UserDetails.Password = mEditTextPassword.Text; UserDetails.access_token = auth.access_token; UserDetails.User_id = auth.user_id; UserDetails.Status = "Active"; UserDetails.Cookie = auth.access_token; UserDetails.Email = mEditTextEmail.Text; //Insert user data to database var user = new DataTables.LoginTB { UserID = UserDetails.User_id, access_token = UserDetails.access_token, Cookie = UserDetails.Cookie, Username = mEditTextEmail.Text, Password = mEditTextPassword.Text, Status = "Active", Lang = "", Device_ID = UserDetails.Device_ID, }; Classes.DataUserLoginList.Add(user); var dbDatabase = new SqLiteDatabase(); dbDatabase.InsertRow(user); dbDatabase.Dispose(); StartActivity(new Intent(this, typeof(AppIntroWalkTroutPage))); } } else if (Api_status == 400) { if (respond is Error_Object error) { var errortext = error._errors.Error_text; //Toast.MakeText(this, errortext, ToastLength.Short).Show(); if (errortext.Contains("Invalid or expired access_token")) { API_Request.Logout(this); } } } else if (Api_status == 404) { var error = respond.ToString(); //Toast.MakeText(this, error, ToastLength.Short).Show(); } progressBar.Visibility = ViewStates.Gone; mButtonViewSignIn.Visibility = ViewStates.Visible; Finish(); } } } } catch (Exception exception) { progressBar.Visibility = ViewStates.Gone; mButtonViewSignIn.Visibility = ViewStates.Visible; IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), exception.Message, GetText(Resource.String.Lbl_Ok)); Crashes.TrackError(exception); } }
public async void OnCompleted(JSONObject json, GraphResponse response) { try { var data = json.ToString(); var result = JsonConvert.DeserializeObject <FacebookResult>(data); FB_email = result.email; var accessToken = AccessToken.CurrentAccessToken; if (accessToken != null) { FB_accessToken = accessToken.Token; Current.CurrentInstance.SetWebsiteURL(st.WebsiteUrl, st.ServerKey); var settingsResult = await Current.GetWoWonder_Settings(st, "WoWonder_Native_Android"); if (settingsResult != null) { string PushID = ""; try { PushID = settingsResult["push_id_2"].ToString(); } catch (Exception e) { Console.WriteLine(e); } if (OneSignalNotification.OneSignalAPP_ID == "") { OneSignalNotification.OneSignalAPP_ID = PushID; if (Settings.ShowNotification) { OneSignalNotification.RegisterNotificationDevice(); } } var(Api_status, respond) = await Client.Global.Get_SocialLogin(st, FB_accessToken, "facebook"); if (Api_status == 200) { if (respond is Auth_Object auth) { WoWonder_API.Client.WebsiteUrl = st.WebsiteUrl; Current.CurrentInstance.ServerKey = st.ServerKey; Current.CurrentInstance.Access_token = auth.access_token; UserDetails.Username = mEditTextEmail.Text; UserDetails.Full_name = mEditTextEmail.Text; UserDetails.Password = mEditTextPassword.Text; UserDetails.access_token = auth.access_token; UserDetails.User_id = auth.user_id; UserDetails.Status = "Active"; UserDetails.Cookie = auth.access_token; UserDetails.Email = mEditTextEmail.Text; //Insert user data to database var user = new DataTables.LoginTB { UserID = UserDetails.User_id, access_token = UserDetails.access_token, Cookie = UserDetails.Cookie, Username = mEditTextEmail.Text, Password = mEditTextPassword.Text, Status = "Active", Lang = "", Device_ID = UserDetails.Device_ID, }; Classes.DataUserLoginList.Add(user); var dbDatabase = new SqLiteDatabase(); dbDatabase.InsertRow(user); dbDatabase.Dispose(); StartActivity(new Intent(this, typeof(AppIntroWalkTroutPage))); } } else if (Api_status == 400) { if (respond is Error_Object error) { var errortext = error._errors.Error_text; //Toast.MakeText(this, errortext, ToastLength.Short).Show(); if (errortext.Contains("Invalid or expired access_token")) { API_Request.Logout(this); } } } else if (Api_status == 404) { var error = respond.ToString(); //Toast.MakeText(this, error, ToastLength.Short).Show(); } progressBar.Visibility = ViewStates.Gone; mButtonViewSignIn.Visibility = ViewStates.Visible; Finish(); } } //bool isLoggedIn = accessToken != null && !accessToken.IsExpired; } catch (Exception exception) { progressBar.Visibility = ViewStates.Gone; mButtonViewSignIn.Visibility = ViewStates.Visible; IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), exception.Message, GetText(Resource.String.Lbl_Ok)); Crashes.TrackError(exception); } }
//Click Button Login private async void BtnLoginOnClick(object sender, EventArgs eventArgs) { try { if (!IMethods.CheckConnectivity()) { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_CheckYourInternetConnection), GetText(Resource.String.Lbl_Ok)); } else { if (!string.IsNullOrEmpty(mEditTextEmail.Text) || !string.IsNullOrEmpty(mEditTextPassword.Text)) { Current.CurrentInstance.SetWebsiteURL(st.WebsiteUrl, st.ServerKey); progressBar.Visibility = ViewStates.Visible; mButtonViewSignIn.Visibility = ViewStates.Gone; var settingsResult = await Current.GetWoWonder_Settings(st, "WoWonder_Native_Android"); if (settingsResult != null) { string PushID = ""; try { PushID = settingsResult["push_id_2"].ToString(); } catch (Exception e) { Console.WriteLine(e); } if (OneSignalNotification.OneSignalAPP_ID == "") { OneSignalNotification.OneSignalAPP_ID = PushID; if (Settings.ShowNotification) { OneSignalNotification.RegisterNotificationDevice(); } } var(Api_status, Respond) = await Client.Global.Get_Auth(st, mEditTextEmail.Text, mEditTextPassword.Text, "UTC", UserDetails.Device_ID); if (Api_status == 200) { if (Respond is Auth_Object auth) { WoWonder_API.Client.WebsiteUrl = st.WebsiteUrl; Current.CurrentInstance.ServerKey = st.ServerKey; Current.CurrentInstance.Access_token = auth.access_token; UserDetails.Username = mEditTextEmail.Text; UserDetails.Full_name = mEditTextEmail.Text; UserDetails.Password = mEditTextPassword.Text; UserDetails.access_token = auth.access_token; UserDetails.User_id = auth.user_id; UserDetails.Status = "Active"; UserDetails.Cookie = auth.access_token; UserDetails.Email = mEditTextEmail.Text; //Insert user data to database var user = new DataTables.LoginTB { UserID = UserDetails.User_id, access_token = UserDetails.access_token, Cookie = UserDetails.Cookie, Username = mEditTextEmail.Text, Password = mEditTextPassword.Text, Status = "Active", Lang = "", Device_ID = UserDetails.Device_ID, }; Classes.DataUserLoginList.Add(user); var dbDatabase = new SqLiteDatabase(); dbDatabase.InsertRow(user); dbDatabase.Dispose(); if (Settings.Show_WalkTroutPage) { StartActivity(new Intent(this, typeof(AppIntroWalkTroutPage))); } else { StartActivity(new Intent(this, typeof(Tabbed_Main_Activity))); //Get data profile var data = API_Request.Get_MyProfileData_Api(this).ConfigureAwait(false); } progressBar.Visibility = ViewStates.Gone; mButtonViewSignIn.Visibility = ViewStates.Visible; Finish(); } } else if (Api_status == 400) { var error = Respond as Error_Object; if (error != null) { var errortext = error._errors.Error_text; var errorid = error._errors.Error_id; if (errorid == "3") { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_ErrorLogin_3), GetText(Resource.String.Lbl_Ok)); } else if (errorid == "4") { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_ErrorLogin_4), GetText(Resource.String.Lbl_Ok)); } else if (errorid == "5") { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_ErrorLogin_5), GetText(Resource.String.Lbl_Ok)); } else { IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), errortext, GetText(Resource.String.Lbl_Ok)); } } progressBar.Visibility = ViewStates.Gone; mButtonViewSignIn.Visibility = ViewStates.Visible; } else if (Api_status == 404) { //var Error = Respond.ToString(); progressBar.Visibility = ViewStates.Gone; mButtonViewSignIn.Visibility = ViewStates.Visible; IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_Error_Login), GetText(Resource.String.Lbl_Ok)); } } } else { progressBar.Visibility = ViewStates.Gone; mButtonViewSignIn.Visibility = ViewStates.Visible; IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), GetText(Resource.String.Lbl_Please_enter_your_data), GetText(Resource.String.Lbl_Ok)); } } } catch (Exception exception) { progressBar.Visibility = ViewStates.Gone; mButtonViewSignIn.Visibility = ViewStates.Visible; IMethods.DialogPopup.InvokeAndShowDialog(this, GetText(Resource.String.Lbl_Security), exception.Message, GetText(Resource.String.Lbl_Ok)); Crashes.TrackError(exception); } }
//Click Button Login private async void Btn_Login_OnClicked(object sender, EventArgs e) { try { if (!CrossConnectivity.Current.IsConnected) { await DisplayAlert(AppResources.Label_Error, AppResources.Label_Check_Your_Internet, AppResources.Label_OK); } else { UserDialogs.Instance.ShowLoading(AppResources.Label_Please_wait, MaskType.None); //API_Request.Session = Functions.RandomString(30); using (var client = new HttpClient()) { var formContent = new FormUrlEncodedContent(new[] { new KeyValuePair <string, string>("username", Txt_Username.Text), new KeyValuePair <string, string>("password", Txt_password.Text), //new KeyValuePair<string, string>("s", API_Request.Session), }); var response = await client.PostAsync(API_Request.API_Login, formContent); response.EnsureSuccessStatusCode(); var Response_json = await response.Content.ReadAsStringAsync(); var data = JsonConvert.DeserializeObject <Dictionary <string, object> >(Response_json); string ApiStatus = data["api_status"].ToString(); if (ApiStatus == "200") { JObject Login_data = JObject.FromObject(data["data"]); API_Request.User_id = Login_data["user_id"].ToString(); API_Request.Session = Login_data["session_id"].ToString(); API_Request.Cookie = Login_data["cookie"].ToString(); //Insert user data to database DataTables.LoginTB user = new DataTables.LoginTB(); user.UserID = API_Request.User_id; user.Session = API_Request.Session; user.Cookie = API_Request.Cookie; user.Username = Txt_Username.Text; user.Password = Txt_password.Text; user.Status = "Active"; Classes.DataUserLoginList.Add(user); SQL_Commander.Insert_Login_Credentials(user); //Messeges is login user Hamburg_Page.IsLogin = true; var Status_user = Classes.SeconderyListPage.FirstOrDefault(a => a.Name_page == AppResources.Label_Login); if (Status_user != null) { Status_user.Name_page = AppResources.Label_Logout; Status_user.Icon_page = IoniciconsFont.LogOut; var query = Classes.ListPage.FirstOrDefault(a => a.Name_page == AppResources.Label_My_Channel); if (query == null) { Classes.ListPage.Insert(0, new Classes.PageItems() { Name_page = AppResources.Label_My_Channel, Icon_page = IoniciconsFont.Person, BackgroundColor = "#696969", TextColor = "#444" }); Classes.ListPage.Insert(2, new Classes.PageItems() { Name_page = AppResources.Label_PlayLists, Icon_page = IoniciconsFont.Play, BackgroundColor = "#696969", TextColor = "#444" }); Classes.ListPage.Insert(3, new Classes.PageItems() { Name_page = AppResources.Label_Liked_Videos, Icon_page = IoniciconsFont.Thumbsup, BackgroundColor = "#696969", TextColor = "#444" }); Classes.ListPage.Add(new Classes.PageItems() { Name_page = AppResources.Label_Upload, Icon_page = IoniciconsFont.IosCloudUpload, BackgroundColor = "#696969", TextColor = "#444" }); if (Settings.DarkTheme) { foreach (var Item in Classes.ListPage) { Item.BackgroundColor = "#bcbcbc"; Item.TextColor = "#ffff"; } } } } //Check User Status and Get data SQL_Commander.Get_data_Login_Credentials(); UserDialogs.Instance.HideLoading(); await Navigation.PopModalAsync(true); } else if (ApiStatus == "304") { JObject errors = JObject.FromObject(data["errors"]); string errorID = errors["error_id"].ToString(); var errortext = errors["error_text"].ToString(); UserDialogs.Instance.ShowError(errortext); } else { UserDialogs.Instance.HideLoading(); await DisplayAlert(AppResources.Label_Login, AppResources.Label_Login_Not_Correct, AppResources.Label_OK); } } } } catch (Exception ex) { var exception = ex.ToString(); await DisplayAlert(AppResources.Label_Error, AppResources.Label_Session_Dead, AppResources.Label_OK); UserDialogs.Instance.HideLoading(); } }