Пример #1
0
 public function dropDownList($model, $attribute, $data, $htmlOptions = array())
 {
     if ($model->isAttributeRequired($attribute)) {
         $htmlOptions['required'] = 'required';
     }
     return parent::dropDownList($model, $attribute, $data, $htmlOptions);
 }
Пример #2
0
 public function enum($attribute)
 {
     $enumClass = get_class($this->model);
     foreach (explode('_', $attribute) as $name) {
         $enumClass .= ucfirst($name);
     }
     $enumClass .= 'Enum';
     $htmlOptions = array('key' => 'id');
     if ($attribute == 'type') {
         $htmlOptions['onChange'] = '$(this).closest("form").find(".typeEnumerable").hide();' . '$(this).closest("form").find(".typeEnumerable").closest("fieldset").hide();' . '$(this).closest("form").find(".typeEnumerable_" + $(this).val()).show();' . '$(this).closest("form").find(".typeEnumerable_" + $(this).val()).closest("fieldset").show();';
         Yii::app()->clientScript->registerScript('initTypeInput', '
             $("[name*=type]").each(function(){
                 $(this).change();
             });
         ', CClientScript::POS_LOAD);
     }
     $html = parent::dropDownList($this->model, $attribute, $enumClass::$names, $htmlOptions);
     return $html;
 }
Пример #3
0
 /**
  * @inheritDoc
  */
 public function dropDownList($model, $attribute, $data, $htmlOptions = array())
 {
     if (!$this->qualifyNames && !isset($htmlOptions['name'])) {
         $htmlOptions['name'] = $attribute;
     }
     if (!isset($htmlOptions['itemprop'])) {
         $htmlOptions['itemprop'] = $this->getItemPropName($attribute);
     }
     return parent::dropDownList($model, $attribute, $data, $htmlOptions);
 }
Пример #4
0
<?php

$form = new CActiveForm();
foreach ($models as $model) {
    ?>
<div class="row-fluid">
     <?php 
    echo $form->dropDownList($model, "[]BenefitID", Benefit::DropDown(), array('class' => "span12"));
    ?>
</div>
<?php 
}
Пример #5
0
 public function getActionElements($controller, $action)
 {
     $form = new CActiveForm();
     $p = Yii::app()->createController($controller);
     if ($p && isset($p[0])) {
         $contObj = $p[0];
     } else {
         $contObj = array();
     }
     if ($contObj && ($actonArr = $contObj->actions())) {
         if (isset($actonArr[$action]) && $actonArr[$action]['class'] == 'CViewAction') {
             $path = $contObj->viewPath . '/pages';
             $files = array();
             if (is_dir($path)) {
                 foreach (scandir($path) as $file) {
                     if (strpos($file, '.php')) {
                         $name = str_replace('.php', '', $file);
                         $files[$name] = $name;
                     }
                 }
             }
             if ($files) {
                 return $form->dropDownList($this, 'element', $files, array()) . $form->hiddenField($this, 'elementmodel', array('value' => 'CViewAction'));
             }
         }
     }
     $actions = array();
     $controller = $_SERVER['DOCUMENT_ROOT'] . '/protected/controllers/' . $controller . 'Controller.php';
     $file = file_get_contents($controller);
     preg_match('!.*action' . $action . '(.*)!im', $file, $matches);
     if (isset($matches[1])) {
         preg_match('!\\/\\*(.*)\\*\\/!ism', $matches[1], $matches);
     }
     if (isset($matches[1])) {
         parse_str($matches[1]);
         //
         $criteria = new CDbCriteria();
         if ($condition) {
             $criteria->condition = $condition;
         }
         if ($order) {
             $criteria->order = $order;
         }
         $returmnodels = new $model();
         $returmnodels = $returmnodels->model()->findAll($criteria);
         $this->elementmodel = $model;
         if (isset($selectitem3)) {
             return $form->dropDownList($this, 'element', CHtml::listData($returmnodels, $selectitem1, $selectitem2, $selectitem3), array('prompt' => 'Выбирите...')) . $form->hiddenField($this, 'elementmodel');
         } else {
             return $form->dropDownList($this, 'element', CHtml::listData($returmnodels, $selectitem1, $selectitem2), array('prompt' => 'Выбирите...')) . $form->hiddenField($this, 'elementmodel');
         }
     } else {
         return '';
     }
 }
Пример #6
0
 /**
  * Renders a dropdown list for a model attribute.
  * @param CModel $parentModel the parent data model
  * @param string $attributedPath the attribute or path to related model attribute
  * @param array $data data for generating the list options (value=>display)
  * @param array $htmlOptions additional HTML attributes.
  * @return string the generated drop down list
  */
 public function dropDownList($parentModel, $attributedPath, $data, $htmlOptions = array())
 {
     list($model, $attribute, $htmlOptions) = self::resolveArgs($parentModel, $attributedPath, $htmlOptions);
     return parent::dropDownList($model, $attribute, $data, $htmlOptions);
 }
Пример #7
0
 public function dropDownList($model, $attribute, $data, $htmlOptions = array())
 {
     return $this->label($model, $attribute) . parent::dropDownList($model, $attribute, $data, $htmlOptions);
 }