Пример #1
0
 public function deactivation($page_id = null)
 {
     $result = false;
     // доступно дл¤ пользователей первой роли (например, Ђ–еактивуї)
     $role_id = Users::model()->findByPk(Yii::app()->user->id)->role_id;
     if ($role_id < 2 && !is_null($page_id) && Pages::model()->existsPage($page_id)) {
         $link_id = ModulesInPages::model()->getLink($page_id, $this->id);
         if ($link_id) {
             $result = ModuleGallery::model()->deactivation($link_id, $this->id);
         }
     }
     return $result;
 }
Пример #2
0
 public function run($page_id = null)
 {
     $page_id = $this->page_id;
     $controller = Yii::app()->getController();
     $model = new ModuleGallery();
     if (!is_null($page_id) && Pages::model()->existsPage($page_id)) {
         $this->create_item($page_id, $model);
         $mpage_id = ModulesInPages::model()->getLink($page_id, $this->module_id);
         $data = ModuleGallery::model()->getList($mpage_id);
         $this->render('module_gallery', array('model' => $model, 'page_id' => $page_id, 'data' => $data));
     } else {
         $controller->redirect(Yii::app()->request->scriptUrl);
     }
 }
Пример #3
0
 public function deleteItem($mpage_id, $id)
 {
     $result = false;
     if (!is_null($id) && $this->existsItem($mpage_id, $id)) {
         // удаление всех альбомов
         if ($this->findByPk($id)->data_type_id == 8) {
             $data = ModuleList4::model()->getList($mpage_id);
             foreach ($data as $value) {
                 $list_item_id = $value->id;
                 $param_value = ModuleList4Values::model()->getItem($list_item_id, $id);
                 if (isset($param_value) && !empty($param_value['value']) && !is_null(ModuleGallery::model()->findByPk($param_value['value']))) {
                     $gallery_id = $param_value['value'];
                     ModuleGallery::model()->deleteItemById($gallery_id);
                 }
             }
         }
         if ($this->findByPk($id)->delete()) {
             $result = true;
         }
     }
     return $result;
 }
Пример #4
0
			<?php 
    if ($value['data_type_id'] == 8) {
        ?>
				<div id="param_<?php 
        echo $value['id'];
        ?>
" class="list4_gallery">
					<fieldset>
					<?php 
        if (!isset($params_values_list[$value['id']]) || empty($params_values_list[$value['id']]['value']) || is_null(ModuleGallery::model()->findByPk((int) $params_values_list[$value['id']]['value']))) {
            $id = $model->id;
            $param_id = $value['id'];
            $param_value = ModuleList4Values::model()->getItem($id, $param_id);
            if (count($param_value) == 0 || is_null(ModuleGallery::model()->findByPk((int) $param_value['value']))) {
                // галерея
                $gallery = new ModuleGallery();
                $gallery->attributes = array('title' => 'list4 # param_id = ' . $param_id . ', item_id = ' . $id, 'date' => date('Y-m-d'), 'active' => 1);
                if ($gallery->save()) {
                    if (count($param_value) == 0) {
                        $model = new ModuleList4Values();
                        $model->attributes = array('param_id' => $param_id, 'item_id' => $id, 'value' => $gallery->primaryKey);
                        $model->save();
                    } else {
                        ModuleList4Values::model()->new_value($id, $param_id, $gallery->primaryKey);
                    }
                    $params_values_list[$value['id']] = ModuleList4Values::model()->getItem($id, $param_id);
                }
            }
        }
        if (isset($params_values_list[$value['id']]) && !empty($params_values_list[$value['id']]['value']) && !is_null(ModuleGallery::model()->findByPk((int) $params_values_list[$value['id']]['value']))) {
            $gallery_id = (int) $params_values_list[$value['id']]['value'];
Пример #5
0
							<?php 
                $active_class = '';
                ?>
						<?php 
            }
            ?>
					</ul>
					<img class="rose2" src="/pics/i/rose2.png">
				</nav>
						<?php 
            $active_class = 'active';
            foreach ($t['child'] as $tch_id => $tch) {
                $active_modules = Modules::model()->getActiveModule($tch_id);
                if (count($active_modules) == 1 && array_key_exists(9, $active_modules)) {
                    $mpage_id = ModulesInPages::model()->getLink($tch_id, 'gallery');
                    $gallery = ModuleGallery::model()->getListPhotos($mpage_id, 1);
                    if (count($gallery)) {
                        ?>
							<section class="gallery view <?php 
                        echo $active_class;
                        ?>
" data-gal="<?php 
                        echo $tch_id;
                        ?>
">
								<div class="bigImage">
									<a href="javascript:void(0)" class="cLeft"><span class="arrow"></span></a>
									<a href="javascript:void(0)" class="cRight"><span class="arrow"></span></a>
									<div class="imgC">
										<?php 
                        foreach ($gallery as $g_id => $g) {
Пример #6
0
 public function deleteItem($link_id, $id, $module)
 {
     $result = false;
     if (!is_null($id) && $this->existsItem($link_id, $id)) {
         // удаление альбомов-параметров из модуля Gallery
         $params_list = ModuleList4Params::model()->getList($link_id);
         $params_values_list = ModuleList4Values::model()->getList($id);
         foreach ($params_list as $value) {
             if ($value['data_type_id'] == 7) {
                 if (isset($params_values_list[$value['id']]) && !empty($params_values_list[$value['id']]['value'])) {
                     $file_id = (int) $params_values_list[$value['id']]['value'];
                     Files::model()->deleteFile($file_id, $module);
                 }
             }
             if ($value['data_type_id'] == 8) {
                 if (isset($params_values_list[$value['id']]) && !empty($params_values_list[$value['id']]['value']) && !is_null(ModuleGallery::model()->findByPk((int) $params_values_list[$value['id']]['value']))) {
                     $gallery_id = (int) $params_values_list[$value['id']]['value'];
                     ModuleGallery::model()->deleteItemById($gallery_id);
                 }
             }
         }
         // удаление изображения
         $img_id = $this->findByPk($id)->img_id;
         if ($this->findByPk($id)->delete()) {
             Files::model()->deleteFile($img_id, $module);
             $result = true;
         }
     }
     return $result;
 }
Пример #7
0
 public function actionDeactivation($page_id = null)
 {
     $result = false;
     // доступно для пользователей первой роли (например, «Реактиву»)
     $role_id = Users::model()->findByPk(Yii::app()->user->id)->role_id;
     if ($role_id < 2 && !is_null($page_id) && Pages::model()->existsPage($page_id)) {
         $link_id = ModulesInPages::model()->getLink($page_id, $this->module->id);
         if ($link_id) {
             $result = ModuleGallery::model()->deactivation($link_id, $this->module->id);
         }
     }
     if ($result) {
         $this->redirect(Yii::app()->baseUrl . '?r=pages/update&id=' . $page_id . '&/#!/tab_fourth');
     } else {
         $this->redirect(Yii::app()->request->baseUrl . '/admin.php');
     }
 }
Пример #8
0
 public function create_item($page_id = null, $model)
 {
     $controller = Yii::app()->getController();
     if (isset($_POST['ModuleList4'])) {
         $mpage_id = ModulesInPages::model()->getLink($page_id, $this->module_id);
         $_POST['ModuleList4']['mpage_id'] = $mpage_id;
         if (!isset($_POST['ModuleList4']['date'])) {
             $_POST['ModuleList4']['date'] = date('Y-m-d');
         }
         $model->attributes = $_POST['ModuleList4'];
         if ((int) $_POST['ModuleList4']['img_id']) {
             Files::model()->saveTempFile((int) $_POST['ModuleList4']['img_id']);
         }
         if ($model->save()) {
             $item_id = $model->primaryKey;
             // обработка input-параметров
             if (isset($_POST['ModuleList4Values']) && is_array($_POST['ModuleList4Values']) && count($_POST['ModuleList4Values'])) {
                 foreach ($_POST['ModuleList4Values'] as $key => $value) {
                     if (is_array($value) && count($value)) {
                         foreach ($value as $key2 => $value2) {
                             $params_value = new ModuleList4Values();
                             $params_value->attributes = array('param_id' => (int) $key, 'item_id' => $item_id, 'value' => $value2);
                             $params_value->save();
                         }
                     } else {
                         $params_value = new ModuleList4Values();
                         $params_value->attributes = array('param_id' => (int) $key, 'item_id' => $item_id, 'value' => $value);
                         $params_value->save();
                     }
                 }
             }
             // активация (создание) альбомов для параметров типа «Фотогалерея»
             $params_list = ModuleList4Params::model()->getList($mpage_id);
             if (count($params_list)) {
                 foreach ($params_list as $key => $value) {
                     if ($value['data_type_id'] == 8) {
                         $param_id = $value['id'];
                         $id = $item_id;
                         $param_value = ModuleList4Values::model()->getItem($id, $param_id);
                         if (count($param_value) == 0 || is_null(ModuleGallery::model()->findByPk((int) $param_value['value']))) {
                             $gallery = new ModuleGallery();
                             $gallery->attributes = array('title' => 'list4 # param_id = ' . $param_id . ', item_id = ' . $id, 'date' => date('Y-m-d'), 'active' => 1);
                             if ($gallery->save()) {
                                 if (count($param_value) == 0) {
                                     $model = new ModuleList4Values();
                                     $model->attributes = array('param_id' => $param_id, 'item_id' => $id, 'value' => $gallery->primaryKey);
                                     $model->save();
                                 } else {
                                     ModuleList4Values::model()->new_value($id, $param_id, $gallery->primaryKey);
                                 }
                             }
                         }
                     }
                 }
             }
             Yii::app()->user->setFlash($this->module_id . '_add_message', '<p style="color:green;">Добавлено</p>');
             $controller->redirect(Yii::app()->baseUrl . '?r=pages/update&id=' . $page_id . '&/#!/tab_' . $this->module_id);
         } else {
             Yii::app()->user->setFlash($this->module_id . '_add_message', '<p style="color:red;">Ошибка</p>');
         }
     }
     return $model;
 }
Пример #9
0
 public function actionIndex($page_id = null)
 {
     $role_id = Users::model()->findByPk(Yii::app()->user->id)->role_id;
     if (!is_null($page_id) && Pages::model()->existsPage($page_id)) {
         $mpage_id = ModulesInPages::model()->getLink((int) $page_id, $this->module->id);
         if ($mpage_id > 0) {
             $model = new ModuleList4Params();
             if ($role_id < 2) {
                 if (isset($_POST['ModuleList4Params'])) {
                     $_POST['ModuleList4Params']['mpage_id'] = $mpage_id;
                     $model->attributes = $_POST['ModuleList4Params'];
                     if ($model->save()) {
                         $param_id = $model->primaryKey;
                         // активация (создание) альбомов для элементов списка
                         if ($model->data_type_id == 8) {
                             $data = ModuleList4::model()->getList($mpage_id);
                             if (count($data)) {
                                 foreach ($data as $key => $value) {
                                     $id = $value->id;
                                     $param_value = ModuleList4Values::model()->getItem($id, $param_id);
                                     if (count($param_value) == 0 || is_null(ModuleGallery::model()->findByPk((int) $param_value['value']))) {
                                         $gallery = new ModuleGallery();
                                         $gallery->attributes = array('title' => 'list4 # param_id = ' . $param_id . ', item_id = ' . $id, 'date' => date('Y-m-d'), 'active' => 1);
                                         if ($gallery->save()) {
                                             if (count($param_value) == 0) {
                                                 $model = new ModuleList4Values();
                                                 $model->attributes = array('param_id' => $param_id, 'item_id' => $id, 'value' => $gallery->primaryKey);
                                                 $model->save();
                                             } else {
                                                 ModuleList4Values::model()->new_value($id, $param_id, $gallery->primaryKey);
                                             }
                                         }
                                     }
                                 }
                             }
                         }
                         Yii::app()->user->setFlash($this->module->id . '_add_message', '<p style="color:green;">Добавлено</p>');
                         $this->redirect(Yii::app()->baseUrl . '?r=' . $this->module->id . '/params/index&page_id=' . $page_id);
                     } else {
                         Yii::app()->user->setFlash($this->module->id . '_add_message', '<p style="color:red;">Ошибка</p>');
                     }
                 }
                 if (isset($_POST['type']) && $_POST['type'] == $this->module->id) {
                     foreach (array('ids' => 'rktv_module_' . $this->module->id . '_params') as $k => $v) {
                         if (isset($_POST[$k]) && !empty($_POST[$k])) {
                             $out = "UPDATE {$v} SET order_id= CASE";
                             $id = $_POST[$k];
                             $id = explode(',', $id);
                             for ($i = count($id); $i > 0; $i--) {
                                 $out .= " WHEN id='" . intval($id[count($id) - $i]) . "' THEN '{$i}'";
                             }
                             $out .= " ELSE order_id END";
                             $connection = Yii::app()->db;
                             $command = $connection->createCommand($out);
                             $out = $command->execute();
                         }
                     }
                     Yii::app()->user->setFlash($this->module->id . '_order_message', '<p style="color:green;">Сохранено</p>');
                     $this->redirect(Yii::app()->baseUrl . '?r=' . $this->module->id . '/params/index&page_id=' . $page_id);
                 }
             }
             $list = ModuleList4Params::model()->getList($mpage_id);
             $data_type_drop_down_list = DataType::model()->getDropDownList();
             $module_settings = ModuleList4Settings::model()->getItem($mpage_id);
             $this->pageTitle = $module_settings->title . ' — Список параметров';
             $this->render('index', array('model' => $model, 'data_type_drop_down_list' => $data_type_drop_down_list, 'list' => $list, 'page_id' => $page_id, 'role_id' => $role_id));
         } else {
             $this->redirect(Yii::app()->baseUrl . '?r=pages/update&id=' . $page_id . '&/#!/tab_' . $this->module->id);
         }
     } else {
         $this->redirect(Yii::app()->request->scriptUrl);
     }
 }