parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

А hash на что?

Luzhnikovskiy 01.02.2003 01:58

0. Считаем, что определена переменные $year и $month - номер года и месяца, за который показываем новости.
Также, предполагается, что дата новости хранится в поле pub_date.
1.
$knownDates[^hash::sql{
   select
      dayofmonth(pub_date) as dm
   from
      news
   where
      month(pub_date) = $month
      and year(pub_date) = $year
}[
   $.distinct(1)
]]
2. Строим календарь:
$monthNews[^date:calendar[rus]($year;$month)]
<table>
^monthNews.menu{
   <tr>
      ^for[i](0;6){
         ^if(def $knownDates.[$monthNews.$i]){
            <a href="./^year.format[%04d]^month.format[%02d]^monthNews.[$i].format[%02d]/">$monthNews.$i</a>
         }{
            $monthNews.$i
         }
      }
   </tr>
}
</table>
Вот, собственно, и все. Один запрос + один метод класса date.
По логике, должно работать. Но, возможно, где-нибудь и опечатался - не проверял. Главное - показать идеологию.