data = $data; } public function catid($info,$value){ $validate = getvalidate($info); $list = db('category')->select();; foreach ($list as $lk=>$v){ $category[$v['id']] = $v; } $id = $field = $info['field']; $value = $value ? $value : $this->data[$field]; $moduleid =$info['moduleid']; foreach ($category as $r){ if($r['type']==1){ continue; } $arr= explode(",",$r['arrchildid']); $show=0; foreach((array)$arr as $rr){ if(isset($category[$rr]['moduleid'])){ if($category[$rr]['moduleid']==$moduleid){ $show=1; } } } if(empty($show)){ continue; } if($r['child']){ $r['disabled'] = ' disabled'; }else{ $r['disabled'] = ' '; } $array[] = $r; } $str = ""; $tree = new Tree ($array); $parseStr = ''; return $parseStr; } public function title($info,$value){ $info['setup']=is_array($info['setup']) ? $info['setup'] : string2array($info['setup']); $style=$info['setup']['style']; $thumb=$info['setup']['thumb']; $field = $info['field']; $name = $info['name']; $value = $value ? $value : (isset($this->data[$field])?$this->data[$field]:''); $style_color=''; $style_bold=''; if(isset($this->data['thumb'])){ $title_thumb=$this->data['thumb']; }else{ $title_thumb=''; } if(array_key_exists('title_style',$this->data)){ if($this->data['title_style']){ $title_style = explode(';',$this->data['title_style']); $style_color = explode(':',$title_style[0]); $style_bold = explode(':',$title_style[1]); $style_color = $style_color[1]; $style_bold = $style_bold[1]; } } $boldchecked= $style_bold=='bold' ? 'checked' : ''; $titleThumb =$title_thumb?$title_thumb:"/static/admin/images/tong.png"; if(empty($info['setup']['upload_maxsize'])){ $info['setup']['upload_maxsize'] = intval(byte_format(config('attach_maxsize'))); } if($info['pattern']!='defaul'){ $pattern='|'.$info['pattern']; }else{ $pattern=''; } $parseStr = ' '; $stylestr =''; if($info['required']==1){ $stylestr .='
*必填
'; } $stylestr .=''; //标题颜色及是否加粗 $stylestr .='
'; $stylestr .='
'; $stylestr .='
'; $stylestr .='
'; //缩略图 $thumbstr ='
'; $thumbstr .='
'; $thumbstr .='
'; $thumbstr .=''; $thumbstr .='

'; $thumbstr .='
'; if($style){ $parseStr = $parseStr.$stylestr; } if($thumb){ $parseStr = $parseStr.$thumbstr; } return $parseStr; } public function text($info,$value){ $info['setup']=is_array($info['setup']) ? $info['setup'] : string2array($info['setup']); $field = $info['field']; $name = $info['name']; $info['setup']['ispassword'] ? $inputtext = 'password' : $inputtext = 'text'; $action = ACTION_NAME; if($action=='add'){ $value = $value ? $value : $info['setup']['default']; }else{ $value = $value ? $value : $this->data[$field]; } $pattern=''; if($info['pattern']!='defaul'){ $pattern='|'.$info['pattern']; } $parseStr = ' '; if($info['required']==1){ $parseStr .='
'; $parseStr .='
*必填'; } return $parseStr; } public function textarea($info,$value){ $info['setup']=is_array($info['setup']) ? $info['setup'] : string2array($info['setup']); $field = $info['field']; $name = $info['name']; if($info['pattern']!='defaul'){ $pattern='|'.$info['pattern']; } $action = ACTION_NAME; if($action=='add'){ $value = $value ? $value : $info['setup']['default']; }else{ $value = $value ? $value : $this->data[$field]; } $parseStr = ''; if($info['required']==1){ $parseStr .='
'; $parseStr .='
*必填'; } return $parseStr; } public function editor($info,$value){ $info['setup']=is_array($info['setup']) ? $info['setup'] : string2array($info['setup']); $field = $info['field']; $name = $info['name']; $pattern = ($info['pattern']!='defaul')?'|'.$info['pattern']:''; $action = ACTION_NAME; if($action=='add'){ $value = $value ? $value : (isset($info['setup']['default'])?$info['setup']['default']:''); }else{ $value = $value ? $value : (isset($this->data[$field])?$this->data[$field]:'') ; } if($info['setup']['edittype']=='UEditor'){ //配置文件 $str =''; $str .=''; $str .=''; $str .=''; }else if($info['setup']['edittype']=='nkeditor') { $str ='
'; $str .='
'; $str .=''; }else{ $str ='
'; $str .='
'; $str .=''; } return $str; } public function datetime($info,$value){ $info['setup']=is_array($info['setup']) ? $info['setup'] : string2array($info['setup']); $field = $info['field']; $name = $info['name']; $action = ACTION_NAME; if($action=='add'){ $value = $value ? $value : ''; }else{ $value = $value ? $value : $this->data[$field]; } $value = $value ? toDate($value,"Y-m-d H:i:s") : toDate(time(),"Y-m-d H:i:s"); $parseStr = ''; if($info['required']==1){ $parseStr .='
'; $parseStr .='
*必填'; } $parseStr .=''; return $parseStr; } public function number($info,$value){ $info['setup']=is_array($info['setup']) ? $info['setup'] : string2array($info['setup']); $id = $field = $info['field']; $validate = getvalidate($info); if(isset($info['setup']['ispassowrd'])){ $inputtext = 'passowrd'; }else{ $inputtext = 'text'; } $action = ACTION_NAME; if($action=='add'){ $value = $value ? $value : $info['setup']['default']; }else{ $value = $value ? $value : $this->data[$field]; } if(isset($info['setup']['size'])){ $size = $info['setup']['size']; }else{ $size = ""; } $parseStr = ' '; return $parseStr; } public function select($info,$value){ $info['setup']=is_array($info['setup']) ? $info['setup'] : string2array($info['setup']); $id = $field = $info['field']; $validate = getvalidate($info); $action = ACTION_NAME; if($action=='add'){ $value = $value ? $value :(isset($info['setup']['default'])?$info['setup']['default']:'') ; }else{ if(array_key_exists($field,$this->data)){ $value = $value ? $value : $this->data[$field]; }else{ $value = ''; } } if($value != '') $value = strpos($value, ',') ? explode(',', $value) : $value; if(isset($info['options'])){ $optionsarr = $info['options']; }else{ $options = $info['setup']['options']; $options = explode("\n",$info['setup']['options']); foreach($options as $r) { $v = explode("|",$r); $k = trim($v[1]); $optionsarr[$k] = $v[0]; } } if(!empty($info['setup']['multiple'])) { $onchange = ''; if(isset($info['setup']['onchange'])){ $onchange = $info['setup']['onchange']; } $parseStr = ''; } if(is_array($optionsarr)) { foreach($optionsarr as $key=>$val) { if(!empty($value)){ $selected=''; if(is_array($value)){ if(in_array($key,$value)){ $selected = ' selected="selected"'; } }else{ if($value==$key){ $selected = ' selected="selected"'; } } $parseStr .= ''; }else{ $parseStr .= ''; } } } $parseStr .= ''; return $parseStr; } public function checkbox($info,$value){ $info['setup']=is_array($info['setup']) ? $info['setup'] : string2array($info['setup']); $id = $field = $info['field']; $validate = getvalidate($info); $action = ACTION_NAME; if($action=='add'){ $value = $value ? $value : $info['setup']['default']; }else{ $value = $value ? $value : $this->data[$field]; } $labelwidth = $info['setup']['labelwidth']; if(is_array($info['options'])){ $optionsarr = $info['options']; }else{ if($info['setup']['options']){ //判断选项列表内的值存在,按照之前的方法走 $options = $info['setup']['options']; $options = explode("\n",$info['setup']['options']); foreach($options as $r) { $v = explode("|",$r); $k = trim($v[1]); $optionsarr[$k] = $v[0]; } }else{ //选项列表为空,查找[字段名]的数据库数据,$c['id']为 选项的id,$c['typename']为 选项的名称 $class = db($info['field'])->order('sort asc')->select(); foreach ($class as $c) { $optionsarr[$c['id']] = $c['typename']; } } } if($value != '') $value = strpos($value, ',') ? explode(',', $value) : array($value); $i = 1; $parseStr =''; foreach($optionsarr as $key=>$r) { $key = trim($key); if($i>1){ $validate=''; } $checked = ($value && in_array($key, $value)) ? 'checked' : ''; $parseStr .= ''; $i++; } return $parseStr; } public function radio($info,$value){ $info['setup'] = is_array($info['setup']) ? $info['setup'] : string2array($info['setup']); $id = $field = $info['field']; $action = ACTION_NAME; if ($action == 'add') { $value = $value ? $value : $info['setup']['default']; } else { $value = $value ? $value : $this->data[$field]; } $parseStr=''; if (isset($info['options'])) { if (is_array($info['options'])) { $optionsarr = $info['options']; } } else if (isset($info['setup']['options'])) { $options = $info['setup']['options']; $options = explode("\n",$info['setup']['options']); foreach($options as $r) { $v = explode("|",$r); $k = trim($v[1]); $optionsarr[$k] = $v[0]; } }else{ //选项列表为空,查找[字段名]的数据库数据,$c['id']为 选项的id,$c['typename']为 选项的名称 $class = db($info['field'])->order('sort asc')->select(); foreach ($class as $c) { $optionsarr[$c['id']] = $c['typename']; } } $i = 1; foreach($optionsarr as $key=>$r) { $checked = trim($value)==trim($key) ? 'checked' : ''; if(empty($value) && empty($key) ){ $checked = 'checked'; } $parseStr .= ''; $i++; } return $parseStr; } public function groupid($info,$value){ $newinfo = $info; $info['setup']=is_array($info['setup']) ? $info['setup'] : string2array($info['setup']); $list = db('role')->select();; foreach ($list as $lk=>$v){ $groups[$v['id']] = $v; } $options=array(); foreach($groups as $key=>$r) { if($r['status']){ $options[$key]=$r['name']; } } $newinfo['options']=$options; $fun=$info['setup']['inputtype']; return $this->$fun($newinfo,$value); } public function posid($info,$value){ $newinfo = $info; $list = db('posid')->select(); foreach ($list as $lk=>$v){ $posids[$v['id']] = $v; } $options=array(); $options[0]= "请选择"; foreach($posids as $key=>$r) { $options[$key]=$r['name']; } $newinfo['options']=$options; if(isset($info['setup']['inputtype'])){ $fun=$info['setup']['inputtype']; } return $this->select($newinfo,$value); } public function typeid($info,$value){ $newinfo = $info; $list = db('type')->select(); foreach ($list as $lk=>$v){ $types[$v['id']] = $v; } $info['setup']=is_array($info['setup']) ? $info['setup'] : string2array($info['setup']); $pid=$info['setup']['default']; $options=array(); $options[0]= '请选择'; foreach($types as $key=>$r) { if($r['pid']!=$pid || empty($r['status'])) continue; $options[$key]=$r['name']; } $newinfo['options']=$options; $fun=$info['setup']['inputtype']; return $this->$fun($newinfo,$value); } public function template($info,$value){ $templates= template_file(MODULE_NAME); $newinfo = $info; $info['setup']=is_array($info['setup']) ? $info['setup'] : string2array($info['setup']); $options=array(); $options[0]= "请选择"; if($templates){ foreach($templates as $key=>$r) { if(strstr($r['value'],'_show')){ $options[$r['value']]=$r['filename']; } } } $newinfo['options']=$options; //$fun=$info['setup']['inputtype']; return $this->select($newinfo,$value); } public function image($info,$value){ $info['setup']=is_array($info['setup']) ? $info['setup'] : string2array($info['setup']); $field = $info['field']; $action = ACTION_NAME; if($action=='add'){ $value =$value?__PUBLIC__.$value:"/static/admin/images/tong.png"; }else{ if($this->data[$field]){ $value = $value ?$value : $this->data[$field]; }else{ $value = "/static/admin/images/tong.png"; } } $upload_allowext = isset($info['setup']['upload_allowext'])?$info['setup']['upload_allowext']:''; $thumbstr ='
'; $thumbstr .=''; $thumbstr .='

'; $thumbstr .='
'; $thumbstr.=""; return $thumbstr; } public function images($info,$value){ $info['setup']=is_array($info['setup']) ? $info['setup'] : string2array($info['setup']); $field = $info['field']; $action = ACTION_NAME; if($action=='add'){ $value = $value ? $value : $info['setup']['default']; }else{ $value = $value ? $value : $this->data[$field]; } $data=''; $i=0; if($value){ $options = explode(";",$value); if(is_array($options)){ foreach($options as $r) { $data .='
'; } } } $parseStr = '
'.$data.'
'; $parseStr = '
'; $parseStr .= ''; $parseStr .= '
'; $parseStr .= '预览图:
'.$data.'
'; $parseStr.=""; return $parseStr; } public function file($info,$value){ $info['setup']=is_array($info['setup']) ? $info['setup'] : string2array($info['setup']); $field = $info['field']; $action = ACTION_NAME; $ext=''; if(isset($this->data[$field])){ $fileArr=explode('.',$this->data[$field]); $ext=$fileArr[1]; $dataField = $this->data[$field]; }else{ $dataField =''; } if($action=='add' or $ext==''){ $value ="/static/common/images/file.png"; }else{ $value = "/static/common/images/".$ext.".png"; } $thumbstr ='
'; $thumbstr .=''; $thumbstr .='

'; $thumbstr .='
'; $thumbstr.=""; return $thumbstr; } public function linkage($info){ $field = $info['field']; $value = ''; if($this->data[$field]){ $value = explode(',',$this->data[$field]); } $region = db('region')->where(['pid'=>1])->select(); $html='
'; $html .=''; $html .='
'; $city =''; if($value[0]){ $city = db('region')->where(['pid'=>$value[0]])->select(); } $html .='
'; $html .=''; $html .='
'; $district =''; if($value[1]){ $district = db('region')->where(['pid'=>$value[1]])->select(); } $html .='
'; $html .=''; $html .='
'; return $html; } } ?>