/** * * @param type $from_unit_id * @param type $to_unit_id * @return array */ public function getToLists($from_unit_id, $to_unit_id = null) { $result = array(); //ID not equal to from_unit_id, $data = SettingsUnitsOfMeasure::model()->getData('id,name', '`id`<>:t1', array(':t1' => $from_unit_id), 'name'); //remove all rows that exist in settings_units_conversion table foreach ($data as $row) { if (!$this->exists('`from_unit_id`=:t1 AND `to_unit_id`=:t2', array(':t1' => $from_unit_id, ':t2' => $row['id']))) { array_push($result, $row); } else { if ($row['id'] === $to_unit_id) { array_push($result, $row); } } } return $result; }
/** * Lists all models. */ public function actionIndex() { $this->hasPrivilege(Acl::ACTION_VIEW); $this->pageTitle = Lang::t($this->resourceLabel . 's'); $this->render('index', array('model' => SettingsUnitsOfMeasure::model()->searchModel(array(), $this->settings[Constants::KEY_PAGINATION], 'name asc'), 'conversionModel' => SettingsUnitsConversion::model()->searchModel(array(), $this->settings[Constants::KEY_PAGINATION], 'from_unit_id,to_unit_id'))); }
<h1><?php echo CHtml::encode($this->pageTitle); ?> </h1> </div> <div class="alert hidden" id="my-colorbox-notif"></div> <?php $form = $this->beginWidget('CActiveForm', array('id' => $form_id, 'enableAjaxValidation' => false, 'htmlOptions' => array('class' => 'form-horizontal', 'role' => 'form'))); ?> <div class="form-group"> <?php echo $form->labelEx($model, 'from_unit_id', array('class' => 'col-lg-4 control-label')); ?> <div class="col-lg-8"> <?php echo $form->dropDownList($model, 'from_unit_id', SettingsUnitsOfMeasure::model()->getListData('id', 'name'), array('class' => 'form-control', 'data-ajax-link' => $this->createUrl('getToList'))); ?> </div> </div> <div class="form-group"> <?php echo $form->labelEx($model, 'to_unit_id', array('class' => 'col-lg-4 control-label')); ?> <div class="col-lg-8"> <i class="fa fa-spinner fa-2x my-icon-loading fa-spin hidden"></i> <?php echo $form->dropDownList($model, 'to_unit_id', array(), array('class' => 'form-control', 'disabled' => true, 'data-selected-option' => $model->to_unit_id)); ?> </div> </div> <div class="form-group">