.
*/
function LanguageMenu($p_languageMetadata, $p_selectedValue)
{
$options = '';
foreach($p_languageMetadata as $language) {
if ($p_selectedValue == $language->getLanguageId()) {
$selectedString = 'selected';
}
else {
$selectedString = '';
}
$options .= '';
}
return $options;
} // fn LanguageMenu
/**
* Creates a form for translation.
* @param array $p_request
*/
function translationForm($p_request)
{
global $g_localizerConfig;
$localizerTargetLanguage = Input::Get('localizer_target_language', 'string',
'', true);
$localizerSourceLanguage = Input::Get('localizer_source_language', 'string',
$g_localizerConfig['DEFAULT_LANGUAGE'], true);
if (empty($localizerSourceLanguage)) {
$tmpLanguage = new LocalizerLanguage(null, $p_request['TOL_Language']);
$localizerSourceLanguage = $tmpLanguage->getLanguageId();
}
$prefix = Input::Get('prefix', 'string', '', true);
$screenDropDownSelection = $prefix;
// Load the language files.
//echo "Prefix: $prefix
";
$sourceLang = new LocalizerLanguage($prefix, $localizerSourceLanguage);
$targetLang = new LocalizerLanguage($prefix, $localizerTargetLanguage);
$defaultLang = new LocalizerLanguage($prefix, $g_localizerConfig['DEFAULT_LANGUAGE']);
$mode = Localizer::GetMode();
if (!empty($prefix)) {
// If the language files do not exist, create them.
if (!$defaultLang->loadFile($mode)) {
$defaultLang->saveFile($mode);
}
if (!$sourceLang->loadFile($mode)) {
$sourceLang->saveFile($mode);
}
if (!$targetLang->loadFile($mode)) {
$targetLang->saveFile($mode);
}
// Make sure that the languages have the same strings and are in the same
// order as the default language file.
$modified = $sourceLang->syncToDefault();
if ($modified) {
$sourceLang->saveFile($mode);
}
$modified = $targetLang->syncToDefault();
if ($modified) {
$targetLang->saveFile($mode);
}
}
$defaultStrings = $defaultLang->getTranslationTable();
$searchString = Input::Get('search_string', 'string', '', true);
if (!empty($searchString)) {
$sourceStrings = $sourceLang->search($searchString);
}
else {
$sourceStrings = $sourceLang->getTranslationTable();
}
$targetStrings = $targetLang->getTranslationTable();
if ($g_localizerConfig['MAINTENANCE'] && $localizerTargetLanguage === $g_localizerConfig['DEFAULT_LANGUAGE']) {
$missingStrings = Localizer::FindMissingStrings($prefix);
$unusedStrings = Localizer::FindUnusedStrings($prefix);
}
// Mapping of language prefixes to human-readable strings.
$mapPrefixToDisplay[] = '';
foreach ($g_localizerConfig['mapPrefixToDir'] as $k => $v) {
$mapPrefixToDisplay[$k] = $v['display'];
}
// Whether to show translated strings or not.
$hideTranslated = '';
if (isset($p_request['hide_translated'])) {
$hideTranslated = "CHECKED";
}
?>
|
|
|
|
0) && ($screenDropDownSelection != 'globals')) {
?>
|