openrat-cms

OpenRat Content Management System
git clone http://git.code.weiherhei.de/openrat-cms.git
Log | Files | Refs | README

commit a66fc9ea9059b58451dffdce103123e867f90ea9
parent a721e423ce55ff460060bd99d11e80ac01201252
Author: Jan Dankert <develop@jandankert.de>
Date:   Mon,  9 Nov 2020 22:58:36 +0100

Code-Cleanup

Diffstat:
Mmodules/template_engine/Output.class.php | 2+-
Mmodules/template_engine/components/html/component_date/component-date.php | 84+++++++++++++++++++++++++++++++++++--------------------------------------------
2 files changed, 38 insertions(+), 48 deletions(-)

diff --git a/modules/template_engine/Output.class.php b/modules/template_engine/Output.class.php @@ -30,7 +30,7 @@ class Output /** * Gets a localized message - * @param $key message key + * @param $key string message key * @return string */ public static function lang($key) { diff --git a/modules/template_engine/components/html/component_date/component-date.php b/modules/template_engine/components/html/component_date/component-date.php @@ -1,8 +1,12 @@ -<?php -function component_date( $time ) +<?php + +use language\Messages; +use template_engine\Output; + +function component_date($time ) { if ( $time==0) - echo \cms\base\Language::lang('UNKNOWN'); + echo Output::lang(Messages::UNKNOWN ); else { // Benutzereinstellung 'Zeitzonen-Offset' auswerten. @@ -15,61 +19,48 @@ function component_date( $time ) echo '<span class="or-table-sort-value">'.str_pad($time, 20, "0", STR_PAD_LEFT).'</span>'; // For sorting a table. echo '<time title="'; - $dl = \cms\base\Language::lang('DATE_FORMAT_LONG'); - $dl = str_replace('{weekday}',addcslashes(\cms\base\Language::lang('DATE_WEEKDAY'.strval(date('w',$time))),'A..z'),$dl); - $dl = str_replace('{month}' ,addcslashes(\cms\base\Language::lang('DATE_MONTH' .strval(date('n',$time))),'A..z'),$dl); + $dl = Output::lang(Messages::DATE_FORMAT_LONG); + $dl = str_replace('{weekday}',addcslashes(Output::lang('DATE_WEEKDAY'.strval(date('w',$time))),'A..z'),$dl); + $dl = str_replace('{month}' ,addcslashes(Output::lang('DATE_MONTH' .strval(date('n',$time))),'A..z'),$dl); $dl = date( $dl,$time ); echo $dl; unset($dl); - $sekunden = time()-$time; - $minuten = intval($sekunden/60); - $stunden = intval($minuten /60); - $tage = intval($stunden /24); - $monate = intval($tage /30); - $jahre = intval($monate /12); - + $past = time()-$time; + + $units = [ + [ 60, Messages::SECOND, Messages::SECONDS ], + [ 60, Messages::MINUTE, Messages::MINUTES ], + [ 24, Messages::HOUR , Messages::HOURS ], + [ 30, Messages::DAY , Messages::DAYS ], + [ 12, Messages::MONTH , Messages::MONTHS ], + [ 999, Messages::YEAR , Messages::YEARS ], + ]; + echo ' ('; - - if ( $sekunden == 1 ) - echo $sekunden.' '.\cms\base\Language::lang('SECOND'); - elseif ( $sekunden < 60 ) - echo $sekunden.' '.\cms\base\Language::lang('SECONDS'); - - elseif ( $minuten == 1 ) - echo $minuten.' '.\cms\base\Language::lang('MINUTE'); - elseif ( $minuten < 60 ) - echo $minuten.' '.\cms\base\Language::lang('MINUTES'); - - elseif ( $stunden == 1 ) - echo $stunden.' '.\cms\base\Language::lang('HOUR'); - elseif ( $stunden < 60 ) - echo $stunden.' '.\cms\base\Language::lang('HOURS'); - - elseif ( $tage == 1 ) - echo $tage.' '.\cms\base\Language::lang('DAY'); - elseif ( $tage < 60 ) - echo $tage.' '.\cms\base\Language::lang('DAYS'); - - elseif ( $monate == 1 ) - echo $monate.' '.\cms\base\Language::lang('MONTH'); - elseif ( $monate < 12 ) - echo $monate.' '.\cms\base\Language::lang('MONTHS'); - - elseif ( $jahre == 1 ) - echo $jahre.' '.\cms\base\Language::lang('YEAR'); - else - echo $jahre.' '.\cms\base\Language::lang('YEARS'); - + foreach ( $units as $unit ) { + if ( $past == 1 ) { + echo $past.' '.Output::lang($unit[1] ); + break; + } + elseif ( $past < $unit[0] ) { + echo $past.' '.Output::lang( $unit[2] ); + break; + } + else { + $past = intval( $past / $unit[0] ); + continue; + } + } + echo ')"'; echo ' datetime="'.date('c',$time).'"'; echo '>'; - echo date(\cms\base\Language::lang('DATE_FORMAT'),$time); + echo date( Output::lang(Messages::DATE_FORMAT),$time ); echo '</time>'; } } -?>- \ No newline at end of file