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; }
/** * @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); }