Skip to content

Commit

Permalink
Дополнительные свойства виджета редактора текста.
Browse files Browse the repository at this point in the history
  • Loading branch information
maddoger committed Nov 18, 2014
1 parent 9762e8a commit 8f4f323
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 1 deletion.
5 changes: 5 additions & 0 deletions backend/Module.php
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,11 @@ class Module extends BackendModule
*/
public $textFormats;

/**
* @var array additional options for widget
*/
public $textEditorWidgetOptions = [];

/**
* @var \maddoger\website\common\models\Config Module configuration
*/
Expand Down
9 changes: 8 additions & 1 deletion backend/views/page/_form.php
Original file line number Diff line number Diff line change
Expand Up @@ -199,9 +199,16 @@ class="glyphicon glyphicon-trash"></i> <?= Yii::t('maddoger/website',
$format = $modelI18n->getTextFormatInfo();
$field = $form->field($modelI18n, 'text_source', ['template' => "{label}\n<div class=\"text-source\">{input}</div>\n{hint}\n{error}", 'enableClientValidation' => false]);
if (isset($format['widgetClass'])) {

$options = isset($format['widgetOptions']) ? $format['widgetOptions'] : [];
$additionalOptions = BackendModule::getInstance()->textEditorWidgetOptions;
if ($additionalOptions) {
$options = ArrayHelper::merge($options, $additionalOptions);
}

$field->widget(
$format['widgetClass'],
isset($format['widgetOptions']) ? $format['widgetOptions'] : []
$options
);
} else {
$field->textarea(['rows' => 20]);
Expand Down
6 changes: 6 additions & 0 deletions backend/views/page/changeFormat.php
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
<?php

/* @var yii\web\View $this */
use maddoger\website\backend\Module;
use yii\helpers\ArrayHelper;
use yii\helpers\Html;

/* @var string $text */
Expand All @@ -10,6 +12,10 @@
if (isset($formatInfo['widgetClass'])) {
$widgetClass = $formatInfo['widgetClass'];
$options = isset($formatInfo['widgetOptions']) ? $formatInfo['widgetOptions'] : [];
$additionalOptions = Module::getInstance()->textEditorWidgetOptions;
if ($additionalOptions) {
$options = ArrayHelper::merge($options, $additionalOptions);
}
$options['name'] = $fieldName;
$options['value'] = $text;
echo $widgetClass::widget($options);
Expand Down

0 comments on commit 8f4f323

Please sign in to comment.