public function actionGetRelevantCategories() { if (!Y::isAjaxRequest()) Y::end(); if(!isset($_POST['catId'])) throw new CException("Не найден параметр catId"); if(!isset($_POST['action'])) throw new CException("Не найден параметр catId"); $cat = Category::model()->findByPk($_POST['catId']); $name = ModelFactory::t($cat->type); if (ModelFactory::isAllowCopy($cat->type)) { echo "<p>Категория имеет тип '$name', поэтому все '$name' могут быть скопированы в одну из следующих категорий.</p>". "<hr/><p>Все шаблоны с одинаковыми алиасами будут утеряны</p>"; } else { echo "Категория имеет тип '$name', данные такого типа не могут быть сохранены в другой категории."; Y::end(); } $cats = Category::model()->findAll("type='".$cat->type."' AND id!=".$cat->pk); $res = '<ul>'; foreach ($cats as $target) { if ($_POST['action'] == 'copy') $res .= '<li>'.$cat->getCopyDataLink($target).'</li>'; elseif ($_POST['action'] == 'cut') $res .= '<li>'.$cat->getCutDataLink($target).'</li>'; } echo $res.'</ul>'; }