PHPCMS增加批量审核的方法

PHPCMS后台一个一个点开审核是不是觉得很累?你还指望PHPCMS官方会加上这功能?如果你把希望寄希望于PHPCMS的官方,那么我有必要告诉你一点人生的经验:“你啊,Naive!”

批量审核增加以下功能:

  • 增加批量审核复选框
  • 如果栏目有静态配置,将批量审核的内容页生成html
  • 并且将批量审核的内容页更新到全站搜索的数据表中

PHPCMS增加批量审核的方法
不废话,开始吧:

1、打开 \phpcms\modules\content\templates\content_checkall.tpl.php 全部删除里面的代码,换上如下代码:

<?php
defined('IN_ADMIN') or exit('No permission resources.');
include $this->admin_tpl('header','admin');?>
<div class="subnav">
<div class="content-menu ib-a blue line-x">
<?php if($super_admin) {?>
<a href='?m=content&c=content&a=public_checkall&menuid=822' class="on"><em><?php echo L('all_check_list');?></em></a>
<?php } else {
        echo L('check_status');
}
for ($j=0;$j<5;$j++) {
?>
<span>|</span><a href='?m=content&c=content&a=public_checkall&menuid=822&status=<?php echo $j;?>' class="<?php if($status==$j) echo 'on';?>"><em><?php echo L('workflow_'.$j);?></em></a>
<?php }?>
</div>
</div>
<div class="pad-10">

<form name="myform" id="myform" action="" method="post" >
<div class="table-list">
    <table width="100%">
        <thead>
            <tr>
            <th width="16"><input type="checkbox" value="" id="check_box" onclick="selectall('ids[]');"></th>
            <th width="37">ID</th>
                        <th><?php echo L('title');?></th>
            <th><?php echo L('select_model_name');?></th>
            <th width="90"><?php echo L('current_steps');?></th>
            <th width="50"><?php echo L('steps');?></th>
            <th width="90"><?php echo L('belong_category');?></th>
            <th width="118"><?php echo L('contribute_time');?></th>
            <th width="130"><?php echo L('username');?></th>
                        <th width="50"><?php echo L('operations_manage');?></th>
            </tr>
        </thead>
<tbody>
    <?php
        $model_cache = getcache('model','commons');
        foreach ($datas as $r) {
                $arr_checkid = explode('-',$r['checkid']);

                $workflowid = $this->categorys[$r['catid']]['workflowid'];
                if($stepid = $workflows[$workflowid]['steps']) {
                        $stepname = L('steps_'.$stepid);
                } else {
                        $stepname = '';
                }
                $modelname = $model_cache[$arr_checkid[2]]['name'];
                $flowname = L('workflow_'.$r['status']);
        ?>
        <tr>
                <td align="center"><input class="inputcheckbox " name="ids[]" value="<?php echo $r['checkid'];?>" type="checkbox"></td>
                <td align='center' ><?php echo $arr_checkid[1];?></td>
                <td align='left' ><a href="javascript:;" onclick='change_color(this);window.open("?m=content&c=content&a=public_preview&steps=<?php echo $r['status']?>&catid=<?php echo $r['catid'];?>&id=<?php echo $arr_checkid[1];?>&pc_hash=<?php echo $_SESSION['pc_hash'];?>","manage")'><?php echo $r['title'];?></a></td>
                <td align='center' ><?php echo $modelname;?></td>
                <td align='center' ><?php echo $flowname;?></td>
                <td align='center' ><?php echo $stepname;?></td>
                <td align='center' ><a href="?m=content&c=content&a=init&menuid=822&catid=<?php echo $r['catid'];?>"><?php echo $this->categorys[$r['catid']]['catname'];?></a></td>
                <td align='center' ><?php echo format::date($r['inputtime'],1);?></td>
                <td align='center'>
                <?php
                if($r['sysadd']==0) {
                        echo "<a href='?m=member&c=member&a=memberinfo&username=".urlencode($r['username'])."' >".$r['username']."</a>"; 
                        echo '<img src="'.IMG_PATH.'icon/contribute.png" title="'.L('member_contribute').'">';
                } else {
                        echo $r['username'];
                }
                ?></td>
                <td align='center' ><a href="javascript:;" onclick='change_color(this);window.open("?m=content&c=content&a=public_preview&steps=<?php echo $r['status']?>&catid=<?php echo $r['catid'];?>&id=<?php echo $arr_checkid[1];?>&pc_hash=<?php echo $_SESSION['pc_hash'];?>","manage")'><?php echo L('c_check');?></a></td>
        </tr>
     <?php }?>
</tbody>
     </table>
          <div class="btn"><label for="check_box"><?php echo L('selected_all');?>/<?php echo L('cancel');?></label>
                <input type="hidden" value="<?php echo $pc_hash;?>" name="pc_hash">
                <?php 
                if($status!=99) {?>
                <input type="button" class="button" value="<?php echo L('passed_checked');?>" onclick="myform.action='?m=content&c=content&a=passall';myform.submit();"/>
                <?php }?>

        </div>
 <div id="pages"><?php echo $pages?></div>
</div>
</form>
</div>
<script type="text/javascript"> 
<!--
window.top.$("#current_pos_attr").html('<?php echo L('checkall_content');?>');
function change_color(obj) {
        $(obj).css('color','red');
}
//-->
</script>
</body>
</html>

2、打开 \phpcms\modules\content\content.php ,在

    /**
     * 过审内容
     */
    public function pass() {

的前面增加以下代码:

    /**
     * 批量通过审核函数  
     */

    public function passall() {
        $ids = $_POST['ids'];

        // 引处引入setting变量有问题,待后续解决。已经通过逻辑判断true来实现
        // $setting = string2array($category['setting']);
        // var_dump($setting);
        // die;

        if(!$ids) showmessage(L('missing_part_parameters'));
        $this->content_check_db = pc_base::load_model('content_check_model');
        $html = pc_base::load_app_class('html', 'content');
        $this->url = pc_base::load_app_class('url', 'content');
        $member_db = pc_base::load_model('member_model');
        foreach($ids as $k=>$v){
            $content = $this->content_check_db->get_one(array('checkid'=>$v));
            $modelid = $this->categorys[$content['catid']]['modelid'];
            $arr_checkid = explode('-',$content['checkid']);
            $this->db->set_model($modelid);
            // 引用search_model, 调search_api方法
            $this->db->search_db = pc_base::load_model('search_model');
            $id = $arr_checkid['1'];
            $content_info = $this->db->get_content($content['catid'],$arr_checkid[1]);
            $memberinfo = $member_db->get_one(array('username'=>$content_info['username']), 'userid, username');
            $flag = $content['catid'].'_'.$arr_checkid[1];
            if($setting['presentpoint']>0) {
                pc_base::load_app_class('receipts','pay',0);
                receipts::point($setting['presentpoint'],$memberinfo['userid'], $memberinfo['username'], $flag,'selfincome',L('contribute_add_point'),$memberinfo['username']);
            } else {
                pc_base::load_app_class('spend','pay',0);
                spend::point($setting['presentpoint'], L('contribute_del_point'), $memberinfo['userid'], $memberinfo['username'], '', '', $flag);
            }
            if(true){
            // if($setting['content_ishtml'] == '1'){
                //栏目有静态配置
                $urls = $this->url->show($id, 0, $content_info['catid'], $content_info['inputtime'], '',$content_info,'add');
                $html->show($urls[1],$urls['data'],0);
             }
            $this->db->status($arr_checkid[1],'99');
            // 更新到全站搜索
            // 设置全站搜索的数组信息
            $inputinfo = '';
            $inputinfo['system'] = $content_info;
            // 将静态页面信息或内容写入全站搜索数据表中
            $this->db->search_api($id,$inputinfo);                    
        }
        showmessage(L('operation_success'),HTTP_REFERER);
    }        
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
众所周知,人工智能是当前最热门的话题之一, 计算机技术与互联网技术的快速发展更是将对人工智能的研究推向一个新的高潮。 人工智能是研究模拟和扩展人类智能的理论与方法及其应用的一门新兴技术科学。 作为人工智能核心研究领域之一的机器学习, 其研究动机是为了使计算机系统具有人的学习能力以实现人工智能。 那么, 什么是机器学习呢? 机器学习 (Machine Learning) 是对研究问题进行模型假设,利用计算机从训练数据中学习得到模型参数,并最终对数据进行预测和分析的一门学科。 机器学习的用途 机器学习是一种通用的数据处理技术,其包含了大量的学习算法。不同的学习算法在不同的行业及应用中能够表现出不同的性能和优势。目前,机器学习已成功地应用于下列领域: 互联网领域----语音识别、搜索引擎、语言翻译、垃圾邮件过滤、自然语言处理等 生物领域----基因序列分析、DNA 序列预测、蛋白质结构预测等 自动化领域----人脸识别、无人驾驶技术、图像处理、信号处理等 金融领域----证券市场分析、信用卡欺诈检测等 医学领域----疾病鉴别/诊断、流行病爆发预测等 刑侦领域----潜在犯罪识别与预测、模拟人工智能侦探等 新闻领域----新闻推荐系统等 游戏领域----游戏战略规划等 从上述所列举的应用可知,机器学习正在成为各行各业都会经常使用到的分析工具,尤其是在各领域数据量爆炸的今天,各行业都希望通过数据处理与分析手段,得到数据中有价值的信息,以便明确客户的需求和指引企业的发展。
众所周知,人工智能是当前最热门的话题之一, 计算机技术与互联网技术的快速发展更是将对人工智能的研究推向一个新的高潮。 人工智能是研究模拟和扩展人类智能的理论与方法及其应用的一门新兴技术科学。 作为人工智能核心研究领域之一的机器学习, 其研究动机是为了使计算机系统具有人的学习能力以实现人工智能。 那么, 什么是机器学习呢? 机器学习 (Machine Learning) 是对研究问题进行模型假设,利用计算机从训练数据中学习得到模型参数,并最终对数据进行预测和分析的一门学科。 机器学习的用途 机器学习是一种通用的数据处理技术,其包含了大量的学习算法。不同的学习算法在不同的行业及应用中能够表现出不同的性能和优势。目前,机器学习已成功地应用于下列领域: 互联网领域----语音识别、搜索引擎、语言翻译、垃圾邮件过滤、自然语言处理等 生物领域----基因序列分析、DNA 序列预测、蛋白质结构预测等 自动化领域----人脸识别、无人驾驶技术、图像处理、信号处理等 金融领域----证券市场分析、信用卡欺诈检测等 医学领域----疾病鉴别/诊断、流行病爆发预测等 刑侦领域----潜在犯罪识别与预测、模拟人工智能侦探等 新闻领域----新闻推荐系统等 游戏领域----游戏战略规划等 从上述所列举的应用可知,机器学习正在成为各行各业都会经常使用到的分析工具,尤其是在各领域数据量爆炸的今天,各行业都希望通过数据处理与分析手段,得到数据中有价值的信息,以便明确客户的需求和指引企业的发展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值