array('index', 'ajaxMarkdownPreview'), 'users'=>array('*'), ), array('allow', 'actions'=>array('create','update','admin','delete','view'), 'users'=>array('admin'), ), array('deny', 'users'=>array('*'), ), ); } /** * Lists all models. */ public function actionIndex($logid) { $this->layout='//layouts/main'; $criteria = new CDbCriteria; $criteria->order = "date DESC"; $all = Log::model()->findAll($criteria); /* @var $all Log[] */ $this->render('index', [ 'logs' => $all, 'logid' => $logid, ]); } public function actionAjaxMarkdownPreview() { if(Yii::app()->request->isAjaxRequest){ $this->renderPartial('_ajaxMarkdownPreview', [ 'content' => $_POST['content'], ], false, true); } else { throw new CHttpException(400,'Invalid request. This is a Ajax only action.'); } } /** * Displays a particular model. * @param integer $id the ID of the model to be displayed */ public function actionView($id) { $this->render('view',array( 'model'=>$this->loadModel($id), )); } /** * Creates a new model. * If creation is successful, the browser will be redirected to the 'view' page. */ public function actionCreate() { $model=new Log; // Uncomment the following line if AJAX validation is needed // $this->performAjaxValidation($model); if(isset($_POST['Log'])) { $model->attributes=$_POST['Log']; if($model->save()) $this->redirect(array('view','id'=>$model->ID)); } $this->render('create',array( 'model'=>$model, )); } /** * 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($id) { $model=$this->loadModel($id); // Uncomment the following line if AJAX validation is needed // $this->performAjaxValidation($model); if(isset($_POST['Log'])) { $model->attributes=$_POST['Log']; if($model->save()) $this->redirect(array('view','id'=>$model->ID)); } $this->render('update',array( 'model'=>$model, )); } /** * Deletes a particular model. * If deletion is successful, the browser will be redirected to the 'admin' page. * @param integer $id the ID of the model to be deleted * @throws CHttpException */ 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.'); // } } /** * Manages all models. */ public function actionAdmin() { $model=new Log('search'); $model->unsetAttributes(); // clear any default values if(isset($_GET['Log'])) $model->attributes=$_GET['Log']; $this->render('admin',array( 'model'=>$model, )); } /** * 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 Log the loaded model * @throws CHttpException */ public function loadModel($id) { $model=Log::model()->findByPk($id); if($model===null) throw new CHttpException(404,'The requested page does not exist.'); return $model; } /** * Performs the AJAX validation. * @param Log $model the model to be validated */ protected function performAjaxValidation($model) { if(isset($_POST['ajax']) && $_POST['ajax']==='log-form') { echo CActiveForm::validate($model); Yii::app()->end(); } } }