Форумы / National / Russian / Зоопарк с окончаниями

Ratibor
#7819 13.02.2009 16:00
# esclkm : Да и поколдуй с текущими окончаниями чтобы были явные примеры работы функции
Плагин поиска уже переделан для примера и залит в транк.
Постараюсь еще что нибудь переделать.

Кстати вот хороший пример как нельзя писать,
смотрите function sed_build_timegap

Особенно строка:
$result = ($gap<2) ? '1 '.$L['Minute'] : $gap.' '.$L['Minutes'];

Как минимум эгоизмом попахивает.

В общем вся функция подлежит переделки.

Вот переделал, посмотрите вроде все правильно:
function sed_build_timegap($t1,$t2)
{
	global $L;

	$gap = $t2 - $t1;

	if($gap<=0 || !$t2 || $gap>94608000)
	{
		$result = '';
	}
	elseif($gap<60)
	{
		$result  = sed_declension($gap,$L['Seconds']);
	}
	elseif($gap<3600)
	{
		$gap = floor($gap/60);
		$result = sed_declension($gap,$L['Minutes']);
	}
	elseif($gap<86400)
	{
		$gap1 = floor($gap/3600);
		$gap2 = floor(($gap-$gap1*3600)/60);
		$result = sed_declension($gap1,$L['Hours']).' ';
		if ($gap2>0)
		{
			$result .= sed_declension($gap2,$L['Minutes']);
		}
	}
	else
	{
		$gap = floor($gap/86400);
		$result = sed_declension($gap,$L['Days']);
	}

	return $result;
}

Остается переписать ланг файлы.
Не задавай глупых вопросов, не услышишь вранья.
Отредактировано: Trustmaster (14.02.2009 17:15, 16 лет назад)