| Новости | FAQ | Авторы | Документация | В действии | Библиотека |
| Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
jahglow 05.04.2014 16:57 / 05.04.2014 17:00
хорошо, простой пример (с использованием pf)@onPopular[aRequest]
$videos[^core.media.videos.aggregate[_fields(vid,plays,date,title,channelName,channelID,isActive,thumbL,duration);
$.asTable(false)
$.orderBy[$.plays[desc]]
$.limit(6)
^if($aRequest.offset){$.offset($aRequest.offset)}{$.offset(0)}
]]
# add vid to hash, post-process plays and date
^videos.foreach[k;v]{^datePlays[$v] $v.vid[$k]}
^assignVar[videos;$videos]
^render[/site/api/api.pt]
@datePlays[h]
$h.plays[$_plays[$h.plays] $_plays ^num_dec[$_plays;просмотр;просмотра;просмотров]]
$h.date[^dtf:format[%d %B %Y;$h.date;$dtf:rr-locale]]
@num_dec[num;nominative;genitive_singular;genitive_plural]
^if($num > 10 && (($num % 100) \ 10) == 1){
$result[$genitive_plural]
}{
^switch($num % 10){
^case(1){$result[$nominative]}
^case(2;3;4){$result[$genitive_singular]}
^case(5;6;7;8;9;0){$result[$genitive_plural]}
}
}и вот этот код выдает мне все вразнобой - тоесть приходят они четко отсортированные по play в убавании, а посл перебора - в разном порядке. как указать последовательность?