From 512a9bd1a1f6bd77201092f3ca69c6a2fc4f74d2 Mon Sep 17 00:00:00 2001 From: Alexander Kochetov Date: Wed, 22 May 2013 22:41:33 +0400 Subject: [PATCH] clientOptions and clientEvents --- framework/yii/bootstrap/Alert.php | 8 ++++---- framework/yii/bootstrap/Modal.php | 14 +++++++------- framework/yii/bootstrap/TypeAhead.php | 8 ++++---- framework/yii/bootstrap/Widget.php | 20 ++++++++++---------- 4 files changed, 25 insertions(+), 25 deletions(-) diff --git a/framework/yii/bootstrap/Alert.php b/framework/yii/bootstrap/Alert.php index 2f654da..f84a70b 100644 --- a/framework/yii/bootstrap/Alert.php +++ b/framework/yii/bootstrap/Alert.php @@ -79,7 +79,7 @@ class Alert extends Widget $this->initOptions(); - echo Html::beginTag('div', $this->htmlOptions) . "\n"; + echo Html::beginTag('div', $this->options) . "\n"; echo $this->renderBodyBegin() . "\n"; } @@ -136,11 +136,11 @@ class Alert extends Widget */ protected function initOptions() { - $this->htmlOptions = array_merge(array( + $this->options = array_merge(array( 'class' => 'fade in', - ), $this->htmlOptions); + ), $this->options); - $this->addCssClass($this->htmlOptions, 'alert'); + $this->addCssClass($this->options, 'alert'); if ($this->closeButton !== null) { $this->closeButton = array_merge(array( diff --git a/framework/yii/bootstrap/Modal.php b/framework/yii/bootstrap/Modal.php index 0abe112..3a4d08c 100644 --- a/framework/yii/bootstrap/Modal.php +++ b/framework/yii/bootstrap/Modal.php @@ -105,7 +105,7 @@ class Modal extends Widget $this->initOptions(); echo $this->renderToggleButton() . "\n"; - echo Html::beginTag('div', $this->htmlOptions) . "\n"; + echo Html::beginTag('div', $this->options) . "\n"; echo $this->renderHeader() . "\n"; echo $this->renderBodyBegin() . "\n"; } @@ -212,14 +212,14 @@ class Modal extends Widget */ protected function initOptions() { - $this->htmlOptions = array_merge(array( + $this->options = array_merge(array( 'class' => 'modal hide', - ), $this->htmlOptions); - $this->addCssClass($this->htmlOptions, 'modal'); + ), $this->options); + $this->addCssClass($this->options, 'modal'); - $this->options = array_merge(array( + $this->clientOptions = array_merge(array( 'show' => false, - ), $this->options); + ), $this->clientOptions); if ($this->closeButton !== null) { $this->closeButton = array_merge(array( @@ -234,7 +234,7 @@ class Modal extends Widget 'data-toggle' => 'modal', ), $this->toggleButton); if (!isset($this->toggleButton['data-target']) && !isset($this->toggleButton['href'])) { - $this->toggleButton['data-target'] = '#' . $this->htmlOptions['id']; + $this->toggleButton['data-target'] = '#' . $this->options['id']; } } } diff --git a/framework/yii/bootstrap/TypeAhead.php b/framework/yii/bootstrap/TypeAhead.php index 579190c..cd60ff3 100644 --- a/framework/yii/bootstrap/TypeAhead.php +++ b/framework/yii/bootstrap/TypeAhead.php @@ -21,7 +21,7 @@ use yii\helpers\Html; * echo TypeAhead::widget(array( * 'model' => $model, * 'attribute' => 'country', - * 'options' => array( + * 'clientOptions' => array( * 'source' => array('USA', 'ESP'), * ), * )); @@ -32,7 +32,7 @@ use yii\helpers\Html; * ```php * echo TypeAhead::widget(array( * 'name' => 'country', - * 'options' => array( + * 'cloentOptions' => array( * 'source' => array('USA', 'ESP'), * ), * )); @@ -82,9 +82,9 @@ class TypeAhead extends Widget public function renderField() { if ($this->model instanceof Model && $this->attribute !== null) { - return Html::activeTextInput($this->model, $this->attribute, $this->htmlOptions); + return Html::activeTextInput($this->model, $this->attribute, $this->options); } elseif ($this->name !== null) { - return Html::textInput($this->name, $this->value, $this->htmlOptions); + return Html::textInput($this->name, $this->value, $this->options); } else { throw new InvalidConfigException("Either 'name' or 'model' and 'attribute' properties must be specified."); } diff --git a/framework/yii/bootstrap/Widget.php b/framework/yii/bootstrap/Widget.php index 3c18415..fe41d41 100644 --- a/framework/yii/bootstrap/Widget.php +++ b/framework/yii/bootstrap/Widget.php @@ -28,21 +28,21 @@ class Widget extends \yii\base\Widget /** * @var array the HTML attributes for the widget container tag. */ - public $htmlOptions = array(); + public $options = array(); /** * @var array the options for the underlying Bootstrap JS plugin. * Please refer to the corresponding Bootstrap plugin Web page for possible options. * For example, [this page](http://twitter.github.io/bootstrap/javascript.html#modals) shows * how to use the "Modal" plugin and the supported options (e.g. "remote"). */ - public $options = array(); + public $clientOptions = array(); /** * @var array the event handlers for the underlying Bootstrap JS plugin. * Please refer to the corresponding Bootstrap plugin Web page for possible events. * For example, [this page](http://twitter.github.io/bootstrap/javascript.html#modals) shows * how to use the "Modal" plugin and the supported events (e.g. "shown"). */ - public $events = array(); + public $clientEvents = array(); /** @@ -53,8 +53,8 @@ class Widget extends \yii\base\Widget public function init() { parent::init(); - if (!isset($this->options['id'])) { - $this->options['id'] = $this->getId(); + if (!isset($this->clientOptions['id'])) { + $this->clientOptions['id'] = $this->getId(); } } @@ -64,20 +64,20 @@ class Widget extends \yii\base\Widget */ protected function registerPlugin($name) { - $id = $this->options['id']; + $id = $this->clientOptions['id']; $view = $this->getView(); $view->registerAssetBundle(static::$responsive ? 'yii/bootstrap/responsive' : 'yii/bootstrap'); $view->registerAssetBundle("yii/bootstrap/$name"); - if ($this->options !== false) { - $options = empty($this->options) ? '' : Json::encode($this->options); + if ($this->clientOptions !== false) { + $options = empty($this->clientOptions) ? '' : Json::encode($this->clientOptions); $js = "jQuery('#$id').$name($options);"; $view->registerJs($js); } - if (!empty($this->events)) { + if (!empty($this->clientEvents)) { $js = array(); - foreach ($this->events as $event => $handler) { + foreach ($this->clientEvents as $event => $handler) { $js[] = "jQuery('#$id').on('$event', $handler);"; } $view->registerJs(implode("\n", $js));