From 39efc6af370301529d830f39a6443423946043bf Mon Sep 17 00:00:00 2001 From: thomasb Date: Thu, 10 Apr 2008 09:40:04 +0000 Subject: Putting translator under version control git-svn-id: https://svn.roundcube.net/trunk@1276 208e9e7b-5314-0410-a742-e7e81cd9613c --- translator/button.gif | Bin 0 -> 211 bytes translator/favicon.ico | Bin 0 -> 1406 bytes translator/func.php | 106 ++++++++++++++++++++++++++++++ translator/index.php | 134 ++++++++++++++++++++++++++++++++++++++ translator/labels.inc | 17 +++++ translator/localization/index.inc | 101 ++++++++++++++++++++++++++++ translator/messages.inc | 17 +++++ translator/robots.txt | 2 + translator/styles.css | 85 ++++++++++++++++++++++++ 9 files changed, 462 insertions(+) create mode 100644 translator/button.gif create mode 100644 translator/favicon.ico create mode 100644 translator/func.php create mode 100644 translator/index.php create mode 100644 translator/labels.inc create mode 100644 translator/localization/index.inc create mode 100644 translator/messages.inc create mode 100644 translator/robots.txt create mode 100644 translator/styles.css (limited to 'translator') diff --git a/translator/button.gif b/translator/button.gif new file mode 100644 index 000000000..e2191c910 Binary files /dev/null and b/translator/button.gif differ diff --git a/translator/favicon.ico b/translator/favicon.ico new file mode 100644 index 000000000..5a011f29e Binary files /dev/null and b/translator/favicon.ico differ diff --git a/translator/func.php b/translator/func.php new file mode 100644 index 000000000..ca37e8195 --- /dev/null +++ b/translator/func.php @@ -0,0 +1,106 @@ +Update from SVN: '.$lang_dir.$file.''; + while (!feof($fp)) + { + $line = fgets($fp, 4096); + if (trim($line) == "") + $headers = false; + if (!$headers) + fwrite($fl, $line); + } + + fclose($fp); + fclose($fl); + } + } + + if (is_file(LANGDIR."$lang_prefix$file")) + return LANGDIR."$lang_prefix$file"; + else + return false; +} + + +function lang_selection($lang) +{ + include(LANGDIR."index.inc"); + + $out = ""; + + return $out; +} + + +// -------- EOF func --------// + +$header = array(); +$orig_values = array(); +$labels = $messages = null; + +$file = get_input_value('file'); +$lang = get_input_value('lang'); +$translated = !empty($_REQUEST['trans']); + +if ($file && $lang) + include(update_from_svn(ORIGINAL, $file)); + +if ($file == 'labels.inc' && $labels) + $orig_values = $labels; +else if ($file == 'messages.inc' && $messages) + $orig_values = $messages; + +unset($labels, $messages); + +?> \ No newline at end of file diff --git a/translator/index.php b/translator/index.php new file mode 100644 index 000000000..1f09734fb --- /dev/null +++ b/translator/index.php @@ -0,0 +1,134 @@ + + + + +RoundCube Translator + + + + + + + + + +
+
+What to translate + + + + + +
+ /> + +
+ +

+
+
+ +
+
+ +'; + echo ''; + echo ''; + echo ''; + + if ($lang != "_NEW_") + @include(update_from_svn($lang, $file)); + + if (!empty($labels)) + $edit_values = $labels; + else if (!empty($messages)) + $edit_values = $messages; + else + $edit_values = array(); + + $count = 0; + foreach($orig_values as $t_key => $t_value) + { + // skip translated lines + if(!$translated && !empty($edit_values[$t_key])) + continue; + + if ($post_value = get_input_value('t_'.$t_key)) + $edit_values[$t_key] = $post_value; + + echo '\n"; + echo ''; + echo ''; + echo '\n\n"; + + $count++; + } + + if (!$count) + echo ''; + + echo "
LabelOriginalTranslation
'.htmlspecialchars($t_key).''.htmlspecialchars($t_value).''; + echo "
No new texts to translate
\n"; + echo '

'; + +} + +?> +
+
+ +'."

Localization file

\n"; + echo '
+ \n"; + echo '

'; + echo "\n
"; +} + +?> + + diff --git a/translator/labels.inc b/translator/labels.inc new file mode 100644 index 000000000..b4b76e91f --- /dev/null +++ b/translator/labels.inc @@ -0,0 +1,17 @@ + | + +-----------------------------------------------------------------------+ + + $Id: index.inc 1247 2008-04-04 10:30:05Z thomasb $ + +*/ + + $rcube_languages = array( + 'sq_AL' => 'Albanian', + 'ar' => 'Arabic', + 'am' => 'Armenian', + 'bs_BA' => 'Bosnian (Bosanski)', + 'bg' => 'Bulgarian', + 'ca' => 'Català', + 'zh_CN' => 'Chinese (Simplified)', + 'zh_TW' => 'Chinese (Traditional)', + 'hr' => 'Croatian (Hrvatski)', + 'cz' => 'Czech', + 'da' => 'Dansk', + 'de_DE' => 'Deutsch (Deutsch)', + 'de_CH' => 'Deutsch (Schweiz)', + 'en_GB' => 'English (GB)', + 'en_US' => 'English (US)', + 'es' => 'Español', + 'eo' => 'Esperanto', + 'et_EE' => 'Estonian', + 'eu' => 'Euskara', + 'nl_BE' => 'Flemish', + 'fr' => 'Français', + 'gl' => 'Galego', + 'ge' => 'Georgian', + 'el' => 'Greek', + 'he' => 'Hebrew', + 'hi' => 'Hindi', + 'hu' => 'Hungarian', + 'is' => 'Icelandic', + 'id_ID' => 'Indonesian', + 'ga_IE' => 'Irish', + 'it' => 'Italiano', + 'ja' => 'Japanese (日本語)', + 'kr' => 'Korean', + 'ku' => 'Kurdish (Kurmancî)', + 'lv' => 'Latvian', + 'lt' => 'Lithuanian', + 'mk' => 'Macedonian', + 'ms_MY' => 'Malay', + 'nl_NL' => 'Nederlands', + 'ne' => 'Nepali', + 'nb_NO' => 'Norsk (bokmål)', + 'nn_NO' => 'Norsk (nynorsk)', + 'fa' => 'Persian', + 'pl' => 'Polski', + 'pt_BR' => 'Portuguese (Brazilian)', + 'pt_PT' => 'Portuguese (Standard)', + 'ro' => 'Romanian', + 'ru' => 'Russian', + 'sr_cyrillic' => 'Serbian Cyrillic', + 'sr_latin' => 'Serbian Latin', + 'si' => 'Sinhala', + 'sk' => 'Slovak', + 'sl' => 'Slovenian', + 'fi' => 'Suomi', + 'se' => 'Svenska', + 'th_TH' => 'Thai', + 'tr' => 'Turkish', + 'uk' => 'Ukrainian', + 'vn' => 'Vietnamese' +); + +$rcube_language_aliases = array( + 'ee' => 'et_EE', + 'bs' => 'bs_BA', + 'cn' => 'zh_CN', + 'de' => 'de_DE', + 'en' => 'en_US', + 'ga' => 'ga_IE', + 'nl' => 'nl_NL', + 'no' => 'nn_NO', + 'pt' => 'pt_PT', + 'th' => 'th_TH', + 'tw' => 'zh_TW' +); + +$rcube_charsets = array(); + +?> diff --git a/translator/messages.inc b/translator/messages.inc new file mode 100644 index 000000000..2745e860a --- /dev/null +++ b/translator/messages.inc @@ -0,0 +1,17 @@ +