1
0
www.mikescher.com/www/protected/controllers/ProgramupdatesController.php
2014-07-30 20:22:54 +02:00

127 lines
2.9 KiB
PHP

<?php
class ProgramUpdatesController extends MSController
{
public $menu=array();
public $layout='//layouts/column2';
public function filters()
{
return array(
'accessControl', // perform access control for CRUD operations
'postOnly + delete', // we only allow deletion via POST request
);
}
public function accessRules()
{
return array(
array('allow', // allow admin user to perform 'admin' and 'delete' actions
'actions'=>array('index','view','create','update','admin','delete'),
'users'=>array('admin'),
),
array('deny', // deny all users
'users'=>array('*'),
),
);
}
public function actionView($id)
{
$this->render('view',array(
'model'=>$this->loadModel($id),
));
}
public function actionCreate()
{
$model=new ProgramUpdates;
// Uncomment the following line if AJAX validation is needed
// $this->performAjaxValidation($model);
if (isset($_POST['ProgramUpdates'])) {
$model->attributes=$_POST['ProgramUpdates'];
if ($model->save()) {
$this->redirect(array('view','id'=>$model->Name));
}
}
$this->render('create',array(
'model'=>$model,
));
}
public function actionUpdate($id)
{
$model=$this->loadModel($id);
// Uncomment the following line if AJAX validation is needed
// $this->performAjaxValidation($model);
if (isset($_POST['ProgramUpdates'])) {
$model->attributes=$_POST['ProgramUpdates'];
if ($model->save()) {
$this->redirect(array('view','id'=>$model->Name));
}
}
$this->render('update',array(
'model'=>$model,
));
}
public function actionDelete($id)
{
if (Yii::app()->request->isPostRequest) {
// we only allow deletion via POST request
$this->loadModel($id)->delete();
// if AJAX request (triggered by deletion via admin grid view), we should not redirect the browser
if (!isset($_GET['ajax'])) {
$this->redirect(isset($_POST['returnUrl']) ? $_POST['returnUrl'] : array('admin'));
}
} else {
throw new CHttpException(400,'Invalid request. Please do not repeat this request again.');
}
}
public function actionIndex()
{
$dataProvider=new CActiveDataProvider('ProgramUpdates');
$this->render('index',array(
'dataProvider'=>$dataProvider,
));
}
public function actionAdmin()
{
$model=new ProgramUpdates('search');
$model->unsetAttributes(); // clear any default values
if (isset($_GET['ProgramUpdates'])) {
$model->attributes=$_GET['ProgramUpdates'];
}
$this->render('admin',array(
'model'=>$model,
));
}
public function loadModel($id)
{
$model=ProgramUpdates::model()->findByPk($id);
if ($model===null) {
throw new CHttpException(404,'The requested page does not exist.');
}
return $model;
}
protected function performAjaxValidation($model)
{
if (isset($_POST['ajax']) && $_POST['ajax']==='program-updates-form') {
echo CActiveForm::validate($model);
Yii::app()->end();
}
}
}