'.$result.'
'; } else { $result = '
'.$result.'
'; } } else { if (isset($param[0]['update']) && $param[0]['update'] == 'hidden') { } elseif (isset($param[1]) && !$param[1]) { $result = '
'.$result.'
'; } } } return $result; } /** * 地图 * * @return string */ public static function _map($param) { $url = Dever::url('map', 'manage'); $html = self::text($param); $id = $param['name'] . '_value'; $iframe_id = $id . '_map'; $html .= ''; $html .= ''; return $html; } /** * desc * * @return string */ public static function _modal($modal, $desc) { return '' . $modal . '
' . $desc . '
'; } /** * desc * * @return string */ public static function _desc($desc) { return ''; return $desc; } /** * hr 分割线 * * @return string */ public static function _hr($param) { if (layadmin()) { $col = ''; if (isset($param['right'])) { $col = '
'; } $html = '
'.$col.'
[' . $param['name'] . ']
'; return $html; } return '
' . $param['name'] . '
'; } /** * cue * * @return string */ public static function _cue($param) { $param['cue'] = isset($param['cue']) ? $param['cue'] : ''; if (strpos($param['name'], '-') !== false) { $temp = explode('-', $param['name']); $param['name'] = $temp[0]; $param['cue'] = $temp[1]; } elseif (strpos($param['name'], '(') !== false) { $temp = explode('(', $param['name']); $param['name'] = $temp[0]; $param['cue'] = str_replace(')', '', $temp[1]); } elseif (strpos($param['name'], '(') !== false) { $temp = explode('(', $param['name']); $param['name'] = $temp[0]; $param['cue'] = str_replace(')', '', $temp[1]); } return $param; } /** * pageLeft * * @return string */ public static function _pageLeft($param) { $param = self::cue($param); if ($param['cue']) { $param['cue'] = '[' . $param['cue'] . ']'; } $class = ''; if (layadmin()) { //$class = 'layui-form-label'; } $html = '
'; return $html; } /** * textarea * * @return string */ public static function _textarea($param) { return ''; return ''; } /** * image * * @return string */ public static function _image($param) { if (isset($param['value']) && $param['value']) { $pic = 'src="' . $param['value'] . '"'; } elseif (isset($param['places'])) { $pic = 'src="http://placehold.it/' . $param['place'] . '"'; } else { $pic = 'src="" style=display:none;'; } $class = 'width:100px;display:inline;'; if (layadmin()) { $class .= 'padding-left:0px;'; } return '
'; } /** * images * * @return string */ public static function _images($param) { $pic = ''; if (isset($param['value']) && $param['value']) { $temp = explode(',', $param['value']); foreach ($temp as $k => $v) { $pic .= '点此删除'; } } $class = 'width:100px;display:inline;'; if (layadmin()) { $class .= 'padding-left:0px;'; } return '
' . $pic . '
'; } /** * upload * * @return string */ public static function _upload($param) { $class = 'width:100px;display:inline;'; if (layadmin()) { $class .= 'padding-left:0px;'; } return '
'; //return ''; } /** * upload * * @return string */ public static function _uploads($param) { $file = ''; if (isset($param['value']) && $param['value']) { $temp = explode(',', $param['value']); foreach ($temp as $k => $v) { $upload = Dever::load('upload/file-check', array('option_key' => md5($v))); $file .= '
  • ' . $upload['source_name'] . '  [删除]
  • '; } } $class = 'width:100px;display:inline;'; if (layadmin()) { $class .= 'padding-left:0px;'; } return '
      ' . $file . '
    '; //return ''; } /** * editor * * @return string */ public static function _editor($param) { $width = '100%'; $html = ''; if (isset($param['editor'])) { $width = '70%'; $html .= '
    '; foreach ($param['editor']['button'] as $k => $v) { if (isset($v['type'])) { if ($v['type'] == 'image') { $param['key'] = $v['key']; } elseif ($v['type'] == 'media') { $param['media'] = $v['key']; } $v['type'] = 'editor_tool" tool="' . $v['type']; } else { $v['type'] = 'upload_show_editor'; } $html .= ''; } $html .= '
    '; } return $html . ''; } /** * markdown * * @return string */ public static function _markdown($param) { return ''; } /** * selector * * @return string */ public static function _selector($param, $type = '') { $html = ''; if (isset($param['key']) && strpos($param['key'], '.css') !== false) { $param['key'] = ''; } if (isset($param['option'])) { foreach ($param['option'] as $k => $v) { $check = ''; if ((isset($param['value']) && $param['value'] == $k) || (empty($param['value']) && isset($param['default']) && $param['default'] == $k)) { $check = 'checked'; } if (is_array($v)) { $value = $v['name']; } else { $value = $v; } $html .= '' . $value . '  '; } $html .= self::hidden($param); } return '
    ' . $html . '
    '; } /** * radio * * @return string */ public static function _radio($param, $type = '') { $html = ''; if (isset($param['option'])) { if (isset($param['option']['state']) && $param['option']['state'] >= 1) { if (isset($param['value'])) { $param['value'] = explode(',', $param['value']); } else { $param['value'] = array(); } # 处理比较复杂的多维数组 unset($param['option']['state']); $j = -1; foreach ($param['option'] as $k => $v) { $check = ''; if (isset($param['update_parent'])) { $input_type = $param['update_parent']; } else { $input_type = $param['update']; } //{check} $html .= ' -----【' . $v['name'] . '】-----  
    '; $span = array('', ''); if (isset($v['child']) && $v['child']) { //$i = 1; $html .= '
      '; foreach ($v['child'] as $ki => $vi) { if (!is_array($vi)) { $temp = $vi; $vi = array(); $vi['name'] = $temp; $vi['id'] = $ki; } if (isset($v['url'])) { $span = array('', ''); } $check = ''; $disabled = 'disabled="true"'; if (isset($param['value']) && in_array($ki, $param['value'])) { $check = 'checked'; $disabled = ''; $j++; } elseif (isset($param['default']) && is_array($param['default']) && (in_array($k . '_' . $ki, $param['default']))) { $check = 'checked'; $disabled = ''; $j++; } $input = $input_value = ''; if (isset($param['update_input'])) { if (isset($param['update_input_data']) && isset($param['update_input_data'][$j])) { $input_value = $param['update_input_data'][$j]; if ($disabled) { $input_value = ''; } } else { $input_value = isset($param['update_input_default']) ? $param['update_input_default'] : ''; } if ($param['update_input']) { $input = '[' . $param['update_input'] . ']'; } $input = $input . ': '; } $html .= '
    • ' . $span[0] . $vi['name'] . $span[1] . '  ' . $input . '
    • '; //++$i; } $html .= '
    '; } $html .= '
    '; } } else { $js = ''; if (isset($param['control']) && is_string($param['control'])) { //print_r($param);die; $js = ' show_id="' . $param['control'] . '" onclick="inputShow($(this), \'' . $param['control'] . '\', \'input\')"'; } elseif (isset($param['bind'])) { $param['bind'][2] = isset($param['bind'][2]) ? str_replace('"', '\'', json_encode($param['bind'][2], true)) : false; $js = $param['bind'][0] . '="' . $param['bind'][1] . '(\'' . $param['name'] . '\', $(this), ' . $param['bind'][2] . ')" '; $js .= ' onload="' . $param['bind'][1] . '(\'' . $param['name'] . '\', $(this), ' . $param['bind'][2] . ')" '; } $param['parent'] = isset($param['parent']) ? $param['parent'] : '0'; $param['parent'] .= '_' . $param['name']; if ($param['update'] == 'checkbox' && empty($param['checkall'])) { $html .= ' 全选   '; } foreach ($param['option'] as $k => $v) { $check = ''; if (is_array($v)) { $value = $v['name']; isset($v['id']) && $k = $v['id']; } else { $value = $v; } if (isset($param['bit'][$k])) { if (isset($param['value']) && ($param['value'] & $k) > 0) { $check = 'checked'; } } elseif (isset($param['value'])) { if (is_string($param['value']) && strpos(',' . $param['value'] . ',', ',' . $k . ',') !== false) { $check = 'checked'; } elseif (is_array($param['value']) && in_array($k, $param['value'])) { $check = 'checked'; } } elseif (isset($param['default'])) { if (is_string($param['default']) && strpos(',' . $param['default'], ',' . $k) !== false) { $check = 'checked'; } elseif (is_array($param['default']) && in_array($k, $param['default'])) { $check = 'checked'; } } $cjs = $js; if (isset($param['control']) && is_string($param['control']) && $param['control'] != $param['name']) { $cjs = str_replace('update_', '', str_replace($param['control'], $param['name'], $js)); } $html .= ' ' . $value . '   '; if (isset($param['bind'])) { //$html .= ''; } } } } return '
    ' . $html . '
    '; } /** * group * * @return string */ public static function _group($param, $class = '', $hidden = '', $change = '') { $html = $class ? '
    ' : ''; $html .= $hidden . ''; $html .= $class ? '
    ' : ''; return $html; } /** * linkage select 多级联动 * * @return string */ public static function _linkage($param, $class = '', $hidden = '', $change = '') { $div = 'div'; $w = 'width:20%;'; if ($class == 'span') { $div = 'span'; $w = ''; } if (!isset($param['search_state'])) { $param['search_state'] = false; } # 当前级别 $level = 1; # 传入的参数 $level_param = ''; if (isset($param['linkage'])) { $level_param = $param['linkage']; } $id = 'dever-linkage-' . $param['name']; $html = '<' . $div . ' class="' . $class . '" id="' . $id . '" >'; # 默认值 if (isset($param['value']) && is_array($param['value'])) { $param['value'] = implode(',', $param['value']); } $html .= ''; $html .= ''; return $html; } /** * select * * @return string */ public static function _selects($param, $class = '', $hidden = '', $change = '') { return self::_select($param, $class, $hidden, $change); } /** * select * * @return string */ public static function _select($param, $class = '', $hidden = '', $change = '') { $html = $class ? '
    ' : ''; $child_class = ''; if (isset($param['child'])) { $child_param['name'] = 'update_' . $param['child_name']; isset($param['value']) && $param['value'] = $param['value']; isset($param['child_value']) && $child_param['value'] = $param['child_value']; $change = 'style="width:45%" id="' . $param['name'] . '" data-child="' . $child_param['name'] . '_child" '; $child_class = ' change'; //$param['name'] .= '_parent'; } if (isset($param['control']) && is_string($param['control'])) { //print_r($param);die; $change = ' show_id="' . $param['control'] . '" onchange="inputShow($(this), \'' . $param['control'] . '\')"'; } elseif (isset($param['bind'])) { $param['bind'][2] = isset($param['bind'][2]) ? str_replace('"', '\'', json_encode($param['bind'][2], true)) : false; $change = $param['bind'][0] . '="' . $param['bind'][1] . '($(this), ' . $param['bind'][2] . ')" '; $child_class .= ' change'; } $xm = ''; if ($change) { $xm = ''; } else { } if (!$change && isset($param['update'])) { $xm = 'xm-select="' . $param['name'] . '" xm-select-skin="normal" xm-select-search="" xm-select-search-type="dl"'; if ($param['update'] != 'selects') { $xm .= ' xm-select-radio=""'; } $search_value = ''; if (isset($param['value'])) { $search_value = $param['value']; } elseif (isset($param['default'])) { $search_value = $param['default']; } if (isset($param['update_search'])) { $xm = str_replace('xm-select-search=""', 'xm-select-search="'.Dever::url($param['update_search'] . '&yes='.$search_value.'&json=1').'"', $xm); } if (isset($param['update_create'])) { $xm .= ' xm-select-create=""'; } if ($param['match'] != 'option') { $xm .= ' lay-verify="' . $param['name'] . '"'; } } else { $xm .= ' xm-select-radio=""'; } if (isset($param['option']) && isset($param['update']) && $param['update'] == 'select') { $total = count($param['option']); if ($total <= 5) { $xm = ''; } } $html .= $hidden . ''; if (isset($param['child'])) { $child = $child_param['name']; $hidden = self::hidden(array('name' => $child, 'class' => $child . '_child_value')); foreach ($param['child'] as $k => $v) { $child_param['name'] = 'child-' . $k; $child_param['option'] = $v; $html .= self::select($child_param, $child . '_child ' . $child . '_child_' . $k . '" parent="' . $k . '" style="display:none;margin-top: -35px;margin-left: 47%;"', $hidden); } } $html .= $class ? '
    ' : ''; return $html; } /** * radio * * @return string */ public static function _checkbox($param) { return self::radio($param); } /** * text * * @return string */ public static function _text($param, $class = '') { if ($class) { return '
    ' . self::text($param, false) . '
    '; } else { $auto = $input = ''; $value = (isset($param['value']) ? $param['value'] : (isset($param['default']) ? $param['default'] : '')); if (isset($param['autocomplete'])) { if (empty($param['autocomplete'][1])) { $param['autocomplete'][1] = 'value'; } if ($param['autocomplete'][1] == 'id') { $input = self::hidden(array('name' => $param['name'], 'value' => $value)); $input = ''; if (isset($param['autocomplete'][2]) && $value) { # 重新定义value $value = Dever::load($param['autocomplete'][2], $value); if (is_array($value)) { $html = '
    '; foreach ($value as $k => $v) { $link = ''; $attr = ''; $pic = ''; if (isset($v['pic']) && $v['pic']) { $pic = '  '; } if (isset($v['link']) && $v['link']) { $link = $v['link']; $attr = ' target="_blank"'; } $html .= ''; } $html .= '
      '.$pic.''.$v['value'].'[删除]
    '; $input .= $html; $value = ''; } } $param['name'] = $param['name'] . '_temp'; } $auto = 'complete="' . Dever::url($param['autocomplete'][0]) . '" complete_callback="' . $param['autocomplete'][1] . '" '; if (isset($param['autocomplete'][3])) { $auto .= ' complete_cate="' . $param['autocomplete'][3] . '" '; } } elseif (isset($param['searchbox'])) { if (empty($param['searchbox'][1])) { $param['searchbox'][1] = 'value'; } if ($param['searchbox'][1] == 'id') { $input = self::hidden(array('name' => $param['name'], 'value' => $value)); $input = ''; if (isset($param['searchbox'][2]) && $value) { # 重新定义value $value = Dever::load($param['searchbox'][2], $value); if (is_array($value)) { $html = '
    '; foreach ($value as $k => $v) { $link = ''; $attr = ''; $pic = ''; if (isset($v['pic']) && $v['pic']) { $pic = '  '; } if (isset($v['link']) && $v['link']) { $link = $v['link']; $attr = ' target="_blank"'; } $html .= ''; } $html .= '
      '.$pic.''.$v['value'].'[删除]
    '; $input .= $html; $value = ''; } } $param['name'] = $param['name'] . '_temp'; } $auto = 'searchbox="' . Dever::url($param['searchbox'][0]) . '" searchbox_callback="' . $param['searchbox'][1] . '" '; if (isset($param['searchbox'][3])) { $auto .= ' searchbox_cate="' . $param['searchbox'][3] . '" '; } $search = ''; if (isset($param['searchbox'][4])) { $temp = explode(',', $param['searchbox'][3]); $link = explode(',', $param['searchbox'][4]); $p = array(); $p['option'] = array(); foreach ($temp as $k => $v) { $p['name'] = $v; $p['option'] = Dever::load($link[$k]); $search .= self::_select($p, '', '', ' style="width: 15%;display: inline;margin-left:5px;"'); } } $auto .= ' style="display: inline;"'; $input = $search . '' . $input; } if (isset($param['bind'])) { $param['bind'][2] = isset($param['bind'][2]) ? str_replace('"', '\'', json_encode($param['bind'][2], true)) : false; $auto .= $param['bind'][0] . '="' . $param['bind'][1] . '($(this), ' . $param['bind'][2] . ')" '; $auto .= ' onload="' . $param['bind'][1] . '($(this), ' . $param['bind'][2] . ')" '; } return '' . $input; } } /** * color * * @return string */ public static function _color($param) { $param['class'] = 'dever-color form-control'; $param['update'] = 'text'; $param['default'] = '#000000'; return self::text($param, ''); } /** * password * * @return string */ public static function _password($param) { $param['value'] = ''; return self::text($param); } /** * hidden * * @return string */ public static function _hidden($param) { $param['update'] = 'hidden'; return self::text($param, ''); } /** * time * * @return string */ public static function _time($param) { return ''; } /** * date * * @return string */ public static function _date($param) { return ''; } /** * div * * @return string */ public static function _node($param, $type = 'div') { $result = array('', ''); foreach ($param as $k => $v) { $result[0] .= '<' . $type . ' ' . $v . '>'; $result[1] .= ''; } return $result; } }