| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624 | <?php$id = Dever::input('search_option_info_id');$cate = array();if ($id) {    $journal = Dever::db('journal/info')->one($id);    $cate = Dever::db('journal/cate')->one($journal['cate_id']);}$type_default = 3;$type_config = Dever::db('journal/cate')->config['gettype'];if ($cate) {    $type = array();    $cate_type = explode(',', $cate['type']);    $i = 0;    foreach ($cate_type as $k => $v) {        if (isset($type_config[$v])) {            if ($i == 0) {                $type_default = $v;            }            $type[$v] = $type_config[$v];            $i++;        }    }} else {    $type = $type_config;}$product = function(){    $array = array();    $info = Dever::db('product/info')->state();    if($info)    {        $array += $info;    }    return $array;};$is_button = array(    1 => '显示',    2 => '不显示',);$text = array(    1 => '上左',    2 => '上中',    3 => '上右',    4 => '中左',    5 => '正中',    6 => '中右',    7 => '下左',    8 => '下中',    9 => '下右',    //10 => '自定义',);$palaces = array(    1 => '上左',    2 => '上右',    3 => '下左',    4 => '下右',);$bgcolor_type = array(    1 => '设置背景颜色',    2 => '不设置背景颜色',);$talk_type = array(    1 => '文字',    2 => '图片',    3 => '音频',);$talk_location = array(    1 => '显示在左侧',    2 => '显示在右侧',);return array(    # 表名    'name' => 'content',    # 显示给用户看的名称    'lang' => '内页管理',    'menu' => false,    'gettype' => $type,    'text' => $text,    'end' => array    (        'insert' => 'journal/lib/manage.addContent',    ),    # 数据结构    'struct' => array    (            'id'        => array        (            'type'      => 'int-11',            'name'      => 'ID',            'default'   => '',            'desc'      => '',            'match'     => 'is_numeric',            //'search'    => 'order',            //'list'        => true,        ),        'info_id'      => array        (            'type'      => 'int-11',            'name'      => '电子刊',            'default'   => '',            'desc'      => '电子刊',            'match'     => 'is_numeric',            'update'    => 'hidden',            'value'     => Dever::input('search_option_info_id')        ),        'type'     => array        (            'type'      => 'int-11',            'name'      => '类型',            'default'   => $type_default,            'desc'      => '类型',            'match'     => 'is_numeric',            'update'    => 'radio',            'option'    => $type,            'control'   => 'type',        ),        'name'      => array        (            'type'      => 'varchar-80',            'name'      => '标题',            'default'   => '',            'desc'      => '标题',            'match'     => 'is_string',            'update'    => 'text',            'list'      => true,            //增加预览            'preview'   => true,            'show'      => 'type=3,5,6,32',              ),        'url'      => array        (            'type'      => 'varchar-800',            'name'      => '链接地址',            'default'   => '',            'desc'      => '链接地址',            'match'     => 'is_string',            'update'    => 'text',            'list'      => true,            //增加预览            'preview'   => true,            'show'      => 'type=32',              ),        'video'     => array        (            'type'      => 'varchar-800',            'name'      => '上传视频-视频格式mp4,上传大小不能超过4G',            'default'   => '',            'desc'      => '上传点播视频',            'match'     => 'is_string',            'update'    => 'upload',            'key'       => '3',            'place'     => '150',            'upload'    => 'qiniu',            'large'     => true,            //不覆盖原文件,生成新文件            'cover'     => 2,            'show'      => 'type=4,5',              ),        'video_info'        => array        (            'type'      => 'text-255',            'name'      => '视频信息',            'default'   => '',            'desc'      => '视频信息',            'match'     => 'is_string',        ),        'music'     => array        (            'type'      => 'varchar-800',            'name'      => '上传音频-视频格式mp3,上传大小不能超过100M',            'default'   => '',            'desc'      => '上传音频',            'match'     => 'is_string',            'update'    => 'upload',            'key'       => '2',            'place'     => '150',            'upload'    => 'qiniu',            'large'     => true,            //不覆盖原文件,生成新文件            'cover'     => 2,            'show'      => 'type=6',              ),        'cover'     => array        (            'type'      => 'varchar-150',            'name'      => '封面图-全屏视频的封面图图片尺寸750*1386px或等比尺寸,留言视频的封面图图片尺寸750*422px或等比尺寸,留言音频的封面图图片尺寸750*422px或等比尺寸,上传大小不能超过2M,支持JPG、PNG、GIF格式,建议上传JPG格式',            'default'   => '',            'desc'      => '封面图',            'match'     => 'option',            'update'    => 'image',            'key'       => '1',            'place'     => '150',            'show'      => 'type=4,5,6',              ),        'focus'     => array        (            'type'      => 'text-255',            'name'      => '焦点图',            'default'   => '',            'desc'      => '焦点图',            'match'     => 'option',            'update'    => 'image',            'key'       => '1',            'place'     => '150',            'show'      => 'type=3',              ),        'content'       => array        (            'type'      => 'text-255',            'name'      => '内容',            'default'   => '',            'desc'      => '请输入内容',            'match'     => 'is_string',            'update'    => 'editor',            'show'      => 'type=3',            //自定义编辑器右侧按钮            'editor'    => array            (                'name' => '选择插入模块',                'button' => array                (                    array                    (                        # 名称                        'name' => '图片',                        # 资源库id                        'key' => 1,                        # 类型                        'type' => 'image',                    ),                    array                    (                        'name' => '音频',                        'key' => 2,                        'type' => 'media',                    ),                    /*                    array                    (                        'name' => '视频',                        'key' => 'video/lib/core.vod',                    ),                    array                    (                        'name' => '直播',                        'key' => 'video/lib/core.live',                    ),                                        array                    (                        'name' => '小程序',                        'key' => 'journal/lib/applet.update',                        'type' => 'update',                    ),                    */                ),            ),        ),        'pic'     => array        (            'type'      => 'varchar-150',            'name'      => '图片-全屏图图片尺寸750*1386px或等比尺寸,长屏图图片尺寸750*高度不限或等比尺寸,横屏图图片尺寸宽度不限*1386px或等比尺寸,长图图片尺寸750*高度不限或等比尺寸,无边框图片尺寸长和宽均没有限制,上传大小不能超过2M,支持JPG、PNG、GIF格式,建议上传JPG格式',            'default'   => '',            'desc'      => '图片',            'match'     => 'option',            'update'  => 'image',            'key'       => '1',            'place'     => '150',            'show'      => 'type=1,2,7,8,9',              ),        'pic_info'        => array        (            'type'      => 'varchar-500',            'name'      => '图片信息',            'default'   => '',            'desc'      => '图片信息',            'match'     => 'is_string',            'update'    => 'hidden',        ),        'is_button'     => array        (            'type'      => 'int-11',            'name'      => '是否显示保存按钮',            'default'   => '1',            'desc'      => '是否显示保存按钮',            'match'     => 'is_numeric',            'update'    => 'radio',            'option'    => $is_button,           // 'search'    => 'select',            'show'      => 'type=1,7,8',                  'control'   => 'is_button',        ),        'button_name'     => array        (            'type'      => 'varchar-80',            'name'      => '保存按钮文字内容',            'default'   => '保存图片',            'desc'      => '保存按钮文字内容',            'match'     => 'option',            'update'    => 'textarea',            'show'      => 'type=1,7,8',              ),        'button_color'     => array        (            'type'      => 'varchar-10',            'name'      => '保存按钮文字颜色',            'default'   => '#000000',            'desc'      => '保存按钮文字颜色',            'match'     => 'option',            'update'    => 'color',            'show'      => 'type=1,7,8',              ),        'product_id'     => array        (            'type'      => 'varchar-800',            'name'      => '关联商品',            'default'   => '',            'desc'      => '关联商品',            'match'     => 'option',            'update'    => 'checkbox',            'show'      => 'type=31',            'option'    => $product,        ),        'text'       => array        (            'type'      => 'text-1000',            'name'      => '文字设置',            'default'   => '',            'desc'      => '文字设置',            'match'     => 'is_string',            'option'    => $text,            'show'      => 'type=1,7,8',            'update'    => array            (                array                (                    'col'       => 'name',                    'name'      => '文字内容',                    'default'   => '',                    'desc'      => '文字内容',                    'match'     => 'is_string',                    'update'    => 'textarea',                ),                array                (                    'col'       => 'color',                    'name'      => '文字颜色',                    'default'   => '#000000',                    'desc'      => '文字颜色',                    'match'     => 'is_string',                    'update'    => 'color',                ),                array                (                    'col'       => 'bgcolor_type',                    'name'      => '是否设置背景颜色',                    'default'   => '2',                    'desc'      => '是否设置背景颜色',                    'match'     => 'is_string',                    'update'    => 'radio',                    'option'    => $bgcolor_type,                    'control'   => 'bgcolor_type',                ),                array                (                    'col'       => 'bgcolor',                    'name'      => '背景颜色',                    'default'   => '#000000',                    'desc'      => '背景颜色',                    'match'     => 'is_string',                    'update'    => 'color',                    'show'      => 'bgcolor_type=1'                ),                array                (                    'col'       => 'size',                    'name'      => '文字大小-直接输入像素数字',                    'default'   => '16',                    'desc'      => '结果描述',                    'match'     => 'is_numeric',                    'update'    => 'text',                ),            ),        ),        'palaces'       => array        (            'type'      => 'text-1000',            'name'      => '四宫格图片',            'default'   => '',            'desc'      => '四宫格图片',            'match'     => 'is_string',            'option'    => $palaces,            'show'      => 'type=10',            'update'    => array            (                array                (                    'col'       => 'pic',                    'name'      => '图片',                    'default'   => '',                    'desc'      => '图片',                    'match'     => 'is_string',                    'update'    => 'image',                    'key'       => 1,                ),            ),        ),        'talk_pic'     => array        (            'type'      => 'varchar-150',            'name'      => '置顶图片-图片尺寸750*1386px或等比尺寸,上传大小不能超过2M,支持JPG、PNG、GIF格式,建议上传JPG格式。为空则不显示',            'default'   => '',            'desc'      => '图片',            'match'     => 'option',            'update'    => 'image',            'key'       => '1',            'place'     => '150',            'show'      => 'type=21',              ),        'talk'       => array        (            'type'      => 'text-1000',            'name'      => '对话设置',            'default'   => '',            'desc'      => '对话设置',            'match'     => 'is_string',            'show'      => 'type=21',            'update'    => array            (                array                (                    'col'       => 'talk_location',                    'name'      => '对话位置',                    'default'   => '1',                    'desc'      => '对话位置',                    'match'     => 'is_string',                    'update'    => 'radio',                    'option'    => $talk_location,                ),                array                (                    'col'       => 'avatar',                    'name'      => '头像-图片尺寸120*120px或等比尺寸,上传大小不能超过2M,支持JPG、PNG、GIF格式,建议上传JPG格式。',                    'default'   => '',                    'desc'      => '头像',                    'match'     => 'option',                    'update'    => 'image',                    'key'       => 1,                ),                array                (                    'col'       => 'talk_type',                    'name'      => '对话类型',                    'default'   => '1',                    'desc'      => '对话类型',                    'match'     => 'is_string',                    'update'    => 'radio',                    'option'    => $talk_type,                    'control'   => 'talk_type',                ),                array                (                    'col'       => 'text',                    'name'      => '文字内容-为空则不显示',                    'default'   => '',                    'desc'      => '文字内容',                    'match'     => 'option',                    'update'    => 'textarea',                    'show'      => 'talk_type=1'                ),                array                (                    'col'       => 'pic',                    'name'      => '图片-图片尺寸750*1386px或等比尺寸,上传大小不能超过2M,支持JPG、PNG、GIF格式,建议上传JPG格式,可以上传GIF格式。为空则不显示',                    'default'   => '',                    'desc'      => '图片',                    'match'     => 'option',                    'update'    => 'image',                    'key'       => 1,                    'show'      => 'talk_type=2'                ),                array                (                    'col'       => 'audio',                    'name'      => '音频-音频格式mp3,上传大小不能超过100M,为空则不显示',                    'default'   => '',                    'desc'      => '音频',                    'match'     => 'option',                    'update'    => 'upload',                    'key'       => 2,                    'show'      => 'talk_type=3'                ),            ),        ),        'reorder'       => array        (            'type'      => 'int-11',            'name'      => '页号',            'default'   => '1',            'desc'      => '请输入排序',            'match'     => 'option',            //'update'    => 'text',            'search'    => 'order',            'list'      => true,            'order'     => 'asc',            'edit'      => 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,        'num' => false,        'page_list_table' => 'journal',        # 自定义快捷新增和编辑        'button' => array        (            '新增内页' => array('location', 'add'),            '预览' => array('fast', 'main/preview.get?type=4&id=' . Dever::input('search_option_info_id')),        ),    ),    # request 请求接口定义    'request' => array    (        'getAll' => array        (            # 匹配的正则或函数 选填项            'option' => array            (                'info_id' => 'yes',                'state' => 1,            ),            'type' => 'all',            'order' => array('reorder' => 'asc', 'id' => 'desc'),            'page' => array(10, 'list'),            'col' => '*',        ),        'getAllByReorder' => array        (            # 匹配的正则或函数 选填项            'option' => array            (                'info_id' => 'yes',                'state' => 1,            ),            'type' => 'one',            'order' => array('reorder' => 'desc', 'id' => 'desc'),            'col' => '*',        ),    ));
 |