Exemplo n.º 1
1
 /**
  * Формирование Html кода поля для вывода в форме
  * @param ActiveForm $form объект форма
  * @param array $options массив html атрибутов поля
  * @param bool|int $index инднкс модели при табличном вводе
  * @return string
  */
 public function renderInput(ActiveForm $form, array $options = [], $index = false)
 {
     $data = $this->modelField->getDataValue();
     if (empty($data)) {
         return false;
     }
     $options = ArrayHelper::merge($this->options, $options, ["multiple" => true]);
     $widgetOptions = ArrayHelper::merge(["data" => $data], $this->widgetOptions, ["options" => $options]);
     $attr = $this->getFormAttrName($index, $this->modelField->attr);
     return $form->field($this->modelField->model, $attr)->widget(MultiSelect::className(), $widgetOptions);
 }
Exemplo n.º 2
0
 public function multiselect($items, $options = [])
 {
     //Defaults
     $opts = array_merge(["options" => ['multiple' => "multiple"], "data" => $items, "clientOptions" => ["includeSelectAllOption" => true, 'numberDisplayed' => 2]], $options);
     return $this->widget(MultiSelect::className(), $opts);
 }