Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Помогите решить корректное отображение календаря


Автор: degavyman 5.2.2010, 12:59
Суть проблемы в том что календарь отображает православные праздники с запозданием на один день. Народ, подскажите пожалуйста как можно подкорректировать код.
Код

$now_time = time() + $mosConfig_offset * 60 * 60;
$serverpath=$mosConfig_absolute_path."/holidays/";
$webpath="/holidays/";

$query="SELECT a.*, c.catid AS catid FROM #__holidays AS a LEFT JOIN #__content AS c ON a.content_id=c.id ORDER BY date";
$database->setQuery($query);
$holidays=$database->loadobjectlist();

$last_holiday=$holidays[0];

foreach ($holidays as $holiday)
{
    $start_time=strtotime(date("Y")."-".$holiday->date)-8*3600; // Отступ на 4 часа накануне;
    $end_time=$start_time+24*3600*$holiday->duration+8*3600;


    $last_start_time=strtotime(date("Y")."-".$last_holiday->date)-8*3600; // Отступ на 4 часа накануне;
    $last_end_time=$last_start_time+24*3600*$holiday->duration+8*3600;


    if (($last_end_time < $end_time) && ($end_time < $now_time))
    {
        $last_holiday=$holiday;
    }

    if (($last_end_time == $end_time) && ($last_holiday->rank < $holiday->rank))
    {
        $last_holiday=$holiday;
    }

    if (($start_time < $now_time) && ($now_time < $end_time))
    {
        $holidays_out[]=$holiday;
    }
}

if (count($holidays_out)==0)
{
        $holidays_out[]=$last_holiday;
}

if (count($holidays_out)>=2)
{
    do 
    {
        $k=1;
        for ($i=0; $i < count($holidays_out)-1; $i++)
        {
            if ($holidays_out[$i]->rank < $holidays_out[$i+1]->rank)
            {
                $temp_var=$holidays_out[$i];
                $holidays_out[$i]=$holidays_out[$i+1];
                $holidays_out[$i+1]=$temp_var;
                $k=0;
            }
        }
    }
    while ($k=0);    
}


Автор: bars80080 5.2.2010, 14:05
тебе не кажется, что ты малёк ошибся с разделом?

может, следовало в раздел по пхп заглянуть?

Автор: degavyman 5.2.2010, 14:19
Цитата(bars80080 @ 5.2.2010,  14:05)
тебе не кажется, что ты малёк ошибся с разделом?

может, следовало в раздел по пхп заглянуть?

Ну прости что я малек ошибся. Я тебя не шибко потревожил? Может сделаешь исключение новичку, подскажешь?Ты наверняка очень умный и сможешь мне помочь...)))

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)