示例#1
0
 public function prepareThreadConditions(array $conditions, array &$fetchOptions)
 {
     $result = parent::prepareThreadConditions($conditions, $fetchOptions);
     $sqlConditions = array($result);
     if (!empty($conditions['BRMS_forum_ids'])) {
         $sqlConditions[] = 'thread.node_id IN (' . $this->_getDb()->quote(BRMS_forum_ids) . ')';
     }
     if (!empty($conditions['BRMS_post_date']) && is_array($conditions['BRMS_post_date'])) {
         list($operator, $cutOff) = $conditions['BRMS_post_date'];
         $this->assertValidCutOffOperator($operator);
         $sqlConditions[] = "thread.post_date {$operator} " . $this->_getDb()->quote($cutOff);
     }
     if (!empty($conditions['BRMS_using'])) {
         $sqlConditions[] = "(thread.discussion_type != 'redirect' AND thread.discussion_state != 'deleted' AND thread.discussion_state != 'moderated')";
     }
     if (count($sqlConditions) > 1) {
         return $this->getConditionsForClause($sqlConditions);
     } else {
         return $result;
     }
 }
示例#2
0
文件: Thread.php 项目: Sywooch/forums
 public function prepareThreadConditions(array $conditions, array &$fetchOptions)
 {
     $result = parent::prepareThreadConditions($conditions, $fetchOptions);
     $sqlConditions = array($result);
     $db = $this->_getDb();
     if (!empty($conditions['BRMS_post_date']) && is_array($conditions['BRMS_post_date'])) {
         list($operator, $cutOff) = $conditions['BRMS_post_date'];
         $this->assertValidCutOffOperator($operator);
         $sqlConditions[] = "thread.post_date {$operator} " . $db->quote($cutOff);
     }
     if (!empty($conditions['BRMS_not_node_id'])) {
         if (is_array($conditions['node_id'])) {
             $sqlConditions[] = 'thread.node_id NOT IN (' . $db->quote($conditions['BRMS_not_node_id']) . ')';
         } else {
             $sqlConditions[] = 'thread.node_id <> ' . $db->quote($conditions['BRMS_not_node_id']);
         }
     }
     if (count($sqlConditions) > 1) {
         return $this->getConditionsForClause($sqlConditions);
     } else {
         return $result;
     }
 }