Пример #1
0
 public function actionUpdate($id)
 {
     $model = $this->findModel($id);
     $model->setScenario('admin-edit-page-static');
     if ($model->load(Yii::$app->request->post()) && $model->save()) {
         $lang = $this->prepareLang(Yii::$app->request->post());
         $translate = $this->getTranslateModel($model->id, $lang);
         if ($translate->load(Yii::$app->request->post()) && $translate->save()) {
             Yii::$app->session->setFlash('success', Yii::t('posts', 'Post \'{id}\' successfully updated', ['id' => $model->id]));
         }
         return $this->redirect(['index']);
     } else {
         $translates = [];
         foreach (Yii::$app->params['languages'] as $lang => $val) {
             $translates[] = $this->getTranslateModel($id, $lang);
         }
         $postStatuses = Post::getStatusArray();
         return $this->render('create', ['model' => $model, 'translates' => $translates, 'postStatuses' => $postStatuses, 'rubrics' => Rubric::getRubricsForSelect($model->app_id)]);
     }
 }
Пример #2
0
 /**
  * @inheritdoc
  */
 public function rules()
 {
     return [['alias', 'string'], ['title', 'string'], ['views', 'integer'], ['author_id', 'integer'], ['status', 'in', 'range' => array_keys(Post::getStatusArray())]];
 }
Пример #3
0
<?php

use yii\helpers\Html;
use kartik\grid\GridView;
use kartik\icons\Icon;
use common\models\User;
use tpoxa\cmars\models\Post;
$this->title = Yii::t('pages', 'Posts');
$this->params['breadcrumbs'][] = $this->title;
?>

<div class="row">
    <div class="col-lg-12">
        <?php 
echo GridView::widget(['dataProvider' => $dataProvider, 'filterModel' => $searchModel, 'responsive' => true, 'hover' => true, 'showPageSummary' => false, 'showFooter' => false, 'export' => false, 'panel' => ['heading' => '<h3 class="panel-title">' . Icon::show('lock') . Yii::t('pages', 'Pages') . '</h3>', 'type' => 'default', 'before' => Html::a(Icon::show('plus') . Yii::t('pages', 'Create'), ['create'], ['class' => 'btn btn-success']), 'after' => Html::a(Icon::show('repeat') . Yii::t('pages', 'Reset'), ['index'], ['class' => 'btn btn-info'])], 'columns' => [['class' => 'kartik\\grid\\SerialColumn'], 'title', 'alias', ['attribute' => 'status', 'vAlign' => 'middle', 'value' => function ($model) {
    $postStatuses = Post::getStatusArray();
    return $postStatuses[$model->status];
}, 'filter' => Html::activeDropDownList($searchModel, 'status', $postStatuses, ['class' => 'form-control', 'prompt' => Yii::t('pages', 'Status')])], 'views', ['header' => Yii::t('pages', 'Actions'), 'class' => 'kartik\\grid\\ActionColumn', 'dropdown' => false, 'width' => '200px', 'viewOptions' => ['title' => Yii::t('pages', 'Details')], 'updateOptions' => ['title' => Yii::t('pages', 'Edit page')], 'deleteOptions' => ['title' => Yii::t('pages', 'Delete action')]], ['class' => 'kartik\\grid\\CheckboxColumn']]]);
?>
    </div>
</div>