コード例 #1
0
ファイル: Menu.php プロジェクト: worstinme/yii2-zoo
 public function getApplications()
 {
     if (in_array($this->type, [1, 2, 3])) {
         return Applications::find()->select(['title'])->indexBy('id')->column();
     }
     return null;
 }
コード例 #2
0
ファイル: Controller.php プロジェクト: worstinme/yii2-zoo
 public function actionAbc($a, $b, $c)
 {
     if (($app = Applications::find()->where(['name' => $a])->one()) !== null) {
         if (($parent_cat = Categories::find()->where(['app_id' => $app->id, 'alias' => $b])->one()) !== null) {
             // приложение -> категория по алиасу
             if (($category = Categories::find()->where(['app_id' => $app->id, 'parent_id' => $parent_cat->id, 'alias' => $c])->one()) !== null) {
                 return $this->renderCategory($category);
             } elseif (($model = Items::find()->where(['app_id' => $app->id, 'alias' => $c])->one()) !== null) {
                 // приложение -> материал по алиасу
                 return $this->renderItem($model);
             } elseif (($model = Items::find()->where(['app_id' => $app->id, 'id' => $c])->one()) !== null) {
                 // приложение -> материал по ID
                 return $this->renderItem($model);
             }
         }
     } else {
         if (($category = Categories::find()->where(['app_id' => 1, 'alias' => $a])->one()) !== null) {
             if (($model = Items::find()->where(['app_id' => 1, 'alias' => $b])->one()) !== null && $model->parentCategory->alias == $a) {
                 // приложение -> материал по алиасу
                 return $this->renderItem($model);
             } elseif (($model = Items::find()->where(['app_id' => 1, 'id' => $b])->one()) !== null && $model->parentCategory->alias == $a) {
                 // приложение -> материал по ID
                 return $this->renderItem($model);
             }
         }
         // категория дефолтного приложения -> материал
     }
     throw new NotFoundHttpException('The requested page does not exist.');
 }
コード例 #3
0
ファイル: LastItems.php プロジェクト: worstinme/yii2-zoo
 public function getApplications()
 {
     return Applications::find()->select(['title'])->indexBy('id')->column();
 }
コード例 #4
0
ファイル: Component.php プロジェクト: worstinme/yii2-zoo
 public function getApplications()
 {
     return Applications::find()->where(['app_alias' => [$this->frontendPath, '@app']])->indexBy('id')->all();
 }