Not a member of Pastebin yet?
                        Sign Up,
                        it unlocks many cool features!                    
                - <?php
 - class LinkController extends RController
 - {
 - /**
 - * @var string the default layout for the views. Defaults to '//layouts/column2', meaning
 - * using two-column layout. See 'protected/views/layouts/column2.php'.
 - */
 - public $layout='application.modules.admin.views.layouts.column2';
 - /**
 - * @return array action filters
 - */
 - public function filters()
 - {
 - return array(
 - 'rights',
 - //'accessControl', // perform access control for CRUD operations
 - //'postOnly + delete', // we only allow deletion via POST request
 - );
 - }
 - /**
 - * Specifies the access control rules.
 - * This method is used by the 'accessControl' filter.
 - * @return array access control rules
 - */
 - public function accessRules()
 - {
 - return array(
 - array('allow', // allow all users to perform 'index' and 'view' actions
 - 'actions'=>array('index','view'),
 - 'users'=>array('*'),
 - ),
 - array('allow', // allow authenticated user to perform 'create' and 'update' actions
 - 'actions'=>array('create','update'),
 - 'users'=>array('@'),
 - ),
 - array('allow', // allow admin user to perform 'admin' and 'delete' actions
 - 'actions'=>array('admin','delete'),
 - 'users'=>array('admin'),
 - ),
 - array('deny', // deny all users
 - 'users'=>array('*'),
 - ),
 - );
 - }
 - /**
 - * Displays a particular model.
 - * @param integer $id the ID of the model to be displayed
 - */
 - public function actionView($id)
 - {
 - $this->layout = '//layouts/main';
 - $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 Link;
 - // Uncomment the following line if AJAX validation is needed
 - // $this->performAjaxValidation($model);
 - if(isset($_POST['Link']))
 - {
 - $model->attributes=$_POST['Link'];
 - if($model->save())
 - $this->redirect(array('admin'));
 - }
 - $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['Link']))
 - {
 - $model->attributes=$_POST['Link'];
 - if($model->save())
 - $this->redirect(array('admin'));
 - }
 - $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
 - */
 - 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.');
 - }
 - /**
 - * Lists all models.
 - */
 - public function actionIndex()
 - {
 - $this->layout = '//layouts/column2';
 - $model=new Link('search');
 - $model->unsetAttributes(); // clear any default values
 - if(isset($_GET['Link']))
 - $model->attributes=$_GET['Link'];
 - $this->render('index',array(
 - 'model'=>$model,
 - ));
 - }
 - /**
 - * Manages all models.
 - */
 - public function actionAdmin()
 - {
 - $model=new Link('search');
 - $model->unsetAttributes(); // clear any default values
 - if(isset($_GET['Link']))
 - $model->attributes=$_GET['Link'];
 - $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 the ID of the model to be loaded
 - */
 - public function loadModel($id)
 - {
 - $model=Link::model()->findByPk($id);
 - if($model===null)
 - throw new CHttpException(404,'The requested page does not exist.');
 - return $model;
 - }
 - /**
 - * Performs the AJAX validation.
 - * @param CModel the model to be validated
 - */
 - protected function performAjaxValidation($model)
 - {
 - if(isset($_POST['ajax']) && $_POST['ajax']==='link-form')
 - {
 - echo CActiveForm::validate($model);
 - Yii::app()->end();
 - }
 - }
 - }
 - <?php
 - $this->breadcrumbs=array(
 - 'Links'=>array('index'),
 - 'Manage',
 - );
 - $this->menu=array(
 - array('label'=>'List Link','url'=>array('index')),
 - array('label'=>'Create Link','url'=>array('create')),
 - );
 - ?>
 - <div class="page-header">
 - <h3>Менеджер Ссылок</h3>
 - </div>
 - <?php $this->widget('bootstrap.widgets.TbGridView',array(
 - 'id'=>'link-grid',
 - 'dataProvider'=>$model->searchIndex(),
 - 'filter'=>$model,
 - 'type'=>'striped bordered condensed',
 - 'template'=>'{items}{pager}<br>{summary}',
 - 'columns'=>array(
 - 'id',
 - 'title',
 - 'link',
 - array(
 - 'name'=>'category_id',
 - 'type'=>'raw',
 - 'value'=>'$data->linkcategorys->title'
 - ),
 - array(
 - 'class'=>'bootstrap.widgets.TbButtonColumn',
 - ),
 - ),
 - )); ?>
 
Advertisement
 
                    Add Comment                
                
                        Please, Sign In to add comment