Новости | FAQ | Авторы | Документация | В действии | Библиотека |
Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
Mizter Egoist 02.04.2015 13:55
@getThreads[params] $result[^table::sql{ SELECT id, sectionID, threadID, parentID, uID, date, mess, closed FROM questions WHERE 1 = 1 ^if(def $params.sectionIDs){AND sectionID IN($params.sectionIDs)} ^if(def $params.threadIDs){AND threadID = '$params.threadIDs'} ^if(def $params.parentIDs){AND parentID IN($params.parentIDs)} ^if(def $params.uIDs){AND uID IN($params.uIDs)} ORDER BY date DESC }[ ^if(def $params.limit){ $.limit(^params.limit.int(0)) } ]]И код получился такой:
$questions[^getThreads[ $.sectionIDs($advices.section.id) $.parentIDs(0) ]] ^if(def $questions){ ^if(def $form:url && $form:url eq $advices.section.section_url && $questions && !def $form:q){ <h2>Действующие</h2> ^questions.menu{ $operator[^getThreads[ $.threadIDs[$questions.threadID] $.uIDs($initialization.auth.uID) $.limit(1) ]] ^operator.menu{ $Q[^getThreads[ $.threadIDs[$operator.threadID] $.parentIDs(0) ]] $U[^getUsers[ $.uIDs($Q.uID) ]] ^U.menu{$U.forename $U.surname} ^Q.menu{<a href="/${form:url}?q=${Q.threadID}">$Q.mess</a><br>} } $operators[^getUsers[ $.gIDs(3) ]] ^operators.menu{ $close[^getThreads[ $.threadIDs[$questions.threadID] $.uIDs($operators.uID) $.limit(1) ]] ^close.menu{ $free[ ^table::sql{ SELECT id, sectionID, threadID, parentID, uID, date, mess, closed FROM questions WHERE sectionID = '$advices.section.id' AND threadID != '$close.threadID' AND parentID = '0' } ] ^free.menu{$free.threadID<br>} } } } } }$close получает threadID в которых уже написал оператор.