Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[dev168改进] 帖子回复短消息通知插件1.0 (for DZ6.0)

[复制链接]
dev168 发表于 2008-2-23 09:51:39 | 显示全部楼层 |阅读模式
插件发布
插件名称: 帖子回复短消息通知插件1.0 (for DZ6.0)
插件来源:
适用版本: Discuz! 6.1
语言编码: GBK简体 
最后更新时间:
插件作者: 原创:Oytktk(靖飒) 改进:小朱-001,jillyz,dev168
插件简介: 很多用户在发布了帖子之后,会想知道自己的帖子有没有被回复。本插件专为这个目的而开发。
本插件并非dev168(http://www.dev168.com) 首创,而是在”超级新回复短信息通知 for D6.0(https://discuz.dismall.com/viewthread.php?tid=826302&extra=&page=1)”的基础上进行改进。 dev168主要改动了下面4点:

1.后台可以设置是否默认开启短消息通知。
2.为了跟discuz的名称统一,原来文字为”短信”的地方都改为了”短消息”。
3.forumdisplay.php和include/newthread.inc.php在$discuz_action下面已经不需要再增加代码。
4.修改了短消息的标题和短消息是否已存在的检测机制。

       我们本打算取名为”超级新回复短信息通知改进版”。后来想想,本插件内已经不再有短信息的字样,
并且我们很可能会根据用户的反映进行改进。所以就取了现在的名字。您可以免费使用此版本,也可以对
它进行改写、传播,但在您改写、传播的过程中请保留此版权说明,谢谢!

    “超级新回复短信息通知”相关的3个帖子:
         Oytktk(靖飒)[原创 for DZ4.1]:https://discuz.dismall.com/viewthread.php?tid=260271
         小朱-001[改进 for DZ5.0]:https://discuz.dismall.com/viewthread.php?tid=421840
         jillyz[改进 for DZ6.0]:https://discuz.dismall.com/viewthread.php?tid=826302&extra=&page=1
         在此,感谢他们的贡献!


插件使用效果:
1.在后台”基本设置”=>”论坛功能”=>”其它”那里,增加了”默认开启帖子回复短消息通知”的选项,默认为是。
2.在发帖的时候,左下角”选项”中增加了”接收新回复短消息通知”,默认为勾选。
3.为了避免短消息轰炸,在用户的帖子被第一次回复后,系统将产生短消息通知。同一个帖子被第二次回复后,系统不会产生新的短消息通知,而是更改原来的短消息。这样,不管一个帖子被回复了多少次,只有一条短消息通知。
4.回复自己的帖子不会产生短消息通知。

图片展示:
1. 后台
   
2. 快速发新话题
   
3. 发新话题
   
4. 收件箱
   
5. 消息内容
      

插件安装过程:
   一.后台升级SQL
   二.修改下列文件
       1、模板文件夹\admincp.lang.php
       2、admin\settings.inc.php
       3、模板文件夹\ templates.lang.php
       4、模板文件夹\forumdisplay.htm
       5、模板文件夹\post_editor.htm
       6、include/newthread.inc.php
       7、include/editpost.inc.php
       8、include/newreply.inc.php
   三.后台更新缓存

  下面详细说明安装过程:
一.后台升级SQL
  1、
  1. INSERT INTO  `cdb_settings` (`variable` ,`value`) VALUES ('threadmsgnotify', '1');
复制代码
2、
  1. ALTER TABLE `cdb_threads` ADD `msgnotify` INT( 1 ) DEFAULT '1' NOT NULL ;
复制代码
二.修改文件
1、 修改"模板文件夹\admincp.lang.php"
找到:
  1. 'settings_send_birthday' => '发送生日祝福邮件:',
  2.         'settings_send_birthday_comment' => '批量发送生日祝福邮件给会员。注意: 此功能严重消耗服务器资源,不建议使用',
复制代码
下面加:
  1. 'settings_msg_notify' => '默认开启帖子回复短消息通知:',
  2.         'settings_msg_notify_comment' => '当帖子被别人回复后,系统发送短消息给发布帖子的人。',
复制代码
2、 修改"admin\settings.inc.php"
找到:
  1. showsetting('settings_send_birthday', 'settingsnew[bdaystatus]', $settings['bdaystatus'], 'radio');
复制代码
下面加:
  1. showsetting('settings_msg_notify', 'settingsnew[threadmsgnotify]', $settings['threadmsgnotify'], 'radio');
复制代码
找到:
  1. if($updatecache) {
复制代码
上面加:
  1. if(isset($settingsnew['threadmsgnotify']))
  2.              {
  3.                  $val = $settingsnew['threadmsgnotify'];
  4.                       $db->query("alter table {$tablepre}threads change msgnotify msgnotify INT( 1 ) DEFAULT '$val' NOT NULL");
  5.              }
复制代码
3、 修改"模板文件夹\templates.lang.php"
找到:
  1. 'post_email_notify' => '接收新回复邮件通知',
复制代码
下面加:
  1. 'post_msg_notify' => '接收新回复短消息通知',
复制代码
4、 修改"模板文件夹\forumdisplay.htm"
找到:
  1. <p><label><input class="checkbox" type="checkbox" name="usesig" value="1" $usesigcheck /> {lang post_show_sig}</label></p>
复制代码
下面加:
  1. <p><label><input class="checkbox" type="checkbox" name="msgnotify" value="1" <!--{if $_DCACHE['settings']['threadmsgnotify']=='1'}-->checked<!--{/if}-->> {lang post_msg_notify}</label></p>
复制代码
5、 修改"模板文件夹\post_editor.htm"
找到:
  1. <li><label><input type="checkbox" name="usesig" value="1" $usesigcheck> {lang post_show_sig}</label></li>
复制代码
下面加:
  1. <li><label><input class="checkbox" type="checkbox" name="msgnotify" value="1"  {$msgcheck}> {lang post_msg_notify}</label></li>
复制代码
6、 修改"include/newthread.inc.php"
找到:
  1. $discuz_action = 11;
复制代码
下面加:
  1. $msgcheck = $_DCACHE['settings']['threadmsgnotify'] ? 'checked' : '';
复制代码
找到:
  1. displayorder, digest, blog
复制代码
后面加:
  1. , msgnotify
复制代码
找到:
  1. $displayorder', '$digest', '$blog'
复制代码
后面加:
  1. , '$msgnotify'
复制代码
7、 修改"include/editpost.inc.php"
找到:
  1. $htmloncheck = $postinfo['htmlon'] & 1 ? 'checked="checked"' : '';
复制代码
下面加:
  1. $msgcheck =  $thread['msgnotify'] ? 'checked' : '';
复制代码
找到:
  1. subject='$subject', readperm='$readperm'
复制代码
后面加:
  1. , msgnotify='$msgnotify'
复制代码
8、 修改"include/newreply.inc.php"
找到:
  1. if($modnewreplies) {
复制代码
上面加:
  1. //新回复,论坛短消息通知开始 原代码为:By Oytktk(靖飒)  dev168修改了消息标题,消息检测
  2.         if(!empty($thread['msgnotify']) && $discuz_uid && $thread['author'] != $discuz_user){
  3.                 //1.定义短信内容...
  4.                 $msgnate = "
  5. 这是由论坛系统自动发送的通知短消息。

  6. 以下您所发表的主题被 ".$discuz_user." 回复。

  7. 主题地址: [url=".$boardurl."viewthread.php?tid=".$thread['tid']."]".$thread['subject']."[/url]
  8. 回复会员: [url=".$boardurl."viewpro.php?uid=".$discuz_uid."]".$discuz_user."[/url]
  9. 回复时间: ".gmdate("$dateformat $timeformat", $timestamp + $timeoffset * 3600)."
  10. 回复位置: [url]".$boardurl."viewthread.php?replied=yes&tid=$tid&pid=$pid&page=".(@ceil(($thread['replies'] + 2) / $ppp))."&extra=$extra#pid".$pid."[/url]

  11. 为了本社区的更好发展, 请积极回贴. 谢谢您的支持!

  12. ";
  13.       
  14.         $subject = strlen($thread['subject'])>8 ? substr($thread['subject'],0,8)."..." : $thread['subject'];   
  15.         $checktid = "[系统消息]"".$subject.""已有新的回复";   

  16.         //检查是否已有信息报告...
  17.         $likes = "%replied=yes&tid=".$tid."&pid=%";
  18.                  
  19.         $query = $db->query("SELECT pmid FROM {$tablepre}pms WHERE message LIKE '$likes'");
  20.         //2. 执行短信通知...
  21.         if($seles = $db->fetch_array($query)){
  22.                 $db->query("UPDATE {$tablepre}members SET newpm='1' WHERE username='$thread[author]'");
  23.                 $db->query("UPDATE {$tablepre}pms SET msgfrom='$discuz_user', msgfromid='$discuz_uid', new='1', dateline='$timestamp', message='$msgnate',delstatus='0' WHERE pmid='$seles[pmid]'");
  24.         }else{
  25.                 $db->query("UPDATE {$tablepre}members SET newpm='1' WHERE username='$thread[author]'");
  26.                 $db->query("INSERT INTO {$tablepre}pms (msgfrom, msgfromid, msgtoid, folder, new, subject, dateline, message)
  27.                                                                         VALUES ('$discuz_user', '$discuz_uid', '$thread[authorid]', 'inbox', '1', '$checktid', '$timestamp', '$msgnate')");
  28.         }
  29.         }
  30.         //论坛短消息通知结束
复制代码
到此,本插件安装结束。 您只要去后台更新缓存就可以使用了。

本插件的1.5版本已经发布,地址如下:
http://www.dev168.net/viewthread.php?tid=39&extra=page%3D1


[ 本帖最后由 dev168 于 2008-3-23 17:11 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

评分

1

查看全部评分

常春藤 发表于 2008-2-23 10:01:48 | 显示全部楼层
谢谢楼主分享:)
回复

使用道具 举报

常春藤 发表于 2008-2-23 10:04:13 | 显示全部楼层
适合6.0.1UC版本么?

应该没有问题吧?
回复

使用道具 举报

 楼主| dev168 发表于 2008-2-23 10:07:55 | 显示全部楼层
6.0.1 UC 没有测试过,还不清楚
回复

使用道具 举报

lsu666666 发表于 2008-2-23 10:10:32 | 显示全部楼层
_____◣   ▲   ▲   ◢
   █◣ ◢█◣ ◢█◣ ◢█       ▁  ▁ 
   █████████████     \\// 
  ◢█████████████◣    //\\ 
 ◢███████████████◣  ̄ ▌ ̄
 ██   ● ███   ● ██     ▌
 ██◣   ◢███◣   ◢██   ▌
 ◥█████◤ ︿ ◥█████◤   ▌
  ◥████◣/ \◢████◤◢██
  ◢█████████████◢██◤ 
 ◢████████████████
██◤◢███◤    ◥███◣
  ◢███◤      ◥███◣
  ████ ████      頂你個肺      


         ╭═══╮ ┌═════════════════╕
        ╭╯頂完了║═║_____________我滾蛋______ _____║
〝ㄅㄨ~〝ㄅㄨ~╰⊙══⊙╯ └⊙════⊙═════⊙════⊙┘〝ㄅㄨ~〝ㄅㄨ~



A:幫你頂個   
回复

使用道具 举报

 楼主| dev168 发表于 2008-2-23 11:12:43 | 显示全部楼层
大家如果对这个插件有什么新要求,欢迎在这个帖子回复。
回复

使用道具 举报

zhizhuxia 发表于 2008-2-23 21:08:16 | 显示全部楼层
还没试,先顶,牛人
回复

使用道具 举报

362324 发表于 2008-2-24 10:43:12 | 显示全部楼层
这个插件不错,就是不知道有没有人试过呀
回复

使用道具 举报

qq9688 发表于 2008-2-24 11:01:48 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

362324 发表于 2008-2-24 11:18:58 | 显示全部楼层
修改成功,演示:http://www.e-nokia.cn
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-4-20 20:56 , Processed in 0.176297 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表