Example #1
0
function link_to_report_question($question, $user)
{
    use_helper('Javascript');
    $text = '[' . __('report to moderator') . ']';
    if ($user->isAuthenticated()) {
        $has_already_reported_question = ReportQuestionPeer::retrieveByPk($question->getId(), $user->getSubscriberId());
        if ($has_already_reported_question) {
            // already spam for this user
            return '[' . __('reported as spam') . ']';
        } else {
            return link_to_remote($text, array('url' => '@user_report_question?id=' . $question->getId(), 'update' => array('success' => 'report_question_' . $question->getId()), 'loading' => "Element.show('indicator')", 'complete' => "Element.hide('indicator');" . visual_effect('highlight', 'report_question_' . $question->getId())));
        }
    } else {
        return link_to_login($text);
    }
}
 public function fromArray($arr, $keyType = BasePeer::TYPE_PHPNAME)
 {
     $keys = ReportQuestionPeer::getFieldNames($keyType);
     if (array_key_exists($keys[0], $arr)) {
         $this->setQuestionId($arr[$keys[0]]);
     }
     if (array_key_exists($keys[1], $arr)) {
         $this->setUserId($arr[$keys[1]]);
     }
     if (array_key_exists($keys[2], $arr)) {
         $this->setCreatedAt($arr[$keys[2]]);
     }
 }
Example #3
0
 public function getReportQuestionsJoinQuestion($criteria = null, $con = null)
 {
     include_once 'lib/model/om/BaseReportQuestionPeer.php';
     if ($criteria === null) {
         $criteria = new Criteria();
     } elseif ($criteria instanceof Criteria) {
         $criteria = clone $criteria;
     }
     if ($this->collReportQuestions === null) {
         if ($this->isNew()) {
             $this->collReportQuestions = array();
         } else {
             $criteria->add(ReportQuestionPeer::USER_ID, $this->getId());
             $this->collReportQuestions = ReportQuestionPeer::doSelectJoinQuestion($criteria, $con);
         }
     } else {
         $criteria->add(ReportQuestionPeer::USER_ID, $this->getId());
         if (!isset($this->lastReportQuestionCriteria) || !$this->lastReportQuestionCriteria->equals($criteria)) {
             $this->collReportQuestions = ReportQuestionPeer::doSelectJoinQuestion($criteria, $con);
         }
     }
     $this->lastReportQuestionCriteria = $criteria;
     return $this->collReportQuestions;
 }
 public static function retrieveByPK($question_id, $user_id, $con = null)
 {
     if ($con === null) {
         $con = Propel::getConnection(self::DATABASE_NAME);
     }
     $criteria = new Criteria();
     $criteria->add(ReportQuestionPeer::QUESTION_ID, $question_id);
     $criteria->add(ReportQuestionPeer::USER_ID, $user_id);
     $v = ReportQuestionPeer::doSelect($criteria, $con);
     return !empty($v) ? $v[0] : null;
 }