Пример #1
0
 public function setSelection(xPDOQuery $q)
 {
     $q = parent::setSelection($q);
     $q->innerJoin('modUser', 'CreatedBy');
     $q->innerJoin('modUserProfile', 'CreatedByProfile', "CreatedBy.id = CreatedByProfile.internalKey");
     # $q->innerJoin('SocietyTopicAttributes', 'Attributes');
     # $q->innerJoin('SocietyBlogTopic', 'bt', "bt.topicid = {$this->classKey}.id");
     # $q->innerJoin('modResource', 'blog', "blog.id = bt.blogid");
     /*
         Получаем данные диалоговой ветви
     */
     $q->leftJoin('SocietyThread', 'thread', "thread.target_class='modResource' AND thread.target_id={$this->classKey}.id");
     $q->select(array("CreatedBy.username as author", "CreatedByProfile.fullname as author_fullname", "CreatedByProfile.photo as author_avatar", "CreatedBy.username as author_username", "thread.id as thread_id", "thread.positive_votes", "thread.negative_votes", "thread.comments_count"));
     /*
         Проверяем, есть ли голос пользователя здесь
     */
     # $c->leftJoin('SocietyVote', 'vote', "vote.target_class='modResource' AND vote.target_id={$this->classKey}.id AND vote.user_id = ". $this->modx->user->id);
     # $c->select(array(
     #     "vote.id as vote_id",
     #     "vote.vote_direction",
     #     "vote.vote_value",
     # ));
     /*$s = $q->prepare();
       
       $s->execute();
       
       print_r($s->errorInfo());
       
       exit;*/
     return $q;
 }
Пример #2
0
 protected function setSelection(xPDOQuery $c)
 {
     # $c->leftJoin('modResource', 'Parent');
     # $c->leftJoin('modResource', "Currency", "Currency.id = Product.sm_currency");
     $c = parent::setSelection($c);
     $alias = $c->getAlias();
     $c->leftJoin('modUserProfile', "CreatedByProfile", "CreatedByProfile.internalKey = {$alias}.createdby");
     $c->select(array("IF({$alias}.createdon > 0 , from_unixtime({$alias}.createdon, '%Y-%m-%d %H:%i:%s' ), NULL) as createdon_date", "IF({$alias}.publishedon > 0 , from_unixtime({$alias}.publishedon, '%Y-%m-%d %H:%i:%s' ), NULL) as publishedon_date", "CreatedByProfile.fullname as createdby_fullname", 'Parent.pagetitle as parent_title', 'Parent.id as parent_id'));
     if ($this->getProperty('parent')) {
         $c->select(array('Parent.parent as uplevel_id'));
     }
     return $c;
 }