mirror of
https://git.code.sf.net/p/seeddms/code
synced 2025-05-13 05:01:43 +00:00
list of available languages can be set
this will reduce the languages in the language selector and also shorten the time for loading all translations
This commit is contained in:
parent
0c4122b0f6
commit
f0a6265b4a
|
@ -103,6 +103,8 @@ class Settings { /* {{{ */
|
||||||
var $_contentOffsetDir = "1048576";
|
var $_contentOffsetDir = "1048576";
|
||||||
// Maximum number of sub-directories per parent directory
|
// Maximum number of sub-directories per parent directory
|
||||||
var $_maxDirID = 32700;
|
var $_maxDirID = 32700;
|
||||||
|
// default available languages (list of languages shown in language selector)
|
||||||
|
var $_availablelanguages = array();
|
||||||
// default language (name of a subfolder in folder "languages")
|
// default language (name of a subfolder in folder "languages")
|
||||||
var $_language = "en_GB";
|
var $_language = "en_GB";
|
||||||
// users are notified about document-changes that took place within the last $_updateNotifyTime seconds
|
// users are notified about document-changes that took place within the last $_updateNotifyTime seconds
|
||||||
|
@ -376,6 +378,8 @@ class Settings { /* {{{ */
|
||||||
$this->_footNote = strval($tab["footNote"]);
|
$this->_footNote = strval($tab["footNote"]);
|
||||||
$this->_printDisclaimer = Settings::boolVal($tab["printDisclaimer"]);
|
$this->_printDisclaimer = Settings::boolVal($tab["printDisclaimer"]);
|
||||||
$this->_language = strval($tab["language"]);
|
$this->_language = strval($tab["language"]);
|
||||||
|
if(trim(strval($tab["availablelanguages"])))
|
||||||
|
$this->_availablelanguages = explode(',',strval($tab["availablelanguages"]));
|
||||||
$this->_theme = strval($tab["theme"]);
|
$this->_theme = strval($tab["theme"]);
|
||||||
if(isset($tab["previewWidthList"]))
|
if(isset($tab["previewWidthList"]))
|
||||||
$this->_previewWidthList = intval($tab["previewWidthList"]);
|
$this->_previewWidthList = intval($tab["previewWidthList"]);
|
||||||
|
@ -678,6 +682,7 @@ class Settings { /* {{{ */
|
||||||
$this->setXMLAttributValue($node, "footNote", $this->_footNote);
|
$this->setXMLAttributValue($node, "footNote", $this->_footNote);
|
||||||
$this->setXMLAttributValue($node, "printDisclaimer", $this->_printDisclaimer);
|
$this->setXMLAttributValue($node, "printDisclaimer", $this->_printDisclaimer);
|
||||||
$this->setXMLAttributValue($node, "language", $this->_language);
|
$this->setXMLAttributValue($node, "language", $this->_language);
|
||||||
|
$this->setXMLAttributValue($node, "availablelanguages", implode(',', $this->_availablelanguages));
|
||||||
$this->setXMLAttributValue($node, "theme", $this->_theme);
|
$this->setXMLAttributValue($node, "theme", $this->_theme);
|
||||||
$this->setXMLAttributValue($node, "previewWidthList", $this->_previewWidthList);
|
$this->setXMLAttributValue($node, "previewWidthList", $this->_previewWidthList);
|
||||||
$this->setXMLAttributValue($node, "previewWidthDetail", $this->_previewWidthDetail);
|
$this->setXMLAttributValue($node, "previewWidthDetail", $this->_previewWidthDetail);
|
||||||
|
|
|
@ -20,7 +20,10 @@
|
||||||
|
|
||||||
$LANG = array();
|
$LANG = array();
|
||||||
$MISSING_LANG = array();
|
$MISSING_LANG = array();
|
||||||
foreach(getLanguages() as $_lang) {
|
$__languages = getLanguages();
|
||||||
|
if(!in_array($settings->_language, $__languages))
|
||||||
|
$__languages[] = $settings->_language;
|
||||||
|
foreach($__languages as $_lang) {
|
||||||
if(file_exists($settings->_rootDir . "languages/" . $_lang . "/lang.inc")) {
|
if(file_exists($settings->_rootDir . "languages/" . $_lang . "/lang.inc")) {
|
||||||
include $settings->_rootDir . "languages/" . $_lang . "/lang.inc";
|
include $settings->_rootDir . "languages/" . $_lang . "/lang.inc";
|
||||||
$LANG[$_lang] = $text;
|
$LANG[$_lang] = $text;
|
||||||
|
@ -28,9 +31,8 @@ foreach(getLanguages() as $_lang) {
|
||||||
}
|
}
|
||||||
unset($text);
|
unset($text);
|
||||||
|
|
||||||
function getLanguages()
|
function getAvailableLanguages() { /* {{{ */
|
||||||
{
|
global $settings;
|
||||||
GLOBAL $settings;
|
|
||||||
|
|
||||||
$languages = array();
|
$languages = array();
|
||||||
|
|
||||||
|
@ -48,7 +50,17 @@ function getLanguages()
|
||||||
|
|
||||||
asort($languages);
|
asort($languages);
|
||||||
return $languages;
|
return $languages;
|
||||||
}
|
} /* }}} */
|
||||||
|
|
||||||
|
function getLanguages() { /* {{{ */
|
||||||
|
global $settings;
|
||||||
|
|
||||||
|
if($settings->_availablelanguages) {
|
||||||
|
return $settings->_availablelanguages;
|
||||||
|
}
|
||||||
|
|
||||||
|
return getAvailableLanguages();
|
||||||
|
} /* }}} */
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get translation
|
* Get translation
|
||||||
|
|
|
@ -57,6 +57,7 @@ if ($action == "saveSettings")
|
||||||
$settings->_footNote = $_POST["footNote"];
|
$settings->_footNote = $_POST["footNote"];
|
||||||
$settings->_printDisclaimer = getBoolValue("printDisclaimer");
|
$settings->_printDisclaimer = getBoolValue("printDisclaimer");
|
||||||
$settings->_language = $_POST["language"];
|
$settings->_language = $_POST["language"];
|
||||||
|
$settings->_availablelanguages = $_POST["availablelanguages"];
|
||||||
$settings->_theme = $_POST["theme"];
|
$settings->_theme = $_POST["theme"];
|
||||||
$settings->_previewWidthList = $_POST["previewWidthList"];
|
$settings->_previewWidthList = $_POST["previewWidthList"];
|
||||||
$settings->_previewWidthDetail = $_POST["previewWidthDetail"];
|
$settings->_previewWidthDetail = $_POST["previewWidthDetail"];
|
||||||
|
|
|
@ -111,12 +111,29 @@ if(!is_writeable($settings->_configFilePath)) {
|
||||||
<td><?php printMLText("settings_printDisclaimer");?>:</td>
|
<td><?php printMLText("settings_printDisclaimer");?>:</td>
|
||||||
<td><input name="printDisclaimer" type="checkbox" <?php if ($settings->_printDisclaimer) echo "checked" ?> /></td>
|
<td><input name="printDisclaimer" type="checkbox" <?php if ($settings->_printDisclaimer) echo "checked" ?> /></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr title="<?php printMLText("settings_available_languages_desc");?>">
|
||||||
|
<td><?php printMLText("settings_available_languages");?>:</td>
|
||||||
|
<td>
|
||||||
|
<select name="availablelanguages[]" multiple>
|
||||||
|
<?php
|
||||||
|
$languages = getAvailableLanguages();
|
||||||
|
foreach($languages as $language)
|
||||||
|
{
|
||||||
|
echo '<option value="' . $language . '" ';
|
||||||
|
if (in_array($language, $settings->_availablelanguages))
|
||||||
|
echo "selected";
|
||||||
|
echo '>' . getMLText($language) . '</option>';
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
</select>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
<tr title="<?php printMLText("settings_language_desc");?>">
|
<tr title="<?php printMLText("settings_language_desc");?>">
|
||||||
<td><?php printMLText("settings_language");?>:</td>
|
<td><?php printMLText("settings_language");?>:</td>
|
||||||
<td>
|
<td>
|
||||||
<SELECT name="language">
|
<select name="language">
|
||||||
<?php
|
<?php
|
||||||
$languages = getLanguages();
|
$languages = getAvailableLanguages();
|
||||||
foreach($languages as $language)
|
foreach($languages as $language)
|
||||||
{
|
{
|
||||||
echo '<option value="' . $language . '" ';
|
echo '<option value="' . $language . '" ';
|
||||||
|
@ -125,13 +142,13 @@ if(!is_writeable($settings->_configFilePath)) {
|
||||||
echo '>' . getMLText($language) . '</option>';
|
echo '>' . getMLText($language) . '</option>';
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
</SELECT>
|
</select>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr title="<?php printMLText("settings_theme_desc");?>">
|
<tr title="<?php printMLText("settings_theme_desc");?>">
|
||||||
<td><?php printMLText("settings_theme");?>:</td>
|
<td><?php printMLText("settings_theme");?>:</td>
|
||||||
<td>
|
<td>
|
||||||
<SELECT name="theme">
|
<select name="theme">
|
||||||
<?php
|
<?php
|
||||||
$themes = UI::getStyles();
|
$themes = UI::getStyles();
|
||||||
foreach($themes as $theme)
|
foreach($themes as $theme)
|
||||||
|
@ -142,7 +159,7 @@ if(!is_writeable($settings->_configFilePath)) {
|
||||||
echo '>' . $theme . '</option>';
|
echo '>' . $theme . '</option>';
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
</SELECT>
|
</select>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr title="<?php printMLText("settings_previewWidthList_desc");?>">
|
<tr title="<?php printMLText("settings_previewWidthList_desc");?>">
|
||||||
|
|
Loading…
Reference in New Issue
Block a user