audit;
$status = Dever::config('base')->status;
$share = function()
{
$array = array();
$info = Dever::db('poster/template')->state();
if($info)
{
$array += $info;
}
return $array;
};
# 获取电子刊分类权限
$auth = Dever::tops();
$cate = function() use ($auth)
{
$array = array();
if ($auth) {
$info = Dever::db('journal/cate')->getIds(array('ids' => $auth));
} else {
$info = Dever::db('journal/cate')->state();
}
if($info)
{
$array += $info;
}
return $array;
};
$share = array
(
1 => '显示',
2 => '不显示',
);
$top = array
(
1 => '显示',
2 => '不显示',
);
$buy = array
(
1 => '收费',
2 => '免费',
//3 => '会员',
);
$buy_type = array
(
1 => '普通支付',
2 => '按明星支付',
);
$hot = array
(
1 => '热门',
2 => '普通',
);
$page = 15;
# 常用的col
$col = 'id,name,subname,pic_cover,pic_view_cover,pic_view_bg,pdate,num_ding,num_add_ding,num_ratio_ding,num_up,buy,buy_type,share_yes,share_title,share_pic,share_content,pic_gd,cate_id,cash,bgmusic,top,hot,h5';
$config = array
(
# 表名
'name' => 'info',
# 显示给用户看的名称
'lang' => '发刊管理',
'order' => 100,
'end' => array
(
'insert' => 'journal/lib/manage.setJournalCache',
'update' => 'journal/lib/manage.setJournalCache',
),
# 同步更新另外一个或多个表的数据 电子刊不需要同步到审核页面
/*
'syncone' => array
(
'audit/data' => array
(
# 更新另外一个表的字段 => 本表的字段
'where' => array('data_id' => 'id', 'type' => 4),
# 要更新的数据
'update' => array('data_id' => 'id', 'type' => 4, 'pdate' => 'pdate', 'reorder' => 'reorder', 'name' => 'name', 'audit' => 'audit', 'state' => 'state'),
)
),
*/
# 数据结构
'struct' => array
(
'id' => array
(
'type' => 'int-11',
'name' => 'ID',
'default' => '',
'desc' => '',
'match' => 'is_numeric',
'list' => true,
),
'name' => array
(
'type' => 'varchar-180',
'name' => '电子刊标题',
'default' => '',
'desc' => '标题',
'match' => 'is_string',
'update' => 'text',
'search' => 'fulltext',
'list' => true,
),
'subname' => array
(
'type' => 'varchar-80',
'name' => '子标题-一般为杂志的期数,如第1期',
'default' => '',
'desc' => '子标题',
'match' => 'is_string',
'update' => 'text',
//'list' => true,
),
'cate_id' => array
(
'type' => 'int-11',
'name' => '电子刊分类',
'default' => '1',
'desc' => '电子刊分类',
'match' => 'is_numeric',
'update' => 'select',
'option' => $cate,
'search' => 'select',
//'list' => true,
),
'h5' => array
(
'type' => 'varchar-800',
'name' => 'h5地址-填写后,直接跳转到该页面',
'default' => '',
'desc' => 'h5地址',
'match' => 'option',
'update' => 'textarea',
//'search' => 'fulltext',
//'list' => true,
),
'pic_cover' => array
(
'type' => 'varchar-150',
'name' => '列表页封面图-4:3比例的图片',
'default' => '',
'desc' => '列表封面图',
'match' => 'is_string',
//'update' => 'image',
'key' => '1',
'place' => '150',
),
'pic_view_cover' => array
(
'type' => 'varchar-150',
'name' => '封面图-图片尺寸660*660px或等比尺寸,上传大小不能超过2M,支持JPG、PNG、GIF格式,建议上传JPG格式',
'default' => '',
'desc' => '封面图',
'match' => 'is_string',
'update' => 'image',
'key' => '1',
'place' => '150',
),
'pic_view_bg' => array
(
'type' => 'text-255',
'name' => '全屏背景图-图片尺寸750*1386px或等比尺寸,上传大小不能超过2M,支持JPG、PNG、GIF格式,建议上传JPG格式',
'default' => '',
'desc' => '全屏背景图',
'match' => 'is_string',
'update' => 'images',
'key' => '1',
'place' => '150',
),
'pic_gd' => array
(
'type' => 'varchar-150',
'name' => '电子刊推广图-图片尺寸512*688px或等比尺寸,上传大小不能超过2M,支持JPG、PNG、GIF格式,建议上传JPG格式',
'default' => '',
'desc' => '电子刊推广图',
'match' => 'is_string',
'update' => 'image',
'key' => '1',
'place' => '150',
),
'bgmusic' => array
(
'type' => 'varchar-800',
'name' => '背景音乐-音频格式mp3,上传大小不能超过100M',
'default' => '',
'desc' => '背景音乐',
'match' => 'option',
'update' => 'upload',
'key' => '2',
'place' => '150',
'upload' => 'qiniu',
'large' => true,
//不覆盖原文件,生成新文件
'cover' => 2,
),
'num_ding' => array
(
'type' => 'int-11',
'name' => '订阅数',
'default' => '0',
'desc' => '请填写订阅数',
'match' => 'option',
'search' => 'order',
'list' => 'Dever::load("journal/lib/manage.ding?id={id}")',
'list_name' => '统计数字',
),
'num_up' => array
(
'type' => 'int-11',
'name' => '阅读数',
'default' => '0',
'desc' => '阅读数',
'match' => 'option',
),
'state' => array
(
'type' => 'tinyint-1',
'name' => '状态',
'default' => '1',
'desc' => '请选择状态',
'match' => 'is_numeric',
),
'audit' => array
(
'type' => 'int-11',
'name' => '审核',
'default' => '1',
'desc' => '审核',
'match' => 'is_numeric',
//'update' => 'select',
'option' => $audit,
//'search' => 'select',
//'list' => true,
//'edit' => true,
),
'status' => array
(
'type' => 'int-11',
'name' => '上线状态',
'default' => '1',
'desc' => '上线状态',
'match' => 'is_numeric',
//'update' => 'select',
'option' => $status,
'search' => 'select',
'list' => true,
'edit' => true,
),
'admin_founder' => array
(
'type' => 'int-11',
'name' => '创建人',
'default' => '1',
'desc' => '创建人',
'match' => 'is_numeric',
),
'admin_editor' => array
(
'type' => 'int-11',
'name' => '操作人',
'default' => '1',
'desc' => '操作人',
'match' => 'is_numeric',
),
'pdate' => array
(
'type' => 'int-11',
'name' => '发售时间',
'match' => array('is_numeric', time()),
'default' => '',
'desc' => '',
'update' => 'date',
'callback' => 'maketime',
'insert' => true,
//'list' => 'date("Y-m-d H:i:s", {pdate})',
'auth' => '"{pdate}" > 0',
),
'ydate' => array
(
'type' => 'int-11',
'name' => '预售时间',
'match' => 'option',
'default' => '',
'desc' => '',
//'update' => 'date',
'callback' => 'maketime',
//'insert' => true,
//'list' => 'date("Y-m-d H:i:s", {pdate})',
//'auth' => '"{ydate}" > 0',
),
'top' => array
(
'type' => 'tinyint-11',
'name' => '是否显示排行榜',
'default' => '1',
'desc' => '是否显示排行榜',
'match' => 'option',
'update' => 'radio',
'option' => $top,
'list' => true,
'search' => 'select',
'edit' => true,
),
'buy' => array
(
'type' => 'int-11',
'name' => '是否收费',
'default' => '1',
'desc' => '是否收费',
'match' => 'option',
'update' => 'radio',
'option' => $buy,
'control' => 'buy',
//'list' => true,
'search' => 'select',
),
'buy_type' => array
(
'type' => 'int-11',
'name' => '支付类型',
'default' => '1',
'desc' => '支付类型',
'match' => 'option',
'update' => 'radio',
'option' => $buy_type,
'show' => 'buy=1',
),
'hot' => array
(
'type' => 'tinyint-1',
'name' => '是否热门电子刊',
'default' => '2',
'desc' => '是否热门电子刊',
'match' => 'option',
//'update' => 'radio',
'option' => $hot,
'search' => 'select',
'list' => true,
'edit' => true,
),
'cash' => array
(
'type' => 'varchar-50',
'name' => '单本支付价格-实际的电子刊单本支付价格,单位元,直接填写数字即可',
'default' => '',
'desc' => '支付价格',
'match' => 'is_string',
'update' => 'text',
'show' => 'buy=1',
),
'buy_content' => array
(
'type' => 'text-255',
'name' => '购买说明',
'default' => '',
'desc' => '请输入内容',
'match' => 'is_string',
'update' => 'editor',
'key' => 1,
'show' => 'buy=1',
),
'num_ratio_ding' => array
(
'type' => 'varchar-20',
'name' => '订阅系数-系数不能小于等于0,支持两位小数,电子刊总订阅量=(用户当前订阅数+订阅基数)*订阅系数。注意:如果设置了明星,这里设置将失效',
'default' => '1',
'desc' => '手动增加订阅系数',
'match' => 'is_string',
'update' => 'text',
'show' => 'buy=1&buy_type=1',
),
'num_add_ding' => array
(
'type' => 'int-11',
'name' => '订阅基数-注意:如果设置了明星,这里设置将失效',
'default' => '0',
'desc' => '手动增加阅读数',
'match' => 'option',
'update' => 'text',
'show' => 'buy=1&buy_type=1',
),
'share_yes' => array
(
'type' => 'int-11',
'name' => '是否显示分享按钮',
'default' => '1',
'desc' => '是否显示分享按钮',
'match' => 'option',
'update' => 'radio',
'option' => $share,
'control' => 'share_yes',
),
'share_title' => array
(
'type' => 'varchar-100',
'name' => '分享标题',
'default' => '',
'desc' => '分享标题',
'match' => 'option',
'update' => 'text',
'show' => 'share_yes=1',
),
'share_pic' => array
(
'type' => 'varchar-150',
'name' => '分享图片-图片尺寸570*570px或等比尺寸,上传大小不能超过2M,支持JPG、PNG、GIF格式,建议上传JPG格式',
'default' => '',
'desc' => '分享图片',
'match' => 'is_string',
'update' => 'image',
'key' => '1',
'place' => '150',
'show' => 'share_yes=1',
//'upload' => 'qiniu',
//'large' => true,
),
'share_content' => array
(
'type' => 'varchar-200',
'name' => '分享内容',
'default' => '',
'desc' => '分享内容',
'match' => 'option',
'update' => 'textarea',
'show' => 'share_yes=1',
),
'reorder' => array
(
'type' => 'int-11',
'name' => '排序(数值越大越靠前)',
'default' => '1',
'desc' => '请输入排序',
'match' => 'option',
'update' => 'text',
'search' => 'order',
'list' => true,
'order' => 'desc',
'edit' => true,
),
'udate' => array
(
'type' => 'int-11',
'name' => '更新时间',
'match' => array('is_numeric', time()),
'desc' => '',
),
'cdate' => array
(
'type' => 'int-11',
'name' => '录入时间',
'match' => array('is_numeric', time()),
'desc' => '',
# 只有insert时才生效
'insert' => true,
),
),
'top' => Dever::config('base')->top,
# 增加这个,为了给当前的list增加一个option $admin = Dever::load('manage/auth.info');
'top_option' => array
(
array
(
'value' => $auth,
'col' => 'cate_id',
),
array
(
'value' => Dever::load('manage/auth.authData'),
'col' => 'id',
),
),
# 管理功能
'manage' => array
(
//'insert' => false,
'delete' => false,
# 列表
'list_button' => array
(
'update' => '编辑电子刊',
'br1' => array('
'),
'edit' => array('电子刊预览', str_replace('https://api.', 'http://www.', Dever::url('main/preview.get?type=4'))),
'edit1' => array('活动预览', str_replace('https://api.', 'http://www.', Dever::url('main/preview.get?type=13')), '{audit} == 1 && {buy} == 1'),
'br2' => array('
'),
'list10' => array('排行榜', '"journal_num&project=act&search_type=4&search_option_journal_id={id}&oper_parent=info&oper_project=journal"' , '{audit} == 1 && {buy} == 1'),
'list' => array('内页管理', '"content&search_option_info_id={id}&oper_parent=info&page_type=1"' , '{audit} == 1'),
//'add' => array('购买设置', '"buy&project=journal&search_option_info_id={id}&oper_parent=info&oper_project=journal&oper_save_jump=info&where_id={id}"', '{audit} == 1 && {buy} == 1'),
'add1' => array('活动设置', '"active&project=journal&search_option_info_id={id}&oper_parent=info&oper_project=journal&oper_save_jump=info&where_id={id}"', '{audit} == 1 && {buy} == 1'),
'list1' => array('购买本数管理', '"buy_num&search_option_info_id={id}&oper_parent=info"' , '{audit} == 1 && {buy} == 1'),
'list2' => array('购买明星设置', '"star&search_option_info_id={id}&oper_parent=info"' , '{audit} == 1 && {buy} == 1 && {buy_type} == 2'),
),
),
# request 请求接口定义
'request' => array
(
'search' => array
(
# 匹配的正则或函数 选填项
'option' => array
(
'ids' => array('yes-id', 'in'),
'cate_id' => 'yes',
'name' => array('yes', 'like'),
'id' => 'yes',
'state' => 1,
),
'type' => 'all',
'order' => array('reorder' => 'desc', 'id' => 'desc'),
'limit' => '0,1000',
'col' => 'name as name, id, id as value, "" as selected, "" as disabled|id',
),
'getAll' => array
(
# 匹配的正则或函数 选填项
'option' => array
(
//'audit' => 2,
'buy' => 'yes',
'buy_type' => 'yes',
'cate_id' => 'yes',
'status' => 2,
'state' => 1,
),
'type' => 'all',
'order' => array('reorder' => 'desc', 'id' => 'desc'),
//'page' => array(10, 'list'),
'col' => $col,
),
'getAllByPage' => array
(
# 匹配的正则或函数 选填项
'option' => array
(
//'audit' => 2,
'cate_id_1' => array('yes-cate_id', '=', 'and('),
'time' => array('yes-pdate', '<=', 'or)'),
'buy' => 'yes',
'buy_type' => 'yes',
'cate_id' => 'yes',
'status' => 2,
'state' => 1,
),
'type' => 'all',
'order' => array('reorder' => 'desc', 'id' => 'desc'),
'page' => array(10, 'list'),
'col' => $col,
),
# 更新阅读数
'addDing' => array
(
'type' => 'update',
'where' => array
(
'id' => 'yes',
),
'set' => array
(
'num_up' => array('1', '+='),
),
),
'getIds' => array
(
# 匹配的正则或函数 选填项
'option' => array
(
'cate_id' => array('yes-cate_id', 'in'),
'state' => 1,
),
'type' => 'all',
'order' => array('reorder' => 'desc','id' => 'desc'),
'col' => '*,id as value|id',
),
'getOne' => array
(
# 匹配的正则或函数 选填项
'option' => array
(
'id' => 'yes',
'state' => 1,
),
'type' => 'one',
'col' => $col,
),
# 热门
'getHot' => array
(
# 匹配的正则或函数 选填项
'option' => array
(
//'audit' => 2,
'hot' => 1,
'buy' => 'yes',
'buy_type' => 'yes',
'cate_id' => 'yes',
'status' => 2,
'state' => 1,
),
'type' => 'all',
'order' => array('reorder' => 'desc', 'id' => 'desc'),
//'page' => array(10, 'list'),
'col' => $col,
),
'getNew' => array
(
# 匹配的正则或函数 选填项
'option' => array
(
'cate_id_1' => array('yes-cate_id', '=', 'and('),
'time' => array('yes-pdate', '<=', 'or)'),
'cate_id' => 'yes',
'status' => 2,
'state' => 1,
),
'type' => 'one',
'order' => array('ssdate' => 'desc'),
'col' => $col . ',case when cate_id = 1 then pdate else pdate-'.$time.' end as ssdate',
),
),
);
/* 由top_option取代
if ($auth) {
$config['request']['list'] = array
(
'type' => 'all',
'order' => array('id' => 'desc'),
'col' => '*|id',
'page' => array(15, 'list'),
'option' => array
(
'cate_id' => array($auth, 'in'),
),
);
}
*/
return $config;