private static void StartMainWindow( string loginDialogName, IApplicationConfigurator applicationConfigurator, IParametersProvider parametersProvider) { //Настрока удаления Configure.ConfigureDeletion(); PerformanceHelper.AddTimePoint(logger, "Закончена настройка удаления"); //Настройка сервисов if (parametersProvider.ContainsParameter("instant_sms_enabled_database") && parametersProvider.ContainsParameter("sms_service_address")) { if (parametersProvider.GetParameterValue("instant_sms_enabled_database") == loginDialogName) { InstantSmsServiceSetting.Init(parametersProvider.GetParameterValue("sms_service_address")); } } if (parametersProvider.ContainsParameter("sms_payment_send_enabled_database") && parametersProvider.ContainsParameter("sms_payment_send_service_address")) { if (parametersProvider.GetParameterValue("sms_payment_send_enabled_database") == loginDialogName) { SmsPaymentServiceSetting.Init(parametersProvider.GetParameterValue("sms_payment_send_service_address")); } } DriverApiParametersProvider.InitializeNotifications(parametersProvider, loginDialogName); CreateTempDir(); //Запускаем программу MainWin = new MainWindow(passwordValidator, applicationConfigurator); MainWin.Title += $" (БД: {loginDialogName})"; QSMain.ErrorDlgParrent = MainWin; MainWin.Show(); }
public MysqlChangePasswordModelExtended( IApplicationConfigurator applicationConfigurator, MySqlConnection connection, IMySqlPasswordRepository mySqlPasswordRepository) : base(connection, mySqlPasswordRepository) { this.applicationConfigurator = applicationConfigurator ?? throw new ArgumentNullException(nameof(applicationConfigurator)); }
/// <summary> /// Проверяет, необходима ли смена пароля для текущего пользователя, и, если необходима, открывает диалог смены пароля /// </summary> /// <returns> /// <para><b>True</b> - Если смена пароля не нужна или пароль был успешно изменён</para> /// <b>False</b> - Если смена была затребована смена пароля, но пароль не был изменён /// </returns> /// <exception cref="InvalidOperationException">Если текущий пользователь null</exception> private static bool ChangePassword(IApplicationConfigurator applicationConfigurator) { ResponseType result; int currentUserId; IChangePasswordModel changePasswordModel; using (var uow = UnitOfWorkFactory.CreateWithoutRoot()) { var userRepository = new UserRepository(); var currentUser = userRepository.GetCurrentUser(uow); if (currentUser is null) { throw new InvalidOperationException("CurrentUser is null"); } if (!currentUser.NeedPasswordChange) { return(true); } currentUserId = currentUser.Id; if (!(Connection.ConnectionDB is MySqlConnection mySqlConnection)) { throw new InvalidOperationException($"Текущее подключение не является {nameof(MySqlConnection)}"); } var mySqlPasswordRepository = new MySqlPasswordRepository(); changePasswordModel = new MysqlChangePasswordModelExtended(applicationConfigurator, mySqlConnection, mySqlPasswordRepository); var changePasswordViewModel = new ChangePasswordViewModel( changePasswordModel, passwordValidator, null ); var changePasswordView = new ChangePasswordView(changePasswordViewModel) { Title = "Требуется сменить пароль" }; changePasswordView.ShowAll(); result = (ResponseType)changePasswordView.Run(); changePasswordView.Destroy(); } if (result == ResponseType.Ok && changePasswordModel.PasswordWasChanged) { using (var uow = UnitOfWorkFactory.CreateWithoutRoot()) { var user = uow.GetById <User>(currentUserId); user.NeedPasswordChange = false; uow.Save(user); uow.Commit(); return(true); } } QSSaaS.Session.StopSessionRefresh(); ClearTempDir(); return(false); }
/// <summary> /// Gets the migrator. /// </summary> /// <param name="assembly">The assembly.</param> /// <returns></returns> private static ECM7.Migrator.Migrator GetMigrator(Assembly assembly) { IApplicationConfigurator applicationConfigurator = ServiceLocator.Current.GetInstance <IApplicationConfigurator>(); ECM7.Migrator.Migrator migrator = null; if (applicationConfigurator != null && applicationConfigurator.DatabaseConfiguration != null) { migrator = new ECM7.Migrator.Migrator(MigratorUtility.GetDialect(applicationConfigurator.DatabaseConfiguration.Platform), applicationConfigurator.DatabaseConfiguration.GetConnectionString(), assembly); } return(migrator); }
public ReportDataModel(IApplicationConfigurator applicationConfigurator, PrinterConfigurationDataBase dataBase) { if (applicationConfigurator == null) { throw new ArgumentNullException(nameof(applicationConfigurator)); } if (dataBase == null) { throw new ArgumentNullException(nameof(dataBase)); } ApplicationConfigurator = applicationConfigurator; DataBase = dataBase; }
public void Configure(IApplicationBuilder app, IHostingEnvironment env) { List <IApplicationConfigurator> configurators = new List <IApplicationConfigurator>(); foreach (Type type in AssemblyScanner.GetAllTypesOfInterface <IApplicationConfigurator>()) { IApplicationConfigurator configurator = (IApplicationConfigurator)Activator.CreateInstance(type); configurators.Add(configurator); } foreach (IApplicationConfigurator configurator in configurators.OrderBy(c => c.Order)) { configurator.Configure(app, env, SillycoreAppBuilder.Instance.Configuration, app.ApplicationServices); } }
public void Configure(IApplicationBuilder app, IHostingEnvironment env) { var forwardOptions = new ForwardedHeadersOptions { ForwardedHeaders = ForwardedHeaders.All, RequireHeaderSymmetry = false }; forwardOptions.KnownNetworks.Clear(); forwardOptions.KnownProxies.Clear(); app.UseForwardedHeaders(forwardOptions); List <IApplicationConfigurator> configurators = new List <IApplicationConfigurator>(); foreach (Type type in AssemblyScanner.GetAllTypesOfInterface <IApplicationConfigurator>()) { IApplicationConfigurator configurator = (IApplicationConfigurator)Activator.CreateInstance(type); configurators.Add(configurator); } foreach (IApplicationConfigurator configurator in configurators.OrderBy(c => c.Order)) { configurator.Configure(app, env, SillycoreAppBuilder.Instance.Configuration, app.ApplicationServices); } app.UseMetricsAllMiddleware(); app.UseMvc(r => { if (SillycoreAppBuilder.Instance.DataStore.Get <bool>(Constants.RedirectRootToSwagger)) { r.MapRoute(name: "Default", template: "", defaults: new { controller = "Help", action = "Index" }); } else { r.MapRoute(name: "Default", template: "", defaults: new { controller = "Home", action = "Index" }); } }); }
/// <summary> /// Configures the Apworks framework by using a default identity generator. /// </summary> /// <param name="configurator">The <see cref="IApplicationConfigurator"/> instance to be extended.</param> /// <returns>The <see cref="IIdentityGeneratorConfigurator"/> instance.</returns> public static IIdentityGeneratorConfigurator WithDefaultIdentityGenerator(this IApplicationConfigurator configurator) { return(WithIdentityGenerator <SequentialIdentityGenerator>(configurator)); }
/// <summary> /// Configures the Apworks framework by using the specified identity generator. /// </summary> /// <typeparam name="TIdentityGenerator">The type of the identity generator to be used by the framework.</typeparam> /// <param name="configurator">The <see cref="IApplicationConfigurator"/> instance to be extended.</param> /// <returns>The <see cref="IIdentityGeneratorConfigurator"/> instance.</returns> public static IIdentityGeneratorConfigurator WithIdentityGenerator <TIdentityGenerator>(this IApplicationConfigurator configurator) where TIdentityGenerator : IIdentityGenerator { return(new IdentityGeneratorConfigurator(configurator, typeof(TIdentityGenerator))); }