private async void ExecuteUpdateUserCommand() { var network = Connectivity.NetworkAccess; if (network != NetworkAccess.Internet) { await MaterialDialog.Instance.SnackbarAsync(message : "Error: No internet access", actionButtonText : "OK", msDuration : 3000, configuration : App.snackBarConfiguration); return; } if (Username == null || PhoneNumber == null || University == null || Department == null) { await MaterialDialog.Instance.SnackbarAsync(message : "Error: Fill the required fields", actionButtonText : "OK", msDuration : 3000, configuration : App.snackBarConfiguration); return; } var loadingPageConfiguration = new MaterialLoadingDialogConfiguration() { BackgroundColor = Color.FromHex("048B28"), MessageTextColor = Color.FromHex("FFFFFF"), CornerRadius = 10, TintColor = Color.FromHex("FFFFFF"), ScrimColor = Color.FromHex("1DA1F2").MultiplyAlpha(0.05) }; var loadingDialog = await MaterialDialog.Instance.LoadingDialogAsync(message : "Processing", configuration : loadingPageConfiguration); var updateUser = new User { Email = Settings.EmailSettings, Username = this.Username.Trim(), PhoneNumber = this.PhoneNumber.Trim(), University = this.University.Trim(), Department = this.Department.Trim(), Id = Settings.KeySettings, Avatar = Settings.AvatarSettings }; var user = await remoteService.UpdateUser(updateUser); await loadingDialog.DismissAsync(); if (user) { await MaterialDialog.Instance.SnackbarAsync(message : "Profile Updated successfully", actionButtonText : "OK", msDuration : 2000, configuration : App.snackBarConfiguration); IsNotBusy = false; Settings.UsernameSettings = Username.Trim(); Settings.PhoneNumberSettings = PhoneNumber.Trim(); Settings.UniversitySettings = University.Trim(); Settings.DepartmentSettings = Department.Trim(); } else { await MaterialDialog.Instance.SnackbarAsync(message : "Update failed", actionButtonText : "OK", msDuration : 2000, configuration : App.snackBarConfiguration); } }
internal static async Task <IMaterialModalPage> Loading(string message, MaterialLoadingDialogConfiguration configuration = null) { var dialog = new MaterialLoadingDialog(message, configuration); await dialog.ShowAsync(); return(dialog); }
internal MaterialLoadingDialog(string message, string lottieAnimation, MaterialLoadingDialogConfiguration configuration) { InitializeComponent(); Configure(configuration); Message.Text = message; LoadingImage.Animation = lottieAnimation; }
private void ConfigureStylesheets() { var alertDialogConfiguration = new MaterialAlertDialogConfiguration { BackgroundColor = XF.Material.Forms.Material.GetResource <Color>(MaterialConstants.Color.PRIMARY), TitleTextColor = Color.White, TitleFontFamily = XF.Material.Forms.Material.GetResource <OnPlatform <string> >("FontFamily.RobotoRegular"), MessageTextColor = Color.White, MessageFontFamily = XF.Material.Forms.Material.GetResource <OnPlatform <string> >("FontFamily.RobotoRegular"), TintColor = Color.White, ButtonFontFamily = XF.Material.Forms.Material.GetResource <OnPlatform <string> >("FontFamily.RobotoRegular"), CornerRadius = 8, ScrimColor = Color.FromHex("#011A27").MultiplyAlpha(0.32), ButtonAllCaps = false }; var alertconfirmationDialogConfiguration = new MaterialConfirmationDialogConfiguration { BackgroundColor = XF.Material.Forms.Material.GetResource <Color>(MaterialConstants.Color.PRIMARY), TitleTextColor = Color.White, TitleFontFamily = XF.Material.Forms.Material.GetResource <OnPlatform <string> >("FontFamily.RobotoRegular"), TintColor = Color.White, ButtonFontFamily = XF.Material.Forms.Material.GetResource <OnPlatform <string> >("FontFamily.RobotoRegular"), CornerRadius = 8, ScrimColor = Color.FromHex("#011A27").MultiplyAlpha(0.32), ButtonAllCaps = false }; var alertloadingDialogConfiguration = new MaterialLoadingDialogConfiguration { BackgroundColor = XF.Material.Forms.Material.GetResource <Color>(MaterialConstants.Color.PRIMARY), MessageTextColor = Color.White, TintColor = Color.White, MessageFontFamily = XF.Material.Forms.Material.GetResource <OnPlatform <string> >("FontFamily.RobotoRegular"), CornerRadius = 8, ScrimColor = Color.FromHex("#011A27").MultiplyAlpha(0.32) }; var alertsimpleDialogConfiguration = new MaterialSimpleDialogConfiguration { BackgroundColor = XF.Material.Forms.Material.GetResource <Color>(MaterialConstants.Color.PRIMARY), TitleTextColor = Color.White, TitleFontFamily = XF.Material.Forms.Material.GetResource <OnPlatform <string> >("FontFamily.RobotoRegular"), TintColor = Color.White, TextFontFamily = XF.Material.Forms.Material.GetResource <OnPlatform <string> >("FontFamily.RobotoRegular"), CornerRadius = 8, ScrimColor = Color.FromHex("#011A27").MultiplyAlpha(0.32), TextColor = Color.White }; MaterialDialog.Instance.SetGlobalStyles(alertDialogConfiguration, alertloadingDialogConfiguration, null, alertsimpleDialogConfiguration, alertconfirmationDialogConfiguration); }
private void Configure(MaterialLoadingDialogConfiguration configuration) { var preferredConfig = configuration ?? GlobalConfiguration; if (preferredConfig != null) { this.BackgroundColor = preferredConfig.ScrimColor; Container.CornerRadius = preferredConfig.CornerRadius; Container.BackgroundColor = preferredConfig.BackgroundColor; Message.TextColor = preferredConfig.MessageTextColor; Message.FontFamily = preferredConfig.MessageFontFamily; LoadingImage.TintColor = preferredConfig.TintColor; } }
private void Configure(MaterialLoadingDialogConfiguration configuration) { var preferredConfig = configuration ?? GlobalConfiguration; if (preferredConfig == null) { return; } this.BackgroundColor = preferredConfig.ScrimColor; Container.CornerRadius = preferredConfig.CornerRadius; Container.BackgroundColor = preferredConfig.BackgroundColor; Message.TextColor = preferredConfig.MessageTextColor; Message.FontFamily = preferredConfig.MessageFontFamily; LoadingImage.TintColor = preferredConfig.TintColor; Container.Margin = preferredConfig.Margin == default ? Material.GetResource <Thickness>("Material.Dialog.Margin") : preferredConfig.Margin; }
public void SetGlobalStyles( MaterialAlertDialogConfiguration dialogConfiguration = null, MaterialLoadingDialogConfiguration loadingDialogConfiguration = null, MaterialSnackbarConfiguration snackbarConfiguration = null, MaterialSimpleDialogConfiguration simpleDialogConfiguration = null, MaterialConfirmationDialogConfiguration confirmationDialogConfiguration = null, MaterialInputDialogConfiguration inputDialogConfiguration = null, MaterialAlertDialogConfiguration customContentDialogConfiguration = null) { MaterialAlertDialog.GlobalConfiguration = dialogConfiguration; MaterialLoadingDialog.GlobalConfiguration = loadingDialogConfiguration; MaterialSnackbar.GlobalConfiguration = snackbarConfiguration; MaterialSimpleDialog.GlobalConfiguration = simpleDialogConfiguration; MaterialConfirmationDialog.GlobalConfiguration = confirmationDialogConfiguration; MaterialInputDialog.GlobalConfiguration = inputDialogConfiguration; MaterialDialogFragment.GlobalConfiguration = customContentDialogConfiguration; }
private async void MaterialButton_Clicked_4(object sender, EventArgs e) { var cc = XF.Material.Forms.Material.GetResource <OnPlatform <string> >("FontFamily.OpenSansRegular"); var alertLoadingConfiguration = new MaterialLoadingDialogConfiguration { BackgroundColor = XF.Material.Forms.Material.GetResource <Color>(MaterialConstants.Color.PRIMARY), MessageTextColor = XF.Material.Forms.Material.GetResource <Color>(MaterialConstants.Color.ON_BACKGROUND).MultiplyAlpha(0.8), TintColor = XF.Material.Forms.Material.GetResource <Color>(MaterialConstants.Color.SECONDARY), CornerRadius = 8, ScrimColor = Color.FromHex("#232F34").MultiplyAlpha(0.32) }; using (var dialog = await MaterialDialog.Instance.LoadingDialogAsync(message: "Something is running", configuration: alertLoadingConfiguration)) { await Task.Delay(5000); // Represents a task that is running. dialog.MessageText = "Something else is running now!"; await Task.Delay(5000);// Represents a task that is running. }; }
public App() { InitializeComponent(); DatabaseUtil = new DatabaseUtil(); PropertyUtils.SavesProperty("KeySound", "Bip_Bip.mp3"); Material.Init(Application.Current, "Material.Configuration"); Material.PlatformConfiguration.ChangeStatusBarColor(Color.FromHex("#651758")); var loadingDialogConfiguration = new MaterialLoadingDialogConfiguration() { BackgroundColor = Color.White, MessageTextColor = Material.GetResource <Color>(MaterialConstants.Color.PRIMARY_VARIANT).MultiplyAlpha(0.8), TintColor = Material.GetResource <Color>(MaterialConstants.Color.PRIMARY), CornerRadius = 8, ScrimColor = Color.FromHex("#232F34").MultiplyAlpha(0.32) }; var inputDialogConfiguration = new MaterialInputDialogConfiguration() { BackgroundColor = Color.White, TitleTextColor = Material.GetResource <Color>(MaterialConstants.Color.PRIMARY_VARIANT).MultiplyAlpha(0.8), MessageTextColor = Material.GetResource <Color>(MaterialConstants.Color.PRIMARY_VARIANT).MultiplyAlpha(0.8), TintColor = Material.GetResource <Color>(MaterialConstants.Color.PRIMARY), CornerRadius = 8, ScrimColor = Color.FromHex("#232F34").MultiplyAlpha(0.32) }; var simpleDialogConfiguration = new MaterialSimpleDialogConfiguration() { BackgroundColor = Color.White, TitleTextColor = Material.GetResource <Color>(MaterialConstants.Color.PRIMARY_VARIANT).MultiplyAlpha(0.8), TextColor = Material.GetResource <Color>(MaterialConstants.Color.PRIMARY_VARIANT).MultiplyAlpha(0.8), TintColor = Material.GetResource <Color>(MaterialConstants.Color.PRIMARY), CornerRadius = 8, ScrimColor = Color.FromHex("#232F34").MultiplyAlpha(0.32) }; MaterialDialog.Instance.SetGlobalStyles(loadingDialogConfiguration: loadingDialogConfiguration, inputDialogConfiguration: inputDialogConfiguration, simpleDialogConfiguration: simpleDialogConfiguration); }
private void InitializeMaterialConfig() { var alertDialogConfiguration = new MaterialAlertDialogConfiguration { BackgroundColor = Color.FromHex("#29357A"), TitleTextColor = Color.White, MessageTextColor = Color.White.MultiplyAlpha(0.8), TintColor = Color.White, CornerRadius = 8, ScrimColor = Color.FromHex("#232F34").MultiplyAlpha(0.32), ButtonAllCaps = true }; var loadingDialogConfiguration = new MaterialLoadingDialogConfiguration { BackgroundColor = Color.FromHex("#29357A"), MessageTextColor = Color.White.MultiplyAlpha(0.8), TintColor = Color.White, CornerRadius = 8, ScrimColor = Color.FromHex("#232F34").MultiplyAlpha(0.32) }; MaterialDialog.Instance.SetGlobalStyles(alertDialogConfiguration, loadingDialogConfiguration); }
async void UploadProperty() { //checking for connectivity var network = Connectivity.NetworkAccess; if (network != NetworkAccess.Internet) { await MaterialDialog.Instance.SnackbarAsync(message : "Error: No internet access", actionButtonText : "OK", msDuration : 3000, configuration : snackBarConfiguration); return; } if (string.IsNullOrEmpty(ItemName) || string.IsNullOrEmpty(Location) || Price == 0M || string.IsNullOrEmpty(Description) || string.IsNullOrEmpty(Type)) { await MaterialDialog.Instance.SnackbarAsync(message : "Error: Fill the required fields", actionButtonText : "OK", msDuration : 3000, configuration : snackBarConfiguration); return; } IsBusy = false; var loadingPageConfiguration = new MaterialLoadingDialogConfiguration() { BackgroundColor = Color.FromHex("1DA1F2"), MessageTextColor = Color.FromHex("FFFFFF"), CornerRadius = 10, TintColor = Color.FromHex("FFFFFF"), ScrimColor = Color.FromHex("1DA1F2").MultiplyAlpha(0.32) }; var loadingDialog = await MaterialDialog.Instance.LoadingDialogAsync(message : "Processing", configuration : loadingPageConfiguration); if (image1 == 1) { firstImageUrl = await remoteService.UploadFile(mediaFile1.GetStream(), Path.GetFileName(mediaFile1.Path)); } if (image2 == 1) { secondImageUrl = await remoteService.UploadFile(mediaFile2.GetStream(), Path.GetFileName(mediaFile2.Path)); } if (image3 == 1) { thirdImageUrl = await remoteService.UploadFile(mediaFile3.GetStream(), Path.GetFileName(mediaFile3.Path)); } if (image4 == 1) { fourthImageUrl = await remoteService.UploadFile(mediaFile4.GetStream(), Path.GetFileName(mediaFile4.Path)); } //firstImageUrl = await remoteService.UploadFile(mediaFile1.GetStream(), Path.GetFileName(mediaFile1.Path)); //secondImage = await remoteService.UploadFile(mediaFile2.GetStream(), Path.GetFileName(mediaFile2.Path)); //thirdImageUrl = await remoteService.UploadFile(mediaFile3.GetStream(), Path.GetFileName(mediaFile3.Path)); //fourthImageUrl = await remoteService.UploadFile(mediaFile4.GetStream(), Path.GetFileName(mediaFile4.Path)); var realtorProperty = new RealtorProperty() { CompanyName = Settings.CompanyNameSettings, AccountName = Settings.UsernameSettings, Avatar = Settings.AvatarSettings, ItemName = this.ItemName.ToLower().Trim(), ItemPrice = this.Price, Description = this.Description.ToLower().Trim(), Location = this.Location.ToLower().Trim(), ItemType = this.Type, Negotiable = this.Negotiable, PhoneNumber = Settings.PhoneNumberSettings, Email = Settings.EmailSettings, FirstImage = firstImageUrl, SecondImage = secondImageUrl, ThirdImage = thirdImageUrl, FourthImage = fourthImageUrl, IsFavorite = false }; var upload = await remoteService.AddProperty(realtorProperty); await loadingDialog.DismissAsync(); IsBusy = true; if (upload) { ItemName = null; Price = 0; Description = null; Location = null; Type = null; Negotiable = null; FirstImage.Source = "Upload.png"; SecondImage.Source = "Upload.png"; ThirdImage.Source = "Upload.png"; FourthImage.Source = "Upload.png"; await MaterialDialog.Instance.SnackbarAsync(message : "Uploaded successfully", actionButtonText : "OK", msDuration : 3000, configuration : snackBarConfiguration); } else { await MaterialDialog.Instance.SnackbarAsync(message : "Uploaded failed", actionButtonText : "OK", msDuration : 3000, configuration : snackBarConfiguration); } //IsBusy = true; }
private async void ExecuteSignUpCommand() { //checking for connectivity var network = Connectivity.NetworkAccess; if (network != NetworkAccess.Internet) { await MaterialDialog.Instance.SnackbarAsync(message : "Error: No internet access", actionButtonText : "OK", msDuration : 3000, configuration : App.snackBarConfiguration); return; } //checking for null if (Email == null || Username == null || PhoneNumber == null || University == null || Department == null || Password == null || ConfirmPassword == null) { await MaterialDialog.Instance.SnackbarAsync(message : "Error: Fill the required fields", actionButtonText : "OK", msDuration : 3000, configuration : App.snackBarConfiguration); return; } //password length if (Password.Length < 6) { await MaterialDialog.Instance.SnackbarAsync(message : "Error: Password length must be at least 6 characters", actionButtonText : "OK", msDuration : 3000, configuration : App.snackBarConfiguration); return; } if (Password.ToLower().Trim() != ConfirmPassword.ToLower().Trim()) { await MaterialDialog.Instance.SnackbarAsync(message : "Error: Passwords do not match", actionButtonText : "OK", msDuration : 3000, configuration : App.snackBarConfiguration); return; } //loading dialog configuration var loadingPageConfiguration = new MaterialLoadingDialogConfiguration() { BackgroundColor = Color.FromHex("048B28"), MessageTextColor = Color.FromHex("FFFFFF"), CornerRadius = 10, TintColor = Color.FromHex("FFFFFF"), ScrimColor = Color.FromHex("1DA1F2").MultiplyAlpha(0.05) }; //opacity of the page Opacity = 0.8; var loadingDialog = await MaterialDialog.Instance.LoadingDialogAsync(message : "Processing", configuration : loadingPageConfiguration); IsNotBusy = false; //remote service - create user var user = await remoteService.SignUp(Email.ToLower().Trim(), Password.ToLower().Trim()); if (user.Id != null) { var signUp = new SignUp() { Email = this.Email.ToLower().Trim(), Username = this.Username.Trim(), PhoneNumber = this.PhoneNumber.Trim(), University = this.University.Trim(), Department = this.Department.Trim(), Id = user.Id, Avatar = "https://firebasestorage.googleapis.com/v0/b/naijaconnect-3b414.appspot.com/o/default%20profile%20picture.png?alt=media&token=092092f9-886d-4a3c-8271-bbbcecc5678d", Status = "offline" }; //save user to database var completeSignUp = await remoteService.SaveUser(signUp); await loadingDialog.DismissAsync(); if (completeSignUp) { Email = null; Username = null; PhoneNumber = null; University = null; Department = null; Password = null; ConfirmPassword = null; IsNotBusy = true; Opacity = 1; await MaterialDialog.Instance.SnackbarAsync(message : "Account created successfully", actionButtonText : "OK", msDuration : 2000, configuration : App.snackBarConfiguration); await NavigationService.NavigateAsync("SignInPage"); } else { await MaterialDialog.Instance.SnackbarAsync(message : "Error occured", actionButtonText : "OK", msDuration : 2000, configuration : App.snackBarConfiguration); } } else { await loadingDialog.DismissAsync(); await MaterialDialog.Instance.SnackbarAsync(message : "Error: " + user.ErrorMessage, actionButtonText : "OK", msDuration : 2000, configuration : App.snackBarConfiguration); } }
/// <summary> /// Sets the global styles for <see cref="MaterialAlertDialog"/>, <see cref="MaterialLoadingDialog"/>, <see cref="MaterialSimpleDialog"/>, <see cref="MaterialConfirmationDialog"/>, and <see cref="MaterialSnackbar"/>. Parameters can be null. /// </summary> /// <param name="dialogConfiguration">Global style for <see cref="MaterialAlertDialog"/>.</param> /// <param name="loadingDialogConfiguration">Global style for <see cref="MaterialLoadingDialog"/>.</param> /// <param name="snackbarConfiguration">Global style for <see cref="MaterialSnackbar"/>.</param> /// <param name="simpleDialogConfiguration">Global style for <see cref="MaterialSimpleDialog"/>.</param> /// <param name="confirmationDialogConfiguration">Global style for <see cref="MaterialConfirmationDialog"/>.</param> /// <param name="inputDialogConfiguration">Global style for <see cref="MaterialInputDialog"/>.</param> public void SetGlobalStyles(MaterialAlertDialogConfiguration dialogConfiguration, MaterialLoadingDialogConfiguration loadingDialogConfiguration, MaterialSnackbarConfiguration snackbarConfiguration, MaterialSimpleDialogConfiguration simpleDialogConfiguration, MaterialConfirmationDialogConfiguration confirmationDialogConfiguration, MaterialInputDialogConfiguration inputDialogConfiguration) { MaterialAlertDialog.GlobalConfiguration = dialogConfiguration; MaterialLoadingDialog.GlobalConfiguration = loadingDialogConfiguration; MaterialSnackbar.GlobalConfiguration = snackbarConfiguration; MaterialSimpleDialog.GlobalConfiguration = simpleDialogConfiguration; MaterialConfirmationDialog.GlobalConfiguration = confirmationDialogConfiguration; MaterialInputDialog.GlobalConfiguration = inputDialogConfiguration; }
internal MaterialLoadingDialog(string message, MaterialLoadingDialogConfiguration configuration) { this.InitializeComponent(); this.Configure(configuration); Message.Text = message; }
private async void ExecuteNavigateToSignUpCommand() { //checking for connectivity var network = Connectivity.NetworkAccess; if (network != NetworkAccess.Internet) { await MaterialDialog.Instance.SnackbarAsync(message : "Error: No internet access", actionButtonText : "OK", msDuration : 3000, configuration : snackBarConfiguration); return; } if (CompanyName == null || Username == null || Email == null || PhoneNumber == null || Address == null || Password == null || ConfirmPassword == null) { await MaterialDialog.Instance.SnackbarAsync(message : "Error: Fill the required fields", actionButtonText : "OK", msDuration : 3000, configuration : snackBarConfiguration); return; } if (Password.Length < 4) { await MaterialDialog.Instance.SnackbarAsync(message : "Error: Password length must be more than 4 characters", actionButtonText : "OK", msDuration : 3000, configuration : snackBarConfiguration); return; } if (Password.ToLower().Trim() != ConfirmPassword.ToLower().Trim()) { await MaterialDialog.Instance.SnackbarAsync(message : "Error: Passwords do not match", actionButtonText : "OK", msDuration : 3000, configuration : snackBarConfiguration); return; } IsNotBusy = false; var loadingPageConfiguration = new MaterialLoadingDialogConfiguration() { BackgroundColor = Color.FromHex("1DA1F2"), MessageTextColor = Color.FromHex("FFFFFF"), CornerRadius = 10, TintColor = Color.FromHex("FFFFFF"), ScrimColor = Color.FromHex("1DA1F2").MultiplyAlpha(0.32) }; var loadingDialog = await MaterialDialog.Instance.LoadingDialogAsync(message : "Processing", configuration : loadingPageConfiguration); var validateUser = await remoteService.ValidateUsername(Username.ToLower().Trim()); if (!validateUser) { await MaterialDialog.Instance.SnackbarAsync(message : "Username already exist", actionButtonText : "OK", msDuration : 2000, configuration : snackBarConfiguration); await loadingDialog.DismissAsync(); IsNotBusy = true; return; } var signUp = new SignUp { CompanyName = this.CompanyName.ToLower().Trim(), Username = this.Username.ToLower().Trim(), Email = this.Email.ToLower().Trim(), PhoneNumber = this.PhoneNumber.ToLower().Trim(), Address = this.Address.ToLower().Trim(), Password = this.Password.ToLower().Trim(), }; var user = await remoteService.SignUpAsync(signUp); await loadingDialog.DismissAsync(); IsNotBusy = true; if (user) { CompanyName = null; Username = null; Email = null; Password = null; Address = null; PhoneNumber = null; ConfirmPassword = null; //await App.Current.MainPage.DisplayAlert("SignUp Success", "Congrats your account has been created", "Ok"); await MaterialDialog.Instance.SnackbarAsync(message : "Account created successfully", actionButtonText : "OK", msDuration : 2000, configuration : snackBarConfiguration); await NavigationService.NavigateAsync("LoginPage"); } else { await MaterialDialog.Instance.SnackbarAsync(message : "Sign up failed", actionButtonText : "OK", msDuration : 2000, configuration : snackBarConfiguration); } }
/// <summary> /// Sets the global styles for <see cref="MaterialAlertDialog"/>, <see cref="MaterialLoadingDialog"/>,and <see cref="MaterialSnackbar"/>. /// </summary> /// <param name="dialogConfiguration">Global style for <see cref="MaterialAlertDialog"/>.</param> /// <param name="loadingDialogConfiguration">Global style for <see cref="MaterialLoadingDialog"/>.</param> /// <param name="snackbarConfiguration">Global style for <see cref="MaterialSnackbar"/>.</param> public static void SetGlobalStyles(MaterialAlertDialogConfiguration dialogConfiguration, MaterialLoadingDialogConfiguration loadingDialogConfiguration, MaterialSnackbarConfiguration snackbarConfiguration) { MaterialAlertDialog.GlobalConfiguration = dialogConfiguration; MaterialLoadingDialog.GlobalConfiguration = loadingDialogConfiguration; MaterialSnackbar.GlobalConfiguration = snackbarConfiguration; }
public Task <IMaterialModalPage> LoadingDialogAsync( string message, MaterialLoadingDialogConfiguration configuration = null) { return(MaterialLoadingDialog.Loading(message, configuration)); }
/// <summary> /// Shows a dialog indicating a running task. /// </summary> /// <param name="message">The message of the dialog.</param> /// <param name="configuration">The style of the loading dialog.</param> public static async Task <IMaterialModalPage> ShowLoadingDialogAsync(string message, MaterialLoadingDialogConfiguration configuration = null) { return(await MaterialLoadingDialog.Loading(message, configuration)); }
async void SignUp() { var network = Connectivity.NetworkAccess; if (network != NetworkAccess.Internet) { // using display alert with MVVM await Application.Current.MainPage.DisplayAlert("Alert", "Please check your internet connection ", "Ok"); return; } if (Surname == null || Firstname == null || Email == null || Address == null || MobileNumber == null || Password == null || ConfirmPassword == null) { await Application.Current.MainPage.DisplayAlert("Alert", "Please input all fields", "Ok"); return; } if (Password != ConfirmPassword) { await Application.Current.MainPage.DisplayAlert("Alert", "Please make sure Password and confirm passwoed are the same ", "Ok"); return; } IsBusy = false; // add loading dialog here var loadingDialogConfiguration = new MaterialLoadingDialogConfiguration() { BackgroundColor = Color.FromHex("010088"), MessageTextColor = Color.FromHex("FFFFFF"), // MessageFontFamily = TintColor = Color.FromHex("FFFFFF"), CornerRadius = 20, // ScrimColor = }; var snackBarconfiguration = new MaterialSnackbarConfiguration() { TintColor = Color.FromHex("#00FF01"), CornerRadius = 20, // MessageTextColor = Color.White.MultiplyAlpha(0.6), MessageTextColor = Color.White, BackgroundColor = Color.FromHex("#010088") }; var loadingDialog = await MaterialDialog.Instance.LoadingDialogAsync(message : "Something is running...", configuration : loadingDialogConfiguration); // also add validation of user here oo or add in the remote class var signUp = new SignUp { Surname = this.Surname, FirstName = this.Firstname, Email = this.Email, Address = this.Address, MobileNumber = this.MobileNumber, Password = this.Password, ConfrimPassword = this.ConfirmPassword }; var user = await remoteServices.SignUpAsync(signUp); await loadingDialog.DismissAsync(); IsBusy = true; if (user) { Surname = null; Firstname = null; Email = null; Address = null; MobileNumber = null; Password = null; ConfirmPassword = null; await MaterialDialog.Instance.SnackbarAsync(message : "Account created successfully .", actionButtonText : "OK", msDuration : 3000, configuration : snackBarconfiguration); await NavigationService.NavigateAsync("LoginPage"); } else { await MaterialDialog.Instance.SnackbarAsync(message : "Sign up failed! Retry", actionButtonText : "OK", msDuration : 3000, configuration : snackBarconfiguration); // await Application.Current.MainPage.DisplayAlert("Alert", "Sign up failed ", "Ok"); } }
private async void ExecuteUpdateUserCommand() { var network = Connectivity.NetworkAccess; if (network != NetworkAccess.Internet) { await MaterialDialog.Instance.SnackbarAsync(message : "Error: No internet access", actionButtonText : "OK", msDuration : 3000, configuration : snackBarConfiguration); return; } if (CompanyName == null || Username == null || Email == null || PhoneNumber == null || Address == null) { await MaterialDialog.Instance.SnackbarAsync(message : "Error: Fill the required fields", actionButtonText : "OK", msDuration : 3000, configuration : snackBarConfiguration); return; } var loadingPageConfiguration = new MaterialLoadingDialogConfiguration() { BackgroundColor = Color.FromHex("1DA1F2"), MessageTextColor = Color.FromHex("FFFFFF"), CornerRadius = 10, TintColor = Color.FromHex("FFFFFF"), ScrimColor = Color.FromHex("1DA1F2").MultiplyAlpha(0.32) }; var loadingDialog = await MaterialDialog.Instance.LoadingDialogAsync(message : "Processing", configuration : loadingPageConfiguration); if (number == 1) { profilePicUrl = await remoteService.UploadFile(mediaFile.GetStream(), Path.GetFileName(mediaFile.Path)); } if (number != 1) { profilePicUrl = Avatar.Source.ToString(); } var updateUser = new User { CompanyName = this.CompanyName.ToLower().Trim(), Username = this.Username.ToLower().Trim(), PhoneNumber = this.PhoneNumber.ToLower().Trim(), Address = this.Address.ToLower().Trim(), Email = this.Email.ToLower().Trim(), Avatar = profilePicUrl, AlternatePhoneNumber = this.AlternatePhoneNumber, Password = Settings.PasswordSettings.ToLower() }; var user = await remoteService.UpdateUser(updateUser); await loadingDialog.DismissAsync(); //IsNotBusy = true; if (user) { await MaterialDialog.Instance.SnackbarAsync(message : "Profile Updated successfully", actionButtonText : "OK", msDuration : 2000, configuration : snackBarConfiguration); IsNotBusy = false; } else { await MaterialDialog.Instance.SnackbarAsync(message : "Update failed", actionButtonText : "OK", msDuration : 2000, configuration : snackBarConfiguration); } //var parameters = new NavigationParameters(); //parameters.Add("nav", new User() //{ // CompanyName = this.CompanyName, // Username = this.username, // PhoneNumber = this.PhoneNumber, // Address = this.Address, // Email = this.Email, // Avatar = this.Avatar, // AlternatePhoneNumber = this.AlternatePhoneNumber // }); //await NavigationService.NavigateAsync("NavigationPage/EditProfilePage", parameters); }