Ejemplo n.º 1
0
 public function actionList($type = 'all', $stype = null, $sword = null)
 {
     $query = SiteCategory::find()->where(['site_id' => $this->module->siteId])->orderby('created_at');
     if ($type !== 'all') {
         $query->andWhere(['type' => $type]);
     }
     if ($sword !== null) {
         $query->andWhere(['like', "{$stype}", $sword]);
     }
     $pagination = new Pagination(['totalCount' => $query->count()]);
     $items = $query->offset($pagination->offset)->limit($pagination->limit)->all();
     $typeItems = ArrayHelper::merge(['all' => \Yii::t($this->module->messageCategory, '{attribute} {action}', ['attribute' => \Yii::t($this->module->messageCategory, 'type'), 'action' => \Yii::t($this->module->messageCategory, 'filtering')])], SiteCategory::defaultAttributeItems('type'));
     return $this->render($this->action->id, ['type' => $type, 'stype' => $stype, 'sword' => $sword, 'items' => $items, 'pagination' => $pagination, 'typeItems' => $typeItems]);
 }
Ejemplo n.º 2
0
 public function actionList($cid = 0, $type = 'all', $status = 'all', $stype = null, $sword = null)
 {
     $query = SiteArticle::find()->alias('a')->where(['a.site_id' => $this->module->siteId])->orderby('a.status desc, a.created_at desc');
     if ($cid) {
         $query->andWhere(['a.category_id' => $cid]);
     }
     if ($type != 'all') {
         $query->joinWith('category b')->andWhere(['b.type' => $type]);
     }
     if ($status != 'all') {
         $query->andWhere(['a.status' => $status]);
     }
     if ($sword !== null) {
         $query->andWhere(['like', "a.{$stype}", $sword]);
     }
     $pagination = new Pagination(['totalCount' => $query->count()]);
     $items = $query->offset($pagination->offset)->limit($pagination->limit)->all();
     $categoryItems = ArrayHelper::merge([0 => \Yii::t($this->module->messageCategory, '{attribute} {action}', ['attribute' => \Yii::t($this->module->messageCategory, 'category'), 'action' => \Yii::t($this->module->messageCategory, 'filtering')])], ArrayHelper::map(SiteCategory::find()->select(['id', 'name'])->where(['site_id' => $this->module->siteId])->orderby('created_at desc')->all(), 'id', 'name'));
     $categoryTypeItems = ArrayHelper::merge(['all' => \Yii::t($this->module->messageCategory, '{attribute} {action}', ['attribute' => \Yii::t($this->module->messageCategory, 'type'), 'action' => \Yii::t($this->module->messageCategory, 'filtering')])], SiteCategory::defaultAttributeItems('type'));
     $statusItems = ArrayHelper::merge(['all' => \Yii::t($this->module->messageCategory, '{attribute} {action}', ['attribute' => \Yii::t($this->module->messageCategory, 'status'), 'action' => \Yii::t($this->module->messageCategory, 'filtering')])], SiteArticle::defaultAttributeItems('status'));
     return $this->render($this->action->id, ['cid' => $cid, 'type' => $type, 'status' => $status, 'stype' => $stype, 'sword' => $sword, 'items' => $items, 'pagination' => $pagination, 'categoryItems' => $categoryItems, 'categoryTypeItems' => $categoryTypeItems, 'statusItems' => $statusItems]);
 }