private function importLanguage(Project $project, $language) { $this->logger->info("Set language to {$language} for {$project->getUnixName()}"); try { $this->language_manager->saveLanguageOption($project, $language); } catch (Mediawiki_UnsupportedLanguageException $e) { $this->logger->warn("Could not set up the language for {$project->getUnixName()} mediawiki, {$language} is not sopported."); } }
private function getLanguageForProject(Project $project) { $used_language = $this->language_manager->getUsedLanguageForProject($project); if ($used_language) { return $used_language; } $languages = $this->language_manager->getAvailableLanguages(); if (count($languages) == 1) { $this->language_manager->saveLanguageOption($project, $languages[0]); return $languages[0]; } return; }
private function setLanguageFromTemplate() { $template_project = ProjectManager::instance()->getProject($this->project->getTemplate()); if (!$template_project) { return; } $this->language_manager->saveLanguageOption($this->project, $this->language_manager->getUsedLanguageForProject($template_project)); }
public function save_language(ServiceMediawiki $service, HTTPRequest $request) { $this->assertUserIsProjectAdmin($service, $request); if ($request->isPost()) { $project = $request->getProject(); $language = $request->get('language'); try { $this->language_manager->saveLanguageOption($project, $language); } catch (Mediawiki_UnsupportedLanguageException $exception) { $GLOBALS['Response']->addFeedback(Feedback::ERROR, $GLOBALS['Language']->getText('plugin_mediawiki', 'unsupported_language', array($exception->getLanguage()))); } } $GLOBALS['Response']->redirect(MEDIAWIKI_BASE_URL . '/forge_admin?' . http_build_query(array('group_id' => $request->get('group_id'), 'pane' => 'language'))); }