View file core/autoload/Times.class.php

File size: 3.78Kb
<?

class times {

	static	function last($timediff = NULL , $type = null)
	{
$oneMinute=60; 
$oneHour=60*60; 
$hourfield=floor(($timediff)/$oneHour); 
$minutefield=floor(($timediff-$hourfield*$oneHour)/$oneMinute); 
$secondfield=floor(($timediff-$hourfield*$oneHour-$minutefield*$oneMinute)); 

$sHoursLeft=$hourfield; 
$sHoursText = "часов"; 
$nHoursLeftLength = strlen($sHoursLeft); 
$h_1=substr($sHoursLeft,-1,1); 
if (substr($sHoursLeft,-2,1) != 1 && $nHoursLeftLength>1) 
{ 
    if ($h_1== 2 || $h_1== 3 || $h_1== 4) 
    { 
        $sHoursText = "часа"; 
    } 
    elseif ($h_1== 1) 
    { 
        $sHoursText = "час"; 
    } 
} 

if ($nHoursLeftLength==1) 
{ 
    if ($h_1== 2 || $h_1== 3 || $h_1== 4) 
    { 
        $sHoursText = "часа"; 
    } 
    elseif ($h_1== 1) 
    { 
        $sHoursText = "час"; 
    } 

$sMinsLeft =$minutefield; 
$sMinsText = "минут"; 
$nMinsLeftLength = strlen($sMinsLeft); 
$m_1=substr($sMinsLeft,-1,1); 

if ($nMinsLeftLength>1 && substr($sMinsLeft,-2,1) != 1) 
{ 
    if ($m_1== 2 || $m_1== 3 || $m_1== 4) 
    { 
        $sMinsText = "минуты"; 
    } 
    else if ($m_1== 1) 
    { 
        $sMinsText = "минута"; 
    } 
} 

if ($nMinsLeftLength==1) 
{ 
    if ($m_1== 2 || $m_1==3 || $m_1== 4) 
    { 
        $sMinsText = "минуты"; 
    } 
    elseif ($m_1== "1") 
    { 
        $sMinsText = "минута"; 
    } 
} 
	$displaystring="". 
	$sHoursLeft." ". 
	$sHoursText." ". 
	$sMinsLeft." ". 
	$sMinsText." ";
	if ($timediff<0) $displaystring='дата уже наступила'; 
	return $displaystring;
	}
	}
	public static function out($time = NULL , $type = null) {
	//global $user,$system;
	$registry = Registry::getInstance();
	$user = $registry->get('user');
	$system = $registry->get('system');
	
	$timezone = 0;
	if ($system['BrowserTimeZone']) {
		$timezone = $system['BrowserTimeZone'];
		
	}
	if ($user) {
		$timezone = $user['timezone'];
		
	}
	
	if ($time == NULL)$time = time();
	
	//для совместимости с кэшем в некоторых модулях
	if ($type == 1)
	{
		$timep = date('j M Y в H:i', $time);
		$timep = str_replace(
		array('Jan', 'Feb', 'Mar', 'May', 'Apr', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'), 
		array (__('Янв'), __('Фев'), __('Марта'), __('Мая'), __('Апр'), __('Июня'), __('Июля'), __('Авг'), __('Сент'), __('Окт'), __('Ноября'), __('Дек')) , $timep);
		return  $timep;
	}
	
	$time = $time + $timezone * 60 * 60;
	$timep = date('j M  - H:i', $time) ;//$timep = date('j M Y - H:i', $time) ;
	
	$time_p[0] = date('j n ', $time);
	$time_p[1] = date('H:i', $time);
	if ($time_p[0] == date('j n '))
	$timep = date('H:i:s', $time);
	/*
	if ($user)
	{
		if ($time_p[0] == date('j n ', time() + $timezone * 60 * 60))
		$timep = date('H:i:s', $time);
			
		if ($time_p[0] == date('j n ', time()-60*60*(24 - $timezone)))
		$timep= __('Вчера')." ". __('в')." $time_p[1]";
	}
	else
	{
		if ($time_p[0] == date('j n '))
		$timep = date('H:i:s', $time);
		if ($time_p[0] == date('j n ', time() - 60 * 60 * 24))
		$timep = __('Вчера')." ". __('в')." $time_p[1]";
	}*/
	if ($time_p[0] == date('j n ', time() + $timezone * 60 * 60))
	$timep = date('H:i:s', $time);
	if ($time_p[0] == date('j n ', time()-60*60*(24 - $timezone)))
	$timep= __('Вчера')." ". __('в')." $time_p[1]";	

	$timep = str_replace(
		array('Jan', 'Feb', 'Mar', 'May', 'Apr', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'), 
		array (__('Янв'), __('Фев'), __('Марта'), __('Мая'), __('Апр'), __('Июня'), __('Июля'), __('Авг'), __('Сент'), __('Окт'), __('Ноября'), __('Дек')) , $timep);

	return $timep;
	}
}