<?php
/*
|--------------------------------------------------------------------------
| log.php 日志表
|--------------------------------------------------------------------------
*/

$admin = function()
{
	$array = array();
	$info = Dever::load('manage/admin-state');
	if($info)
	{
		$array += $info;
	}
	return $array;
};

return array
(
	# 表名
	'name' => 'log',
	# 显示给用户看的名称
	'lang' => '管理操作日志',
	# 关闭验证重复提交功能
	'submit' => false,
	# 建表时进行分区,一般按照时间分区,仅在mysql类型有效
	'partition' => array
	(
		'type' => 'range',//range分区,具体的值请查看mysql分区类型
		'col' => 'YEAR(cdate)',//分区的字段值
		'value' => array(2000,2010),//分区的值
		'exp' => 'LESS THEN',//LESS THEN还是in等表达式
	),

	# 表类型 值为\innodb\myisam\,默认为innodb,仅在mysql类型有效
	//'type' => 'innodb',
	# 数据结构
	'struct' => array
	(
		'id' 		=> array
		(
			'type' 		=> 'int-11',
			'name' 		=> 'ID',
			'default' 	=> '',
			'desc' 		=> '',
			'match' 	=> 'is_numeric',
		),
		
		'project'		=> array
		(
			'type' 		=> 'varchar-32',
			'name' 		=> '项目名',
			'default' 	=> '',
			'desc' 		=> '请输入项目名',
			'match' 	=> 'is_string',
			'list'		=> 'Dever::load("manage/project.name", "{project}")',
		),
		
		'table'		=> array
		(
			'type' 		=> 'varchar-32',
			'name' 		=> '项目下的表名',
			'default' 	=> '',
			'desc' 		=> '项目下的表名',
			'match' 	=> 'is_string',
			'list'		=> 'Dever::load("manage/database.getTableName", "{project}", "{table}")',
		),
		
		'info'		=> array
		(
			'type' 		=> 'longtext',
			'name' 		=> '日志记录',
			'default' 	=> '',
			'desc' 		=> '日志记录',
			'match' 	=> 'is_string',
			'list'		=> 'base64_decode("{info}")',
			'modal'		=> '查看详情',
		),
		
		'admin'		=> array
		(
			'type' 		=> 'int-11',
			'name' 		=> '操作人',
			'default' 	=> '',
			'desc' 		=> '操作人',
			'match' 	=> 'is_string',
			'list'		=> 'Dever::load("manage/admin-one#username", {admin})',
			//'option'	=> $admin,
			'search'	=> 'fulltext',
		),
		
		'tid'		=> array
		(
			'type' 		=> 'int-11',
			'name' 		=> '来源表id',
			'default' 	=> '',
			'desc' 		=> '来源表id',
			'match' 	=> 'is_string',
		),

		'state'		=> array
		(
			'type' 		=> 'tinyint-1',
			'name' 		=> '状态',
			'default' 	=> '1',
			'desc' 		=> '请选择状态',
			'match' 	=> 'option',
		),
		
		'cdate'		=> array
		(
			'type' 		=> 'int-11',
			'name' 		=> '操作时间',
			'match' 	=> array('is_numeric', time()),
			'desc' 		=> '',
			# 只有insert时才生效
			'insert'	=> true,
			'search'	=> 'time',
			'list'		=> 'date("Y-m-d H:i:s", {cdate})',
		),
	),

	'manage' => array
	(
		'delete' => false,
	),
	
	# 索引
	'index' => array
	(
		# 索引名 => 索引id
		//'id' => 'id,state',
	),
	
	# request 请求接口定义
	'request' => array
	(
		# onload 增加hack功能 使用该请求接口必须首先载入的类 如果需要子项也添加类似功能,可以使用start、end
		'onload' => 'manage/auth.init',//这个是权限验证,必须后台登录
	),
);