'.dr_lang('把游客组作为一个用户组来显示').'
']; } /** * 创建sql语句 */ public function create_sql($name, $value, $cname = '') { $sql = 'ALTER TABLE `{tablename}` ADD `'.$name.'` varchar(255) NULL , ADD `'.$name.'_sku` TEXT NULL'; return $sql; } /** * 修改sql语句 */ public function alter_sql($name, $value, $cname = '') { return NULL; } /** * 删除sql语句 */ public function drop_sql($name) { $sql = 'ALTER TABLE `{tablename}` DROP `'.$name.'`, DROP `'.$name.'_sku`'; return $sql; } // 测试字段是否被创建成功,默认成功为0,需要继承开发 public function test_sql($tables, $field) { if (!$tables) { return 0; } foreach ($tables as $table) { if (!\Phpcmf\Service::M()->db->fieldExists($field.'_sku', $table)) { return '给表['.$table.']创建字段['.$field.'_sku'.']失败'; } if (!\Phpcmf\Service::M()->db->fieldExists($field.'', $table)) { return '给表['.$table.']创建字段['.$field.''.']失败'; } } return 0; } /** * 字段入库值 */ public function insert_value($field) { if ((int)$_POST['is_field_'.$field['fieldname']]) { // 用户组 $sku = $_POST['data'][$field['fieldname'].'_sku']; $price = min($sku); \Phpcmf\Service::L('Field')->data[$field['ismain']][$field['fieldname']] = $price; \Phpcmf\Service::L('Field')->data[$field['ismain']][$field['fieldname'].'_sku'] = dr_array2string($sku); } else { // 单一 \Phpcmf\Service::L('Field')->data[$field['ismain']][$field['fieldname']] = $_POST['data'][$field['fieldname']]; \Phpcmf\Service::L('Field')->data[$field['ismain']][$field['fieldname'].'_sku'] = ''; } } /** * 字段输出 * * @param array $value 值 * @return string */ public function output($value) { return $value; } /** * 字段表单输入 * * @return string */ public function input($field, $value = []) { // 字段显示名称 $text = ($field['setting']['validate']['required'] ? ' * ' : '').dr_lang($field['name']); // 字段提示信息 $tips = $field['setting']['validate']['tips'] ? ''.$field['setting']['validate']['tips'].'' : ''; // 模式 $sku = dr_string2array(\Phpcmf\Service::L('Field')->value[$field['fieldname'].'_sku']); $html = ''; if ($field['setting']['option']['guest']) { $group = dr_array22array([ 0 => [ 'id' => 0, 'name' => dr_lang('游客'), ], ], \Phpcmf\Service::C()->member_cache['group']); } else { $group = \Phpcmf\Service::C()->member_cache['group']; } foreach ($group as $g) { $html.= ''; } $is_field = $sku? 1 : 0; $str = '
'.$html.'
'; return $this->input_format($field['fieldname'], $text, $str.$tips); } /** * 字段表单显示 */ public function show($field, $value = null) { // 字段显示名称 $text = ($field['setting']['validate']['required'] ? ' * ' : '').$field['name']; // 字段提示信息 $tips = $field['setting']['validate']['tips'] ? ''.$field['setting']['validate']['tips'].'' : ''; // 模式 $sku = dr_string2array(\Phpcmf\Service::L('Field')->value['score_sku']); $html = ''; if ($field['setting']['option']['guest']) { $group = dr_array22array([ 0 => [ 'id' => 0, 'name' => dr_lang('游客'), ], ], \Phpcmf\Service::C()->member_cache['group']); } else { $group = \Phpcmf\Service::C()->member_cache['group']; } foreach ($group as $g) { $html.= ''; } $is_field = $sku? 1 : 0; $str = '
'.$html.'
'; return $this->input_format($field['fieldname'], $text, $str.$tips); } }