public override T GetPanel <T>(params object[] parameters) { try { var emailPanel = new EmailPanel(); var emailContext = emailPanel.DataContext as EmailContext; if (emailContext != null) { Settings.ApplyToProperties(emailContext, "Bot-Email", "Service-Provider"); if (!string.IsNullOrEmpty(Settings["Password"].Value)) { emailPanel.UserPasswordBox.Password = SynUtility.Security.Decrypt(Settings["Password"].Value); emailPanel.UserConfirmPasswordBox.Password = SynUtility.Security.Decrypt(Settings["Password"].Value); } emailContext.SaveAction = () => { try { var settingsManager = VA.SettingsManager; var settingsWindow = VA.Components.Get <SettingsWindow>(); if (emailPanel.UserPasswordBox.Password == emailPanel.UserConfirmPasswordBox.Password) { Settings["Bot-Email"].Value = emailContext.BotEmail; Settings["Service-Provider"].Value = emailContext.ServiceProvider; Settings["Password"].Value = !string.IsNullOrEmpty(emailPanel.UserPasswordBox.Password) ? SynUtility.Security.Encrypt(emailPanel.UserPasswordBox.Password) : string.Empty; settingsManager.Save(Settings, StringResource.EmailPlugin_SettingsSavedMessage); } else { settingsWindow.DisplayMessage(Name, StringResource.EmailPlugin_WrongPasswordMessage); } } catch (Exception exception) { VA.Logger.Error(exception); } }; } return(emailPanel as T); } catch (Exception exception) { VA.Logger.Error(exception); } return(null); }
// Runs when "Sent Email" is clicked private void EmailClick(object sender, RoutedEventArgs e) { EmailPanel _EmailPanel = new EmailPanel(CxNameBox.Text.Split(' ')[0], this); ContentBox.Content = _EmailPanel; }