同步操作将从 想天皮克斯/OpenCenter V3 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
<?php// +----------------------------------------------------------------------// | OneThink [ WE CAN DO IT JUST THINK IT ]// +----------------------------------------------------------------------// | Copyright (c) 2013 http://www.onethink.cn All rights reserved.// +----------------------------------------------------------------------// | Author: 麦当苗儿 <zuojiazi@vip.qq.com> <http://www.zjzit.cn>// +----------------------------------------------------------------------/*** 后台公共文件* 主要定义后台公共函数库*//* 解析列表定义规则*/function get_list_field($data, $grid,$model){// 获取当前字段数据foreach($grid['field'] as $field){$array = explode('|',$field);$temp = $data[$array[0]];// 函数支持if(isset($array[1])){$temp = call_user_func($array[1], $temp);}$data2[$array[0]] = $temp;}if(!empty($grid['format'])){$value = preg_replace_callback('/\[([a-z_]+)\]/', function($match) use($data2){return $data2[$match[1]];}, $grid['format']);}else{$value = implode(' ',$data2);}// 链接支持if(!empty($grid['href'])){$links = explode(',',$grid['href']);foreach($links as $link){$array = explode('|',$link);$href = $array[0];if(preg_match('/^\[([a-z_]+)\]$/',$href,$matches)){$val[] = $data2[$matches[1]];}else{$show = isset($array[1])?$array[1]:$value;// 替换系统特殊字符串$href = str_replace(array('[DELETE]','[EDIT]','[MODEL]'),array('del?ids=[id]&model=[MODEL]','edit?id=[id]&model=[MODEL]',$model['id']),$href);// 替换数据变量$href = preg_replace_callback('/\[([a-z_]+)\]/', function($match) use($data){return $data[$match[1]];}, $href);$val[] = '<a href="'.U($href).'">'.$show.'</a>';}}$value = implode(' ',$val);}return $value;}// 获取模型名称function get_model_by_id($id){return $model = M('Model')->getFieldById($id,'title');}// 获取属性类型信息function get_attribute_type($type=''){// TODO 可以加入系统配置static $_type = array('num' => array('数字','int(10) UNSIGNED NOT NULL'),'string' => array('字符串','varchar(255) NOT NULL'),'textarea' => array('文本框','text NOT NULL'),'datetime' => array('时间','int(10) NOT NULL'),'bool' => array('布尔','tinyint(2) NOT NULL'),'select' => array('枚举','char(50) NOT NULL'),'radio' => array('单选','char(10) NOT NULL'),'checkbox' => array('多选','varchar(100) NOT NULL'),'editor' => array('编辑器','text NOT NULL'),'picture' => array('上传图片','int(10) UNSIGNED NOT NULL'),'file' => array('上传附件','int(10) UNSIGNED NOT NULL'),);return $type?$_type[$type][0]:$_type;}/*** 获取对应状态的文字信息* @param int $status* @return string 状态文字 ,false 未获取到* @author huajie <banhuajie@163.com>*/function get_status_title($status = null){if(!isset($status)){return false;}switch ($status){case -1 : return '已删除'; break;case 0 : return '禁用'; break;case 1 : return '正常'; break;case 2 : return '待审核'; break;default : return false; break;}}// 获取数据的状态操作function show_status_op($status) {switch ($status){case 0 : return '启用'; break;case 1 : return '禁用'; break;case 2 : return '审核'; break;default : return false; break;}}/*** 获取文档的类型文字* @param string $type* @return string 状态文字 ,false 未获取到* @author huajie <banhuajie@163.com>*/function get_document_type($type = null){if(!isset($type)){return false;}switch ($type){case 1 : return '目录'; break;case 2 : return '主题'; break;case 3 : return '段落'; break;default : return false; break;}}/*** 获取配置的类型* @param string $type 配置类型* @return string*/function get_config_type($type=0){$list = C('CONFIG_TYPE_LIST');return $list[$type];}/*** 获取配置的分组* @param string $group 配置分组* @return string*/function get_config_group($group=0){$list = C('CONFIG_GROUP_LIST');return $group?$list[$group]:'';}/*** select返回的数组进行整数映射转换** @param array $map 映射关系二维数组 array(* '字段名1'=>array(映射关系数组),* '字段名2'=>array(映射关系数组),* ......* )* @author 朱亚杰 <zhuyajie@topthink.net>* @return array** array(* array('id'=>1,'title'=>'标题','status'=>'1','status_text'=>'正常')* ....* )**/function int_to_string(&$data,$map=array('status'=>array(1=>'正常',-1=>'删除',0=>'禁用',2=>'未审核',3=>'草稿'))) {if($data === false || $data === null ){return $data;}$data = (array)$data;foreach ($data as $key => $row){foreach ($map as $col=>$pair){if(isset($row[$col]) && isset($pair[$row[$col]])){$data[$key][$col.'_text'] = $pair[$row[$col]];}}}return $data;}/*** 动态扩展左侧菜单,base.html里用到* @author 朱亚杰 <zhuyajie@topthink.net>*/function extra_menu($extra_menu,&$base_menu){foreach ($extra_menu as $key=>$group){if( isset($base_menu['child'][$key]) ){$base_menu['child'][$key] = array_merge( $base_menu['child'][$key], $group);}else{$base_menu['child'][$key] = $group;}}}/*** 获取参数的所有父级分类* @param int $cid 分类id* @return array 参数分类和父类的信息集合* @author huajie <banhuajie@163.com>*/function get_parent_category($cid){if(empty($cid)){return false;}$cates = M('Category')->where(array('status'=>1))->field('id,title,pid')->order('sort')->select();$child = get_category($cid); //获取参数分类的信息$pid = $child['pid'];$temp = array();$res[] = $child;while(true){foreach ($cates as $key=>$cate){if($cate['id'] == $pid){$pid = $cate['pid'];array_unshift($res, $cate); //将父分类插入到数组第一个元素前}}if($pid == 0){break;}}return $res;}/*** 检测验证码* @param integer $id 验证码ID* @return boolean 检测结果* @author 麦当苗儿 <zuojiazi@vip.qq.com>*/function check_verify($code, $id = 1){$verify = new \Think\Verify();return $verify->check($code, $id);}/*** 获取当前分类的文档类型* @param int $id* @return array 文档类型数组* @author huajie <banhuajie@163.com>*/function get_type_bycate($id = null){if(empty($id)){return false;}$type_list = C('DOCUMENT_MODEL_TYPE');$model_type = M('Category')->getFieldById($id, 'type');$model_type = explode(',', $model_type);foreach ($type_list as $key=>$value){if(!in_array($key, $model_type)){unset($type_list[$key]);}}return $type_list;}/*** 获取当前文档的分类* @param int $id* @return array 文档类型数组* @author huajie <banhuajie@163.com>*/function get_cate($cate_id = null){if(empty($cate_id)){return false;}$cate = M('Category')->where('id='.$cate_id)->getField('title');return $cate;}// 分析枚举类型配置值 格式 a:名称1,b:名称2function parse_config_attr($string) {$array = preg_split('/[,;\r\n]+/', trim($string, ",;\r\n"));if(strpos($string,':')){$value = array();foreach ($array as $val) {list($k, $v) = explode(':', $val);$value[$k] = $v;}}else{$value = $array;}return $value;}// 获取子文档数目function get_subdocument_count($id=0){return M('Document')->where('pid='.$id)->count();}// 分析枚举类型字段值 格式 a:名称1,b:名称2// 暂时和 parse_config_attr功能相同// 但请不要互相使用,后期会调整function parse_field_attr($string) {if(0 === strpos($string,':')){// 采用函数定义return eval(substr($string,1).';');}$array = preg_split('/[,;\r\n]+/', trim($string, ",;\r\n"));if(strpos($string,':')){$value = array();foreach ($array as $val) {list($k, $v) = explode(':', $val);$value[$k] = $v;}}else{$value = $array;}return $value;}/*** 获取行为数据* @param string $id 行为id* @param string $field 需要获取的字段* @author huajie <banhuajie@163.com>*/function get_action($id = null, $field = null){if(empty($id) && !is_numeric($id)){return false;}$list = S('action_list');if(empty($list[$id])){$map = array('status'=>array('gt', -1), 'id'=>$id);$list[$id] = M('Action')->where($map)->field(true)->find();}return empty($field) ? $list[$id] : $list[$id][$field];}/*** 根据条件字段获取数据* @param mixed $value 条件,可用常量或者数组* @param string $condition 条件字段* @param string $field 需要返回的字段,不传则返回整个数据* @author huajie <banhuajie@163.com>*/function get_document_field($value = null, $condition = 'id', $field = null){if(empty($value)){return false;}//拼接参数$map[$condition] = $value;$info = M('Model')->where($map);if(empty($field)){$info = $info->field(true)->find();}else{$info = $info->getField($field);}return $info;}/*** 获取行为类型* @param intger $type 类型* @param bool $all 是否返回全部类型* @author huajie <banhuajie@163.com>*/function get_action_type($type, $all = false){$list = array(1=>'系统',2=>'用户',);if($all){return $list;}return $list[$type];}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。