function sysconfig($field, $value, $fieldinfo) { $string = ''; $require = $fieldinfo['min_length'] ? 'required required_box' : ''; $pattern = $fieldinfo['pattern'] ?$fieldinfo['pattern']:''; $errortips = $fieldinfo['error_tips'] ?$fieldinfo['error_tips']:''; $setting = string2array($fieldinfo['setting']); $configName = $setting['sysconfig']; if($value=='') $value = !empty($fieldinfo['default_value'])?$fieldinfo['default_value']:''; $sysconfig = Sysconfig::find()->where("name='".$configName."'")->one(); if($sysconfig->type==1) $optionList = json_decode($sysconfig->value,true); if($sysconfig->type==2) { $options = json_decode($sysconfig->value,true); foreach($options as $v) { $optionList[$v] = $v; } } //去除空内容 $values = explode(',',$value); $value = array(); if(!empty($values))foreach($values as $_k) { if($_k != '') $value[] = $_k; } $value = implode(',',$value); $string = '
'; $string .= ''; if(isset($optionList)&&isset($this->fields[$field]['box_type']))switch($this->fields[$field]['box_type']) { case 'radio': $string .= FormElements::radio($optionList,$value,"name='info[$field]' $fieldinfo[form_attribute] class='form-check-input' ",0); $string .= $fieldinfo['tips']?'
提示:'.$fieldinfo['tips'].'
':''; break; case 'checkbox': $string .= FormElements::checkbox($optionList,$value,"name='info[$field][]' $fieldinfo[form_attribute] class='form-check-input' ",0); $string .= $fieldinfo['tips']?'
提示:'.$fieldinfo['tips'].'
':''; break; case 'select': $string .= '
'; $string .= FormElements::select($optionList,$value,Yii::t('admin','please select'),"name='info[$field]' id='$field' $fieldinfo[form_attribute] data-dselect-clearable='true' class='form-select $require'"); $string .= $fieldinfo['tips']?'
提示:'.$fieldinfo['tips'].'
':''; $string .= '
'; break; case 'multiple': $string .= '
'; $string .= FormElements::select($optionList,$value,Yii::t('admin','please select'),"name='info[$field][]' id='$field' multiple='multiple' data-dselect-clearable='true' class='form-select $require'"); $string .= $fieldinfo['tips']?'
提示:'.$fieldinfo['tips'].'
':''; $string .= '
'; break; } $string .= '
'; return $string; }