Exemplo n.º 1
0
function link_to_user_relevancy($name, $user, $answer)
{
    use_helper('Javascript');
    if ($user->isAuthenticated()) {
        $has_already_voted = RelevancyPeer::retrieveByPk($answer->getId(), $user->getSubscriberId());
        if ($has_already_voted || $answer->getUserId() == $user->getSubscriberId()) {
            // already interested
            return image_tag('thumb_' . $name . '_voted.gif');
        } else {
            // didn't declare interest yet
            return link_to_remote(image_tag('thumb_' . $name . '.gif'), array('url' => 'user/vote?id=' . $answer->getId() . '&score=' . ($name == 'up' ? 1 : -1), 'update' => array('success' => 'vote_' . $answer->getId()), 'loading' => "Element.show('indicator')", 'complete' => "Element.hide('indicator');" . visual_effect('highlight', 'vote_' . $name . '_' . $answer->getId())));
        }
    } else {
        return link_to_login(image_tag('thumb_' . $name . '.gif'));
    }
}
Exemplo n.º 2
0
 public function getRelevancysJoinAnswer($criteria = null, $con = null)
 {
     include_once 'lib/model/om/BaseRelevancyPeer.php';
     if ($criteria === null) {
         $criteria = new Criteria();
     } elseif ($criteria instanceof Criteria) {
         $criteria = clone $criteria;
     }
     if ($this->collRelevancys === null) {
         if ($this->isNew()) {
             $this->collRelevancys = array();
         } else {
             $criteria->add(RelevancyPeer::USER_ID, $this->getId());
             $this->collRelevancys = RelevancyPeer::doSelectJoinAnswer($criteria, $con);
         }
     } else {
         $criteria->add(RelevancyPeer::USER_ID, $this->getId());
         if (!isset($this->lastRelevancyCriteria) || !$this->lastRelevancyCriteria->equals($criteria)) {
             $this->collRelevancys = RelevancyPeer::doSelectJoinAnswer($criteria, $con);
         }
     }
     $this->lastRelevancyCriteria = $criteria;
     return $this->collRelevancys;
 }
Exemplo n.º 3
0
 public static function retrieveByPK($answer_id, $user_id, $con = null)
 {
     if ($con === null) {
         $con = Propel::getConnection(self::DATABASE_NAME);
     }
     $criteria = new Criteria();
     $criteria->add(RelevancyPeer::ANSWER_ID, $answer_id);
     $criteria->add(RelevancyPeer::USER_ID, $user_id);
     $v = RelevancyPeer::doSelect($criteria, $con);
     return !empty($v) ? $v[0] : null;
 }
Exemplo n.º 4
0
 public function fromArray($arr, $keyType = BasePeer::TYPE_PHPNAME)
 {
     $keys = RelevancyPeer::getFieldNames($keyType);
     if (array_key_exists($keys[0], $arr)) {
         $this->setAnswerId($arr[$keys[0]]);
     }
     if (array_key_exists($keys[1], $arr)) {
         $this->setUserId($arr[$keys[1]]);
     }
     if (array_key_exists($keys[2], $arr)) {
         $this->setScore($arr[$keys[2]]);
     }
     if (array_key_exists($keys[3], $arr)) {
         $this->setCreatedAt($arr[$keys[3]]);
     }
 }