예제 #1
0
 public function getTags()
 {
     $c = new Criteria();
     $c->add(QuestionTagPeer::QUESTION_ID, $this->getId());
     $c->addGroupByColumn(QuestionTagPeer::NORMALIZED_TAG);
     $c->setDistinct();
     $c->addAscendingOrderByColumn(QuestionTagPeer::NORMALIZED_TAG);
     $tags = array();
     foreach (QuestionTagPeer::doSelect($c) as $tag) {
         if (sfConfig::get('app_permanent_tag') == $tag) {
             continue;
         }
         $tags[] = $tag->getNormalizedTag();
     }
     return $tags;
 }
예제 #2
0
 public static function retrieveByPK($question_id, $user_id, $normalized_tag, $con = null)
 {
     if ($con === null) {
         $con = Propel::getConnection(self::DATABASE_NAME);
     }
     $criteria = new Criteria();
     $criteria->add(QuestionTagPeer::QUESTION_ID, $question_id);
     $criteria->add(QuestionTagPeer::USER_ID, $user_id);
     $criteria->add(QuestionTagPeer::NORMALIZED_TAG, $normalized_tag);
     $v = QuestionTagPeer::doSelect($criteria, $con);
     return !empty($v) ? $v[0] : null;
 }
예제 #3
0
 public function getQuestionTags($criteria = null, $con = null)
 {
     include_once 'lib/model/om/BaseQuestionTagPeer.php';
     if ($criteria === null) {
         $criteria = new Criteria();
     } elseif ($criteria instanceof Criteria) {
         $criteria = clone $criteria;
     }
     if ($this->collQuestionTags === null) {
         if ($this->isNew()) {
             $this->collQuestionTags = array();
         } else {
             $criteria->add(QuestionTagPeer::USER_ID, $this->getId());
             QuestionTagPeer::addSelectColumns($criteria);
             $this->collQuestionTags = QuestionTagPeer::doSelect($criteria, $con);
         }
     } else {
         if (!$this->isNew()) {
             $criteria->add(QuestionTagPeer::USER_ID, $this->getId());
             QuestionTagPeer::addSelectColumns($criteria);
             if (!isset($this->lastQuestionTagCriteria) || !$this->lastQuestionTagCriteria->equals($criteria)) {
                 $this->collQuestionTags = QuestionTagPeer::doSelect($criteria, $con);
             }
         }
     }
     $this->lastQuestionTagCriteria = $criteria;
     return $this->collQuestionTags;
 }