Source for file modifier.reltime.php
Documentation is available at modifier.reltime.php
* smarty_modifier_reltime
global $gBitSystem, $gBitSmarty;
// if this feature is not desired, we simply don't use it.
$gBitSmarty->loadPlugin( "smarty_modifier_$pFallback" );
$pFallback = "smarty_modifier_$pFallback";
return $pFallback( $pTimeStamp );
$delta = $gBitSystem->mServerTimestamp->getUTCTime() - $pTimeStamp;
return tra( "In the future" ). ": ";
return tra( "within the last second" );
} elseif( $delta < $min ) {
return tra( "within the last minute" );
} elseif( $delta < $hour ) {
if( $delta < $min * 2 ) {
return tra( "one minute ago" );
return round( $delta / $min ). " ". tra( "minutes ago" );
} elseif( $delta < $day ) {
if( $delta < $hour * 1.1 ) {
return tra( "one hour ago" );
} elseif( $delta < $day ) {
$delta_hours = floor( ( $delta - ( floor( $delta / $hour ) * $hour ) ) / $min );
if( $pMode == 'short' ) {
return floor( $delta / $hour ). "h {$delta_hours}m ago";
if( floor( $delta / $hour ) > 1 ){
return floor( $delta / $hour ). " hours {$delta_hours} minutes ago";
return floor( $delta / $hour ). " hours {$delta_hours} minute ago";
return floor( $delta / $hour ). " hour {$delta_hours} minutes ago";
return floor( $delta / $hour ). " hour {$delta_hours} minute ago";
return round( $delta / $hour ). " ". tra( "hour(s) ago" );
} elseif( $delta < $week ) {
if( $delta < $day * 2 ) {
return tra( "Yesterday" ). " ". date( $strf, $pTimeStamp );
if( $pMode == 'short' ) {
return date( 'D '. $strf, $pTimeStamp );
return tra( date( 'l', $pTimeStamp ) ). " ". date( $strf, $pTimeStamp );
// anything longer than a week
$gBitSmarty->loadPlugin( "smarty_modifier_$pFallback" );
$pFallback = "smarty_modifier_$pFallback";
return $pFallback( $pTimeStamp );
|