public function actionIndex() { if (isset($_GET['id'])) { $model = News::model()->findByPk($_GET['id']); $model_photo = Photo::model()->getPhotoByAlbum($_GET['id']); //print_r($model_photo); $this->render('detail', array('model' => $model, 'model_photo' => $model_photo)); } else { if ($_GET['type_id']) { $criteria = new CDbCriteria(); $criteria->select = '*'; $criteria->condition = 'status = 1 AND news_type_id=' . $_GET['type_id']; $criteria->order = "create_date desc,news_id desc"; $total = News::model()->count($criteria); $pages = new CPagination($total); $pages->setPageSize(20); $pages->applyLimit($criteria); $model = News::model()->findAll($criteria); $type = NewsType::model()->findByPk($_GET['type_id']); $this->render('index', array('model' => $model, 'type' => $type, 'pages' => $pages)); } else { if ($_GET['group']) { $criteria = new CDbCriteria(); $criteria->select = '*'; $criteria->condition = 'status = 1 AND (news_type_id <> 2 AND news_type_id <> 3) AND news_group_id=' . $_GET['group']; $criteria->order = "create_date desc,news_id desc"; $total = News::model()->count($criteria); $pages = new CPagination($total); $pages->setPageSize(20); $pages->applyLimit($criteria); $model = News::model()->findAll($criteria); $group = NewsGroup::model()->findByPk($_GET['group']); $this->render('index', array('model' => $model, 'group' => $group, 'pages' => $pages)); } else { $news_criteria = new CDbCriteria(); $news_criteria->condition = "status = 1 AND (news_type_id <> 2 AND news_type_id <> 3)"; $news_criteria->order = "create_date desc,news_id desc"; $news_total = News::model()->count($news_criteria); $pages = new CPagination($news_total); $pages->setPageSize(10); $pages->applyLimit($news_criteria); $model = News::model()->findAll($news_criteria); $this->render('index', array('model' => $model, 'pages' => $pages)); } } } }
<li><a href="<?php echo Yii::app()->createUrl('news/media'); ?> ">จากสื่อ</a></li> <li><a href="<?php echo Yii::app()->createUrl('event'); ?> ">ปฏิทินกิจกรรม</a></li> </ul>--> <ul> <?php $criteria = new CDbCriteria(); $criteria->select = '*'; $criteria->condition = '(news_type_id <> 2 AND news_type_id <> 3)'; $criteria->order = 'sort_order'; $NewsType = NewsType::model()->findAll($criteria); foreach ($NewsType as $group) { ?> <li><a href="<?php echo Yii::app()->createUrl('news', array('type_id' => $group->news_type_id)); ?> "><?php echo $group->name_th; ?> </a></li> <?php } ?> </ul> </li> <li><a <?php
/** * Manages all models. */ public function actionAdmin() { if ($this->menu_use[3]) { $model = new News('search'); $news_type_list = array(); $criteria = new CDbCriteria(); $criteria->condition = 'status=:status AND news_type_id<>2 AND news_type_id<>3'; $criteria->params = array(':status' => 1); $criteria->order = 'sort_order'; $news_type = NewsType::model()->findAll($criteria); foreach ($news_type as $type) { $news_type_list[$type->news_type_id] = $type->name_th; } $news_group_list = array(); $criteria2 = new CDbCriteria(); $criteria2->condition = 'status=:status AND news_type_id<>2 AND news_type_id<>3'; $criteria2->params = array(':status' => 1); $criteria2->order = 'sort_order'; $news_group = NewsGroup::model()->findAll($criteria2); foreach ($news_group as $group) { $news_group_list[$group->news_group_id] = $group->name_th; } $model->unsetAttributes(); // clear any default values if (isset($_GET['News'])) { $model->attributes = $_GET['News']; } $this->render('admin', array('model' => $model, 'news_type_list' => $news_type_list, 'news_group_list' => $news_group_list)); } else { $this->redirect(array('site/index')); } }
/** * Returns the data model based on the primary key given in the GET variable. * If the data model is not found, an HTTP exception will be raised. * @param integer $id the ID of the model to be loaded * @return NewsType the loaded model * @throws CHttpException */ public function loadModel($id) { $model = NewsType::model()->findByPk($id); if ($model === null) { throw new CHttpException(404, 'The requested page does not exist.'); } return $model; }
<?php /* @var $this NewsController */ /* @var $model News */ $this->breadcrumbs = array('ประชาสัมพันธ์/กิจกรรม' => array('index'), 'จัดการข้อมูล'); $this->menu = array(array('label' => 'เพิ่มข้อมูล', 'url' => array('create'))); Yii::app()->clientScript->registerScript('search', "\n\$('.search-button').click(function(){\n\t\$('.search-form').toggle();\n\treturn false;\n});\n\$('.search-form form').submit(function(){\n\t\$('#news-grid').yiiGridView('update', {\n\t\tdata: \$(this).serialize()\n\t});\n\treturn false;\n});\n"); ?> <h1>จัดการประชาสัมพันธ์/กิจกรรม</h1> <?php echo CHtml::link('ค้นหาแบบละเอียด', '#', array('class' => 'search-button')); ?> <div class="search-form" style="display:none"> <?php $this->renderPartial('_search', array('model' => $model, 'news_type_list' => $news_type_list, 'news_group_list' => $news_group_list)); ?> </div><!-- search-form --> <?php $this->widget('zii.widgets.grid.CGridView', array('id' => 'news-grid', 'dataProvider' => $model->search(), 'filter' => $model, 'columns' => array(array('header' => 'ลำดับ', 'type' => 'raw', 'value' => '$this->grid->dataProvider->pagination->currentPage*$this->grid->dataProvider->pagination->pageSize + $row+1', 'htmlOptions' => array('style' => 'text-align: center;width: 30px;')), array('name' => 'name_th', 'header' => 'หัวข้อข่าว', 'htmlOptions' => array('style' => 'text-align: left;')), array('name' => 'news_type_id', 'header' => 'ประเภทหลัก', 'value' => '$data->newsType->name_th', 'htmlOptions' => array('style' => 'text-align: left;width: 120px;'), 'filter' => CHtml::listData(NewsType::model()->findAll('status=1 AND news_type_id<>2 AND news_type_id<>3'), 'news_type_id', 'name_th')), array('name' => 'news_group_id', 'header' => 'ประเภทย่อย', 'value' => '$data->newsGroup->name_th', 'htmlOptions' => array('style' => 'text-align: left;width: 120px;'), 'filter' => CHtml::listData(NewsGroup::model()->findAll('status=1'), 'news_group_id', 'name_th')), array('name' => 'status', 'value' => '($data->status)? \'แสดง\' : \'ไม่แสดง\'', 'htmlOptions' => array('style' => 'text-align: center;width: 50px;'), 'filter' => array('1' => 'แสดง', '0' => 'ไม่แสดง')), array('class' => 'CButtonColumn', 'template' => '{update} {delete}', 'headerHtmlOptions' => array('style' => 'width:40px;'), 'htmlOptions' => array('style' => 'width:40px; text-align:center')))));