由于GAE(Google App Engine)被墙,导致PJBlog过去发布在GAE的源码无法正常下载,我们已于2015年1月4日转移至论坛附件。如发现类似问题,敬请反馈。

[PJBlog^2019]用户聚居地 - ASP中文开源博客系统PJBlog

 找回密码
 立即加入PJHOME

QQ登录

只需一步,快速开始

扫一扫,访问微社区

PJHOME-PJBlog官方论坛 你的关注和支持,是PJBlog不断成长的动力 指南 - 建议 - 展示 - 风云互联 - 合作

PJBlog3 经典版本(推荐) 最终版本:PJBlog3 V3.2.9.518(2011/11/01) 安装 - 升级 - 转换 - 模板 - 插件 - 反馈

PJBlog5 云博客(不推荐) 公测版本:PJBlog5 V1 公测版(2015/01/01) 发布 - 交流 - 文档 - 主题 - 插件 - 云平台

查看: 13205|回复: 24

附件管理插件 V3.0 DarkSky修改版 For PJ2.7

[复制链接]
发表于 2008-3-31 23:19 | 显示全部楼层 |阅读模式
原版插件:
http://bbs.pjhome.net/viewthread ... D%BC%FE%B9%DC%C0%ED

不过现在好像下载不了了……

本次修改主要是为了在2.7版本下可用,另增加了一些我自己想要的功能:
1. 将部分功能的设置增加到后台,方便使用
2. 增加上传附件的命名方式控制(有问题的……)
3. 增加对FCK编辑器的支持(可惜还是有问题的……)
4. 增加对上传图片的备份功能(如果又想加水印又想保留原图的话就比较方便,否则可以无视此功能)

有问题的部分:
1. 上传附件的命名方式:
    如果选择“前缀_随机数_后缀”的话,“随机方式”就只能选“上传日期时间_文件原名”
    不知道为什么,如果选其它的话,插入数据库的附件记录会自动删除,望高手解决;
2. 对FCK编辑器的支持
    如果文章里只有一个附件的话就没问题,如果有多个的话,就只会显示最好那个的信息,是Ajax的问题,但不知道怎样才能不互相干扰,所以在后台增加了一个对FCK编辑器支持的开关,望高手解决;

修改方法:
1.header.asp
找到
  1. Dim BlogTitle
复制代码
修改为
  1. response.cookies("shotan")= "shotan"
  2. Session("shotan")="shotan"
  3. Dim BlogTitle
复制代码
其实变量的值可以随便设,只要和download.asp文件保持一致就可以了

2.common/ubbcode.asp
找到
  1. '-----------特殊标签----------------
  2.                 re.Pattern = "\[down=(.[^\]]*)\](.[^\[]*)\[\/down]"
  3.                 Set strMatchs=re.Execute(strContent)
  4.                 For Each strMatch in strMatchs
  5.                         tmpStr1=checkURL(strMatch.SubMatches(0))
  6.                         tmpStr2=strMatch.SubMatches(1)
  7.                         strContent=replace(strContent,strMatch.Value,"<img src=""images/download.gif"" alt=""下载文件"" style=""margin:0px 2px -4px 0px""/> <a href="""&tmpStr1&""" target=""_blank"">"&tmpStr2&"</a>",1,-1,0)
  8.                 Next               
  9.                
  10.                 re.Pattern = "\[down\](.[^\[]*)\[\/down]"
  11.                 Set strMatchs=re.Execute(strContent)
  12.                 For Each strMatch in strMatchs
  13.                         tmpStr1=checkURL(strMatch.SubMatches(0))
  14.                         strContent=replace(strContent,strMatch.Value,"<img src=""images/download.gif"" alt=""下载文件"" style=""margin:0px 2px -4px 0px""/> <a href="""&tmpStr1&""" target=""_blank"">下载此文件</a>",1,-1,0)
  15.                 Next

  16.                 re.Pattern = "\[mDown=(.[^\]]*)\](.[^\[]*)\[\/mDown]"
  17.                 Set strMatchs=re.Execute(strContent)
  18.                 For Each strMatch in strMatchs
  19.                         tmpStr1=checkURL(strMatch.SubMatches(0))
  20.                         tmpStr2=strMatch.SubMatches(1)
  21.                         if len(memName)>0 then
  22.                                 strContent=replace(strContent,strMatch.Value,"<img src=""images/download.gif"" alt=""下载文件"" style=""margin:0px 2px -4px 0px""/> <a href="""&tmpStr1&""" target=""_blank"">"&tmpStr2&"</a>",1,-1,0)
  23.                          else
  24.                                 strContent=replace(strContent,strMatch.Value,"<img src=""images/download.gif"" alt=""只允许会员下载"" style=""margin:0px 2px -4px 0px""/> 该文件只允许会员下载! <a href=""login.asp"">登录</a> | <a href=""register.asp"">注册</a>",1,-1,0)
  25.                         end if
  26.                 Next

  27.                 re.Pattern = "\[mDown\](.[^\[]*)\[\/mDown]"
  28.                 Set strMatchs=re.Execute(strContent)
  29.                 For Each strMatch in strMatchs
  30.                         tmpStr1=checkURL(strMatch.SubMatches(0))
  31.                         if len(memName)>0 then
  32.                                 strContent=replace(strContent,strMatch.Value,"<img src=""images/download.gif"" alt=""下载文件"" style=""margin:0px 2px -4px 0px""/> <a href="""&tmpStr1&""" target=""_blank"">下载此文件</a>",1,-1,0)
  33.                          else
  34.                                 strContent=replace(strContent,strMatch.Value,"<img src=""images/download.gif"" alt=""只允许会员下载"" style=""margin:0px 2px -4px 0px""/> 该文件只允许会员下载! <a href=""login.asp"">登录</a> | <a href=""register.asp"">注册</a>",1,-1,0)
  35.                         end if
  36.                 Next
复制代码
替换成
  1. '-----------特殊标签----------------
  2.         re.Pattern = "\[down=(download\.asp\?id=)([0-9]*)\](.[^\[]*)\[\/down]"
  3.         Set strMatchs=re.Execute(strContent)
  4.         For Each strMatch in strMatchs
  5.             tmpStr1=checkURL(strMatch.SubMatches(0))
  6.             tmpStr2=strMatch.SubMatches(1)
  7.                         tmpStr3=strMatch.SubMatches(2)
  8.             strContent=Shotan_Download(strContent,strMatch.Value,tmpStr1,tmpStr2,tmpStr3)
  9.         Next        
  10.         
  11.         re.Pattern = "\[down\](download\.asp\?id=)([0-9]*)\[\/down\]"
  12.         Set strMatchs=re.Execute(strContent)
  13.         For Each strMatch in strMatchs
  14.             tmpStr1=checkURL(strMatch.SubMatches(0))
  15.             tmpStr2=strMatch.SubMatches(1)
  16.             strContent=Shotan_Download(strContent,strMatch.Value,tmpStr1,tmpStr2,"")
  17.         Next

  18.         re.Pattern = "\[mDown=(download\.asp\?id=)([0-9]*)\](.[^\[]*)\[\/mDown]"
  19.         Set strMatchs=re.Execute(strContent)
  20.         For Each strMatch in strMatchs
  21.             tmpStr1=checkURL(strMatch.SubMatches(0))
  22.             tmpStr2=strMatch.SubMatches(1)
  23.                         tmpStr3=strMatch.SubMatches(2)
  24.             if len(memName)>0 then
  25.                 strContent=Shotan_Download(strContent,strMatch.Value,tmpStr1,tmpStr2,tmpStr3)
  26.              else
  27.                 strContent=replace(strContent,strMatch.Value,"<img src=""images/download.gif"" alt=""只允许会员下载"" style=""margin:0px 2px -4px 0px""/> 该文件只允许会员下载! <a href=""login.asp"">登录</a> | <a href=""register.asp"">注册</a>",1,-1,0)
  28.             end if
  29.         Next

  30.         re.Pattern = "\[mDown\](download\.asp\?id=)([0-9]*)\[\/mDown]"
  31.         Set strMatchs=re.Execute(strContent)
  32.         For Each strMatch in strMatchs
  33.             tmpStr1=checkURL(strMatch.SubMatches(0))
  34.             if len(memName)>0 then
  35.                 strContent=Shotan_Download(strContent,strMatch.Value,tmpStr1,tmpStr2,"")
  36.              else
  37.                 strContent=replace(strContent,strMatch.Value,"<img src=""images/download.gif"" alt=""只允许会员下载"" style=""margin:0px 2px -4px 0px""/> 该文件只允许会员下载! <a href=""login.asp"">登录</a> | <a href=""register.asp"">注册</a>",1,-1,0)
  38.             end if
  39.         Next
复制代码
如果你的博客中用以前的方法添加的附件较多,你可以在上面的语句修改完之后,接着再加入
  1. '=====================兼容以前的附件==================================
  2.                 re.Pattern = "\[down=attachments\/(.[^\]]*)\](.[^\[]*)\[\/down]"
  3.                 Set strMatchs=re.Execute(strContent)
  4.                 For Each strMatch in strMatchs
  5.                         tmpStr1=checkURL(strMatch.SubMatches(0))
  6.                         tmpStr2=strMatch.SubMatches(1)
  7.                         strContent=replace(strContent,strMatch.Value,"<img src=""images/download.gif"" alt=""下载文件"" style=""margin:0px 2px -4px 0px""/> <a href=""attachments/"&tmpStr1&""" target=""_blank"">"&tmpStr2&"</a>",1,-1,0)
  8.                 Next               
  9.                
  10.                 re.Pattern = "\[down\]attachments\/(.[^\[]*)\[\/down]"
  11.                 Set strMatchs=re.Execute(strContent)
  12.                 For Each strMatch in strMatchs
  13.                         tmpStr1=checkURL(strMatch.SubMatches(0))
  14.                         strContent=replace(strContent,strMatch.Value,"<img src=""images/download.gif"" alt=""下载文件"" style=""margin:0px 2px -4px 0px""/> <a href=""attachments/"&tmpStr1&""" target=""_blank"">下载此文件</a>",1,-1,0)
  15.                 Next

  16.                 re.Pattern = "\[mDown=attachments\/(.[^\]]*)\](.[^\[]*)\[\/mDown]"
  17.                 Set strMatchs=re.Execute(strContent)
  18.                 For Each strMatch in strMatchs
  19.                         tmpStr1=checkURL(strMatch.SubMatches(0))
  20.                         tmpStr2=strMatch.SubMatches(1)
  21.                         if len(memName)>0 then
  22.                                 strContent=replace(strContent,strMatch.Value,"<img src=""images/download.gif"" alt=""下载文件"" style=""margin:0px 2px -4px 0px""/> <a href=""attachments/"&tmpStr1&""" target=""_blank"">"&tmpStr2&"</a>",1,-1,0)
  23.                          else
  24.                                 strContent=replace(strContent,strMatch.Value,"<img src=""images/download.gif"" alt=""只允许会员下载"" style=""margin:0px 2px -4px 0px""/> 该文件只允许会员下载! <a href=""login.asp"">登录</a> | <a href=""register.asp"">注册</a>",1,-1,0)
  25.                         end if
  26.                 Next

  27.                 re.Pattern = "\[mDown\]attachments\/(.[^\[]*)\[\/mDown]"
  28.                 Set strMatchs=re.Execute(strContent)
  29.                 For Each strMatch in strMatchs
  30.                         tmpStr1=checkURL(strMatch.SubMatches(0))
  31.                         if len(memName)>0 then
  32.                                 strContent=replace(strContent,strMatch.Value,"<img src=""images/download.gif"" alt=""下载文件"" style=""margin:0px 2px -4px 0px""/> <a href=""attachments/"&tmpStr1&""" target=""_blank"">下载此文件</a>",1,-1,0)
  33.                          else
  34.                                 strContent=replace(strContent,strMatch.Value,"<img src=""images/download.gif"" alt=""只允许会员下载"" style=""margin:0px 2px -4px 0px""/> 该文件只允许会员下载! <a href=""login.asp"">登录</a> | <a href=""register.asp"">注册</a>",1,-1,0)
  35.                         end if
  36.                 Next
  37. '=====================兼容以前的附件==================================
复制代码
以上语句主要是对你博客中原来的附件地址的识别,以前添加的附件是没有防盗链的。注意上面的attachments是你博客附件文件所在的文件夹名称,如果你的博客附件的文件夹是其他的名称,做相应的替换即可

说明:如果你的博客中ubbcode.asp文件从来没有修改过,那可以将下载压缩包中的common/ubbcode.asp文件上传到网站空间中common文件夹下覆盖原来的ubbcode.asp文件,操作之前做好备份哦,以防万一

3.common/common.js
找到函数
  1. function addUploadItem(type,path,memberDown){
复制代码
修改为
  1. function addUploadItem(type,path,memberDown,autoico,supportfck){
复制代码
在该函数中找到
  1. default :
  2. ...
  3. break;
复制代码
替换为
  1. default :
  2.         if (EditType=="UBBEditor"){
  3.         if (memberDown==1)
  4.                  {parent.document.forms[0].Message.value+='[mDown='+path+']点击下载此文件[/mDown]\n'}
  5.          else
  6.                  {parent.document.forms[0].Message.value+='[down='+path+']点击下载此文件[/down]\n'}
  7.         }
  8.                 //'========= Kan 2008-03-24 插件:附近管理 增加对FCK的支持 Start =========
  9.         else{
  10.                         var srs_att = path.split("=");
  11.                         var srs_att_no = srs_att.length;
  12.                         var srs_att_ico = "download.gif";
  13.                         if (autoico==1){
  14.                            switch(type){
  15.                                  case 'jpg':
  16.                                    srs_att_ico="jpg.gif"
  17.                                    break;
  18.                                  case 'gif':
  19.                                    srs_att_ico="gif.gif"
  20.                                    break;
  21.                                  case 'bmp':
  22.                                    srs_att_ico="bmp.gif"
  23.                                    break;
  24.                                  case 'png':
  25.                                    srs_att_ico="png.gif"
  26.                                    break;
  27.                                  case 'zip':
  28.                                    srs_att_ico="zip.gif"
  29.                                    break;
  30.                                  case 'rar':
  31.                                    srs_att_ico="rar.gif"
  32.                                    break;
  33.                                  case 'swf':
  34.                                    srs_att_ico="swf.gif"
  35.                                    break;
  36.                                  case 'mdb':
  37.                                    srs_att_ico="mdb.gif"
  38.                                    break;
  39.                                  case 'doc':
  40.                                    srs_att_ico="doc.gif"
  41.                                    break;
  42.                                  case 'xls':
  43.                                    srs_att_ico="xls.gif"
  44.                                    break;
  45.                                  case "pdf":
  46.                                    srs_att_ico="pdf.gif"
  47.                                    break;
  48.                                  case 'mbk':
  49.                                    srs_att_ico="mbk.gif"
  50.                                    break;
  51.                                  case 'mp3':
  52.                                    srs_att_ico="mp3.gif"
  53.                                    break;
  54.                                  case "wmv":
  55.                                    srs_att_ico="wma.gif"
  56.                                    break;
  57.                                  case "wma":
  58.                                    srs_att_ico="wma.gif"
  59.                                    break;
  60.                                  default :
  61.                                    srs_att_ico="unknow.gif"
  62.                                    break;
  63.                            }
  64.                            srs_att_ico="file/"+srs_att_ico
  65.                         }
  66.                         var srs_att_InsertHtml = '<a href="'+path+'" target="_blank" title="点击下载此文件" ><img border="0" src="../../images/'+srs_att_ico+'" alt="点击下载" style="margin:0px 2px -4px 0px"/>点击下载此文件</a>'
  67.                         if (supportfck==1){
  68.                                 srs_att_InsertHtml=srs_att_InsertHtml+'[附件'+srs_att[srs_att_no-1]+'信息]</label><script type="text/javascript">getSRSAttachment('+srs_att[srs_att_no-1]+')</script>'
  69.                         }
  70.                         oEditor.InsertHtml(srs_att_InsertHtml)
  71.                 }
  72.                 //'========= Kan 2008-03-24 插件:附近管理 增加对FCK的支持 End =========
  73.         break;
复制代码
说明:如果你的博客中common.js文件从来没有修改过,那可以将下载压缩包中的common/common.js文件上传到网站空间中common文件夹下覆盖原来的common.js文件,操作之前做好备份哦,以防万一

4.将下载压缩包中的download.asp文件上传到网站的根目录下

5.将下载压缩包中的attachment.asp文件覆盖原来的attachment.asp
注意:进行此操作前先做好文件备份,以便造成不必要的麻烦

6.将下载压缩包中的Attachment文件夹上传到自己博客的Plugins文件夹下,然后进博客后台将插件安装一下
如果已安装了旧版本的话,需反安装旧版本并删除记录

OK,搞定了,呵呵~

水平有限,不足之处,还请多多包涵

[ 本帖最后由 夜空语风 于 2008-4-1 00:03 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即加入PJHOME

x

评分

参与人数 1PJ币 +104 收起 理由
戒聊 + 104 优秀主题,谢谢分享。

查看全部评分

欢迎来到PJHOME社区,PJ有你更精彩!!
发表于 2008-4-1 03:28 | 显示全部楼层
优秀主题,谢谢分享。有需要的朋友可以测试下。
欢迎来到PJHOME社区,PJ有你更精彩!!
回复 支持 反对

使用道具 举报

发表于 2008-4-1 18:04 | 显示全部楼层
哈哈不错,我也来试试~
欢迎来到PJHOME社区,PJ有你更精彩!!
回复 支持 反对

使用道具 举报

发表于 2008-4-1 18:54 | 显示全部楼层
顶楼主,如果有像楼主这样的好人再多一些就好了!即自己动手,又共享他人!再赞一个!
欢迎来到PJHOME社区,PJ有你更精彩!!
回复 支持 反对

使用道具 举报

发表于 2008-4-1 19:50 | 显示全部楼层
经典了
欢迎来到PJHOME社区,PJ有你更精彩!!
回复 支持 反对

使用道具 举报

发表于 2008-4-1 23:13 | 显示全部楼层
谢谢了!正在到处找呢!先顶后下载!!
欢迎来到PJHOME社区,PJ有你更精彩!!
回复 支持 反对

使用道具 举报

发表于 2008-4-2 01:10 | 显示全部楼层
你好楼主,我把文件都覆盖进去了,但是却登录不了后台了。呼啊。

缓存问题,已经解决。顶楼主!

[ 本帖最后由 mwmxm 于 2008-4-2 22:48 编辑 ]
欢迎来到PJHOME社区,PJ有你更精彩!!
回复 支持 反对

使用道具 举报

发表于 2008-4-2 09:20 | 显示全部楼层
很不错的插件啊!
欢迎来到PJHOME社区,PJ有你更精彩!!
回复 支持 反对

使用道具 举报

发表于 2008-4-2 09:22 | 显示全部楼层
试一下 感谢共享~!
欢迎来到PJHOME社区,PJ有你更精彩!!
回复 支持 反对

使用道具 举报

发表于 2008-4-2 20:47 | 显示全部楼层
不错,不错
欢迎来到PJHOME社区,PJ有你更精彩!!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入PJHOME

本版积分规则

关闭

PJHOME小黑板报上一条 /1 下一条

小黑屋|手机版|纯文字版|BBS.PJHOME.NET ( 粤ICP备12036560号-1 )

GMT+8, 2020-7-15 15:27 , Processed in 0.209880 second(s), 28 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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