private void OnSetupButtonClick(object sender, RoutedEventArgs e) { ViewMode = LoginPageViewMode.Progress; Uri hospApiUri; Uri imsApiUri; bool isHospApiUriValid = Uri.TryCreate(tbx_hospapi.Text.Trim(), UriKind.Absolute, out hospApiUri); bool isImsApiUriValid = Uri.TryCreate(tbx_imsapi.Text.Trim(), UriKind.Absolute, out imsApiUri); if (isHospApiUriValid && isImsApiUriValid) { ApiSettings settings = new ApiSettings() { HospitalApiBaseUri = hospApiUri, ImsApiBaseUri = imsApiUri, StationCode = tbx_stncode.Text.Trim() }; string serializedSettings = JsonConvert.SerializeObject(settings); SettingsHelper.SetLocalSetting("ims_settings", serializedSettings); App.ApiSettings = settings; tbx_un.Text = ""; pbx_pw.Password = ""; ViewMode = LoginPageViewMode.Login; } else { ViewMode = LoginPageViewMode.Setup; FillInExistingSettings(); } }
public LoginPage(LoginPageViewMode mode = LoginPageViewMode.Login) { InitializeComponent(); ViewMode = mode; if (ViewMode == LoginPageViewMode.Setup) { FillInExistingSettings(); } }
private async void Login() { try { ViewMode = LoginPageViewMode.Progress; btn_login.IsEnabled = false; await Task.Delay(10); Personnel user = await Personnel.AuthenticateAsync(App.ApiSettings, tbx_un.Text, pbx_pw.Password); App.LoggedUser = user; string pairedDeviceSettings = SettingsHelper.GetLocalSetting("ims_pairedDevice"); Shell clientShell; if (pairedDeviceSettings != null) { MobileMedAdminSystem system = JsonConvert.DeserializeObject <MobileMedAdminSystem>(pairedDeviceSettings); clientShell = new Shell(typeof(PatientsPage), system); } else { clientShell = new Shell(typeof(Devices.DevicesRegisterPage)); } Window.Current.Content = clientShell; Window.Current.Activate(); } catch (ApiException ex) { //TODO: If the destination URI is unreachable but internet is present, offer to go to setup //hbtn_setup.Visibility = Visibility.Visible; MessageDialog md = new MessageDialog(ex.Message, ex.Errors); md.Commands.Add(new UICommand("Try again", (command) => { ViewMode = LoginPageViewMode.Login; hbtn_setup.Visibility = Visibility.Collapsed; })); await md.ShowAsync(); } catch (HttpRequestException ex) { MessageDialog md = new MessageDialog(ex.InnerException.Data["RestrictedDescription"].ToString(), ex.Message); md.Commands.Add(new UICommand("Try again", (command) => { hbtn_setup.Visibility = Visibility.Visible; sp_setupdesc.Text = "Administrator? You may want to check your connection paramters."; ViewMode = LoginPageViewMode.Login; })); await md.ShowAsync(); } }
public object Convert(object value, Type targetType, object parameter, string language) { LoginPageViewMode param = (LoginPageViewMode)Enum.Parse(typeof(LoginPageViewMode), parameter as string); return(((LoginPageViewMode)value == param) ? Visibility.Visible : Visibility.Collapsed); }
private void OnLoginConnectionProblemButtonClick(object sender, RoutedEventArgs e) { ViewMode = LoginPageViewMode.Setup; }