private function regenerate_htaccess_file()
 {
     $apc_enabled = DataStoreFactory::is_apc_enabled();
     if ($apc_enabled) {
         DataStoreFactory::set_apc_enabled(false);
         HtaccessFileCache::regenerate();
         AppContext::get_cache_service()->clear_cache();
         DataStoreFactory::set_apc_enabled(true);
     } else {
         AppContext::get_cache_service()->clear_cache();
         HtaccessFileCache::regenerate();
     }
 }
 public function save_server_environnement_config()
 {
     $server_configuration = new ServerConfiguration();
     $server_environment_config = ServerEnvironmentConfig::load();
     try {
         if ($server_configuration->has_url_rewriting()) {
             $server_environment_config->set_url_rewriting_enabled(true);
         }
     } catch (UnsupportedOperationException $ex) {
         $server_environment_config->set_url_rewriting_enabled(false);
     }
     if (function_exists('ob_gzhandler') && @extension_loaded('zlib')) {
         $server_environment_config->set_output_gziping_enabled(true);
     }
     if (DataStoreFactory::is_apc_available()) {
         DataStoreFactory::set_apc_enabled(true);
     }
     ServerEnvironmentConfig::save();
 }
 protected function save()
 {
     if ($this->is_apc_available()) {
         if ($this->form->get_value('enable_apc')) {
             DataStoreFactory::set_apc_enabled(true);
         } else {
             DataStoreFactory::set_apc_enabled(false);
         }
     }
     if ($this->form->get_value('enable_css_cache')) {
         $this->css_cache_config->enable();
     } else {
         $this->css_cache_config->disable();
     }
     if (!$this->form->field_is_disabled('level_css_cache')) {
         $this->css_cache_config->set_optimization_level($this->form->get_value('level_css_cache')->get_raw_value());
     }
     CSSCacheConfig::save();
     AppContext::get_cache_service()->clear_css_cache();
 }