/**
  * This is the default 'index' action that is invoked
  * when an action is not explicitly requested by users.
  */
 public function actionIndex()
 {
     $limit = 30;
     $p = (int) Yii::app()->request->getParam("p", 1);
     $catalog = Yii::app()->request->getParam("catalog", "");
     Yii::app()->page->title = "Выставить слаг";
     if (!empty($catalog)) {
         $catalogS = SiteHelper::getCamelCase($catalog);
         $items = $catalogS::fetchAll(DBQueryParamsClass::CreateParams()->setLimit($limit)->setCache(0)->setPage($p));
         //echo sizeof( $items )."*";
         //die;
         for ($i = 0; $i < sizeof($items); $i++) {
             if (strpos($items[$i]->description, "</xml>") !== false) {
                 $arr = explode("</xml>", $items[$i]->description);
                 $items[$i]->description = $arr[1];
                 if (empty($items[$i]->description)) {
                     $items[$i]->description = "  - ";
                 }
                 if (!$items[$i]->save()) {
                     //print_r( $items[$i]->getErrors() );
                     //die;
                 }
             }
         }
         if (sizeof($items) == $limit) {
             $this->redirect(SiteHelper::createUrl("/console/CheckDescription", array("catalog" => $catalog, "p" => $p + 1)));
         }
     } else {
         $items = array();
     }
     $this->render("index", array("items" => $items));
 }
 /**
  * This is the default 'index' action that is invoked
  * when an action is not explicitly requested by users.
  */
 public function actionIndex()
 {
     $limit = 30;
     $p = (int) Yii::app()->request->getParam("p", 1);
     $catalog = Yii::app()->request->getParam("catalog", "");
     Yii::app()->page->title = "Выставить слаг";
     if (!empty($catalog)) {
         $catalogS = SiteHelper::getCamelCase($catalog);
         $items = $catalogS::fetchAll(DBQueryParamsClass::CreateParams()->setLimit($limit)->setCache(0)->setPage($p));
         //echo sizeof( $items )."*";
         //die;
         foreach ($items as $item) {
             //echo "#".$item->id."<br/>";
             $item->description = str_replace("< ", "<", $item->description);
             if (!$item->save()) {
                 print_r($item->getErrors());
                 //die;
             }
         }
         if (sizeof($items) == $limit) {
             $this->redirect(SiteHelper::createUrl("/console/CheckDescriptionTag", array("catalog" => $catalog, "p" => $p + 1)));
         }
     } else {
         $items = array();
     }
     $this->render("index", array("items" => $items));
 }
示例#3
0
 /**
  * This is the default 'index' action that is invoked
  * when an action is not explicitly requested by users.
  */
 public function actionIndex()
 {
     Yii::app()->page->title = "Каталог продукции";
     if (!Yii::app()->user->isGuest) {
         $itemModel = new CatalogItemsAdd();
         if (!empty($_POST["save_profile"])) {
             $itemModel->setAttributesFromArray($_POST["CatalogItemsAdd"]);
             $itemModel->user_id = Yii::app()->user->id;
             $itemModel->status_id = 3;
             // По умолчанию не активен
             $itemModel->date = time();
             if ($itemModel->saveParam()) {
                 $itemModel->onAddItem(new CModelEvent($itemModel), array("id" => $itemModel->id, "subject" => $itemModel->name, "date" => date("d.m.Y"), "description" => SiteHelper::getSubTextOnWorld($itemModel->description, 200), "link" => Yii::app()->params["adminEmail"] . SiteHelper::createUrl("/user/items/description/", array("id" => $itemModel->id))));
                 $this->redirect(SiteHelper::createUrl("/catalog/add/save", array("id" => $itemModel->id)));
             }
         }
         $addDopParams = null;
         if ($itemModel->category_id && $itemModel->category_id->id > 0) {
             $categoryModel = CatalogItemsCategory::fetch($itemModel->category_id->id);
             if ($categoryModel->table_name) {
                 $catalogClass = SiteHelper::getCamelCase($categoryModel->table_name);
                 $addDopParams = new $catalogClass();
             }
         }
         $this->render("add", array("form" => $itemModel, "addDopParams" => $addDopParams));
     } else {
         Yii::app()->session['redirect'] = SiteHelper::createUrl("/catalog/add");
         $this->render("addauthWidget");
     }
 }
示例#4
0
 public static function getTranslateModel($catalog, $id, $language)
 {
     $lA = explode("-", $language);
     $language = $lA[0];
     $class = SiteHelper::getCamelCase($catalog . "_" . $language);
     if (class_exists($class)) {
         return $class::fetch($id);
     }
 }
示例#5
0
 public function refreshParam()
 {
     if ($this->category_id > 0) {
         $categoryModel = CatalogItemsCategory::fetch($this->category_id);
         if ($categoryModel->table_name) {
             $categoryTable = SiteHelper::getCamelCase($categoryModel->table_name);
             $paramItem = $categoryTable::findByAttributes(array("item_id" => $this->id));
             if (sizeof($paramItem) > 0) {
                 $this->param = $paramItem[0];
             } else {
                 $this->param = new $categoryTable();
             }
         }
     }
 }
 public function run($args)
 {
     $list = array("catalog_users", "catalog_firms", "catalog_tours", "catalog_firms_service", "catalog_firms_items");
     for ($i = 0; $i < sizeof($list); $i++) {
         $catalog = SiteHelper::getCamelCase($list[$i]);
         $listItems = $catalog::fetchAll(DBQueryParamsClass::CreateParams()->setConditions("!EXISTS(SELECT id FROM notifications_queue WHERE catalog='" . $list[$i] . "' AND item_id=" . $list[$i] . "_as.id)")->setLimit(50)->setOrderBy("rating"));
         //$listItems = $catalog::fetchAll( DBQueryParamsClass::CreateParams()->setConditions("id=13")->setLimit( 100 )->setOrderBy("rating") );
         if (sizeof($listItems) > 0) {
             foreach ($listItems as $item) {
                 $tableName = $item->tableName();
                 switch ($item->tableName()) {
                     case "catalog_users":
                         if ($item->active == 0) {
                             AutoNotifier::onRegistration($item);
                         } else {
                             $countFirms = CatalogFirms::count(DBQueryParamsClass::CreateParams()->setConditions("user_id=:uid")->setParams(array(":uid" => $item->id)));
                             if ($countFirms == 0) {
                                 $tableName = "catalog_users_con";
                                 AutoNotifier::onRegistrationConfirm($item);
                             } else {
                                 continue 2;
                             }
                         }
                         break;
                     case "catalog_firms":
                         $item->onAddFirm(new CModelEvent($item), array("status" => "reminder"));
                         break;
                     case "catalog_tours":
                         $item->onAddTour(new CModelEvent($item), array("status" => "reminder"));
                         break;
                     case "catalog_firms_items":
                         $item->onAddFirmsItems(new CModelEvent($item), array("status" => "reminder"));
                         break;
                     case "catalog_firms_service":
                         $item->onAddFirmsService(new CModelEvent($item), array("status" => "reminder"));
                         break;
                     case "catalog_firms_banner":
                         $item->onAddFirmsBanners(new CModelEvent($item), array("status" => "reminder"));
                         break;
                 }
                 AutoNotifier::addInNotificationsQueue($tableName, $item->id, 0);
             }
             return "";
         }
     }
 }
 /**
  * This is the default 'index' action that is invoked
  * when an action is not explicitly requested by users.
  */
 public function actionIndex()
 {
     $limit = 50;
     $p = (int) Yii::app()->request->getParam("p", 1);
     $catalog = Yii::app()->request->getParam("catalog", "");
     Yii::app()->page->title = "Выставить слаг";
     if (!empty($catalog)) {
         $catalogS = SiteHelper::getCamelCase($catalog);
         $items = $catalogS::fetchAll(DBQueryParamsClass::CreateParams()->setLimit($limit)->setCache(0)->setPage($p));
         sizeof($items);
         for ($i = 0; $i < sizeof($items); $i++) {
             $items[$i]->slug = SiteHelper::getSlug($items[$i]);
         }
         if (sizeof($items) > 0) {
             $this->redirect(SiteHelper::createUrl("/console/SetSlug", array("catalog" => $catalog, "p" => $p + 1)));
         }
     } else {
         $items = array();
     }
     $this->render("index", array("items" => $items));
 }
 public function run($args)
 {
     $list = NotificationsQueue::fetchAll(DBQueryParamsClass::CreateParams()->setConditions("date<=:date AND step>-1")->setParams(array(":date" => time()))->setLimit(50)->setCache(0));
     foreach ($list as $item) {
         $catalogClass = SiteHelper::getCamelCase($item->catalog);
         $itemObj = $catalogClass::fetch($item->item_id);
         if (!$item->step) {
             $item->step = 0;
         }
         $step = $item->step < 8 ? $item->step + 1 : -1;
         //print_r( $item );
         // Добавляем в очередь на нотификацию
         // В течении 24 часов после добавления или сохранения пользователю приходят уведомления
         // О том что заполнил не полностью, не опубликовал, не добавил картинок и т.д.
         AutoNotifier::addInNotificationsQueue($item->catalog, $itemObj->id, $step);
         switch ($item->catalog) {
             case "catalog_users":
                 AutoNotifier::onRegistration($itemObj);
                 break;
             case "catalog_users_con":
                 AutoNotifier::onRegistrationConfirm($itemObj);
                 break;
             case "catalog_firms":
                 $itemObj->onAddFirm(new CModelEvent($itemObj), array("status" => "reminder"));
                 break;
             case "catalog_tours":
                 $itemObj->onAddTour(new CModelEvent($itemObj), array("status" => "reminder"));
                 break;
             case "catalog_firms_items":
                 $itemObj->onAddFirmsItems(new CModelEvent($itemObj), array("status" => "reminder"));
                 break;
             case "catalog_firms_service":
                 $itemObj->onAddFirmsService(new CModelEvent($itemObj), array("status" => "reminder"));
                 break;
             case "catalog_firms_banner":
                 $itemObj->onAddFirmsBanners(new CModelEvent($itemObj), array("status" => "reminder"));
                 break;
         }
     }
 }
 /**
  * Updates a particular model.
  * If update is successful, the browser will be redirected to the 'view' page.
  * @param integer $id the ID of the model to be updated
  */
 public function actionUpdate()
 {
     if (!empty($_POST["CatComments"])) {
         if ($this->id > 0) {
             $model = CatComments::fetch($this->id);
         } else {
             $model = new CatComments();
         }
         $catalogClass = SiteHelper::getCamelCase($model->catalog);
         $catalogItemModel = $catalogClass::fetch($model->item_id);
         $message = "";
         // Сохрание полей
         $model->setAttributesFromArray($_POST["CatComments"]);
         if ($model->save()) {
             $message = "Данные успешно сохраненны";
         } else {
             print_r($model->getErrors());
         }
         $this->render('edit', array('form' => $model, 'message' => $message, "catalogItemModel" => $catalogItemModel));
     }
     //else $this->redirect( SiteHelper::createUrl("/console/comments") );
 }
示例#10
0
 public function renderTags($slug)
 {
     if (Yii::app()->controller->beginCache($slug . "-page-" . Yii::app()->getLanguage(), array('duration' => 3600 * 24 * 3))) {
         $params = $this->tag_params;
         if (!empty($params[$slug])) {
             $paramArray = $params[$slug];
         } elseif (!empty($params["default"])) {
             $paramArray = $params["default"];
         }
         $listClass = array("key01", "key02", "key03", "key04", "key05", "key06");
         if (!empty($paramArray)) {
             $listTags = array();
             foreach ($paramArray as $key => $value) {
                 $modelClass = SiteHelper::getCamelCase($key);
                 $sql = "del=0";
                 if (!empty($value[2])) {
                     $sql .= " AND " . $value[2];
                 }
                 $link = SiteHelper::createUrl($value[0]);
                 $listItems = $modelClass::fetchAll(DBQueryParamsClass::CreateParams()->setConditions($sql)->setLimit($value[1])->setOrderBy("id DESC"));
                 foreach ($listItems as $item) {
                     if ($item->slug) {
                         $randClass = array_rand($listClass, 1);
                         $item->name = SiteHelper::getSubTextOnWorld($item->name, 60);
                         $listTags[] = '<a href="' . $link . "/" . $item->slug . '.html" title="' . SiteHelper::getStringForTitle($item->name) . '" class="' . $listClass[$randClass] . '">' . $item->name . '</a>';
                     }
                 }
             }
             shuffle($listTags);
             shuffle($listTags);
             foreach ($listTags as $key => $item) {
                 echo $item . " ";
             }
         }
         Yii::app()->controller->endCache();
     }
 }
示例#11
0
        <th>Запись</th>
        <th><?php 
echo Yii::t("page", "статус");
?>
</th>
        <th><?php 
echo Yii::t("page", "Действия");
?>
</th>
    </tr>
<?php 
foreach ($comments as $item) {
    ?>
    <tr>
        <?php 
    $catalogClass = SiteHelper::getCamelCase($item->catalog);
    $catalogItemModel = $catalogClass::fetch($item->item_id);
    $status = "";
    if ($item->new == 1) {
        $status = "новое";
    } else {
        if ($item->active == 1) {
            $status = "опубликован";
        } else {
            $status = "не опубликован";
        }
    }
    ?>
        <td class="fieldID"><?php 
    echo $item->id;
    ?>
示例#12
0
 public function run()
 {
     $page = (int) Yii::app()->request->getParam("p", "1");
     $catalog = SiteHelper::getCamelCase($this->catalog);
     $sortField = Yii::app()->request->getParam("sort", "");
     $by = Yii::app()->request->getParam("by", "");
     $params = Yii::app()->request->getParam("params", "");
     //if( ( $page!=1 || !empty( $sortField ) || !empty( $params ) ) || ( $page==1 && $this->beginCache( 'pageWidget_'.$catalog.'_1', array('duration'=>3600) ) ) ) :
     // Дополнение к TITLE
     $dopTitle = "";
     if (Yii::app()->getLanguage() != "ru") {
         if (@class_exists($catalog . ucfirst(Yii::app()->getLanguage()))) {
             $catalog .= SiteHelper::getCamelCase(Yii::app()->getLanguage());
         }
     }
     // Очищаем параметры сессии
     // Если указан параметр черезе GET и это не сортировка и не страницы, от очищаем параметры
     if ($params == "empty" || !empty($_GET) && empty($_GET["sort"]) && empty($_GET["p"])) {
         Yii::app()->session["page_" . $catalog] = null;
     }
     // Здесь будем хранить параметры сортировки и посика, для сохранения  в сессию
     $pageParams = array();
     if (empty($sortField)) {
         // Проверяем сохранено ли в сессии значение для сортироваки,
         // если нет, то выставляем значения по умолчанию
         if (!empty(Yii::app()->session["page_" . $catalog]["sort"])) {
             $sortField = Yii::app()->session["page_" . $catalog]["sort"]["field"];
             $by = Yii::app()->session["page_" . $catalog]["sort"]["by"];
         }
     }
     // Сортировка
     $SQLsort = $this->order;
     if (!empty($sortField) && property_exists($catalog, $sortField)) {
         if ($by == "desc") {
             $SQLsort = $sortField . " DESC";
         } else {
             $SQLsort = $sortField;
         }
         // Сохряняем параметры сортировки для сессии
         $pageParams["sort"] = array("field" => $sortField, "by" => $by);
     }
     $catalogModel = new $catalog();
     $SearchAttributes = $catalogModel->getSearchAttributes();
     $fieldsType = $catalogModel->fieldType();
     // Переменная будет хронить если человек ищет какой-то текст, и этот текст будет подсвечиватся
     $findText = "";
     // Поиск
     $SQL = " active=1 ";
     if ($this->conditional) {
         $SQL = " active=1 AND " . $this->conditional;
     }
     $category = Yii::app()->request->getParam("category", "");
     if (!empty($category)) {
         $categoryClass = SiteHelper::getCamelCase($this->{$catalog} . "_category");
         $categoryModel = $categoryClass::fetchByKeyWord($category);
         if ($categoryModel->id > 0) {
             $SQL . " AND category_id='" . $categoryModel->id . "'";
         }
     }
     $country = Yii::app()->request->getParam("country", "");
     if (!empty($SearchAttributes) && is_array($SearchAttributes) && sizeof($SearchAttributes) > 0) {
         $arrayFindParam = array();
         foreach ($SearchAttributes as $field) {
             $field = trim($field);
             $fieldValue_2 = "";
             $fieldValue = Yii::app()->request->getParam($field, "");
             if (empty($fieldValue) && !empty($_POST[$catalog]) && !empty($_POST[$catalog][$field])) {
                 $fieldValue = $_POST[$catalog][$field];
             }
             // Если тип поля integer то проверяем поля ОТ и ДО
             if (!empty($fieldsType[$field]) && $fieldsType[$field] == "integer") {
                 if (!empty($_POST[$catalog]) && !empty($_POST[$catalog][$field . "_2"])) {
                     $fieldValue_2 = $_POST[$catalog][$field . "_2"];
                 } else {
                     $fieldValue_2 = "";
                 }
                 $fieldValue = (int) $fieldValue;
                 $fieldValue_2 = (int) $fieldValue_2;
             }
             if (empty($fieldValue) && empty($fieldValue_2) && !empty(Yii::app()->session["page_" . $catalog]["find"])) {
                 if (!empty(Yii::app()->session["page_" . $catalog]["find"][$field])) {
                     $fieldValue = Yii::app()->session["page_" . $catalog]["find"][$field];
                 }
                 if (!empty(Yii::app()->session["page_" . $catalog]["find"][$field . "_2"])) {
                     $fieldValue_2 = Yii::app()->session["page_" . $catalog]["find"][$field . "_2"];
                 }
             }
             if (!empty($fieldValue) || !empty($fieldValue_2)) {
                 if (!empty($fieldsType[$field]) && $fieldsType[$field] == "integer") {
                     if (!empty($fieldValue) && $fieldValue > 0) {
                         $SQL .= " AND " . $field . ">=" . $fieldValue;
                     }
                     if (!empty($fieldValue_2) && $fieldValue_2 > 0) {
                         $SQL .= " AND " . $field . "<" . $fieldValue_2;
                     }
                 } elseif ($relation = $catalogModel->getRelationByField($field)) {
                     $relationCatalog = $relation[1];
                     if (!empty($relationCatalog)) {
                         $relationItem = $relationCatalog::fetch((int) $fieldValue);
                         if (!empty($relationItem) && $relationItem->id > 0) {
                             // Добавилям в titile
                             if (!empty($dopTitle)) {
                                 $dopTitle .= ", ";
                             }
                             $dopTitle .= $relationItem->name;
                         }
                     }
                     $SQL .= " AND `" . $field . "`='" . $fieldValue . "'";
                     $fieldValue_2 = 0;
                 } else {
                     $SQL .= " AND `" . $field . "` like '%" . $fieldValue . "%'";
                     $fieldValue_2 = 0;
                     $findText = $fieldValue;
                 }
                 $arrayFindParam[$field] = $fieldValue;
                 $arrayFindParam[$field . "_2"] = $fieldValue_2;
             }
         }
         // Сохряняем параметры каталога для сессии
         $pageParams["find"] = $arrayFindParam;
         $catalogModel->setAttributesFromArray($arrayFindParam);
         // Сохраняем все в сессию
         Yii::app()->session["page_" . $catalog] = $pageParams;
     }
     echo "<!-- && ";
     echo $SQL;
     echo "-->";
     $items = $this->render($this->template, array('url' => $this->url, "items" => $catalog::fetchAll(DBQueryParamsClass::CreateParams()->setConditions($SQL)->setOrderBy($SQLsort)->setCache(0)->setPage($page)->setLimit($this->offset)), 'findText' => $findText), true);
     if (!empty($dopTitle)) {
         $dopTitle = $dopTitle . " - ";
     }
     // Выставляем TITLE для страницы
     Yii::app()->page->title = $dopTitle . $this->title;
     Yii::app()->page->setInfo(array("description" => $this->description, "keyWord" => $this->keyWord));
     $addUrl = "";
     $linkName = "";
     $findTitle = "Поиск";
     switch ($catalogModel->tableName()) {
         case "catalog_firms":
         case "catalog_firms_en":
             $addUrl = SiteHelper::createUrl("/user/firms/description/");
             $linkName = Yii::t("page", "Добавить тиристическое агенство");
             break;
         case "catalog_hotels":
         case "catalog_hotels_en":
             $addUrl = SiteHelper::createUrl("/user/hotels/description/");
             $linkName = Yii::t("page", "Добавить отель/гостиницу");
             break;
         case "catalog_kurorts":
         case "catalog_kurorts_en":
             $addUrl = SiteHelper::createUrl("/user/resort/description/");
             $linkName = Yii::t("page", "Добавить зону отдыха / курорт /дет. лагерь");
             break;
         case "catalog_firms_items":
         case "catalog_firms_items_en":
             $addUrl = SiteHelper::createUrl("/user/sales/description/");
             $linkName = Yii::t("page", "Добавить АКЦИЮ / СКИДКУ");
             break;
         case "catalog_tours":
             $findTitle = "ПОДОБРАТЬ ТУР";
             break;
     }
     $this->render("page", array('linkName' => $linkName, 'findTitle' => $findTitle, 'showFindForm' => $this->showFindForm, 'addUrl' => $addUrl, 'items' => $items, 'page' => $page, 'sectionTextSlug' => $this->sectionTextSlug, 'catalog' => $catalog, 'sort' => $this->sort, 'sortField' => $sortField, 'by' => $by, 'offset' => $this->offset, 'arrSearchFields' => $SearchAttributes, 'attributeLabels' => $catalogModel->attributeLabels(), 'tableModel' => $catalogModel, 'SQLParams' => $SQL, 'url' => $this->url, 'title' => $dopTitle ? $dopTitle . "<font>" . $this->title . "</font>" : $this->title));
     //    if( empty( $sortField ) && empty( $params ) && $page == 1 )$this->endCache();
     //endif;
 }
示例#13
0
 /**
  * Displays a particular model.
  * @param integer $id the ID of the model to be displayed
  */
 public function actionEdit()
 {
     if (!empty($this->catalog)) {
         $message = "";
         $catalog = $this->catalog;
         $action = Yii::app()->request->getParam("action", "");
         if ($this->id) {
             $item = $catalog::fetch($this->id);
         } else {
             $item = new $catalog();
         }
         // Удаление картинки
         if ($action == "img_del") {
             $imageField = Yii::app()->request->getParam("field", "");
             if (!empty($imageField)) {
                 ImageHelper::deleteFile($item, $imageField);
                 $item->save();
                 $message = "Фото успешно удаленно";
             }
         }
         // Удаляем картинки в галлере
         if ($action == "gal_del") {
             $id = (int) Yii::app()->request->getParam("img_id", 0);
             if (!empty($id)) {
                 $imageModel = CatGallery::fetch($id);
                 if ($imageModel->id > 0) {
                     $imageModel->delete();
                     $message = "Фото успешно удаленно";
                 }
             }
         }
         $addGallery = new CatGallery();
         if ($item->id > 0) {
             $listImage = CatGallery::fetchAll(DBQueryParamsClass::CreateParams()->setConditions("catalog=:catalog AND item_id=:item_id")->setParams(array(":catalog" => $item->tableName(), ":item_id" => $item->id))->setOrderBy("pos, id")->setCache(0)->setLimit(-1));
         } else {
             $listImage = array();
         }
         $this->arrayParams["catalog"] = $catalog;
         $this->render('edit', array('arrayParams' => $this->arrayParams, 'controller' => $this, 'form' => $item, 'catalog' => SiteHelper::getCamelCase($item->tableName()), 'listImage' => $listImage, 'message' => $message, 'addGallery' => $addGallery));
     }
 }
 public function actionUserEdit($message = "")
 {
     $group_id = Yii::app()->request->getParam("group_id", 0);
     $save = Yii::app()->request->getParam("save", "");
     $id = (int) Yii::app()->request->getParam("id", 0);
     if ($save == "ok") {
         $message = "Данные успешно сохраненны";
     }
     if ($id) {
         $item = SubscribeUsers::fetch($id);
     } else {
         $item = new SubscribeUsers();
     }
     $this->render($this->viewPath . 'userEdit', array('form' => $item, 'catalog' => SiteHelper::getCamelCase($item->tableName()), 'message' => $message, 'arrayParams' => array("group_id" => $group_id)));
 }
示例#15
0
 static function objectCheck(CCModel $objectModel, array $param)
 {
     /*
        $itemParam["recomFields"] = array( "name", "description", "country_id", "image", "email", "www", "tel", "address" );
        $itemParam["recomSizeFields"] = array( "description"=>500 );
        $itemParam["image_count"] = 0;
     */
     $cout = "";
     $attributeLabels = $objectModel->attributeLabels();
     $attributePlaceholder = $objectModel->attributePlaceholder();
     // Проверяем опубликовано ли объявление
     if (!empty($param["check_visible"]) && $param["check_visible"] == true && $objectModel->active == 0) {
         $cout .= "<br/><h3 style='background-color: #6C0000;color: #fff;padding: 5px;text-align: center'>Вам нравится терять клиентов?</h3><p>Пользователи не видят Ваше объявление, так как вы его еще не опубликовали.<br/><b>Чего же Вы ждете?</b><br/>Переходите не странциу редактирование, проверьте еще раз все ли впорядке в описаниии Вашего объявления и нажимайте на кнопку [ Опубликовать на сайте? ].<br/></p><h4>Ваши клиенты ждут Вас!!!</h4>";
     }
     // Определяем рекоменадции по
     if (sizeof($param["recomFields"]) > 0) {
         $recommendation = "";
         foreach ($param["recomFields"] as $field) {
             if (!$objectModel->{$field}) {
                 if (!empty($attributeLabels[$field])) {
                     $recommendation .= "<li><b>" . $attributeLabels[$field] . "</b>" . (!empty($attributePlaceholder[$field]) ? ".<br/>" . $attributePlaceholder[$field] : "") . "</li>";
                 } else {
                     $recommendation .= "<li>" . $field . "</li>";
                 }
             }
         }
         if (!empty($recommendation)) {
             $cout .= "<br/><h3 style=\"background-color: #6C0000;color: #fff;padding: 5px;text-align: center\">Привлеките больше внимания клентов </h3><p>Для привлечения максимального количества клентов мы советуем Вам заполнить следующие поля: <ul>" . $recommendation . "</ul> <br/> <b>Внимание!!!</b>Данные именно этих полей анализируются, для того чтобы определить позицию объявления в поиске. И соответсвенно чем качественнее Вы заполните указанные поля, тем лучшую позицию сможет занять Ваше объявление. </p>";
         }
     }
     //  Проверяем размероность полей
     if (sizeof($param["recomSizeFields"]) > 0) {
         $recommendationSize = "";
         foreach ($param["recomSizeFields"] as $field => $value) {
             $fieldValue = trim(strip_tags($objectModel->{$field}));
             if ($objectModel->{$field} && strlen($fieldValue) < $param["recomSizeFields"][$field]) {
                 $fieldName = !empty($attributeLabels[$field]) ? $attributeLabels[$field] : $field;
                 $recommendationSize .= "<li>Для поля \"<b>" . $fieldName . "</b>\" мы рекомендуем размер - " . $param["recomSizeFields"][$field] . " знаков, а Вы указали только " . strlen($fieldValue) . " знаков.</li>";
             }
         }
         if (!empty($recommendationSize)) {
             $cout .= "<br/><h3 style=\"background-color: #6C0000;color: #fff;padding: 5px;text-align: center\">Заполняйте поля качественно</h3><p>Мы советуем Вам заполнять чественной и удобно читаемой информацией, именно поэтоу мы рекомендуем Вам внести следующие изминения:\n<ul>" . $recommendationSize . "</ul></p>";
         }
     }
     // Если указанны рекомендации по количеству картинок
     if ($param["image_count"] > 0) {
         $count = CatGallery::count(DBQueryParamsClass::CreateParams()->setConditions("item_id=:fid AND catalog=:catalog")->setParams(array(":fid" => $objectModel->id, ":catalog" => $objectModel->tableName()))->setCache(0));
         if ($count < $param["image_count"]) {
             $cout .= "<br/><h3 style=\"background-color: #6C0000;color: #fff;padding: 5px;text-align: center\">Украшайте свое объявление красочными фотографиями</h3>";
             if ($count == 0) {
                 $cout .= "<p>Вы не загрузили не одной фотографии для Вашего объявления - так не пойдет.<br/>\nЕсли Вы действительно хотите привлечь внимание к своему объвлению то Вам необходимо добавить картинки к своему объявлению.<br/>\nМы рекомендуем Вам добавить как минимум:  " . $param["image_count"] . " фото</p>";
             }
             if ($count > 0) {
                 $cout .= "<p>Вы загрузили всего <b>" . $count . "</b> фото, а что больше нет?<br/>Чем больше фото вы загрузите тем лехче заинтересовать пользователя в Ваших услугах. Именно поэтому мы рекомендуем минимум " . $param["image_count"] . " фото, а максимум 10 фото.</p>";
             }
         }
     }
     // Если указанно рекомендуемое количетсво записей
     if (!empty($param["item_count"]) && $param["item_count"] > 0 && empty($cout)) {
         $objectClass = SiteHelper::getCamelCase($objectModel->tableName());
         $countItems = $objectClass::count(DBQueryParamsClass::CreateParams()->setConditions("firm_id=:fid")->setParams(array(":fid" => $objectModel->firm_id->id)));
         if ($countItems < $param["item_count"]) {
             $cout .= "<br/><h3 style=\"background-color: #6C0000;color: #fff;padding: 5px;text-align: center\">Не останавливайтесь на достигнутом</h3>Вы добавили всего <b>" . $countItems . "</b> запись(ей), мы же рекомендуем добавить как минимум <b>" . $param["item_count"] . "</b> запись(ей).<br/>Имейте ввиду чем больше бы добавите услуг компании тем больше получите потенциальных клиентов";
         }
     }
     return $cout;
 }
示例#16
0
    ?>
        <tr>
            <td class="fieldID"><?php 
    echo $item->id;
    ?>
</td>
            <td><?php 
    echo $item->catalog;
    ?>
</td>
            <td><?php 
    echo $item->action;
    ?>
</td>
            <td><a href="<?php 
    echo SiteHelper::createUrl("/console/catalog/edit", array("id" => $item->item_id)) . "?catalog=" . SiteHelper::getCamelCase($item->catalog);
    ?>
" target="_blank"><?php 
    echo $item->item_id;
    ?>
</a></td>
            <td><?php 
    echo SiteHelper::getDateOnFormat($item->date, "d.m.Y H:i");
    ?>
</td>
            <td><a href="<?php 
    echo SiteHelper::createUrl("/console/catalog/edit", array("id" => $item->user_id)) . "?catalog=CatalogUsers";
    ?>
" target="_blank"><?php 
    echo $item->user_id . " " . $item->user_id->name;
    ?>
示例#17
0
</a>
        <?php 
if ($item->id > 0) {
    ?>
            <div class="panel panel-success">
                <div class="panel-heading textAlignCenter">ВНИМАНИЕ!!!</div>
                <div class="panel-body textAlignCenter">
                    <span><?php 
    echo Yii::t("page", "статус");
    ?>
: <b class="publishStatus"><?php 
    echo $item->active == 0 ? " " . Yii::t("user", "не опубликован") . " " : " " . Yii::t("user", "опубликован") . " ";
    ?>
</b></span>
                    <a href="#" class="publishLink linkButton" onclick="return ajaxAction( this, '<?php 
    echo SiteHelper::createUrl("/user/firms/setPublish", array("id" => $item->id, "catalog" => SiteHelper::getCamelCase($item->tableName())));
    ?>
', '' );">
                    <?php 
    if ($item->active == 0) {
        echo Yii::t("user", "Опубликовать на сайте ?");
    }
    if ($item->active == 1) {
        echo Yii::t("user", "Снять с публикации ?");
    }
    ?>
</a>
                </div>
            </div>
        <?php 
}
示例#18
0
 public function actionIndex($inputMessage = "")
 {
     if (!Yii::app()->user->isGuest) {
         Yii::app()->page->title = "Мои " . $this->name;
         $message = "";
         if (empty($message) && !empty($inputMessage)) {
             $message = $inputMessage;
         }
         $modelClass = SiteHelper::getCamelCase($this->tableName);
         $items = $modelClass::fetchAll(DBQueryParamsClass::CreateParams()->setConditions("user_id=:user_id" . $this->dopSQL)->setParams(array(":user_id" => Yii::app()->user->id))->setOrderBy("id DESC")->setLimit(-1)->setCache(0));
         $this->render("index", array("items" => $items, "message" => $message));
     }
 }
示例#19
0
 public function actionSetPublish()
 {
     $id = (int) Yii::app()->request->getParam("id", 0);
     $catalog = Yii::app()->request->getParam("catalog");
     if ($id > 0 && !empty($catalog)) {
         $newCatalog = new $catalog();
         $modelClass = SiteHelper::getCamelCase($newCatalog->tableName());
         $model = $modelClass::fetch($id);
         $listImages = CatGallery::findByAttributes(array("catalog" => $newCatalog->tableName(), "item_id" => $id));
         $imagesMin = SiteHelper::getConfig("publish_min_images");
         $sizeofImages = sizeof($listImages);
         if ($model->image) {
             $sizeofImages++;
         }
         // Для CatalogFirmsBannersAdd не должно влиять ограичение перед публиацией по количесву картинок
         if ($sizeofImages >= $imagesMin || $catalog == "CatalogFirmsBannersAdd" || $catalog == "CatalogFirmsBanners") {
             $error = false;
             $commentModel = $catalog::fetch($id);
             if (($catalog == "CatalogFirmsBannersAdd" || $catalog == "CatalogFirmsBanners") && !$commentModel->file) {
                 $error = true;
             }
             if ($commentModel->user_id->id != Yii::app()->user->getId() && $commentModel->firm_id->user_id->id != Yii::app()->user->getId()) {
                 $error = true;
             }
             if (!$error) {
                 if ($commentModel->user_id && $commentModel->user_id->id > 0) {
                     $id = $commentModel->user_id->id;
                 } else {
                     $id = $commentModel->firm_id->user_id->id;
                 }
                 if ($commentModel->id > 0 && $id == Yii::app()->user->getId()) {
                     if ($commentModel->active == 0) {
                         $commentModel->active = 1;
                         $action = "publish";
                     } else {
                         $commentModel->active = 0;
                         $action = "nopublish";
                     }
                     SiteHelper::setLog($newCatalog->tableName(), $action, $commentModel->user_id->id, Yii::app()->user->getId());
                     if ($commentModel->save()) {
                         echo 1;
                     } else {
                         print_r($commentModel->getErrors());
                     }
                     return;
                 }
             }
         } else {
             echo 3;
             return;
         }
     }
     echo 0;
     return;
 }
示例#20
0
 public function actionAjaxAddFormDopParam()
 {
     $cid_id = (int) Yii::app()->request->getParam("cid_id", 0);
     $id = (int) Yii::app()->request->getParam("id", 0);
     $cout = "";
     if ($cid_id > 0) {
         $categoryModel = CatalogMarketsCategory::fetch($cid_id);
         if ($categoryModel->id > 0) {
             if ($categoryModel->table_name) {
                 $catalogClass = SiteHelper::getCamelCase($categoryModel->table_name);
                 if (class_exists($catalogClass)) {
                     if ($id > 0) {
                         $model = $catalogClass::fetch($id);
                     }
                     if (empty($model) || $model->id == 0) {
                         $model = new $catalogClass();
                     }
                     echo CCModelHelper::addForm($model);
                 }
             }
         }
     }
     echo $cout;
 }
示例#21
0
</option>
                                <?php 
    }
    ?>
                            </select>
                        </div>
                    </div>
                    <div class="FPItem">
                        <div class="FPITitle">Цена</div>
                        <div class="FPIInput"><?php 
    echo CCModelHelper::getInputField($itemModel, "price");
    ?>
</div>
                    </div>
            <?php 
    $tableClass = SiteHelper::getCamelCase($cidOwner->table_name);
    $tableModel = new $tableClass();
    $i = 0;
    $arrSearcheFields = $tableModel->getSearchAttributes();
    $attributeLabels = $tableModel->attributeLabels();
    if (is_array($arrSearcheFields) && sizeof($arrSearcheFields) > 0) {
        foreach ($arrSearcheFields as $key) {
            $key = trim($key);
            ?>
                    <div class="FPItem">
                        <div class="FPITitle"><?php 
            echo !empty($attributeLabels[$key]) ? $attributeLabels[$key] : $key;
            ?>
</div>
                        <div class="FPIInput<?php 
            echo $i > 5 && (empty($_POST[$tableClass][$key]) && empty($_POST[$tableClass][$key . "_2"])) ? " displayNone" : "";
示例#22
0
            ?>
"><?php 
            echo $relationItem->name;
            ?>
</label></div>
                    <?php 
            if (property_exists($relationTable, "owner")) {
                ?>
                        <?php 
                foreach ($relationTable::fetchAll(DBQueryParamsClass::CreateParams()->setConditions("owner=:owner")->setParams(array("owner" => $relationItem->id))->setOrderBy("name")->setLimit(-1)->setCache(0)) as $relationSubItem) {
                    ?>
                            <div>&nbsp;--&nbsp;<input type="checkbox" <?php 
                    echo in_array($relationSubItem->id, $listValue) ? "checked=\"checked\"" : "";
                    ?>
 name="<?php 
                    echo SiteHelper::getCamelCase($form->tableName()) . "[" . $relation[1];
                    ?>
][]" value="<?php 
                    echo $relationSubItem->id;
                    ?>
" id="item_<?php 
                    echo $relation[1];
                    ?>
_<?php 
                    echo $relationSubItem->id;
                    ?>
" /><label for="item_<?php 
                    echo $relation[1];
                    ?>
_<?php 
                    echo $relationSubItem->id;
示例#23
0
 static function saveRelation(CCModel $model, $values)
 {
     foreach ($model->relations() as $value) {
         if ($value[0] == "CManyManyRelation") {
             $leftClass = $value[1];
             $rightClass = SiteHelper::getCamelCase($model->tableName());
             CatRelations::sql("DELETE FROM cat_relations WHERE ( leftClass='" . $leftClass . "' AND rightClass='" . $rightClass . "') OR ( leftClass='" . $rightClass . "' AND rightClass='" . $leftClass . "') ");
             foreach ($values as $value2) {
                 $new = new CatRelations();
                 $new->leftClass = $leftClass;
                 $new->rightClass = $rightClass;
                 $new->leftId = $value2;
                 $new->rightId = $model->id;
                 $new->save();
                 $new = new CatRelations();
                 $new->leftClass = $rightClass;
                 $new->rightClass = $leftClass;
                 $new->leftId = $model->id;
                 $new->rightId = $value2;
                 $new->save();
             }
         }
     }
 }
示例#24
0
 static function getInputField(CCModel $form, $field, $needEmpty = true)
 {
     $listType = $form->fieldType();
     $tableClass = SiteHelper::getCamelCase($form->tableName());
     $value = !empty($_POST[$tableClass]) && !empty($_POST[$tableClass][$field]) ? $_POST[$tableClass][$field] : "";
     $HTMLOption = "";
     $fieldType = $form->fieldType();
     if (!empty($listType[$field])) {
         $fieldName = $tableClass . "[" . $field . "]";
         switch ($listType[$field]) {
             case "checkbox":
                 $input = CHtml::checkBox($fieldName, $value);
                 break;
             case "visual_textarea":
                 $input = CHtml::textArea($fieldName, $value);
                 break;
             case "url":
                 $input = CHtml::activeUrlField($form, $field);
                 break;
             case "date":
                 $input = "от: " . CHtml::textField($fieldName, $value, array("class" => "yearField"));
                 $input .= "&nbsp;&nbsp;до: " . CHtml::textField($tableClass . "[" . $field . "_2]", $value, array("class" => "yearField"));
                 break;
         }
     }
     // Выводим списк связей
     if (empty($input)) {
         if ($relation = $form->getRelationByField($field)) {
             $input = '<select name="' . $tableClass . '[' . $field . ']" class="field_' . $field . '">';
             if (!empty($needEmpty)) {
                 $input .= '<option value=""> --- --- --- </option>';
             }
             $input .= CCModelHelper::getRelationListOptions($form, $field, CCModelHelper::getRelationItems($relation, $form), $value);
             $input .= '</select>';
         }
     }
     if (empty($input)) {
         if (!empty($fieldType[$field]) && $fieldType[$field] == "integer") {
             $value_2 = !empty($_POST[$tableClass]) && !empty($_POST[$tableClass][$field . "_2"]) ? $_POST[$tableClass][$field . "_2"] : "";
             $input = "от: " . CHtml::textField($fieldName, $value, array("class" => "yearField"));
             $input .= "&nbsp;&nbsp;до: " . CHtml::textField($tableClass . "[" . $field . "_2]", $value_2, array("class" => "yearField"));
         } else {
             $input = CHtml::activeTextField($form, $field);
         }
     }
     return $input;
     // Определяем это поле релайшин или нет
     // Если не релайшин то вывести <input type="text" иначе
 }