Example #1
0
 public function init()
 {
     $defaultColumns = [];
     if ($this->enabledCheckbox) {
         $defaultColumns[] = ['class' => 'skeeks\\cms\\modules\\admin\\grid\\CheckboxColumn'];
     }
     if ($this->adminController) {
         $defaultColumns[] = ['class' => \skeeks\cms\modules\admin\grid\ActionColumn::className(), 'controller' => $this->adminController, 'isOpenNewWindow' => $this->isOpenNewWindow];
     }
     $defaultColumns[] = ['class' => 'yii\\grid\\SerialColumn', 'visible' => false];
     $this->columns = ArrayHelper::merge($defaultColumns, $this->columns);
     parent::init();
 }
Example #2
0
<?php

/**
 * index
 *
 * @author Semenov Alexander <*****@*****.**>
 * @link http://skeeks.com/
 * @copyright 2010-2014 SkeekS (Sx)
 * @date 30.10.2014
 * @since 1.0.0
 */
/* @var $this yii\web\View */
/* @var $searchModel common\models\searchs\Game */
/* @var $dataProvider yii\data\ActiveDataProvider */
?>

<?php 
echo \skeeks\cms\modules\admin\widgets\GridViewHasSettings::widget(['dataProvider' => $dataProvider, 'filterModel' => $searchModel, 'columns' => [['class' => 'yii\\grid\\SerialColumn'], ['class' => \skeeks\cms\modules\admin\grid\ActionColumn::className(), 'controller' => $controller], 'groupname', 'description', ['class' => \skeeks\cms\grid\CreatedAtColumn::className()], ['class' => \skeeks\cms\grid\UpdatedAtColumn::className()], ['class' => \skeeks\cms\grid\CreatedByColumn::className()], ['class' => \skeeks\cms\grid\UpdatedByColumn::className()]]]);
Example #3
0
 public function run()
 {
     if ($this->parentModel->isNewRecord) {
         return "";
     }
     /**
      * @var $controller AdminModelEditorController
      */
     $controller = \Yii::$app->createController($this->controllerRoute)[0];
     $rerlation = [];
     foreach ($this->relation as $relationLink => $parent) {
         if ($this->parentModel->getAttribute($parent)) {
             $rerlation[$relationLink] = $this->parentModel->{$parent};
         } else {
             $rerlation[$relationLink] = $parent;
         }
     }
     $createUrl = \skeeks\cms\helpers\UrlHelper::construct($this->controllerRoute . '/' . $this->controllerCreateAction, $rerlation)->setSystemParam(\skeeks\cms\modules\admin\Module::SYSTEM_QUERY_EMPTY_LAYOUT, 'true')->setSystemParam(\skeeks\cms\modules\admin\Module::SYSTEM_QUERY_NO_ACTIONS_MODEL, 'true')->enableAdmin()->toString();
     $sortableUrl = \skeeks\cms\helpers\UrlHelper::construct($this->controllerRoute . '/' . $this->controllerSortableAction)->enableAdmin()->toString();
     $search = new \skeeks\cms\models\Search($controller->modelClassName);
     $search->getDataProvider()->query->where($rerlation);
     if (isset($this->sort['defaultOrder'])) {
         $search->getDataProvider()->sort->defaultOrder = $this->sort['defaultOrder'];
     }
     if ($this->dataProviderCallback && is_callable($this->dataProviderCallback)) {
         $function = $this->dataProviderCallback;
         $function($search->getDataProvider());
     }
     $pjaxId = "sx-table-" . md5($this->label . $this->hint . $this->parentModel->className());
     $gridOptions = ArrayHelper::merge(['pjaxOptions' => ['id' => $pjaxId], "sortableOptions" => ['backend' => $sortableUrl], 'dataProvider' => $search->getDataProvider(), 'layout' => "\n{beforeTable}\n{items}\n{afterTable}\n{pager}", 'columns' => [['class' => \skeeks\cms\modules\admin\grid\ActionColumn::className(), 'controller' => $controller, 'isOpenNewWindow' => true]]], (array) $this->gridViewOptions);
     return $this->render('related-models-grid', ['widget' => $this, 'createUrl' => $createUrl, 'controller' => $controller, 'gridOptions' => $gridOptions, 'pjaxId' => $pjaxId]);
 }
Example #4
0
                {
                    _.delay(function()
                    {
                        \$.pjax.reload('#sx-storage-files', {});
                    }, 500)

                }
JS
)]]);
?>
        <p></p>
        <? $dataProvider->pagination->defaultPageSize = 10; ?>
        <?php 
echo \skeeks\cms\modules\admin\widgets\GridViewHasSettings::widget(['dataProvider' => $dataProvider, 'filterModel' => $search->getLoadedModel(), 'pjaxOptions' => ['id' => 'sx-storage-files'], 'columns' => [['class' => \yii\grid\DataColumn::className(), 'value' => function (\skeeks\cms\models\StorageFile $model) {
    return \yii\helpers\Html::a('<i class="glyphicon glyphicon-circle-arrow-left"></i> ' . \Yii::t('skeeks/cms', 'Choose file'), $model->src, ['class' => 'btn btn-primary', 'onclick' => 'sx.SelectFile.submit("' . $model->src . '"); return false;', 'data-pjax' => 0]);
}, 'format' => 'raw'], ['class' => \skeeks\cms\modules\admin\grid\ActionColumn::className(), 'controller' => \Yii::$app->createController('cms/admin-storage-files')[0], 'isOpenNewWindow' => true], ['class' => \yii\grid\DataColumn::className(), 'value' => function (\skeeks\cms\models\StorageFile $model) {
    if ($model->isImage()) {
        $smallImage = \Yii::$app->imaging->getImagingUrl($model->src, new \skeeks\cms\components\imaging\filters\Thumbnail());
        return "<a href='" . $model->src . "' data-pjax='0' class='sx-fancybox' title='" . \Yii::t('skeeks/cms', 'Increase') . "'>\n                                    <img src='" . $smallImage . "' />\n                                </a>";
    }
    return \yii\helpers\Html::tag('span', $model->extension, ['class' => 'label label-primary', 'style' => 'font-size: 18px;']);
}, 'format' => 'raw'], 'name', ['class' => \yii\grid\DataColumn::className(), 'value' => function (\skeeks\cms\models\StorageFile $model) {
    $model->cluster_id;
    $cluster = \Yii::$app->storage->getCluster($model->cluster_id);
    return $cluster->name;
}, 'filter' => \yii\helpers\ArrayHelper::map(\Yii::$app->storage->getClusters(), 'id', 'name'), 'format' => 'html', 'attribute' => 'cluster_id'], ['attribute' => 'mime_type', 'filter' => \yii\helpers\ArrayHelper::map(\skeeks\cms\models\StorageFile::find()->groupBy(['mime_type'])->all(), 'mime_type', 'mime_type')], ['attribute' => 'extension', 'filter' => \yii\helpers\ArrayHelper::map(\skeeks\cms\models\StorageFile::find()->groupBy(['extension'])->all(), 'extension', 'extension')], ['class' => \skeeks\cms\grid\FileSizeColumnData::className(), 'attribute' => 'size'], ['class' => \skeeks\cms\grid\CreatedAtColumn::className()], ['class' => \skeeks\cms\grid\CreatedByColumn::className()]]]);
?>

<?php 
echo $form->fieldSetEnd();
?>
Example #5
0
 public function init()
 {
     $this->columns = ArrayHelper::merge([['class' => 'skeeks\\cms\\modules\\admin\\grid\\CheckboxColumn'], ['class' => \skeeks\cms\modules\admin\grid\ActionColumn::className(), 'controller' => $this->adminController, 'isOpenNewWindow' => $this->isOpenNewWindow], ['class' => 'yii\\grid\\SerialColumn', 'visible' => false]], $this->columns);
     parent::init();
 }