Add automatic translation of month names for main time names in splitter
This commit is contained in:
parent
130140e910
commit
4aa2a5df2f
|
@ -12,6 +12,9 @@ require_once __DIR__ . '/inc/datesByCountry.php';
|
|||
*/
|
||||
class NodaTimeAutotranslater {
|
||||
|
||||
const USECASE_MONTH = 1;
|
||||
const USECASE_DAY = 2;
|
||||
|
||||
const LANGS_TO_LOCALES = [
|
||||
'ar' => 'ar_SY.utf8',
|
||||
'de' => 'de_DE.utf8',
|
||||
|
@ -77,11 +80,11 @@ class NodaTimeAutotranslater {
|
|||
|
||||
if (trim($timeInfo['zeit_zaehlzeit_tag'], ", .0") === "") {
|
||||
$dateStr = "{$timeInfo['zeit_zaehlzeit_jahr']}-{$timeInfo['zeit_zaehlzeit_monat']}-05 00:00:01";
|
||||
$usecase = "month";
|
||||
$usecase = self::USECASE_MONTH;
|
||||
}
|
||||
else {
|
||||
$dateStr = "{$timeInfo['zeit_zaehlzeit_jahr']}-{$timeInfo['zeit_zaehlzeit_monat']}-{$timeInfo['zeit_zaehlzeit_tag']} 00:00:01";
|
||||
$usecase = "day";
|
||||
$usecase = self::USECASE_DAY;
|
||||
}
|
||||
|
||||
$dateGeneral = strtotime($dateStr);
|
||||
|
@ -90,8 +93,8 @@ class NodaTimeAutotranslater {
|
|||
|
||||
setlocale(LC_TIME, $locale);
|
||||
if ($locale !== setlocale(LC_TIME, "0")) continue;
|
||||
if ($usecase === "month") $tLangValue = strftime(getMonthFormatByLang($tLang), $dateGeneral ?: 0);
|
||||
else if ($usecase === "day") $tLangValue = strftime(getDateFormatByLang($tLang), $dateGeneral ?: 0);
|
||||
if ($usecase === self::USECASE_MONTH) $tLangValue = strftime(getMonthFormatByLang($tLang), $dateGeneral ?: 0);
|
||||
else if ($usecase === self::USECASE_DAY) $tLangValue = strftime(getDateFormatByLang($tLang), $dateGeneral ?: 0);
|
||||
$this->_insertStmt->bind_param("iss", $this->_znum, $tLang, $tLangValue);
|
||||
$this->_insertStmt->execute();
|
||||
|
||||
|
|
|
@ -171,6 +171,10 @@ final class NodaTimeSplitter {
|
|||
else if ($moda[0] === $moda[1] && trim($moda[2], " 0") === "" && trim($moda[3], " 0") === "") {
|
||||
return "{$moda[0]}";
|
||||
}
|
||||
else if ($moda[0] === $moda[1] && trim($moda[2], " 0") !== "" && trim($moda[3], " 0") === "") {
|
||||
setlocale(LC_TIME, NodaTimeAutotranslater::LANGS_TO_LOCALES['de']);
|
||||
return strftime(getMonthFormatByLang("de"), strtotime("{$moda[0]}-{$moda[2]}-01 01:01:01"));
|
||||
}
|
||||
|
||||
return "";
|
||||
|
||||
|
@ -211,10 +215,16 @@ final class NodaTimeSplitter {
|
|||
$output .= "&zeit_name_neu={$newTimeName}";
|
||||
}
|
||||
$output .= '&zeit_beginn_neu=' . $moda[0] . '&zeit_ende_neu=' . $moda[1] . '&zeit_zaehlzeit_vorzeichen_neu=%2B&zeit_zaehlzeit_jahr_neu=' . $zaehlzeit_jahr . '&zeit_zaehlzeit_monat_neu=' . $moda[2] . '&zeit_zaehlzeit_tag_neu=' . $moda[3] . '&zeit_status_neu=%2B" class="icons iconsBell buttonLike" id="splitTimeLink">+';
|
||||
if (!empty(trim($moda[3], " 0")) and !empty(trim($moda[2], " 0"))) $output .= $moda[3] . '.' . $moda[2] . '.' . $moda[0];
|
||||
else if ($moda[0] !== $moda[1]) $output .= $moda[0] . "-" . $moda[1];
|
||||
else if (!empty(trim($moda[2], " 0"))) $output .= "{$moda[2]}.{$moda[0]}";
|
||||
else $output .= $moda[0];
|
||||
|
||||
if (!empty($newTimeName)) {
|
||||
$output .= $newTimeName;
|
||||
}
|
||||
else {
|
||||
if (!empty(trim($moda[3], " 0")) and !empty(trim($moda[2], " 0"))) $output .= $moda[3] . '.' . $moda[2] . '.' . $moda[0];
|
||||
else if ($moda[0] !== $moda[1]) $output .= $moda[0] . "-" . $moda[1];
|
||||
else if (!empty(trim($moda[2], " 0"))) $output .= "{$moda[2]}.{$moda[0]}";
|
||||
else $output .= $moda[0];
|
||||
}
|
||||
$output .= ' - ' . $tlLoader->tl("tempi", "tempi", "time_disassemble") . '</a></td>';
|
||||
$output .= '</tr>';
|
||||
$output .= '</table>';
|
||||
|
|
Loading…
Reference in New Issue
Block a user