diff options
author | Mario <mario@mariovavti.com> | 2018-10-13 14:00:12 +0200 |
---|---|---|
committer | Mario <mario@mariovavti.com> | 2018-10-13 14:00:12 +0200 |
commit | e5184458530bb0394e12026c82ee89257115f690 (patch) | |
tree | 9a4ee70d556fa355d527e679469725f9ec0b140d /include | |
parent | 8ce240b95c62f4b702b60977f63b0223a8ec0849 (diff) | |
parent | 6ae9ef571ea02aa5b80c575de70ecec1289c21db (diff) | |
download | volse-hubzilla-e5184458530bb0394e12026c82ee89257115f690.tar.gz volse-hubzilla-e5184458530bb0394e12026c82ee89257115f690.tar.bz2 volse-hubzilla-e5184458530bb0394e12026c82ee89257115f690.zip |
Merge branch 'patch-11' into 'dev'
Add date/time plurals translation in JavaScript
See merge request hubzilla/core!1331
Diffstat (limited to 'include')
-rw-r--r-- | include/js_strings.php | 19 | ||||
-rw-r--r-- | include/language.php | 28 |
2 files changed, 42 insertions, 5 deletions
diff --git a/include/js_strings.php b/include/js_strings.php index d9038e838..5ad7c072a 100644 --- a/include/js_strings.php +++ b/include/js_strings.php @@ -38,6 +38,15 @@ function js_strings() { // using the defaults set below if left untranslated, empty strings if // translated to "NONE" and the corresponding language strings // if translated to anything else + 'minutes' => tt('%d minutes', '%d minutes', '%d'), + 'hours' => tt('about %d hours', 'about %d hours', '%d'), + 'days' => tt('%d days', '%d days', '%d'), + 'months' => tt('%d months', '%d months', '%d'), + 'years' => tt('%d years', '%d years', '%d'), + + // get plural function code + 'plural_func' => tf(), + '$t01' => ((t('timeago.prefixAgo') == 'timeago.prefixAgo') ? '' : ((t('timeago.prefixAgo') == 'NONE') ? '' : t('timeago.prefixAgo'))), '$t02' => ((t('timeago.prefixFromNow') == 'timeago.prefixFromNow') ? '' : ((t('timeago.prefixFromNow') == 'NONE') ? '' : t('timeago.prefixFromNow'))), '$t03' => ((t('timeago.suffixAgo') == 'timeago.suffixAgo') ? 'ago' : ((t('timeago.suffixAgo') == 'NONE') ? '' : t('timeago.suffixAgo'))), @@ -46,15 +55,15 @@ function js_strings() { // translatable main strings for jquery.timeago '$t05' => t('less than a minute'), '$t06' => t('about a minute'), - '$t07' => t('%d minutes'), + '$t07' => ta('%d minutes'), '$t08' => t('about an hour'), - '$t09' => t('about %d hours'), + '$t09' => ta('about %d hours'), '$t10' => t('a day'), - '$t11' => t('%d days'), + '$t11' => ta('%d days'), '$t12' => t('about a month'), - '$t13' => t('%d months'), + '$t13' => ta('%d months'), '$t14' => t('about a year'), - '$t15' => t('%d years'), + '$t15' => ta('%d years'), '$t16' => t(' '), // wordSeparator '$t17' => ((t('timeago.numbers') != 'timeago.numbers') ? t('timeago.numbers') : '[]'), diff --git a/include/language.php b/include/language.php index 69a7e3004..c56d5acda 100644 --- a/include/language.php +++ b/include/language.php @@ -255,6 +255,34 @@ function tt($singular, $plural, $count, $ctx = ''){ } /** + * @brief Return slash separated string of plurals translation forms + * + * @param string $k key in translations array + * @return string + */ +function ta($k){ + + $t = App::$strings[$k]; + if (is_array($t)) + $t = implode("/", $t); + return ($t == "" ? $k : $t); +} + +/** + * @brief Return string_plural_select_xx function code + * + * @return string + */ +function tf() { + + $r = ""; + $lang = str_replace('-', '_', App::$language); + if(function_exists("string_plural_select_".$lang)) + $r = trim(shell_exec("sed -n '5p' view/".$lang."/hstrings.php | grep 'return' | tr -d '$'")); + return ($r != "" ? $r : "return 0;"); +} + +/** * @brief Provide a fallback which will not collide with a function defined in * any language file. * |