本文整理汇总了PHP中OC_L10N::languageExists方法的典型用法代码示例。如果您正苦于以下问题:PHP OC_L10N::languageExists方法的具体用法?PHP OC_L10N::languageExists怎么用?PHP OC_L10N::languageExists使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类OC_L10N
的用法示例。
在下文中一共展示了OC_L10N::languageExists方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getDisclaimerForm
/**
* Renders the template for the login page
*
* @return TemplateResponse The response for the login template
*/
public function getDisclaimerForm()
{
$container = $this->getContainer();
$session = $container->query('OCP\\IUserSession');
$templateResponse = null;
if (!$session->isLoggedIn()) {
$userLang = $this->l10n->getLanguageCode();
//Fix it: No way of getting rid of this static call. There is no
//class method on OwnCloud that does this
if (!\OC_L10N::languageExists($this->appName, $userLang)) {
//It can be that some language dialects hasn't being translated,
//so, a suitable language will be searched. ie: if 'de_CH' isn't
//available, then 'de_DE' (formal german) will be used. In case
//that 'de_DE' isn't available, then 'de' (informal german will
//be used). If no fallback language is found, then the defined
//default language will be used. In case nothing is found, then
//ownCloud will decide which language to use, which in most
//cases is 'en'.
$langFallbacks = $this->utils->getFallbackLang($userLang);
$defaultLang = $this->config->getDefaultLang();
if ($defaultLang !== $userLang) {
$langFallbacks[] = $defaultLang;
}
foreach ($langFallbacks as $langCode) {
//Fix it: again, no way of getting rid of this static calls;
//the ownCloud library doesn't have any other way
if (\OC_L10N::languageExists($this->appName, $langCode)) {
$userLang = $langCode;
\OC_L10N::forceLanguage($userLang);
break;
}
}
}
$data = ['appName' => $this->appName];
$templateResponse = new TemplateResponse($this->appName, 'login', $data, 'blank');
}
return $templateResponse;
}
示例2: foreach
if (!\OC_L10N::languageExists($appId, $userLang)) {
#It can be that some language dialects hasn't being translated, so, a
#suitable language will be searched. ie: if 'de_CH' isn't available, then
#'de_DE' (formal german) will be used. In case that 'de_DE' isn't available,
#then 'de' (informal german will be used). If no fallback language is found,
#then the defined default language will be used. In case nothing is found,
#then ownCloud will decide which language to use, which in most cases is
#'en'.
$langFallbacks = \OCA\AgreeDisclaimer\Utils::getFallbackLang($userLang);
$defaultLangProp = $appId . 'DefaultLang';
$defLang = \OCA\AgreeDisclaimer\Controller\SettingsController::getSetting($defaultLangProp, 'en');
if ($defLang !== $userLang) {
$langFallbacks[] = $defLang;
}
foreach ($langFallbacks as $langCode) {
if (\OC_L10N::languageExists($appId, $langCode)) {
\OC_L10N::forceLanguage($langCode);
\OCP\Util::writeLog($appId, "The language: {$userLang} hasn't been " . "yet translated, falling back to: {$langCode}", \OCP\Util::WARN);
break;
}
}
}
/**
* Adds the javascript utilities to the login page
*/
script($appId, 'utils');
/**
* Adds the javascript to the login page
*/
script($appId, 'login');
/**