/**
  * Загружаем модель категории
  */
 public function loadModel($id)
 {
     $model = CatalogCategory::model()->findByPk($id);
     /*if($model===null)
     		throw new CHttpException(404,'The requested page does not exist.');*/
     return $model;
 }
Exemple #2
0
 /**
  * Parse url
  *
  * @param $manager
  * @param $request
  * @param $pathInfo
  * @param $rawPathInfo
  *
  * @return bool|string
  */
 public function parseUrl($manager, $request, $pathInfo, $rawPathInfo)
 {
     if (preg_match('%^(/?([\\w\\-.]+))+$%', $pathInfo, $matches)) {
         $pages = preg_split("/\\//", $pathInfo);
         $element_arr = explode('.', end($pages));
         $element = $element_arr[0];
         if ($page = CatalogCategory::model()->find(array('condition' => 'link=:link', 'params' => array(':link' => $element)))) {
             return '/services/default/category/link/' . $element;
         } else {
             if ($service = CatalogService::model()->find(array('condition' => 'link=:link', 'params' => array(':link' => $element)))) {
                 return '/services/default/service/id/' . $service->id;
             } else {
                 return false;
             }
         }
     }
     return false;
 }
Exemple #3
0
 public function parseUrl($manager, $request, $pathInfo, $rawPathInfo)
 {
     if (preg_match('%^(/?([\\w\\-.]+))+$%', $pathInfo, $matches)) {
         //разбиваем путь по слешам и берем последнюю составляющую пути
         $pages = preg_split("/\\//", $pathInfo);
         //$element = end($pages);
         $element_arr = explode('.', end($pages));
         $element = $element_arr[0];
         if (in_array('brands', $pages)) {
             if (count($pages) == 3) {
                 if ($brand = CatalogBrands::model()->find(array('select' => 'id', 'condition' => 'link=:link', 'params' => array(':link' => $element)))) {
                     return 'catalog/brands/index/view/' . $element;
                 } else {
                     return false;
                 }
             } elseif (count($pages) == 4) {
                 return 'catalog/brands/index/view/' . $pages[2] . '/coll/' . $element;
             } else {
                 return false;
             }
         } else {
             if ($page = CatalogCategory::model()->find(array('select' => 'id', 'condition' => 'link=:link', 'params' => array(':link' => $element)))) {
                 // если есть - преобразуем адрес
                 return '/catalog/default/category/link/' . $element;
             } else {
                 // если такой категории нет - проверяем, может быть есть такой товар
                 if ($product = CatalogProduct::model()->find(array('select' => 'id', 'condition' => 'link=:link', 'params' => array(':link' => $element)))) {
                     // если есть - преобразуем адрес
                     return '/catalog/default/product/id/' . $product->id;
                 } else {
                     // если нет - не применяем правило
                     return false;
                 }
             }
         }
     }
     return false;
     // не применяем данное правило
 }
Exemple #4
0
 /**
  * Load category model
  *
  * @param $id
  *
  * @return mixed
  */
 public function loadModel($id)
 {
     $result = null;
     if ($model = CatalogCategory::model()->findByPk($id)) {
         $result = $model;
     }
     return $result;
 }
Exemple #5
0
 public function getMaxSortOrder()
 {
     $models = CatalogCategory::model()->findAll();
     foreach ($models as $model) {
         $sort_orders[] = $model->sort_order;
     }
     if (!empty($sort_orders)) {
         arsort($sort_orders);
         $max_order = current($sort_orders);
     } else {
         $max_order = 0;
     }
     return $max_order;
 }
Exemple #6
0
$form = $this->beginWidget('CActiveForm', array('id' => 'catalog-product-form', 'htmlOptions' => array('enctype' => 'multipart/form-data'), 'enableAjaxValidation' => false));
?>


	<p class="note">Поля, отмеченные <span class="required">*</span>, обязательны для заполнения</p>

	<?php 
echo $form->errorSummary($model);
?>

	<div class="row">
		<?php 
echo $form->labelEx($model, 'id_category');
?>
		<?php 
echo $form->dropDownList($model, 'id_category', CHtml::listData(CatalogCategory::model()->findAll('parent_id = 0'), 'id', 'title'));
?>
		<?php 
echo $form->error($model, 'id_category');
?>
	</div>

	<div class="row">
		<?php 
echo $form->labelEx($model, 'title');
?>
		<?php 
echo $form->textField($model, 'title', array('size' => 60, 'maxlength' => 256, 'id' => 'productTitle'));
?>
		<?php 
echo $form->error($model, 'title');
Exemple #7
0
<?php 
}
$form = $this->beginWidget('CActiveForm', array('id' => 'seacrh-form', 'action' => '/catalog/default/selection', 'method' => 'get', 'htmlOptions' => array('style' => 'display:' . ($params['category'] ? 'none' : 'block'))));
?>
<div class="s-form">
	<div class="row">
		<h1>Подобрать питомца</h1>
	</div>
	<div class="row">
		<div class="column">
			<?php 
echo CHtml::label('Вид животного', 'params_category');
?>
:
			<?php 
echo CHtml::dropDownList('params[category]', $params['category'], CHtml::listData(CatalogCategory::model()->findAll('parent_id = 0'), 'id', 'title'), array('empty' => 'Любое животное', 'class' => 'form-group'));
?>
		</div>
		<div class="column mh">
			<?php 
echo CHtml::label('Возраст', 'params_ageFrom');
?>
:
			<div class="column-left">
				<div class="text">от</div>
				<?php 
echo CHtml::textField('params[ageFrom]', $params['ageFrom'], array('maxlength' => 256));
?>
				<?php 
echo CHtml::dropDownList('params[ageFromUnit]', $params['ageFromUnit'], array(7 => 'Недель', 30 => 'Месяцев', 365 => 'Лет'));
?>
 public function createUrl($route, $params = array(), $ampersand = '&')
 {
     // если формируем ссылку на категорию
     if ($route == 'category') {
         if (isset($params['link'])) {
             return '/catalog' . CatalogCategory::getCategoryRoute($params['link']);
         }
     }
     // если формируем ссылку на товар
     if ($route == 'product') {
         // если передано id товара
         if (isset($params['id'])) {
             // если существует такой продукт
             if ($product = CatalogProduct::model()->find(array('condition' => 'id=:id', 'params' => array(':id' => $params['id'])))) {
                 // берем категорию продукта
                 $category = CatalogCategory::model()->with('parentShort')->findByPk($product->id_category);
                 // возвращаем путь к категории товара и прибавляем в конце id
                 return '/catalog' . CatalogCategory::getCategoryRouteFast($category) . '/' . $product->id;
             }
         }
     }
     // если условия не сработали - формируем адрес обычным образом
     return parent::createUrl($route, $params, $ampersand);
 }
Exemple #9
0
    ?>
:
			<?php 
    echo $form->textField($model, 'phone', array('maxlength' => 256));
    ?>
		</div>
	</div>

	<div class="row">
		<div class="column">
			<?php 
    echo $form->labelEx($model, 'id_category');
    ?>
:
			<?php 
    echo $form->dropDownList($model, 'id_category', CHtml::listData(CatalogCategory::model()->findAll('parent_id = 0'), 'id', 'title'), array('empty' => 'Выберите вид животного', 'class' => 'form-group'));
    ?>
		</div>
		<div class="column">
			<?php 
    echo $form->label($model, 'title');
    ?>
:
			<?php 
    echo $form->textField($model, 'title', array('maxlength' => 256));
    ?>
		</div>
	</div>
	
	<div class="row">
		<div class="column">
Exemple #10
0
 /**
  * Create url
  *
  * @param string $route
  * @param array  $params
  * @param string $ampersand
  *
  * @return string
  */
 public function createUrl($route, $params = array(), $ampersand = '&')
 {
     if ($route == 'category') {
         if (isset($params['link'])) {
             return '/services' . CatalogCategory::getCategoryRoute($params['link']);
         }
     }
     if ($route == 'service') {
         if (isset($params['id'])) {
             if ($service = CatalogService::model()->find(array('condition' => 'id=:id', 'params' => array(':id' => $params['id'])))) {
                 $category = CatalogCategory::model()->findByPk($service->id_category);
                 return '/services' . CatalogCategory::getCategoryRoute($category->link) . '/' . $service->id;
             }
         }
     }
     return parent::createUrl($route, $params, $ampersand);
 }