コード例 #1
0
    echo Html::tag('span', Yii::t('gromver.platform', 'Language'), ['class' => 'navbar-text']) . ' ';
    ?>
        <div class="btn-group">
            <?php 
    echo implode('', array_map(function ($language) {
        return Html::a($language, Yii::$app->urlManager->createUrl(Yii::$app->getHomeUrl(), $language), ['class' => 'btn navbar-btn btn-xs' . ($language === Yii::$app->language ? ' btn-primary active' : ' btn-default')]);
    }, Yii::$app->acceptedLanguages));
    ?>
        </div>
    </div>
    <div class="navbar-text navbar-right">
        <i class="glyphicon glyphicon-log-in"></i>&nbsp;&nbsp;
        <?php 
    $loginUrl = Yii::$app->user->loginUrl;
    $loginUrl['modal'] = 1;
    echo ModalIFrame::widget(['options' => ['class' => 'navbar-link'], 'popupOptions' => ['class' => 'auth-popup'], 'label' => Yii::t('gromver.platform', 'Login'), 'url' => $loginUrl]);
    ?>
    </div>
<?php 
} else {
    $items = [];
    if (Yii::$app->user->can('administrate')) {
        $items[] = ['label' => '<i class="glyphicon glyphicon-cog"></i> ' . Yii::t('gromver.platform', 'Admin Panel'), 'url' => ['/grom/backend/default/index']];
        /** @var \gromver\platform\basic\modules\menu\models\MenuItem $activeMenu */
        if ($activeMenu = Yii::$app->menuManager->activeMenu) {
            $items[] = ['label' => '<i class="glyphicon glyphicon-pencil"></i> ' . $activeMenu->getLinkTitle(), 'url' => ['/grom/menu/backend/item/update', 'id' => $activeMenu->id, 'backUrl' => Yii::$app->urlManager->createUrl($activeMenu->getFrontendViewLink())]];
        }
        $items[] = '<li class="divider"></li>';
    }
    $items[] = ['label' => '<i class="glyphicon glyphicon-log-out"></i> ' . Yii::t('gromver.platform', 'Logout'), 'url' => ['/grom/auth/default/logout']];
    ?>
コード例 #2
0
ファイル: update.php プロジェクト: gromver/yii2-platform
<?php

use yii\helpers\Html;
/* @var $this yii\web\View */
/* @var $model gromver\platform\common\models\Page */
$this->title = Yii::t('gromver.platform', 'Update Page: {title}', ['title' => $model->title]);
$this->params['breadcrumbs'][] = ['label' => Yii::t('gromver.platform', 'Pages'), 'url' => ['index']];
$this->params['breadcrumbs'][] = ['label' => $model->title, 'url' => ['view', 'id' => $model->id]];
$this->params['breadcrumbs'][] = Yii::t('gromver.platform', 'Update');
?>

<div class="page-update">

    <h1><?php 
echo Html::encode($this->title);
?>
</h1>

    <p>
        <?php 
echo \gromver\widgets\ModalIFrame::widget(['modalOptions' => ['header' => Yii::t('gromver.platform', 'Item Versions Manager - "{title}" (ID:{id})', ['title' => $model->title, 'id' => $model->id]), 'size' => \yii\bootstrap\Modal::SIZE_LARGE], 'buttonContent' => Html::a('<i class="glyphicon glyphicon-hdd"></i> ' . Yii::t('gromver.platform', 'Versions'), ['/grom/version/default/item', 'item_id' => $model->id, 'item_class' => $model->className()], ['class' => 'btn btn-default btn-sm'])]);
?>
    </p>

    <?php 
echo $this->render('_form', ['model' => $model]);
?>

</div>
コード例 #3
0
    <div class="input-group navbar-right">
        <?php 
    echo Html::tag('span', Yii::t('gromver.platform', 'Language'), ['class' => 'navbar-text']) . '&nbsp;';
    ?>
        <div class="btn-group">
            <?php 
    echo implode('', array_map(function ($language) {
        return Html::a($language, Yii::$app->urlManager->createUrl(Yii::$app->getHomeUrl(), $language), ['class' => 'btn navbar-btn btn-xs' . ($language === Yii::$app->language ? ' btn-primary active' : ' btn-default')]);
    }, Yii::$app->languages));
    ?>
        </div>
    </div>
    <?php 
    $loginUrl = Yii::$app->user->loginUrl;
    $loginUrl['modal'] = 1;
    echo ModalIFrame::widget(['buttonOptions' => ['tag' => 'div', 'class' => 'navbar-text navbar-right'], 'modalOptions' => ['size' => Modal::SIZE_DEFAULT, 'closeButton' => false], 'iframeOptions' => ['height' => '320px'], 'buttonContent' => '<i class="glyphicon glyphicon-log-in"></i>&nbsp;&nbsp;' . Html::a(Yii::t('gromver.platform', 'Login'), $loginUrl, ['class' => 'navbar-link'])]);
} else {
    $items = [];
    if (Yii::$app->user->can('administrate')) {
        $items[] = ['label' => '<i class="glyphicon glyphicon-cog"></i> ' . Yii::t('gromver.platform', 'Admin Panel'), 'url' => Yii::$app->urlManagerBackend->createUrl('/')];
        /*$items[] = ModalIFrame::widget([
              'buttonOptions' => [
                  'tag' => 'li'
              ],
              'modalOptions' => [
                  'size' => Modal::SIZE_LARGE,
                  'closeButton' => false
              ],
              'buttonContent' => Html::a('<i class="glyphicon glyphicon-pencil"></i> ' . Yii::t('gromver.platform', 'Configuration'), ['/grom/default/params', 'modal' => 1])
          ]);*/
        $items[] = ['label' => '<i class="glyphicon glyphicon-trash"></i> ' . Yii::t('gromver.platform', 'Flush Cache'), 'url' => ['/grom/default/flush-cache']];
コード例 #4
0
ファイル: _form.php プロジェクト: gromver/yii2-platform-basic
    </div>

    <div class="row">
        <div class="col-sm-6">
            <?php 
$idTags = Html::getInputId($model, 'tags');
$handlerJs = <<<JS
function(data) {
    var select = \$("#{$idTags}").append('<option value="' + data.id + '">' + data.title + '</option>'),
        selectedValues = select.val() || [];
        selectedValues.push(data.id);

    select.val(\$.unique(selectedValues)).trigger('change');
}
JS;
echo $form->field($model, 'tags', ['wrapperOptions' => ['class' => 'col-sm-9'], 'inputTemplate' => '<div class="input-group select2-bootstrap-append">{input}' . \gromver\widgets\ModalIFrame::widget(['options' => ['class' => 'input-group-addon', 'title' => \Yii::t('gromver.platform', 'Select Tag')], 'label' => '<i class="glyphicon glyphicon-folder-open"></i>', 'url' => ['/grom/tag/backend/default/select', 'modal' => true], 'handler' => $handlerJs, 'actionHandler' => 'function(url) {return (new URI(url)).addSearch("TagSearch[language]", $("#' . $idLanguage . '").val())}']) . \gromver\widgets\ModalIFrame::widget(['options' => ['class' => 'input-group-addon', 'title' => \Yii::t('gromver.platform', 'Add Tag')], 'label' => '<i class="glyphicon glyphicon-plus"></i>', 'url' => ['/grom/tag/backend/default/create', 'modal' => true], 'handler' => $handlerJs, 'actionHandler' => 'function(url) {return (new URI(url)).addSearch("language", $("#' . $idLanguage . '").val())}']) . '</div>'])->widget(\kartik\select2\Select2::className(), ['data' => \yii\helpers\ArrayHelper::map($model->tags, 'id', 'title'), 'options' => ['multiple' => true], 'theme' => \kartik\select2\Select2::THEME_BOOTSTRAP, 'pluginOptions' => ['multiple' => true, 'placeholder' => Yii::t('gromver.platform', 'Select ...'), 'ajax' => ['url' => \yii\helpers\Url::to(['/grom/tag/backend/default/tag-list']), 'data' => new \yii\web\JsExpression('function(params) { return {q:params.term, language:$("#' . $idLanguage . '").val()}; }')]]]);
?>
        </div>
        <div class="col-sm-6">
            <?php 
echo $form->field($model, 'ordering', ['horizontalCssClasses' => ['wrapper' => 'col-xs-8 col-sm-4', 'label' => 'col-xs-4 col-sm-3']])->textInput();
?>
        </div>
    </div>

    <?php 
//= $form->field($model, 'versionNote')->textInput()
?>

    <ul class="nav nav-tabs">
        <li class="active"><a href="#main-options" data-toggle="tab"><?php 
コード例 #5
0
ファイル: _form.php プロジェクト: ezsky/yii2-platform-core
    </div>

    <div class="row">
        <div class="col-sm-6">
            <?php 
$idTags = Html::getInputId($model, 'tags');
$handlerJs = <<<JS
function(data) {
    var select = \$("#{$idTags}").append('<option value="' + data.id + '">' + data.title + '</option>'),
        selectedValues = select.val() || [];
        selectedValues.push(data.id);

    select.val(\$.unique(selectedValues)).trigger('change');
}
JS;
echo $form->field($model, 'tags', ['wrapperOptions' => ['class' => 'col-sm-9'], 'inputTemplate' => '<div class="input-group select2-bootstrap-append">{input}' . \gromver\widgets\ModalIFrame::widget(['options' => ['class' => 'input-group-addon', 'title' => \Yii::t('gromver.platform', 'Select Tag')], 'label' => '<i class="glyphicon glyphicon-folder-open"></i>', 'url' => ['/tag/backend/default/select', 'modal' => true], 'dataHandler' => $handlerJs]) . \gromver\widgets\ModalIFrame::widget(['options' => ['class' => 'input-group-addon', 'title' => \Yii::t('gromver.platform', 'Add Tag')], 'label' => '<i class="glyphicon glyphicon-plus"></i>', 'url' => ['/tag/backend/default/create', 'modal' => true], 'dataHandler' => $handlerJs]) . '</div>'])->widget(\kartik\select2\Select2::className(), ['data' => \yii\helpers\ArrayHelper::map($model->tags, 'id', 'title'), 'options' => ['multiple' => true], 'theme' => \kartik\select2\Select2::THEME_BOOTSTRAP, 'pluginOptions' => ['multiple' => true, 'placeholder' => Yii::t('gromver.platform', 'Select ...'), 'ajax' => ['url' => \yii\helpers\Url::to(['/tag/backend/default/tag-list'])]]]);
?>
        </div>
        <div class="col-sm-6">
            <?php 
echo $form->field($model, 'ordering', ['horizontalCssClasses' => ['wrapper' => 'col-xs-8 col-sm-4', 'label' => 'col-xs-4 col-sm-3']])->textInput();
?>
        </div>
    </div>

    <?php 
//описание версии удобнее выставлять в списках версий
//= $form->field($model, 'versionNote')->textInput()
?>

    <ul class="nav nav-tabs">
コード例 #6
0
 public function run()
 {
     return \gromver\widgets\ModalIFrame::widget(['options' => $this->options, 'label' => '<i class="glyphicon glyphicon-hdd"></i> ' . Yii::t('gromver.platform', 'Versions'), 'url' => ['/grom/version/backend/default/item', 'item_id' => $this->model->getPrimaryKey(), 'item_class' => $this->model->className()]]);
 }
コード例 #7
0
ファイル: _form.php プロジェクト: gromver/yii2-platform-core
    </ul>
    <br/>
    <div class="tab-content">
        <div id="main" class="tab-pane active">
            <?php 
echo $form->field($model, 'link_type')->dropDownList(\gromver\platform\core\modules\menu\models\MenuItem::linkTypeLabels());
?>

            <?php 
$this->registerJs("\$('#" . Html::getInputId($model, 'link_type') . "').change(function (event){\n                if(\$(this).val() === '" . \gromver\platform\core\modules\menu\models\MenuItem::LINK_ROUTE . "') {\n                    \$('a#router').attr('href', " . \yii\helpers\Json::encode(\yii\helpers\Url::toRoute(['routers'])) . ")\n                } else {\n                    \$('a#router').attr('href', " . \yii\helpers\Json::encode(\yii\helpers\Url::toRoute(['select', 'MenuItemSearch[link_type]' => \gromver\platform\core\modules\menu\models\MenuItem::LINK_ROUTE])) . ")\n                }\n            }).change()");
?>

            <?php 
$linkLabel = Html::activeLabel($model, 'link');
$linkInputId = Html::getInputId($model, 'link');
echo $form->field($model, 'link', ['template' => "{label}\n{beginWrapper}\n<div class=\"input-group\">{input}{controls}</div>\n{error}\n{endWrapper}\n{hint}", 'parts' => ['{controls}' => \gromver\widgets\ModalIFrame::widget(['options' => ['id' => 'router', 'class' => 'input-group-btn'], 'url' => ['routers'], 'label' => Html::tag('span', '<span class="glyphicon glyphicon-folder-open"></span>', ['class' => 'btn btn-default']), 'dataHandler' => "function(data){\n                                    \$('#{$linkInputId}').val(data.route)\n                                }"])]])->textInput(['maxlength' => 1024]);
?>

            <?php 
echo $form->field($model, 'access_rule')->dropDownList(\yii\helpers\ArrayHelper::map(Yii::$app->authManager->getRoles(), 'name', 'name'), ['prompt' => 'Не выбрано']);
?>

            <?php 
echo $form->field($model, 'secure')->dropDownList(['' => 'No', '1' => 'Yes']);
?>

            <?php 
// формируем список шаблонов пункта меню
$layouts = Yii::$app->controller->module->menuItemLayouts;
if ($model->layout_path && !array_key_exists($model->layout_path, $layouts)) {
    // если шаблона пункта меню нету в списке(кастомный шаблон), добавляем его в список
コード例 #8
0
ファイル: _form.php プロジェクト: gromver/yii2-platform
            <?php 
//= $form->field($model, 'path')->textInput(['maxlength' => 2048])
?>

            <?php 
echo $form->field($model, 'link_type')->dropDownList($model->getLinkTypes());
?>

            <?php 
$this->registerJs("\$('#" . Html::getInputId($model, 'link_type') . "').change(function (event){\n                if(\$(this).val() === '" . \gromver\platform\common\models\MenuItem::LINK_ROUTE . "') {\n                    \$('#router-button a').attr('href', " . \yii\helpers\Json::encode(\yii\helpers\Url::toRoute(['routers'])) . ")\n                } else {\n                    \$('#router-button a').attr('href', " . \yii\helpers\Json::encode(\yii\helpers\Url::toRoute(['select'])) . ")\n                }\n            }).change()");
?>

            <?php 
$linkLabel = Html::activeLabel($model, 'link');
$linkInputId = Html::getInputId($model, 'link');
echo $form->field($model, 'link', ['template' => "{label}\n{beginWrapper}\n<div class=\"input-group\">{input}{controls}</div>\n{error}\n{endWrapper}\n{hint}", 'parts' => ['{controls}' => \gromver\widgets\ModalIFrame::widget(['id' => 'router', 'modalOptions' => ['header' => $linkLabel, 'size' => \yii\bootstrap\Modal::SIZE_LARGE], 'buttonOptions' => ['tag' => 'span', 'class' => 'input-group-btn'], 'buttonContent' => Html::a('<span class="glyphicon glyphicon-folder-open"></span>', ['routers'], ['class' => 'btn btn-default']), 'iframeHandler' => "function(data){\n                                    \$('#{$linkInputId}').val(data.link)\n                                }"])]])->textInput(['maxlength' => 1024]);
?>

            <?php 
echo $form->field($model, 'secure')->dropDownList(['' => 'No', '1' => 'Yes']);
?>

            <?php 
echo $form->field($model, 'ordering')->textInput();
?>

            <?php 
echo $form->field($model, 'layout_path')->textInput(['maxlength' => 1024]);
?>

            <?php 
コード例 #9
0
 /**
  * Возвращает html кнопки настройки виджета, или false, если у пользователя нет доступа
  * @return string | bool
  */
 public function widgetConfigControl()
 {
     if (!$this->hasConfigureAccess()) {
         return false;
     }
     $objectModel = new ObjectModel($this->className());
     $objectModel->setAttributes($this->_config);
     return ModalIFrame::widget(['options' => ['class' => 'btn btn-default', 'title' => Yii::t('gromver.platform', 'Configure widget')], 'label' => '<i class="glyphicon glyphicon-cog"></i>', 'url' => [$this->getConfigureRoute(), 'modal' => 1], 'formOptions' => ['method' => 'post', 'params' => ['url' => Yii::$app->request->getAbsoluteUrl(), 'widget_id' => $this->id, 'widget_class' => $this->className(), 'widget_context' => $this->context, 'widget_config' => Json::encode($objectModel->toArray(array_keys($this->_config)))]]]);
 }
コード例 #10
0
ファイル: ModalField.php プロジェクト: gromver/yii2-models
 protected function modalButton()
 {
     $inputId = Html::getInputId($this->getModel(), $this->getAttribute());
     return ModalIFrame::widget(['options' => ['class' => 'input-group-btn'], 'label' => Html::tag('span', '<i class="glyphicon glyphicon-folder-open"></i>', ['class' => 'btn btn-default']), 'url' => $this->url, 'dataHandler' => "function(data){\n                    \$('#{$inputId}').val(data.value)\n                }"]);
 }
コード例 #11
0
ファイル: Versions.php プロジェクト: gromver/yii2-platform
 public function run()
 {
     return ModalIFrame::widget(['modalOptions' => ['header' => Yii::t('gromver.platform', 'Item Versions Manager - "{title}" (ID:{id})', ['title' => $this->model->title, 'id' => $this->model->getPrimaryKey()]), 'size' => Modal::SIZE_LARGE], 'buttonContent' => Html::a('<i class="glyphicon glyphicon-hdd"></i> ' . Yii::t('gromver.platform', 'Versions'), ['/grom/version/default/item', 'item_id' => $this->model->getPrimaryKey(), 'item_class' => $this->model->className()], ['class' => 'btn btn-default btn-sm'])]);
 }