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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[发布] [ DST ]-全新【eMule[电驴]链接插件发布】D6.0[检查无错,出错的请参阅附件]

[复制链接]
7478521 发表于 2007-9-9 21:23:32 | 显示全部楼层
绝对支持~~~!
回复

使用道具 举报

无处藏身 发表于 2007-9-9 22:19:37 | 显示全部楼层
顶了 谢谢 很好   
回复

使用道具 举报

jackxx 发表于 2007-9-9 22:51:45 | 显示全部楼层
不错,先谢谢了
回复

使用道具 举报

白垩纪 发表于 2007-9-9 22:53:59 | 显示全部楼层
谢谢了 ,装上 !!!
回复

使用道具 举报

e_zailai 发表于 2007-9-9 23:06:53 | 显示全部楼层
支持:) :)
回复

使用道具 举报

jackxx 发表于 2007-9-9 23:11:39 | 显示全部楼层
感觉附件框有点太大了,能不能弄小点?
回复

使用道具 举报

balang123 发表于 2007-9-9 23:24:20 | 显示全部楼层
=========================

插件名称:全新【eMule[电驴]链接插件发布】D6.0

适用版本:Discuz!6.0 GBK (9月4日为基础修改)

原 作 者:未知

修 改 者:小铭铭

特别说明:如果您知原作者,请您联系我,我会添加上的....

=========================


1.查找:/include/discuzcode.func.php

查找:

$message = preg_replace("/\s*\[code\](.+?)\[\/code\]\s*/ies", "codedisp('\\1')", $message);

在下面添加:

$message = preg_replace("/\s*\[emule\](.+?)\[\/emule\]\s*/ies", "emu('\\1')", $message);

查找:

return $htmlon || $allowhtml ? $message : nl2br(str_replace(array("\t", '   ', '  '), array('        ', '   ', '  '), $message));

替换为:

$message = $htmlon || $allowhtml ? $message : nl2br(str_replace(array("\t", ' ', ' '), array(' ', ' ', ' '), $message));
             return str_replace("/<br />","/\n",$message);

查找:

"/\[url=(https?|ftp|gopher|news|telnet|rtsp|mms|callto|bctp|ed2k|thunder|synacast){1}:\/\/([^\[\"']+?)\](.+?)\[\/url\]/is",

替换为:

"/\[url=(https?|ftp|gopher|news|telnet|rtsp|mms|callto|bctp|thunder|synacast){1}:\/\/([^\[\"']+?)\](.+?)\[\/url\]/is",

最后查找:

?>

在上面添加:

function emu($code) {
        global $discuzcodes;
        $discuzcodes['pcodecount']++;
        $codecount=$discuzcodes['pcodecount'];
        $code = htmlspecialchars(str_replace('\\"', '"', preg_replace("/^[\n\r]*(.+?)[\n\r]*$/is", "\\1", $code)));
        $view = '';$temp = $total = 0;
        $searcharray = explode("\n",$code);
        $view = "<div class=\"mainbox\"><center><h1>eMule专用下载链接,您必须<a href='http://www.emule.org.cn/download/' target='_blank'>安装eMule</a>才能点击下载</center></h1><table align=center>";

foreach($searcharray as $emule) {
                if($emule!='' && eregi("^ed2k:\/\/",$emule)){
                        $temp++;
                        $emule = dhtmlspecialchars(trim($emule));
                        $emule_array = explode("|",$emule);
                        $total += $emule_array[3];
                        $totalper = esizecount($emule_array[3]);
                        $view.=" <tr><td class=smalltxt width=80%><input type=\"checkbox\" name=\"em$codecount\" value=\"$emule\" onclick=\"em_size('em$codecount');\" checked=\"checked\"><a href=\"$emule\"><script language=\"javascript\">document.write(unescape(decodeURIComponent(\"$emule_array[2]\")));</script></a></td><td class=smalltxt align=center>$totalper</td></tr>";
                } else {
                        $view.="<tr><td colspan=2 class=smalltxt align=center>下载地址连接错误</td></tr>";
                }
        }

$total=esizecount($total);
        $view.="<tr><td align=left width=80%><input type=\"checkbox\" id=\"checkall_em$codecount\" onclick=\"echeckAll('em$codecount',this.checked)\" checked=\"checked\"/> <label for=\"checkall_em$codecount\">全选</label> <input type=\"button\" value=\"下载选中的文件\" onclick=\"download('em$codecount',0,1)\"> <input type=\"button\" value=\"复制选中的链接\" onclick=\"ed2kcopy('em$codecount')\"><div id=\"ed2kcopy_em$codecount\" style=\"position:absolute;height:0px;width:0px;overflow:hidden;\"></div></td><td class=smalltxt align=center id=\"size_em$codecount\">$total</table></div>";

        $discuzcodes['codehtml'][$discuzcodes['pcodecount']] = "<div class=\"eMuleMain\">$view</div>";
        $discuzcodes['codecount']++;
        return "[\tDISCUZ_CODE_$discuzcodes[pcodecount]\t]";
}


function esizecount($filesize) {
        if($filesize >= 1073741824) {
                $filesize = round($filesize / 1073741824 * 100) / 100 . ' GB';
        } elseif($filesize >= 1048576) {
                $filesize = round($filesize / 1048576 * 100) / 100 . ' MB';
        } elseif($filesize >= 1024) {
                $filesize = round($filesize / 1024 * 100) / 100 . ' KB';
        } else {
                $filesize = $filesize . ' bytes';
        }
        return $filesize;
}


2.查找./include/javascript/common.js

在结尾处添加:

function echeckAll(str,checked) {
var a = document.getElementsByName(str);
var n = a.length;

for (var i = 0; i < n; i++) {
a.checked = checked;
}
em_size(str);
}

function download(str, i, first) {
var a = document.getElementsByName(str);
var n = a.length;

for (var i = i; i < n; i++) {
if(a.checked) {
window.location=a.value;
if (first)
timeout = 6000;
else
timeout = 500;
i++;
window.setTimeout("download('"+str+"', "+i+", 0)", timeout);
break;
}
}

}

function ed2kcopy(str) {
var a = document.getElementsByName(str);
var n = a.length;
var ed2kcopy = document.getElementById("ed2kcopy_"+str)
ed2kcopy.innerHTML = ""
for (var i = 0; i < n; i++) {
if(a.checked)
{
ed2kcopy.innerHTML += a.value;
ed2kcopy.innerHTML += "<br />";
}
}
var rng = document.body.createTextRange();
rng.moveToElementText(ed2kcopy)
rng.scrollIntoView();
rng.select();
rng.execCommand("Copy");
rng.collapse(false);
}

function em_size(str) {
var a = document.getElementsByName(str);
var n = a.length;
try {
var input_checkall = document.getElementById("checkall_"+str);
var size = 0;
input_checkall.checked = true ;
for (var i=0; i < n; i++) {
if (a.checked) {
var piecesArray = a.value.split( "|" );
size += piecesArray[3]*1;
} else {
input_checkall.checked = false;
}
}
test = document.getElementById("size_"+str);
test.innerHTML = gen_size(size, 3, 2);
} catch (e) {

}
}

function gen_size(val, li, sepa ) {
sep = Math.pow(10, sepa); //小数点后的位数
li = Math.pow(10, li); //开始截断的长度
retval = val;
unit = 'Bytes';
if (val >= li*1000000000) {
val = Math.round( val / (1099511627776/sep) ) / sep;
unit = 'TB';
} else if (val >= li*1000000) {
val = Math.round( val / (1073741824/sep) ) / sep;
unit = 'GB';
} else if (val >= li*1000) {
val = Math.round( val / (1048576/sep) ) / sep;
unit = 'MB';
} else if (val >= li) {
val = Math.round( val / (1024/sep) ) / sep;
unit = 'KB';
}
return val + unit;
}



3、查找 ./include/javascript/bbcode.js

在最下面加入:


function bb_emule() {
if (helpmode){
alert('ed2k标记\\n使用ed2k标记,可以使输入的ed2k地址以超链接的形式在帖子中显示.\\n使用方法:\\n [ed2k]ed2k下载地址[/ed2k]');
} else if (document.selection && document.selection.type == "Text") {
var range = document.selection.createRange();
range.text = "[emule]" + range.text + "[/emule]";
} else if (advmode) {
AddTxt="[emule] [/emule]";
AddText(AddTxt);
} else {
txt=prompt('ed2k链接',"ed2k://");
if (txt!=null) {
AddTxt="\r[emule]"+txt;
AddText(AddTxt);
AddText("[/emule]");
}
}
}



4.后台按钮添加

后台:Discuz! 代码
新增标签:  emule
图标文件:  bb_emule.gif
例    子:  [emule][/emule]
解    释:  电驴下载

将按钮的图片bb_emule.gif,上传到./images/common/下
回复

使用道具 举报

冰男 发表于 2007-9-10 01:48:26 | 显示全部楼层
这才是高手呀,不凡,嘿嘿,终于解决了大问题,可是,为什么,你看http://bbs.ourzz.com/viewthread.php?tid=210&extra=page%3D1这里的emule标题栏却都是白色的,添加代码的地方都加了三遍了,肯定没错,而且,我还特地重新下载了DZ,把原来的删除掉,重新覆盖了,然后再次进行添加,都不行.

发现在添加的代码中,有这么一段class=\"eMuleMain\",请问CSS里面并没有eMuleMain呀,难怪要出现问题的!不知道楼上的诸位安装了怎么都没问题呢?

[ 本帖最后由 冰男 于 2007-9-10 02:09 编辑 ]
回复

使用道具 举报

冰男 发表于 2007-9-10 03:50:37 | 显示全部楼层
难道没有一个人觉得有问题?奇怪,我用了的确有问题,而且里面一些代码也存在错误,比如上面所说的class=\"eMuleMain\",这在CSS文件里根本就不存在的,不过,经过连夜的奋战,终于找到了解决办法,请大家看:https://discuz.dismall.com/thread-736394-1-1.html
回复

使用道具 举报

HY清风 发表于 2007-9-10 09:29:09 | 显示全部楼层
● 收录提示语:
HY清风 收录提示: HY
我很赞同,收录到 Discuz! 6『插件.风格.美化.功能 道具』HY清风 收集贴!
https://discuz.dismall.com/thread-732315-1-1.html
本次收录作品全部为本站采用,请你在被收录后到收录贴中回帖支持下本人,起码我肯定了你的作品!
感谢你发布或推荐优秀作品给本贴!由于本站不可能安装所有优秀作品,所以未被收录的敬请原谅!
众人拾柴火焰高,敲动键盘,点击鼠标,我们一起分享!

为了更方便大家检索DZ插件等功能贴,HY清风 呼吁你在发表你的作品的同时,
在本贴发个推荐链接或直接PM我,我将会在测试成功后,收录你的作品或推荐作品!

如果你想你的作品迅速被广大会员认可并使用,那么就不要吝啬一分钟的时间来完成以下操作:
被收录或被推荐方式A、回复此贴  B、论坛短消息 PM 我!点这里PM我
发送格式
Discuz! 6『插件.风格.美化.功能 道具』HY清风 收集贴!
https://discuz.dismall.com/thread-732315-1-1.html

唯一测试社区:WinUne.CoM5G视频空间软件下载中心IN非主流官方社区
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-23 06:46 , Processed in 0.026508 second(s), 3 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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