Exemplo n.º 1
0
Arquivo: Cat.php Projeto: efueger/luya
 private function getNavData()
 {
     $_data = [];
     foreach (Nav::find()->all() as $item) {
         $x = $item->getNavItems()->where(['lang_id' => $this->getLangId()])->asArray()->one();
         if ($x) {
             $_data[$x['nav_id']] = $x['title'];
         }
     }
     return $_data;
 }
Exemplo n.º 2
0
 /**
  * Get Container name for a nav item.
  *
  * @param $navId
  * @return string Container name
  */
 public function actionGetNavContainerName($navId)
 {
     $nav = Nav::findOne($navId);
     if ($nav) {
         $navCoontainer = NavContainer::findOne($nav->nav_container_id);
         if ($navCoontainer) {
             return $navCoontainer->name;
         }
     }
     return "";
 }
Exemplo n.º 3
0
 public function actionResort()
 {
     $navItemId = $this->postArg('nav_item_id');
     $newSortIndex = $this->postArg('new_sort_index');
     $response = \cmsadmin\models\Nav::resort($navItemId, $newSortIndex);
 }
Exemplo n.º 4
0
 public function actionCreateFromPage()
 {
     Yii::$app->menu->flushCache();
     $model = new \cmsadmin\models\Nav();
     $create = $model->createItemLanguageCopy($this->postArg('id'), $this->postArg('toLangId'), $this->postArg('title'), $this->postArg('alias'));
     if ($create !== true) {
         Yii::$app->response->statusCode = 422;
     }
     return $create;
 }
Exemplo n.º 5
0
 public function actionDelete($navId)
 {
     $model = \cmsadmin\models\Nav::find()->where(['id' => $navId])->one();
     if ($model) {
         Yii::$app->menu->flushCache();
         // check for internal redirects
         $redirectResult = false;
         $redirects = NavItemRedirect::find()->where(['value' => $navId])->asArray()->all();
         foreach ($redirects as $redirect) {
             $navItem = NavItem::find()->where(['nav_item_type' => 3, 'nav_item_type_id' => $redirect['id']])->one();
             $redirectResult = empty(Nav::find()->where(['id' => $navItem->nav_id, 'is_deleted' => 0])->one()) ? $redirectResult : true;
         }
         if ($redirectResult) {
             Yii::$app->response->statusCode = 417;
             return;
         }
         $model->is_deleted = 1;
         foreach (NavItem::find()->where(['nav_id' => $navId])->all() as $navItem) {
             $navItem->setAttribute('alias', date('Y-m-d-H-i') . '-' . $navItem->alias);
             $navItem->update(false);
         }
         return $model->update(false);
     }
 }
Exemplo n.º 6
0
 public function onAfterFind($fieldValue)
 {
     return !empty($fieldValue) ? Nav::findContent($fieldValue) : $fieldValue;
 }
Exemplo n.º 7
0
 public function actionMoveToChild($moveItemId, $droppedOnItemId)
 {
     return ['success' => Nav::moveToChild($moveItemId, $droppedOnItemId)];
 }
Exemplo n.º 8
0
 public function getNav()
 {
     return Nav::find()->where(['id' => $this->nav_id])->one();
 }
Exemplo n.º 9
0
 public function actionCreateRedirectItem()
 {
     $model = new \cmsadmin\models\Nav();
     $create = $model->createRedirectItem($this->postArg('nav_id'), $this->postArg('lang_id'), $this->postArg('title'), $this->postArg('alias'), $this->postArg('redirect_type'), $this->postArg('redirect_type_value'), $this->postArg('description'));
     if ($create !== true) {
         Yii::$app->response->statusCode = 422;
     }
     return $create;
 }
Exemplo n.º 10
0
 private function getData($parentNavId)
 {
     return Nav::getItemsData($parentNavId, $this->loadIsHidden);
 }
Exemplo n.º 11
0
 public function testFindContent()
 {
     $this->assertEquals(false, Nav::findContent(0));
     $this->assertEquals(null, Nav::findContent(1));
 }