Discuz! X 最新研发动态!实时更新 通过这个窗口,关注跟踪我们的研发进展 查看最新动态我来给官方提建议

Discuz! X1 正式版发布 帮助网站实现一站式服务 下载安装常见问题转换 - 讨论

Comsenz 产品服务购买2010 互联网社区调查活动 PHP培训5d6d免费论坛Discuz!NT3.1发布 Yeswan-绑定域名插件漫游应用收入排行

注册 |登录

Discuz! 官方站广场Discuz!-插件Hack › 查看主题

20140

查看

138

回复
返回列表

Rank: 4

UID
277216 
积分
777 
帖子
502 
威望
26  
金币
77 个 
体力
397  
激情
191  
注册时间
2005-11-24 
go

[插件] Easy Digg 精简版 for 6.0

楼主
发表于 2007-8-17 22:12 | 只看该作者 | 倒序看帖 | 打印
Easy Digg

发现老帖被顶上来了,请大家不要安装这个版本
请安装完整的版本:
http://www.discuz.net/thread-728565-1-2.html



作  者:LuciferSheng
版  本:1.0
最后更新:20070812
插件网址:http://easydigg.googlecode.com
技术支持:lucifersheng+easydiggpro[at]gmail.com
演示网站:http://www.vfans.cn
新增功能测试: http://www.vfans.cn/digg.php?fid=2
*只提供有限支持
只在Discuz 6.0 RC1 中测试

最新
88楼添加在统计中显示被顶最多文章排行的方法
95楼添加在删除帖子时自动删除在digg表中该帖子的数据功能
0828发现显示的小漏洞,不过不影响最后的结果,将在正式版本里更新 


请大家安装过之后发封信至这个地址,以后发现更新或者修改Bug的时候能及时的到消息
lucifersheng+easydigg[at]gmail.com
[at]=@


插件说明
此版本为精简版本,如果想获得更多的功能可以联系lucifersheng+easydiggpro[at]gmail.com
增值服务包括每天顶的数量,每周顶的数量,每月顶的数量,个性页面定制等特殊功能的定制

本插件使用ajax技术可以作为论坛评分功能的补充,也可以单独试用。简单的说就是“我顶” “我挖”之类的
forumdisplay页面可以根据文章被顶的次数而决定文章的排序。
数据库记录每位用户所顶的文章和时间,每位用户对于每篇文章只能顶一次。
在firefox 2.0和ie 6之下通过测试。

安装说明
请确认你需要本插件之后再进行安装。
本插件涉及数据库的修改和多个文件的更改,请谨慎修改。
如因安装错误、使用不当或者插件本身缺陷而造成的一切损失,责任由使用者自行承担,插件作者概不负责。

修改文件/数据库
需要修改的文件:ajax.php forumdisplay.php
需要修改的模板:viewthread.htm  css.htm forumdisplay.htm
添加数据表cdb_digg,在cdb_members添加1个新字段

安装
由于疏忽在修改ajax.php写错一句,如果在18日0点前安装的请重新修改ajax.php
18日十点前安装的请运行
  1. ALTER TABLE `cdb_digg` DROP PRIMARY KEY
复制代码
已解决同一文章不能反复被顶的问题


添加表cdb_digg
  1. CREATE TABLE `cdb_digg` (
  2. `tid` MEDIUMINT( 8 ) NOT NULL ,
  3. `uid` MEDIUMINT( 8 ) NOT NULL ,
  4. `time` INT( 10 ) NOT NULL
  5. ) ENGINE = MYISAM ;
复制代码
添加字段
  1. ALTER TABLE `cdb_threads` ADD `digg` MEDIUMINT( 8 ) NOT NULL ;
复制代码
修改文件

viewthread.htm

查找
  1. zoomstatus = parseInt($zoomstatus);
复制代码
添加
  1.         var not_login = '请先登录';
  2.         var url_wrong = '你的请求来路错误';
  3.         var have_voted = '你已经顶过了';

  4.         function ajaxresponse(data, num) {
  5.                 var x = new Ajax('XML', 'digg');
  6.                         var nextnum = num + 1;
  7.                 x.get('ajax.php?inajax=1&' + data, function(s){
  8.                     var obj = $("digg");
  9.                     if(s == 'succeed') {
  10.                         obj.style.display = '';
  11.                         obj.innerHTML = ''+ nextnum + '';
  12.                         } else if(s == 'not_login') {
  13.                                         obj.style.display = '';
  14.                                         obj.innerHTML = ''+ num + '';
  15.                                         confirm(not_login);
  16.                         } else if(s == 'url_wrong') {
  17.                                         obj.style.display = '';
  18.                                         obj.innerHTML = ''+ num + '';
  19.                                         confirm(url_wrong);
  20.                         } else if(s == 'have_voted') {
  21.                                         obj.style.display = '';
  22.                                         obj.innerHTML = ''+ num + '';
  23.                                         confirm(have_voted);
  24.                         }
  25.                 });
  26.         }
复制代码
查找
  1.                                                 <!--{if $post['authorid'] && !$post['anonymous']}-->
  2.                                                         <!--{if !$authorid}-->
  3.                                                                 {lang thread_show_author}
  4.                                                         <!--{else}-->
  5.                                                                 {lang thread_show_all}
  6.                                                         <!--{/if}-->
  7.                                                 <!--{/if}-->
  8.                                        
复制代码
添加
  1.                                         <!--{if $post[number] == 1}-->
  2.                                                 $thread[digg]顶它
  3.                                         <!--{/if}-->
复制代码
css.htm
不厚道的说一句:这段css代码是偷土豆的
最后添加
  1. /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Easy Digg ~~~~ */
  2.         .digBtn{ display:block;width:50px;height:65px;text-align:center;background: url(上传的附件图片的地址) no-repeat center 0;float: right;margin: 10px;cursor: hand;}
  3.         .digBtn strong{ color:#fff;font-family:Georgia;font-size:16px;padding:3px 1px 0 0;height:45px;clear:both;display:block;text-shadow:1px 1px 3px #fff;font-weight: bold;}
  4.         .digBtn a {text-decoration:none !important;}
  5.         .digBtn a span{color:#f60;border-bottom:1px solid #f60;}
复制代码
ajax.php
  1.         if(!$db->num_rows($query)) {
  2.                 showmessage('invite_invalid');
  3.         }
  4. }
复制代码
添加
  1. elseif($action == 'checkvote') {
  2.         $wrong = 1;
  3.         if(!$discuz_uid){
  4.                 showmessage('not_login');
  5.                 $wrong = 0;
  6.         }
  7.         if(!$tid){
  8.                 showmessage('url_wrong');
  9.                 $wrong = 0;
  10.         }
  11.         $query = $db->query("SELECT * FROM {$tablepre}digg WHERE tid='$tid' AND uid='$discuz_uid'");
  12.         if($db->num_rows($query)) {
  13.                 showmessage('have_voted');
  14.                 $wrong = 0;
  15.         }
  16.         if($wrong){
  17.                 $db->query("INSERT INTO {$tablepre}digg (tid, uid, time) VALUES ('$tid', '$discuz_uid', '$timestamp')");
  18.                 $db->query("UPDATE {$tablepre}threads SET digg=digg+1 WHERE tid='$tid'");
  19.         }
  20. }
复制代码
forumdisplay.htm
查找
  1.                         {lang order_views}
复制代码
添加
  1.                         顶的次数
复制代码
forumdisplay.php
查找
  1. isset($orderby) && in_array($orderby, array('lastpost', 'dateline', 'replies', 'views'))
复制代码
修改为
  1. isset($orderby) && in_array($orderby, array('lastpost', 'dateline', 'replies', 'views', 'digg'))
复制代码
上传图片
digg.gif


演示
如下图
digg.gif

diggdisplay.gif


[ 本帖最后由 LuciferSheng 于 2007-9-13 14:35 编辑 ]
4

评分人数

  • monkeye

  • mingyan

  • zhouc

  • TaRot!

TOP

Rank: 4

UID
277216 
积分
777 
帖子
502 
威望
26  
金币
77 个 
体力
397  
激情
191  
注册时间
2005-11-24 
沙发
发表于 2007-8-17 22:12 | 只看该作者
关于完整版的构想
添加后台控制是否启用本功能的选项
后台控制是否允许游客顶
顶过之后可以查看谁也顶过该篇文章 (测试网站已实装
可以制作类似DIGG的首页,显示方式可以按今天顶的数量,本周顶的数量,本月顶的数量,历史总计的数量
演示地址:http://www.vfans.cn/digg.php?fid=2
添加功能:每顶一次消耗一定的某项积分,可设置
编写新的道具,功能:让楼主看看有谁顶过帖子
                 给所有顶过得用户群发站内消息
                 用户可以自己查看自己顶过的帖子
                 顶一下在一定时间内可以表现为实际的数量+N下,作弊专用

目前版本的缺陷、限制:
当删除某篇文章的时候该篇文章在digg表中的数据没有删除,下次更新时添加,已经添加 见95楼

目前就想到这些,有什么更有趣的应用欢迎告知

[ 本帖最后由 LuciferSheng 于 2007-8-30 22:17 编辑 ]

TOP

Rank: 4

UID
214742 
积分
517 
帖子
646 
威望
0  
金币
0 个 
体力
615  
激情
68  
注册时间
2005-6-28 
藤椅
发表于 2007-8-17 22:19 | 只看该作者
好像还不错。完全版有什么特别的?

TOP

Rank: 6Rank: 6

UID
640019 
积分
1591 
帖子
1957 
威望
0  
金币
17 个 
体力
862  
激情
129  
注册时间
2007-2-19 
板凳
发表于 2007-8-17 22:25 | 只看该作者

TOP

Rank: 4

UID
214742 
积分
517 
帖子
646 
威望
0  
金币
0 个 
体力
615  
激情
68  
注册时间
2005-6-28 
报纸
发表于 2007-8-17 22:28 | 只看该作者
搜索
viewthread.htm
里面的
<script type="text/javascript">zoomstatus = parseInt($zoomstatus);</script>

我怎么连zoomstatus都搜索不到?

TOP

Rank: 4

UID
308925 
积分
884 
帖子
1161 
威望
-4  
金币
-3 个 
体力
988  
激情
144  
注册时间
2006-1-15 
地板
发表于 2007-8-17 22:31 | 只看该作者

TOP

Rank: 4

UID
277216 
积分
777 
帖子
502 
威望
26  
金币
77 个 
体力
397  
激情
191  
注册时间
2005-11-24 
7#
发表于 2007-8-17 22:35 | 只看该作者
原帖由 Gadon 于 2007-8-17 22:28 发表
搜索
viewthread.htm
里面的
zoomstatus = parseInt($zoomstatus);

我怎么连zoomstatus都搜索不到?


这个是6.0 RC1里的

TOP

Rank: 2

UID
773653 
积分
154 
帖子
193 
威望
0  
金币
0 个 
体力
180  
激情
85  
注册时间
2007-8-4 
8#
发表于 2007-8-17 23:04 | 只看该作者
我安了,贴子都没有显示出来的!!
www.flushing.cn/bbs       什么会事,我都改好了!!什么都做了!!

TOP

头像被屏蔽

Banned

UID
780989 
积分
302 
帖子
370 
威望
0  
金币
4 个 
体力
376  
激情
50  
注册时间
2007-8-17 
9#
发表于 2007-8-17 23:08 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

TOP

Rank: 2

UID
773653 
积分
154 
帖子
193 
威望
0  
金币
0 个 
体力
180  
激情
85  
注册时间
2007-8-4 
10#
发表于 2007-8-17 23:10 | 只看该作者
原帖由 LuciferSheng 于 2007-8-17 22:12 发表
Easy Digg

作  者:LuciferSheng
版  本:1.0
最后更新:20070812
插件网址:http://easydigg.googlecode.com
技术支持:lucifersheng+easydiggpro@gmail.com
*只提供有限支持
只在Discuz 6.0 RC1 ...
朋友,帮帮拉!!!!!!!!1

TOP

Comsenz Technology Ltd. ( 京ICP备05079575号|京ICP证040387号)|联系我们

GMT+8, 2010-8-1 13:40, Processed in 0.136982 second(s), 10 queries, Memcache On.

Powered by Discuz! X1

© 2001-2010 Comsenz Inc.