<?php

$table = Dever::config('base')->type;

$source = array
(
	1 => '购买',
	2 => '兑换码',
	3 => '邀请活动',
	4 => '免费阅读',
);
$note = array
(
	1 => '未发送',
	2 => '已发送',
);
return array
(
	# 表名
	'name' => 'subscribe',
	# 显示给用户看的名称
	'lang' => '订阅日志',
	# 是否显示在后台菜单
	'order' => 68,
	# 数据结构
	'struct' => array
	(
		'id' 		=> array
		(
			'type' 		=> 'int-11',
			'name' 		=> 'ID',
			'default' 	=> '',
			'desc' 		=> '',
			'match' 	=> 'is_numeric',
			'order'		=> 'desc',
			//'list'		=> true,
		),
		

		'uid'		=> array
		(
			'type' 		=> 'int-11',
			'name' 		=> '用户名',
			'default' 	=> '0',
			'desc' 		=> '请选择用户',
			'match' 	=> 'is_numeric',
			'update'	=> 'text',
			//'search'	=> 'select',
			'search'    => array
            (
                'api' => 'passport/user-all',
                'col' => 'username',
                'result' => 'id',
            ),
			'list'		=> '{uid} > 0 ? Dever::load("passport/user-one#username", {uid}) . "({uid})" : "匿名用户"',
		),

		'type' 		=> array
		(
			'type' 		=> 'tinyint-1',
			'name' 		=> '订阅类别',
			'default' 	=> '',
			'desc' 		=> '订阅类别',
			'match' 	=> 'option',
			'update'	=> 'select',
			//'search'	=> 'select',
			'option' 	=> $table,
			//'list'		=> true,
		),
		
		'data_id' 		=> array
		(
			'type' 		=> 'int-11',
			'name' 		=> '标题',
			'default' 	=> '',
			'desc' 		=> '标题',
			'update'	=> 'text',
			'match' 	=> 'option',
			'list'		=> 'Dever::load("act/lib/manage.load", "{type}", {data_id}, "{id}")',
		),

		'note'     => array
        (
            'type'      => 'tinyint-1',
            'name'      => '是否发送状态提醒-1未发送,2已发送',
            'default'   => '1',
            'desc'      => '请选择状态',
            'match'     => 'is_numeric',
            'option'	=> $note,
            'edit'		=> true,
            'list'		=> true,
        ),

		'source' 		=> array
		(
			'type' 		=> 'tinyint-1',
			'name' 		=> '来源',
			'default' 	=> '',
			'desc' 		=> '来源',
			'match' 	=> 'option',
			'update'	=> 'select',
			'search'	=> 'select',
			'option' 	=> $source,
			'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,
			'search'	=> 'date',
			'list'		=> 'date("Y-m-d H:i:s", {cdate})',
		),
	),

	'manage' => array
	(
		'insert' => false,
		'edit' => false,
		'delete' => false,
	),

	# request 请求接口定义
	'request' => array
	(
		'getAll' => array
		(
			# 匹配的正则或函数 选填项
			'option' => array
			(
				'data_id' => 'yes',
				'type' => 'yes',
				'avatar' => array('yes-t_2.avatar', '!='),
				'state' => 1,
				'status' => 'yes-t_2.status',
			),
			# 联表
			'join' => array
			(
				array
				(
					'table' => 'passport/user',
					'type' => 'left join',
					'on' => array('uid','id'),
					'col' => 't_2.username,t_2.avatar',
				),
			),
			'type' => 'all',
			'order' => array('t_2.id' => 'desc'),
			'page' => array(6, 'list'),
			'col' => '*',
		),

		'getMyAll' => array
		(
			# 匹配的正则或函数 选填项
			'option' => array
			(
				'data_id' => 'yes',
				'type' => 'yes',
				'uid' => 'yes',
				'source' => array('yes', 'in'),
				'cate_id' => 'yes-t_2.cate_id',
				'state' => 1,
				'status' => 'yes-t_2.status',
			),
			# 联表
			'join' => array
			(
				array
				(
					'table' => 'journal/info',
					'type' => 'left join',
					'on' => array('data_id','id'),
				),
			),
			'type' => 'all',
			'order' => array('t_1.id' => 'desc'),
			'page' => array(10000, 'list'),
			'col' => '*,t_2.*,t_2.num_add_view+t_2.num_view as num_view,ROUND((t_2.num_ding+t_2.num_add_ding)*t_2.num_ratio_ding) as num_ding,t_2.num_add_ding,t_2.num_ratio_ding',
		),
	)
);