当前位置:首页 > 影视资讯 > 苹果CMS 批量设置视频更新

苹果CMS 批量设置视频更新

4个月前 (12-16)影视资讯189

在后台视频数据管理页面增加一个更新时间按钮,可以批量设置视频的更新时间,某些情况下还是挺好用的,一共涉及两处修改:

1、application/admin/controller/Vod.php

查找 public function field() 在这个函数上方新增

    public function updateTimeBatch()
    {
        $param = input();
        $ids = isset($param['ids']) ? $param['ids'] : '';
        $time = isset($param['time']) ? trim($param['time']) : '';

        if (empty($ids)) {
            return $this->error(lang('param_err'));
        }

        $timestamp = time();
        if (!empty($time)) {
            $tmp = strtotime($time);
            if ($tmp !== false) {
                $timestamp = $tmp;
            }
        }

        $where['vod_id'] = ['in', $ids];
        $update = ['vod_time' => $timestamp];
        $res = model('Vod')->fieldData($where, $update);
        if ($res['code'] > 1) {
            return $this->error($res['msg']);
        }
        return $this->success($res['msg']);
    }

2、application/admin/view/vod/index.html

查找

<a class="layui-btn layui-btn-primary j-iframe" data-checkbox="true" data-href="{:url('make/make?ac=info&tab=vod')}" href="javascript:;" title="{:lang('make_page')}"><i class="layui-icon">&#xe620;</i>{:lang('make_page')}</a>

在这段代码下方新增:

<a class="layui-btn layui-btn-primary" id="btnBatchUpdateTime" href="javascript:;" title="{:lang('update_time')}"><i class="layui-icon">&#xe637;</i>{:lang('update_time')}</a>


找到页面底部的js脚本里的
layui.use(['laypage', 'layer','form'], function() {
改为
layui.use(['laypage', 'layer','form','laydate'], function() {


找到
form = layui.form;
改为
form = layui.form,
laydate = layui.laydate;


找到
// 小屏幕下名称问题
if ($('body').width() <= 600) {
$('#table_th_vod_name').attr('width', '300');
}
在下方新增

$('#btnBatchUpdateTime').on('click', function () {
            var ids = [];
            $('.checkbox-ids:checked').each(function (index, item) {
                if (item.checked) {
                    ids.push(item.value);
                }
            });
            if (ids.length < 1) {
                layer.msg('{:lang('请先选择视频')}');
                return false;
            }

            var content = '<div style="padding:15px 20px 0 20px;">' +
                '<input type="text" class="layui-input" id="batchUpdateTimeInput" placeholder="{:lang('update_time')}">' +
                '<p style="margin-top:8px;color:#999;">{:lang('批量设置视频')} {:lang('update_time')}</p>' +
                '</div>';

            var openIndex = layer.open({
                type: 1,
                title: '{:lang('update_time')}',
                area: ['360px', '200px'],
                content: content,
                btn: ['{:lang('确定')}','{:lang('取消')}'],
                success: function () {
                    laydate.render({
                        elem: '#batchUpdateTimeInput',
                        type: 'datetime',
                        value: new Date()
                    });
                },
                yes: function () {
                    var timeVal = $('#batchUpdateTimeInput').val();
                    layer.msg('{:lang('wait_submit')}', {time: 500000});
                    $.post("{:url('updateTimeBatch')}", {ids: ids.join(','), time: timeVal}, function (res) {
                        layer.msg(res.msg, {}, function () {
                            if (res.code == 1) {
                                location.reload();
                            }
                        });
                    });
                    layer.close(openIndex);
                }
            });
        });

完整的js脚本代码为:

<script type="text/javascript">
    var curUrl="{:url('vod/data',$param)}";
    layui.use(['laypage', 'layer','form','laydate'], function() {
        var laypage = layui.laypage
                , layer = layui.layer,
                form = layui.form,
                laydate = layui.laydate;
                $ = layui.jquery;

        laypage.render({
            elem: 'pages'
            ,count: {$total}
            ,limit: {$limit}
            ,curr: {$page}
            ,layout: ['count', 'prev', 'page', 'next', 'limit', 'skip']
            ,jump: function(obj,first){
                if(!first){
                    location.href = curUrl.replace('%7Bpage%7D',obj.curr).replace('%7Blimit%7D',obj.limit);
                }
            }
        });

        // 小屏幕下名称问题
        if ($('body').width() <= 600) {
            $('#table_th_vod_name').attr('width', '300');
        }

        $('#btnBatchUpdateTime').on('click', function () {
            var ids = [];
            $('.checkbox-ids:checked').each(function (index, item) {
                if (item.checked) {
                    ids.push(item.value);
                }
            });
            if (ids.length < 1) {
                layer.msg('{:lang('请先选择视频')}');
                return false;
            }

            var content = '<div style="padding:15px 20px 0 20px;">' +
                '<input type="text" class="layui-input" id="batchUpdateTimeInput" placeholder="{:lang('update_time')}">' +
                '<p style="margin-top:8px;color:#999;">{:lang('批量设置视频')} {:lang('update_time')}</p>' +
                '</div>';

            var openIndex = layer.open({
                type: 1,
                title: '{:lang('update_time')}',
                area: ['360px', '200px'],
                content: content,
                btn: ['{:lang('确定')}','{:lang('取消')}'],
                success: function () {
                    laydate.render({
                        elem: '#batchUpdateTimeInput',
                        type: 'datetime',
                        value: new Date()
                    });
                },
                yes: function () {
                    var timeVal = $('#batchUpdateTimeInput').val();
                    layer.msg('{:lang('wait_submit')}', {time: 500000});
                    $.post("{:url('updateTimeBatch')}", {ids: ids.join(','), time: timeVal}, function (res) {
                        layer.msg(res.msg, {}, function () {
                            if (res.code == 1) {
                                location.reload();
                            }
                        });
                    });
                    layer.close(openIndex);
                }
            });
        });

    });
</script>


扫描二维码推送至手机访问。

版权声明:本文由沁馨影视网发布,如需转载请注明出处。

本文链接:https://qinxin.qxnnn.com/yszx/542.html

分享给朋友:

相关文章

《冰山上的来客》聚焦其叙事艺术与时代价值!

《冰山上的来客》聚焦其叙事艺术与时代价值!

一、双重叙事线的镜像对照影片通过"真假古兰丹姆"的设定构建了明暗双线:阿米尔与童年挚爱的纯真记忆是理想主义的红色火种,而特务假冒的"古兰丹姆"则成为敌对势力渗透的具象化符号。这种镜像叙事在婚礼场景达到第一次高潮——当阿米尔在《花儿为什么这样红》的歌声中呼唤记忆...

《寄生虫》的阶级隐喻

《寄生虫》的阶级隐喻

一、引言:一座房子的两种人生奉俊昊用半地下室的霉味与豪宅的香氛,在2019年撕开了全球中产社会的华丽帷幕。《寄生虫》通过金基泽一家与朴社长一家的命运交织,将韩国社会的阶级固化转化为具象的空间对抗。影片中垂直分布的住宅空间,既是物理层面的建筑分层,更是社会阶层的残酷映射。二、空间叙事中的阶级符号学半地...

当引力波遇见父女情:《星际穿越》的科学浪漫主义

当引力波遇见父女情:《星际穿越》的科学浪漫主义

在库珀穿越虫洞的瞬间,观众跟随IMAX镜头经历了从牛顿力学到量子力学的认知跃迁。诺兰用严谨的物理公式编织的这则太空史诗,其伟大之处在于将相对论和弦理论转化为触手可及的情感语言——当墨菲在五维书架前颤抖着喊出爸爸时,引力透镜效应与人类心跳产生了奇妙的共振。一、时间褶皱中的相对论诗学影片对爱因斯坦理论的...

《东极岛》:一座岛的孤独史诗与人性微光

《东极岛》:一座岛的孤独史诗与人性微光

——当海浪成为时间的刻度,我们终将读懂沉默的岛屿‌‌一、地理符号与精神图腾的双重奏‌东极岛在韩寒的镜头下并非单纯的地理坐标,而是被赋予哲学意味的现代寓言。作为中国大陆最东端的有人岛,其地理位置上的"极东"特性,在电影中被转化为精神层面的终极追问。影片通过三个时空交织的叙事——民国...

《上帝忘记的城市》人性救赎

《上帝忘记的城市》人性救赎

当镜头缓缓扫过《上帝忘记的城市》里那片被尘土覆盖的街区,破败的房屋歪斜地立在路边,墙角的野草在风中摇曳,街道上稀疏的行人眼神里满是疲惫与茫然,这座被冠以 “上帝忘记” 之名的城市,瞬间便将观众拉入了一个充满压抑与绝望的世界。然而,正是在这样一片看似被遗弃的土地上,影片却用细腻的镜头语言和深刻的人物刻...

《奏响心灵深处的震撼乐章》

《奏响心灵深处的震撼乐章》

电影,作为一门光影的艺术,常常有着触动人心、引发共鸣的神奇魔力。而《震耳欲聋》这部影片,就如同它的名字一般,以一种极具冲击力的方式,敲开了观众内心深处那扇情感的大门,让我们沉浸在一场关乎爱、勇气与成长的震撼之旅中。影片开篇,便用极具张力的画面和音效将我们迅速带入到了它所构建的世界里。那喧嚣嘈杂的环境...