public function getType() { switch ($this->nav_item_type) { case self::TYPE_PAGE: return \cmsadmin\models\NavItemPage::findOne($this->nav_item_type_id); break; case self::TYPE_MODULE: return \cmsadmin\models\NavItemModule::findOne($this->nav_item_type_id); break; } }
public function getType() { switch ($this->nav_item_type) { case self::TYPE_PAGE: $object = NavItemPage::findOne($this->nav_item_type_id); break; case self::TYPE_MODULE: $object = NavItemModule::findOne($this->nav_item_type_id); break; case self::TYPE_REDIRECT: $object = NavItemRedirect::findOne($this->nav_item_type_id); break; } // assign the current context for an item type object. $object->setNavItem($this); return $object; }
/** * * Copy content of type cms_nav_item_module to a target nav item. This will create a new entry in cms_nav_item_module. * * @param $targetNavItem * @return bool */ public function copyModuleItem($targetNavItem) { if ($this->nav_item_type !== 2) { return false; } $sourceModuleItem = NavItemModule::findOne($this->nav_item_type_id); if (!$sourceModuleItem) { return false; } $moduleItem = new NavItemModule(); $moduleItem->attributes = $sourceModuleItem->toArray(); if (!$moduleItem->save()) { return false; } $targetNavItem->nav_item_type_id = $moduleItem->id; return $targetNavItem->save(); }