论坛风格切换
  • 4272阅读
  • 1回复

[功能优化与改进]论坛帖子可以移动到群组里(8.7版本) [复制链接]

上一主题 下一主题
离线师师
 

发帖
189
金币
0
威望
52
只看楼主 倒序阅读 使用道具 楼主  发表于: 2011-12-19

注意:自己修改程序时候,小心复制的空格,一般有空格程序是不会显示的



一、功能演示如下
适合8.5版本如下网址






之后到对应群组里核实下帖子是否已经存在群组里了;

二、功能实现前提后台设置为:





首先选择好想让群组关联的版块






版块选择好后我们开始设置想使用的群组,进行编辑,如下图





三、修改代码如下:
(一)
template/wind/thread.htm
找到(一共有2处同时修改)
  1. <a href="javascript:;" onclick="submitAction(document.mawhole,'del');return false;" class="bta fl">删除</a>
下面加
  1. <a href="javascript:;" onclick="submitAction(document.mawhole,'colony');return false;" class="bta fl">群组话题</a>

2,论坛根目录下找见 mawhole.php

找见
  1. ,'batch'

修改为
  1. ,'batch','colony'

3,找见
  1. case 'del' :
  2.     $admincheck = pwRights($isBM, 'delatc');
  3.     break;

下面添加
  1. case 'colony' ://add bu yth
  2.     $admincheck = pwRights($isBM, 'delatc');
  3.     break;

4,找见
  1. require_once PrintEot('ajax_mawholebatch');
  2.     ajax_footer();

下面添加
  1. } elseif ($action == 'colony'){
  2.     if (empty($_POST['step'])) {
  3.         $forumcache = '';
  4.         $query = $db->query("SELECT * FROM pw_colonys WHERE classid!=0");
  5.         while ($rt = $db->fetch_array($query)) {
  6.             $forumcache .= "<option value='$rt[id]'>  |- $rt[cname]</option>";
  7.         }
  8.         require_once PrintEot($template);
  9.         footer();
  10.     } else {
  11.         PostCheck();
  12.         InitGP(array('to_id', 'ifmsg', 'to_threadcate', 'to_subtype'));
  13.         count($tidarray) > 500 && Showmsg('mawhole_count');
  14.         $mids = $ttable_a = $ptable_a = $msgdb = array();
  15.         if (is_array($tidarray)) {
  16.             foreach ($tidarray as $key => $value) {
  17.                 if (is_numeric($value)) {
  18.                     $mids[] = $value;
  19.                     $ttable_a[GetTtable($value)][] = $value;
  20.                 }
  21.             }
  22.         }
  23.         !$mids && Showmsg('mawhole_nodata');
  24.         $mids = pwImplode($mids);
  25.         $newfid = $db->get_value("SELECT classid FROM pw_colonys WHERE id=$to_id");
  26.         $db->update("UPDATE pw_threads SET fid=$newfid,tpcstatus=1 WHERE tid IN($mids)");
  27.         $query = $db->query("SELECT tid,fid,postdate,lastpost FROM pw_threads WHERE tid IN($mids)");
  28.         while ($rt = $db->fetch_array($query)) {
  29.             $db->update("REPLACE INTO pw_argument(tid,cyid,topped,postdate,lastpost) VALUES(".$rt['tid'].",".$to_id.",0,'".$rt['postdate']."','".$rt['lastpost']."')");
  30.         }
  31.         if (!defined('AJAX')) {
  32.             refreshto("thread.php?fid=$fid{$viewbbs}", 'operate_success');
  33.         } else {
  34.             Showmsg($succ_msg);
  35.         }
  36.     }


(二)template\wind\mawhole.htm里修改
  1. 压帖操作
  2. <!--
  3. EOT;
  4. }elseif($action == 'push'){print <<<EOT
  5. -->
  6.                 推送操作
  7. <!--
  8. EOT;
  9. }elseif($action == 'banuser'){print <<<EOT
  10. -->
  11.                 禁言
修改为:
  1. 推送操作
  2. <!--
  3. EOT;
  4. }elseif($action == 'colony'){print <<<EOT
  5. -->
  6.                 群组话题移动
  7. <!--
  8. EOT;
  9. }elseif($action == 'banuser'){print <<<EOT
  10. -->
  11.                 禁言

2,找见(程序里面共有三处,修改最下面这里)
  1. <!--
  2.     EOT;
  3.     }elseif($action=='edit'){print <<<EOT
  4.     -->

  1. <!--
  2. EOT;
  3. }elseif($action=='colony'){print <<<EOT
  4. -->
  5.     <tr class="tr3">
  6.         <th width="20%" style="text-align:right;">选择目的版块:</th>
  7.         <th><select name="to_id" id="to_id">$forumcache
  8.         </select></th>
  9.     </tr>
  10.     <tr class="tr3" style="display:none">
  11.         <th width="20%" style="text-align:right;">主题分类:</th>
  12.         <th><div id="innerselect" class="fl"><select name="to_threadcate" id="to_threadcate" onchange="getSubType(this.value)">
  13.         <option value="">无主题分类</option>
  14.         </select></div><div id="subtypeselect" ></div></th>
  15.     </tr>
  16. <script language="JavaScript">
  17. function getThreadCates(fid){
  18.     var selobj = getObj('to_threadcate');
  19.     selobj.options.length=0;
  20.     selobj.options.add(new Option("不分类","0"));
  21.     var t_typedb = JSONParse('$t_typedb');
  22.     for (var temp in t_typedb) {
  23.         if (temp == fid) {
  24.             for (var temp2 in t_typedb[temp]) {
  25.                 selobj.options.add(new Option(t_typedb[temp][temp2],temp2));
  26.             }
  27.         }
  28.     }
  29.     getObj('to_threadcate').appendChild(selobj);
  30.     getObj('subtypeselect').innerHTML = '';
  31. }
  32. function getSubType(id){
  33.     var ishave = 0;
  34.     var fid = getObj('to_id').value;
  35.     var selobj = elementBind('select');
  36.     selobj.setAttribute('name','to_subtype');
  37.     selobj.options.add(new Option("不分类","0"));
  38.     var t_subtypedb = JSONParse('$t_subtypedb');
  39.     for (var temp in t_subtypedb) {
  40.         if (temp == fid) {
  41.             for (var temp2 in t_subtypedb[temp]) {
  42.                 if (temp2 == id) {
  43.                     for (var temp3 in t_subtypedb[temp][temp2]) {
  44.                         ishave++;
  45.                         selobj.options.add(new Option(t_subtypedb[temp][temp2][temp3],temp3));
  46.                     }
  47.                 }
  48.             }
  49.         }
  50.     }
  51.     if (ishave > 0) {
  52.         getObj('subtypeselect').innerHTML = '';
  53.         getObj('subtypeselect').appendChild(selobj);
  54.     } else {
  55.         getObj('subtypeselect').innerHTML = '';
  56.     }
  57. }
  58. </script>


懒人包下载
8.7gbk_qunzu.rar (30 K) 下载次数:82















离线vwytfcbt

发帖
10
金币
0
威望
0
只看该作者 沙发  发表于: 2012-10-19
顶起来,受教了,支持支持<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>中药
快速回复
限100 字节
如果您提交过一次失败了,可以用”恢复数据”来恢复帖子内容
 
提到某人:
选择好友
上一个 下一个