<?php

# 定义几个常用的选项
$option = array
(
	1 => '显示',
	2 => '不显示',
);

$status = array
(
	1 => '未读',
	2 => '已读',
);

$type = function()
{
	return Dever::load('message/type-state');
};

return array
(
	# 表名
	'name' => 'inbox',
	# 显示给用户看的名称
	'lang' => '收件箱',
	'order' => 18,
	# 数据结构
	'struct' => array
	(
		'id' 		=> array
		(
			'type' 		=> 'int-11',
			'name' 		=> 'ID',
			'default' 	=> '',
			'desc' 		=> '',
			'match' 	=> 'is_numeric',
			'order'		=> 'desc',
			'list'		=> true,
		),

		'oid'		=> array
		(
			'type' 		=> 'int-11',
			'name' 		=> '收件id',
			'default' 	=> '',
			'desc' 		=> '请填写收件id',
			'match' 	=> 'is_numeric',
			'update'	=> 'text',
			'list'		=> true,
		),

		'uid'		=> array
		(
			'type' 		=> 'int-11',
			'name' 		=> '收件人',
			'default' 	=> '',
			'desc' 		=> '请填写收件人',
			'match' 	=> 'is_numeric',
			'update'	=> 'text',
			'list'		=> true,
		),

		'from_uid'		=> array
		(
			'type' 		=> 'int-11',
			'name' 		=> '发件人',
			'default' 	=> '',
			'desc' 		=> '请填写发件人',
			'match' 	=> 'is_numeric',
			'update'	=> 'text',
			'list'		=> '{uid} > 0 ? {uid} : "系统"',
		),

		'name'		=> array
		(
			'type' 		=> 'varchar-30',
			'name' 		=> '发件标题',
			'default' 	=> '',
			'desc' 		=> '请填写发件标题',
			'match' 	=> 'is_string',
			'update'	=> 'text',
			'search'	=> 'fulltext',
			'list'		=> true,
		),

		'content'		=> array
		(
			'type' 		=> 'text-255',
			'name' 		=> '发件内容',
			'default' 	=> '',
			'desc' 		=> '请填写发件内容',
			'match' 	=> 'is_string',
			'update'	=> 'textarea',
			'search'	=> 'fulltext',
			'list'		=> true,
		),

		'type'		=> array
		(
			'type' 		=> 'int-11',
			'name' 		=> '消息类型',
			'default' 	=> '1',
			'desc' 		=> '消息类型',
			'match' 	=> 'is_numeric',
			'option' 	=> $type,
			'update'	=> 'select',
			//'search'	=> 'select',
			'list'		=> true,
		),

		'status'		=> array
		(
			'type' 		=> 'tinyint-1',
			'name' 		=> '已读状态',
			'default' 	=> '1',
			'desc' 		=> '请选择状态',
			'match' 	=> 'is_numeric',
			'option' 	=> $status,
			'update'	=> 'radio',
			'search'	=> 'select',
			'list'		=> true,
		),

		'state'		=> array
		(
			'type' 		=> 'tinyint-1',
			'name' 		=> '状态',
			'default' 	=> '1',
			'desc' 		=> '请选择状态',
			'match' 	=> 'is_numeric',
		),

		'cdate'		=> array
		(
			'type' 		=> 'int-11',
			'name' 		=> '录入时间',
			'match' 	=> array('is_numeric', time()),
			'desc' 		=> '',
			# 只有insert时才生效
			'insert'	=> true,
			//'list'		=> 'date("Y-m-d H:i:s", {cdate})',
		),
	),

	'manage' => array
	(

	),

	# request 请求接口定义
	'request' => array
	(
		# 获取列表页
		'getAll' => array
		(
			# 匹配的正则或函数 选填项
			'option' => array
			(
				//'name' => array('yes', 'like'),
				'uid' => 'yes',
				'status' => 'yes',
				'state' => 1,
			),
			'type' => 'all',
			'page' => array(15, 'list'),
			'order' => array('id' => 'desc'),
			'col' => '*',
		),
		# 获取未读消息
		'getInfo' => array
		(
			# 匹配的正则或函数 选填项
			'where' => array
			(
				'uid' => 'yes',
				'status' => 'yes',
				'type' => 'yes'
			),
			'type' => 'all',
			'order' => array('id' => 'desc'),
			'col' => '*',
		),
	),

	'manage' => array
	(
		'edit' => false,
		'insert' => false,
		'mul' => true,
	),
);
