Ejemplo n.º 1
0
 private function executeStage($stageName)
 {
     switch ($stageName) {
         case "loginadmin":
             $this->yamlManager->setParameter('upgrading', true);
             return $this->container->get('core_installer.controller.ajaxinstall')->loginAdmin();
         case "upgrademodules":
             $result = $this->upgradeModules();
             if (count($result) === 0) {
                 return true;
             }
             return $result;
         case "installroutes":
             return $this->installRoutesModule();
         case "reloadroutes":
             return $this->container->get('core_installer.controller.ajaxinstall')->reloadRoutes();
         case "regenthemes":
             return $this->regenerateThemes();
         case "from140to141":
             return $this->from140to141();
         case "finalizeparameters":
             return $this->finalizeParameters();
         case "clearcaches":
             return $this->clearCaches();
     }
     \System::setInstalling(false);
     return true;
 }
Ejemplo n.º 2
0
 /**
  * @Route("/ml")
  * @Method("POST")
  *
  * update ML settings
  *
  * @param Request $request
  *
  * @return RedirectResponse
  *
  * @throws AccessDeniedException Thrown if the user doesn't have admin access to the module
  */
 public function updatemultilingualAction(Request $request)
 {
     $this->checkCsrfToken();
     // security check
     if (!SecurityUtil::checkPermission('ZikulaSettingsModule::', '::', ACCESS_ADMIN)) {
         throw new AccessDeniedException();
     }
     $locale = $request->request->get('mlsettings_language_i18n', 'en');
     $settings = array('mlsettings_language_i18n' => 'language_i18n', 'mlsettings_timezone_offset' => 'timezone_offset', 'mlsettings_timezone_server' => 'timezone_server', 'mlsettings_multilingual' => 'multilingual', 'mlsettings_language_detect' => 'language_detect', 'mlsettings_languageurl' => 'languageurl', 'mlsettings_timezone_adjust' => 'tzadjust', 'idnnames' => 'idnnames');
     // we can't detect language if multilingual feature is off so reset this to false
     if ($request->request->get('mlsettings_multilingual', null) == 0) {
         if (System::getVar('language_detect')) {
             System::setVar('language_detect', 0);
             unset($settings['mlsettings_language_detect']);
             $request->getSession()->getFlashBag()->add('status', $this->__('Notice: Language detection is automatically disabled when multi-lingual features are disabled.'));
         }
         $deleteLangUrl = true;
     }
     if (isset($deleteLangUrl)) {
         // reset language settings
         SessionUtil::delVar('language');
     }
     // Write the vars
     foreach ($settings as $formname => $varname) {
         $newvalue = $request->request->get($formname, null);
         $oldvalue = System::getVar($varname);
         if ($newvalue != $oldvalue) {
             System::setVar($varname, $newvalue);
         }
     }
     // update the custom_parameters.yml file
     $yamlManager = new YamlDumper($this->get('kernel')->getRootDir() . '/config');
     $yamlManager->setParameter('locale', $locale);
     // Reload multilingual routing settings.
     ModUtil::apiFunc('ZikulaRoutesModule', 'admin', 'reloadMultilingualRoutingSettings');
     // clear all cache and compile directories
     ModUtil::apiFunc('ZikulaSettingsModule', 'admin', 'clearallcompiledcaches');
     // all done successfully
     $request->getSession()->getFlashBag()->add('status', $this->__('Done! Saved localisation settings.'));
     $url = $this->get('router')->generate('zikulasettingsmodule_admin_multilingual', array(), RouterInterface::ABSOLUTE_URL);
     return new RedirectResponse($url);
 }