function getQueryInfo() { $queryInfo = array('tables' => array('thread_history', 'thread', 'page'), 'fields' => '*', 'conds' => array(Threads::articleClause($this->talkpage)), 'options' => array('order by' => 'th_timestamp desc'), 'join_conds' => array('thread' => array('LEFT JOIN', 'thread_id=th_thread'), 'page' => array('LEFT JOIN', 'thread_root=page_id'))); return $queryInfo; }
static function watchedThreadsForUser($user) { $talkPage = new Article($user->getUserPage()->getTalkPage()); $dbr = wfGetDB(DB_SLAVE); $res = $dbr->select(array('thread', 'user_message_state'), '*', array('ums_read_timestamp' => null, 'ums_user' => $user->getId(), 'not (' . Threads::articleClause($talkPage) . ')'), __METHOD__, array(), array('user_message_state' => array('INNER JOIN', 'ums_thread=thread_id'))); return Threads::loadFromResult($res, $dbr); }
function getQueryInfo() { $queryInfo = array('tables' => array('thread'), 'fields' => '*', 'conds' => array(Threads::articleClause($this->article), Threads::topLevelClause(), 'thread_type != ' . $this->mDb->addQuotes(Threads::TYPE_DELETED))); return $queryInfo; }