private function configure_accounts_policy()
 {
     $user_account_config = UserAccountsConfig::load();
     $user_account_config->set_registration_enabled($this->distribution_config['allow_members_registration']);
     UserAccountsConfig::save();
 }
 public function update_langs()
 {
     $active_langs_number = 0;
     foreach (LangsManager::get_installed_langs_map() as $id => $lang) {
         if ($lang->get_configuration()->get_compatibility() == self::NEW_KERNEL_VERSION) {
             $active_langs_number++;
         } else {
             LangsManager::uninstall($id);
             $this->add_information_to_file('lang ' . $id, 'has been uninstalled because : incompatible with new version');
         }
     }
     if (empty($active_langs_number)) {
         LangsManager::install('french');
         $user_accounts_config = UserAccountsConfig::load();
         $user_accounts_config->set_default_lang('french');
         UserAccountsConfig::save();
     }
 }
 private function save()
 {
     $this->general_config->set_site_name($this->form->get_value('site_name'));
     $this->general_config->set_site_slogan($this->form->get_value('site_slogan'));
     $this->general_config->set_site_description($this->form->get_value('site_description'));
     $module_home_page = $this->form->get_value('start_page')->get_raw_value();
     $this->general_config->set_module_home_page($module_home_page);
     if ($module_home_page == 'other') {
         $this->general_config->set_other_home_page($this->form->get_value('other_start_page'));
     } else {
         $this->general_config->set_other_home_page('');
     }
     GeneralConfig::save();
     $this->graphical_environment_config->set_visit_counter_enabled($this->form->get_value('visit_counter'));
     $this->graphical_environment_config->set_page_bench_enabled($this->form->get_value('page_bench'));
     $this->graphical_environment_config->set_display_theme_author($this->form->get_value('display_theme_author'));
     GraphicalEnvironmentConfig::save();
     $this->user_accounts_config->set_default_lang($this->form->get_value('default_language')->get_raw_value());
     $this->user_accounts_config->set_default_theme($this->form->get_value('default_theme')->get_raw_value());
     UserAccountsConfig::save();
 }
 private function save()
 {
     $this->content_formatting_config->set_default_editor($this->form->get_value('formatting_language')->get_raw_value());
     $this->content_formatting_config->set_html_tag_auth($this->form->get_value('authorizations')->build_auth_array());
     $forbidden_tags = array();
     foreach ($this->form->get_value('forbidden_tags') as $field => $option) {
         $forbidden_tags[] = $option->get_raw_value();
     }
     $this->content_formatting_config->set_forbidden_tags($forbidden_tags);
     ContentFormattingConfig::save();
     if ($this->form->get_value('anti_flood_enabled')) {
         $this->content_management_config->set_anti_flood_enabled(true);
     } else {
         $this->content_management_config->set_anti_flood_enabled(false);
     }
     $this->content_management_config->set_anti_flood_duration($this->form->get_value('delay_flood'));
     $this->content_management_config->set_used_captcha_module($this->form->get_value('captcha_used')->get_raw_value());
     ContentManagementConfig::save();
     $this->user_accounts_config->set_max_private_messages_number($this->form->get_value('max_pm_number'));
     UserAccountsConfig::save();
 }
 private function save()
 {
     $this->user_account_config->set_registration_enabled($this->form->get_value('members_activation'));
     if (!$this->form->field_is_disabled('type_activation_members')) {
         $this->user_account_config->set_member_accounts_validation_method($this->form->get_value('type_activation_members')->get_raw_value());
     }
     if (!$this->form->field_is_disabled('unactivated_accounts_timeout')) {
         $this->user_account_config->set_unactivated_accounts_timeout($this->form->get_value('unactivated_accounts_timeout'));
     }
     $this->security_config->set_internal_password_min_length($this->form->get_value('internal_password_min_length'));
     $this->security_config->set_internal_password_strength($this->form->get_value('internal_password_strength')->get_raw_value());
     if ($this->form->get_value('login_and_email_forbidden_in_password')) {
         $this->security_config->forbid_login_and_email_in_password();
     } else {
         $this->security_config->allow_login_and_email_in_password();
     }
     SecurityConfig::save();
     if ($this->server_configuration->has_curl_library()) {
         if ($this->form->get_value('fb_auth_enabled')) {
             $this->authentication_config->enable_fb_auth();
             $this->authentication_config->set_fb_app_id($this->form->get_value('fb_app_id'));
             $this->authentication_config->set_fb_app_key($this->form->get_value('fb_app_key'));
         } else {
             $this->authentication_config->disable_fb_auth();
         }
         if ($this->form->get_value('google_auth_enabled')) {
             $this->authentication_config->enable_google_auth();
             $this->authentication_config->set_google_client_id($this->form->get_value('google_client_id'));
             $this->authentication_config->set_google_client_secret($this->form->get_value('google_client_secret'));
         } else {
             $this->authentication_config->disable_google_auth();
         }
         AuthenticationConfig::save();
     }
     $this->user_account_config->set_avatar_upload_enabled($this->form->get_value('upload_avatar_server'));
     $this->user_account_config->set_default_avatar_name_enabled($this->form->get_value('default_avatar_activation'));
     $this->user_account_config->set_avatar_auto_resizing_enabled($this->form->get_value('activation_resize_avatar'));
     $this->user_account_config->set_default_avatar_name($this->form->get_value('default_avatar_link'));
     $this->user_account_config->set_max_avatar_width($this->form->get_value('maximal_width_avatar'));
     $this->user_account_config->set_max_avatar_height($this->form->get_value('maximal_height_avatar'));
     $this->user_account_config->set_max_avatar_weight($this->form->get_value('maximal_weight_avatar'));
     $this->user_account_config->set_auth_read_members($this->form->get_value('authorizations')->build_auth_array());
     $this->user_account_config->set_welcome_message($this->form->get_value('welcome_message_contents'));
     $this->user_account_config->set_registration_agreement($this->form->get_value('registration_agreement'));
     UserAccountsConfig::save();
 }