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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

FY的道具商店1.4终结版-BUG列表8.11(key:鲜花鸡蛋,隐身,限时置顶,主题鉴定)

[复制链接]
 楼主| PerfectWorks 发表于 2005-8-11 10:03:51 | 显示全部楼层
汗,这次我把步骤都注明了,只要装需要的就好……
回复

使用道具 举报

kidzz777 发表于 2005-8-11 12:10:22 | 显示全部楼层
偶装了,怎么商店页面显示空白..........
回复

使用道具 举报

farseer122 发表于 2005-8-11 13:01:21 | 显示全部楼层
我装了过后出现2个问题,一个是在查看隐身用户的时候,总是提示我"你没有选择要应用道具的帖子!"
还有个就是在使用沉底炸鸡腿的时候,数据库提示
SQL: UPDATE cdb_members SET newpm='1' WHERE uid IN ()
Error: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1
Errno.: 1064
但物品的作用还是生效了!
回复

使用道具 举报

 楼主| PerfectWorks 发表于 2005-8-11 16:42:56 | 显示全部楼层
原帖由 kidzz777 于 2005-8-11 12:10 发表
偶装了,怎么商店页面显示空白..........

可能是cache.php的问题
回复

使用道具 举报

 楼主| PerfectWorks 发表于 2005-8-11 16:51:52 | 显示全部楼层
鸡腿的问题确实存在……
已经修复了,重新下载附件中的shop.php覆盖即可
反隐的我这没出现
稍后等我用干净DZ测试一下
回复

使用道具 举报

 楼主| PerfectWorks 发表于 2005-8-11 22:44:09 | 显示全部楼层

转贴版本

[quote]
插件名称:道具商店
插件作者:文文の封印(部分代码属DZ、liuqiang、POLO!所有)
最后发布:8.10.05
版本     :1.4
适用版本:2.5SP1(2.5语言包不正常,解决方法见步骤6.1~6.2)
主要功能:付费金钱清零、高亮、置顶一天、鉴定主题、隐身发贴/反隐身、降低主题、删除主题、发帖时提示
简易程度:复杂
cache    :有
占用资源:少
sql升级  :有
必须插件:银行
改动文件:viewthread.php,newthread.php,newreply.php,cache.php,global.php
改动模板:viewthread.htm,forumdisplay.htm,viewthread_printable.htm,post_newthread.htm,post_newreply.htm,plugin.lang.php
技术支持:discuz.net,freediscuz.net
[/quote]

更新记录:
1.4
加入四个新道具(鲜花鸡蛋克隆虚拟形象和更名)
使用道具、奖励、赠送PM通知
修正一点小bug

1.3
增强的用户奖励(用户、用户组奖励,PM通知)
所有操作都有记录
去掉global.php的自定义函数
改变存储结构
修正小bug

1.2-新道具:发帖时友情小提示
升级方法:[url]https://discuz.dismall.com/viewthread.php?tid=146160&extra=page%3D1[/url]

1.2
道具可以关闭
前台编辑道具
加入店长
加了一个新道具-删帖(默认关闭,删帖会把帖子转移到回收站版面,回收站版面后台设置)
用switch...case...break代替if...elseif结构
修正一些小BUG

0.720
整合礼包功能
美化模板,仿银行
修正模板bug
进一步语言包化
语言包转到plug.lang.php
加入cache,减少7个查询
其它一些小bug
升级方法在2楼

[size=4][color=Red]装这个之前,请先安装以下插件的一部分即可,可以直接安装我在3楼整理出的精简版本[/color][/size]

[url=https://discuz.dismall.com/viewthread.php?tid=143112&extra=page%3D1]【主题鉴定】[/url](如果不想用鉴定,后台关闭即可)
[url=https://discuz.dismall.com/viewthread.php?tid=143107&extra=page%3D1]【限时置顶】[/url](如果不想用,后台关闭即可)

[size=3]如果某些道具你不需要,可以不执行它的修改过程。下面每个步骤都注明了是为了哪几个功能服务的。
注意如果你不需要该道具,[color=Red]请在道具编辑界面关闭它[/color]。[/size]

step 1.9(必须)
按目录结构上传附件,导入plug_shop.txt

step 2.(必须)
运行附件中的shop_install.php安装,然后删除shop_install.php

step 3.1(隐身及其发帖提示必须)
打开include/newreply.php和include/newthread.php(这俩修改方法一样)
[color=red][size=3]找到[/size][/color][code]
if(!defined('IN_DISCUZ')) {
        exit('Access Denied');
}
[/code]
[color=red][size=3]下面加[/size][/color]
[code]
//------------------------------------------------------
//Shop BY FY
//------------------------------------------------------
@require DISCUZ_ROOT.'./forumdata/cache/cache_shop.php';
$query=$db->query("SELECT * FROM $table_useritems WHERE uid='$discuz_uid'");
$temp=$db->fetch_array($query);
$myitemlist = $_DCACHE[item];
for($i=0;$i<$_DCACHE[itemnum];){
        $myitemlist[$i++][num]=$temp["item".$i];
}
//------------------------------------------------------
[/code]

step 3.2(隐身极发帖提示必须)
[color=red][size=3]找到[/size][/color][code]       
include template('post_newreply');

} else {
[/code]
(newthread.php里面是)
[code]
include template('post_newthread');

} else {
[/code]
[color=red][size=3]下面加[/size][/color]
[code]
//-----------------------------------------------------
//Shop by FY
//-----------------------------------------------------
$hide = $hide ? 1:0;
if($hide){
        if(!$myitemlist[1]['use'])showmessage('shop_itemclose');
        if($myitemlist[1][num]<1)showmessage('shop_error_post');
        $db->query("UPDATE $table_useritems SET item2=item2-1 WHERE uid='$discuz_uid'");
        $temp="【身份隐藏】";
}else{
    $temp=$discuz_user;
}

$msgshow = $msgshow ? 1:0;
//newreply.php可以不要下面这一段
if($msgshow && !$alertmsg){
        showmessage('shop_alertmsgno');
}elseif($msgshow && $alertmsg){
        if(!$myitemlist[8]['use'])showmessage('shop_itemclose');
        if($myitemlist[8][num]<1)showmessage('shop_error_post');
                $db->query("UPDATE $table_useritems SET item9=item9-1 WHERE uid='$discuz_uid'");
                $alertmsg = addslashes($alertmsg);
        if(strlen($alertmsg) > 255)showmessage('shop_alertmsgmax');
}
//newreply.php可以不要上面这一段
//-----------------------------------------------------
[/code]

step 3.39(隐身必须)
[color=red][size=3]找到[/size][/color][code], smileyoff, parseurloff[/code]
[color=red][size=3]后面加[/size][/color][code],hide[/code]

step 3.4(隐身必须)
[color=red][size=3]找到[/size][/color][code]'$smileyoff', '$parseurloff'[/code]
[color=red][size=3]后面加[/size][/color][code],'$hide'[/code]

step 3.5(隐身必须)
[color=red][size=3]找到[/size][/color](共两处)[code]\t$discuz_user[/code]
[color=red][size=3]改成[/size][/color][code]\t$temp[/code]

step 3.6(隐身必须)
newreply.php里面
[color=red][size=3]找到[/size][/color][code]$db->query("UPDATE $table_threads SET lastposter='$discuz_user', lastpost='$timestamp', replies=replies+1, attachment='".attachtype($last_attach_type, 'id')."' WHERE tid='$tid' AND fid='$fid'", 'UNBUFFERED');[/code]
[color=red][size=3]改成[/size][/color][code]$db->query("UPDATE $table_threads SET lastposter='$temp', lastpost='$timestamp', replies=replies+1, attachment='".attachtype($last_attach_type, 'id')."' WHERE tid='$tid' AND fid='$fid'", 'UNBUFFERED');[/code]
[color=red][size=3]找到[/size][/color][code]$db->query("UPDATE $table_threads SET lastposter='$discuz_user', lastpost='$timestamp', replies=replies+1 WHERE tid='$tid' AND fid='$fid'", 'UNBUFFERED');[/code]
[color=red][size=3]改成[/size][/color][code]$db->query("UPDATE $table_threads SET lastposter='$temp', lastpost='$timestamp', replies=replies+1 WHERE tid='$tid' AND fid='$fid'", 'UNBUFFERED');[/code]

step 3.7
newthread.php里面(隐身必须)
[color=red][size=3]找到[/size][/color][code]poll, attachment[/code]
[color=red][size=3]后面加[/size][/color][code],hide[/code]
[color=red][size=3]找到[/size][/color][code]VALUES ('$fid', '$viewperm', '$iconid', '$discuz_user', '$discuz_uid', '$subject', '$timestamp', '$timestamp', '$discuz_user', '$displayorder', '$digest', '$poll', '".attachtype($last_attach_type, 'id')."')");[/code]
[color=red][size=3]改成[/size][/color][code]VALUES ('$fid', '$viewperm', '$iconid', '$discuz_user', '$discuz_uid', '$subject', '$timestamp', '$timestamp', '$temp', '$displayorder', '$digest', '$poll', '".attachtype($last_attach_type, 'id')."','$hide')");[/code]
3.8(发帖提示必须)
[color=red][size=3]找到[/size][/color][code]$tid = $db->insert_id();[/code][color=red][size=3]下面加[/size][/color][code]
//--------------------------------------------------------------
//Shop By FY
//--------------------------------------------------------------
if($msgshow){
    $db->query("INSERT INTO $table_threadsalert (tid,alertmsg) VALUES ('$tid','$alertmsg')");
        $db->query("UPDATE $table_threads SET alerted=1 WHERE tid=$tid");

        $shopaction = 'use';
        $shoplogfile = DISCUZ_ROOT."./forumdata/shoplog.php";
        @$fp = fopen($shoplogfile, 'a+');
        @fwrite($fp, "$timestamp\t$discuz_uid\t".dhtmlspecialchars($discuz_user)."\t$shopaction\t9\t$onlineip\t$subject\t$tid\t$uidto\t$usernameto\t$numto\n");
        @fclose($fp);
}
//--------------------------------------------------------------
[/code]

step 5.1(必须)
打开cache.php
[color=red][size=3]找到[/size][/color][code]
case ranks:
        $table = $GLOBALS['table_ranks'];
        $cols='ranktitle,postshigher,stars,color';
        $conditions = "WHERE 1 ORDER BY postshigher desc";
        break;[/code]
[color=red][size=3]后面加[/size][/color][code]
//-----------------------------------------------------
//Shop by FY
//-----------------------------------------------------
case item:
        $table = $GLOBALS['table_shop'];
        $conditions = "ORDER BY id";
        break;
case itemnum:
        $table = $GLOBALS['table_shop'];
        $cols='count(*)';
        break;
//-----------------------------------------------------
[/code]

step 5.2(必须)
[color=red][size=3]找到[/size][/color][code]
$query = $db->query("SELECT $cols FROM $table $conditions");
switch($cachename) {[/code]
[color=red][size=3]后面加[/size][/color][code]
//-----------------------------------------------------
//Shop by FY
//-----------------------------------------------------
case item:
        while($item = $db->fetch_array($query)){$data[] = $item;}
        break;
case itemnum:
        $data = $db->result($query,0);
        break;
//-----------------------------------------------------
[/code]

step 5.3(必须)
[color=red][size=3]找到[/size][/color][code]
'plugins'        => array('plugins', 'plugins_settings')[/code]
[color=red][size=3]后面加[/size][/color][code],[/code]
然后[color=red][size=3]下面加[/size][/color][code]
//-----------------------------------------------------
//Shop by FY
//-----------------------------------------------------
'shop'                => array('item','itemnum')
//-----------------------------------------------------
[/code]

step 6.1(必须)
覆盖plugin.lang.php附件,注意,根据有无装日记本选择适合自己的附件
如果不是SP1用户或者覆盖后出现界面英文情况,请根据无日记本版plugin.lang.php中的注释修改

step 7.(反隐、高亮、鉴定、置顶、删帖、降低、发帖提示、鸡蛋鲜花、克隆虚拟形象必须)
打开viewthread.php
[color=red][size=3]找到[/size][/color][code]
} else {
        showmessage('thread_nonexistence');
}
[/code]
[color=red][size=3]下面加[/size][/color]
[code]
// ----------------------------------------------------------------
// Shop By FY
// ----------------------------------------------------------------
@require DISCUZ_ROOT.'./forumdata/cache/cache_shop.php';
$query=$db->query("SELECT * FROM $table_useritems WHERE uid='$discuz_uid'");
$temp=$db->fetch_array($query);
$myitemlist = $_DCACHE[item];
for($i=0;$i<$_DCACHE[itemnum];){
        $myitemlist[$i++][num]=$temp["item".$i];
}
$useitem = (
( $myitemlist[4][num]>0 && $myitemlist[4]['use'] ) ||
( $myitemlist[2][num]>0 && $myitemlist[2]['use'] ) ||
( $myitemlist[5][num]>0 && $myitemlist[5]['use'] ) ||
( $myitemlist[6][num]>0 && $myitemlist[6]['use'] ) ||
( $myitemlist[7][num]>0 && $myitemlist[7]['use'] )
)? 1:0;
$randnum = rand(1,4);

if($thread['alerted']){
        $query = $db->query("SELECT alertmsg FROM $table_threadsalert WHERE tid='$tid'");
        $alertmsg = $db->result($query,0);
       
        if($alertmsg && !$_COOKIE[alert."$tid"]){
                        $alertmsg = str_replace("\r\n","\\n",$alertmsg);
                        setcookie("alert".$tid, 1, $timestamp + 86400, $cookiepath, $cookiedomain);
        }else{
                        $alertmsg = NULL;
        }
}
// ----------------------------------------------------------------
[/code]

step 7.2(克隆虚拟形象必须)
[size=3][color=Red]找到[/color][/size][code]                           
$post['avatar'] = "
<!-- 虚拟形象开始-->
<DIV id=Show{$post['pid']}
style=\"PADDING-RIGHT: 0px; PADDING-LEFT: 0px; LEFT: 0px; PADDING-BOTTOM: 0px; WIDTH: 120px; PADDING-TOP: 0px; POSITION: relative; TOP: 0px; HEIGHT: 150px\">
</DIV>
<!-- 虚拟形象结束-->";
[/code]
[size=3][color=Red]改成[/color][/size][code]                                               
if ($myitemlist[9]['num']>0 && $myitemlist[9]['use'] && $post['authorid']!=$discuz_uid)$post['avatar']="<a onClick='var truthBeTold = window.confirm(\"要克隆这个虚拟形象吗?\");if (truthBeTold) window.open(\"plugins.php?p=shop&action=use&id=10&uid={$post['authorid']}\");'>";
$post['avatar'].= "
<!-- 虚拟形象开始-->
<DIV id=Show{$post['pid']}
style=\"PADDING-RIGHT: 0px; PADDING-LEFT: 0px; LEFT: 0px; PADDING-BOTTOM: 0px; WIDTH: 120px; PADDING-TOP: 0px; POSITION: relative; TOP: 0px; HEIGHT: 150px\">
</DIV>
</a>
<!--{/if}-->
<!-- 虚拟形象结束-->";
if ($myitemlist[9]['num']>0 && $myitemlist[9]['use'])$post['avatar'].="</a>";
[/code]

step 8.1(高亮、鉴定、置顶、删帖、降低必须)
打开viewthread.htm模板
[color=red][size=3]找到[/size][/color][code]<!--{if $ismoderator}-->[/code]
[color=red][size=3]上面加[/size][/color]
[code]
<!--Shop by FY START-->
<!--{if $useitem}-->
<span class="bold">{lang shop_item}:</span>
<select name="item" id="item" onchange="window.location=('plugins.php?p=shop&action=use&tid=$tid&id='+this.options[this.selectedIndex].value+'&fpage=$fpage');">
<option value="" selected>{lang shop_use}{lang shop_item}</option>
<!--{if $myitemlist[2][num] && $myitemlist[2][use]}-->
<option value="3">$myitemlist[2][name]</option>
<!--{/if}-->
<!--{if $myitemlist[4][num] && $thread[displayorder]==0 && $myitemlist[4][use]}-->
<option value="5">$myitemlist[4][name]</option>
<!--{/if}-->
<!--{if $myitemlist[5][num] && $myitemlist[5][use]}-->
<option value="6">$myitemlist[5][name]</option>
<!--{/if}-->
<!--{if $myitemlist[6][num] && $myitemlist[6][use]}-->
<option value="7">$myitemlist[6][name]</option>
<!--{/if}-->
<!--{if $myitemlist[7][num] && $myitemlist[7][use]}-->
<option value="8">$myitemlist[7][name]</option>
<!--{/if}-->
</select>
<!--{/if}-->
<!--Shop by FY END-->
[/code]

step 8.2(隐身必须)
[color=red][size=3]找到[/size][/color][code]<td valign="top" width="21%">[/code]
[color=red][size=3]下面加[/size][/color]
[code]
<!--Shop by FY START-->
<!--{if $post['hide']}-->
        <table width="95%" border="0" cellspacing="0" cellpadding="0" style="table-layout: fixed">
        <tr><td valign=middle><center>
        <span class="bold"><font style="filter: glow(color=#FF0000,strength=3); height:10px; color:white; padding:1px">{lang shop_hide_user}</font></span>
        <BR><BR>
        <input type="hidden" name="uid" value="$post[uid]">
        <!--{if $myitemlist[3][num]}-->
        <img onClick='var truthBeTold = window.confirm("{lang shop_view_sure}");if (truthBeTold) window.open("plugins.php?p=shop&action=use&id=4&uid=$post[authorid]");'  src=images/common/hide$randnum.jpg border=1>
        <!--{else}-->
        <img src=images/common/hide$randnum.jpg border=1>
        <!--{/if}-->
        <br>
        <br><span class="bold"><font style="filter: glow(color=#FF0000,strength=3); height:10px; color:white; padding:1px">
        <!--{if $myitemlist[3][num]}-->
        {lang shop_view_hide}
        <!--{else}-->
        {lang shop_hide_user}
        <!--{/if}--></font></span></center>
        </td></tr></table>
<!--{else}-->
[/code]

step 8.3(隐身必须)
[color=red][size=3]找到[/size][/color][code]
</td>
<td width="79%" height="100%" valign="top">
[/code]
[color=red][size=3]上面加[/size][/color]
[code]
<!--{/if}--><!--Shop by FY END-->
[/code]

step 8.4(隐身必须)
[color=red][size=3]找到[/size][/color][code]
<tr class="smalltxt"><td align="left">
[/code]
[color=red][size=3]下面加[/size][/color]
[code]<!--Shop by FY START-->
<!--{if !$post['hide']}-->[/code]

step 8.5(隐身必须)
[color=red][size=3]找到[/size][/color][code]<!--{if $post['oicq']}--><a href="http://search.tencent.com/cgi-bin/friend/user_show_info?ln=$post[oicq]" target="_blank"><img src="{IMGDIR}/oicq.gif" alt="QQ" border="0"></a> <!--{/if}-->[/code]
[color=red][size=3]后面加[/size][/color][code]<!--{/if}--><!--Shop by FY END-->
[/code]

step 8.6(隐身必须)
[color=red][size=3]找到[/size][/color][code]<!--{if !$thread['closed'] || $ismoderator}-->
[/code]
替换为[code]<!--{if (!$thread['closed'] || $ismoderator) && !$post['hide']}--><!--Shop modified by FY-->[/code]

step 8.7(隐身必须)
[color=red][size=3]找到[/size][/color][code]<!--{if $allowkarma && $maxkarmarate}-->[/code]
替换为[code]<!--{if $allowkarma && $maxkarmarate && !$post['hide']}--><!--Shop modified by FY-->[/code]

step 8.8(隐身必须)
[color=red][size=3]找到[/size][/color][code]<!--{if $post['signature']}-->[/code]
[color=red][size=3]改成[/size][/color][code]<!--{if $post['signature'] && !$post['hide']}--><!--Shop modified by FY-->[/code]

step 8.9(礼包必须)
[color=red][size=3]找到[/size][/color][code]$post[subject]</span>[/code]
[color=red][size=3]后面加[/size][/color][code]<!--{if $adminid==1}--> <a href="plugins.php?p=shop&action=gift&give=1&uid=$post[authorid]&tid=$tid&page=$page&pid=$post[pid]">-奖励大礼包</a><!--{/if}--><!--Shop modified by FY-->[/code]

step 8.10(发帖提示必须)
[color=red][size=3]找到[/size][/color][code]<!--{if $polloptions}-->
        {template viewthread_poll}
<!--{/if}-->[/code]
[color=red][size=3]上面加[/size][/color][code]<!--{if $alertmsg}-->
<script>
confirm("$alertmsg");
</script>
<!--{/if}-->[/code]

step 8.11(鲜花鸡蛋必须)
[color=Red][size=3]找到[/size][/color]
[code]$post[subject]</span>[/code]
[color=Red][size=3]前面加[/size][/color]
[code]<!--{if $myitemlist[10][use] && $myitemlist[10][num]}--><a href=plugins.php?p=shop&action=use&id=11&pid=$post[pid]&page=$page onClick='return confirm("您确定给这个帖子献花?");'><!--{/if}--><img src=images/shop/11.gif border=0><!--{if $post[flower]}-->$post[flower]<!--{else}-->0<!--{/if}--><!--{if $myitemlist[10][use] && $myitemlist[10][num]}--></a><!--{/if}-->
                                <!--{if $myitemlist[11][use] && $myitemlist[11][num]}--><a href=plugins.php?p=shop&action=use&id=12&pid=$post[pid]&page=$page onClick='return confirm("您确定给这个帖子丢鸡蛋?");'><!--{/if}--><img src=images/shop/12.gif border=0><!--{if $post[egg]}-->$post[egg]<!--{else}-->0<!--{/if}--><!--{if $myitemlist[11][use] && $myitemlist[11][num]}--></a><!--{/if}-->[/code]

step 9.1(隐身必须)
打开post_newreply.htm和post_newthread.htm模板(修改都一样)
[color=red][size=3]找到[/size][/color][code]
{lang post_email_notify}
[/code]
[color=red][size=3]下面加[/size][/color]
[code]
<!--Shop by FY START-->
<!--{if $myitemlist[1][num] && $myitemlist[1][use]}-->
<BR><input type="checkbox" name="hide" value="1"> {lang shop_use}$myitemlist[1][name]{lang shop_hide}
<!--{/if}-->
<!--Shop by FY END-->
[/code]

(以下几个步骤只在post_newthread.htm里修改)
step 9.2(发帖提示必须)
[color=red][size=3]找到[/size][/color][code]
function validate(theform) {
[/code]
[color=red][size=3]下面加[/size][/color][code]        if (!theform.alertmsg.value && theform.msgshow.checked == true)
        {
                alert("{lang shop_alertmsgno}");
                return false;        
        }[/code]

step 9.3(发帖提示必须)
[color=red][size=3]找到[/size][/color][code]<textarea rows="4" cols="85" name="polloptions" tabindex="5">$polloptions</textarea></td>
        </tr>
<!--{/if}-->[/code]
[color=red][size=3]下面加[/size][/color][code]<!--{if $myitemlist[8][num] && $myitemlist[8][use]}-->
<SCRIPT LANGUAGE="JavaScript">

function showmsg(){
        if (document.input.msgshow.checked == true) {
                        msg.style.display = "";
        }else{
                        msg.style.display = "none";
        }
}

function choicemsg(thisform){
     
      var msg1="您所浏览的帖子严重缺水!请灌水20次,否则您的电脑将被重启100次。您是否要灌水?(点击取消电脑将会被重启)";
      var msg2="喂喂喂!大家不要灌水,灌水会犯了嗔戒的!";
          var msg3="悟空你也太调皮了,我跟你说过叫你不要乱灌水,你怎么又……你看我还没完你又把那个帖子给灌了!月光宝盒是宝物,你把它也灌了会污染环境,要是淹到小朋友怎么办?就算淹不到小朋友淹到那些花~花~草~草~也是不对的!";
          var msg4="--走\n--去哪?师傅??\n--天竺";
          var msg5="会灌水就一定是好人吗?";
          var msg6="--怎么灌水来着?这样?……这样?……\n--恩,再点两下鼠标";
          var msg7="俄灌水的时候,你也就是个三好学生";
          var msg8="这么快就灌上了?你属什么的?";
      var other="";

      document.input.alertmsg.focus(thisform);
      
      var va=thisform.options[thisform.selectedIndex].value;
         
      switch(va) {
                case "1": document.input.alertmsg.value=msg1; break;
                case "2": document.input.alertmsg.value=msg2; break;                                                  
                case "3": document.input.alertmsg.value=msg3; break;
                case "4": document.input.alertmsg.value=msg4; break;
                case "5": document.input.alertmsg.value=msg5; break;
                case "6": document.input.alertmsg.value=msg6; break;
                case "7": document.input.alertmsg.value=msg7; break;
                case "8": document.input.alertmsg.value=msg8; break;
                default:  document.input.alertmsg.value=other;
      }
      
}

</script>
<script>

</SCRIPT>
<tr id=msg style="DISPLAY: none">
        <td bgcolor="{ALTBG1}" valign="top">{lang shop_alertmsg}:<br>
                <span class="smalltxt"><font color=red>{lang shop_alertmsgmax}</font>
                </span></td>
        <td bgcolor="{ALTBG2}">        <select onchange="javascript:choicemsg(this);" size=4>
      <option value="" selected>预制模板</option>
      <OPTION value=1>搞笑1</OPTION>
      <OPTION value=2>大话版1</OPTION>
          <OPTION value=3>大话版2</OPTION>
          <OPTION value=4>大话版3</OPTION>
      <OPTION value=5>天下无贼1</OPTION>
          <OPTION value=6>天下无贼2</OPTION>
          <OPTION value=7>天下无贼3</OPTION>
          <OPTION value=8>天下无贼4</OPTION>
   </select>

                <textarea rows="4" cols="68" name="alertmsg" tabindex="5">$alertmsg</textarea>
        </td>
</tr>
<!--{/if}-->[/code]

step 9.4(发帖提示必须)
[color=red][size=3]找到[/size][/color][code]<!--{if $myitemlist[1][num] && $myitemlist[1][use]}-->
<input type="checkbox" name="hide" value="1"> {lang shop_use}$myitemlist[1][name]{lang shop_hide}
<!--{/if}-->[/code][color=red][size=3]后面加[/size][/color][code]<!--{if $myitemlist[8][num] && $myitemlist[8][use]}-->
<input id=msgcheck type="checkbox" name="msgshow" value="1" onclick=showmsg()> 使用$myitemlist[8][name]发帖
<!--{/if}-->[/code]

step 10.
打开forumdisplay.htm模板(隐身必须)
[color=red][size=3]找到[/size][/color][code]
<!--{if $thread['authorid']}-->
[/code]
[color=red][size=3]上面加[/size][/color][code]
<!--Shop by FY START-->
<!--{if $thread[hide]}-->
<a>【身份隐藏】</a>
<!--{else}-->
[/code]
再找[code]<br> <span class="smalltxt">$thread[dateline]</span></td>[/code]
[color=red][size=3]上面加[/size][/color]
[code]<!--{/if}--><!--Shop by FY END-->
[/code]

step 11.(隐身必须)
打开viewthread_printable.htm模板
[color=red][size=3]找到[/size][/color][code]$post[author][/code]
[color=red][size=3]改成[/size][/color][code]<!--{if $post[hide]}-->【身份隐藏】<!--{else}-->]$post[author]<!--{/if}--><!--Shop modified by FY-->[/code]

step 12.(必须,安装过梦网topicadmin不用加)
打开global.php
在结尾的[code]?>[/code]
上面加
[code]
//sendpm 函数 取自梦网topicadmin
function sendpm($toid, $subject, $message, $fromid = '', $from = '') {
        extract($GLOBALS, EXTR_SKIP);
        include language('pms');

        if(isset($language[$subject])) {
                eval("\$subject = addslashes(\"".$language[$subject]."\");");
        }
        if(isset($language[$message])) {
                eval("\$message = addslashes(\"".$language[$message]."\");");
        }

        if(!$fromid && !$from) {
                $fromid = $discuz_uid;
                $from = $discuz_user;
        }
        foreach(explode(',', $toid) as $uid) {
                $db->query("INSERT INTO $table_pms (msgfrom, msgfromid, msgtoid, folder, new, subject, dateline, message)
                        VALUES ('$from', '$fromid', '$uid', 'inbox', '1', '$subject', '$timestamp', '$message')");
        }

        $db->query("UPDATE $table_members SET newpm='1' WHERE uid IN ($toid)");
}
[/code]

~完~别忘了更新缓存~


卸载也是通过shop_install.php实现的




[quote]BUG修正:
使用降低主题时出现错误的SQL语句
解决办法:覆盖shop.php


进入道具时出现错误代码提示不存在的字段luck
解决办法:覆盖shop.php

奖励礼包时用户名为空
解决办法:
viewthread.htm
找到[code]&pid=pid$post[pid][/code]
改成[code]&pid=$post[pid][/code]

使用反隐道具时出现错误提示说没有帖子
解决办法:
viewthread.htm
找到[code]&action=use&id=4&pid=$post[pid][/code]
改成[code]&action=use&id=4&uid=$post[authorid][/code]

打开商店白版
可能是由于没有getinfo()函数造成
打开根目录plugin.php
看看有没有[code]function getinfo($plugname){
        global $plugins_script;
        if (!in_array($plugname,$plugins_script)) return '';
        @include DISCUZ_ROOT.'./forumdata/cache/cache_plugins.php';
        return $_DCACHE['plugins'][$plugname];
}[/code]
如果没有就在[code]?>[/code]之上加入这一段

最新版本已经修正这些BUG

版面页数小于3页时降低主题道具不正常(不能降低主题)
暂无解决办法
[/quote]


数据库手动代码:(仅在shop_install.php无效时使用)
安装
[quote][code]
DROP TABLE IF EXISTS cdb_useritems;
CREATE TABLE cdb_useritems (uid MEDIUMINT( 8 ) UNSIGNED NOT NULL ,item1 INT( 10 ) UNSIGNED DEFAULT '0' NOT NULL ,item2 INT( 10 ) UNSIGNED DEFAULT '0' NOT NULL ,item3 INT( 10 ) UNSIGNED DEFAULT '0' NOT NULL ,item4 INT( 10 ) UNSIGNED DEFAULT '0' NOT NULL ,item5 INT( 10 ) UNSIGNED DEFAULT '0' NOT NULL ,item6 INT( 10 ) UNSIGNED DEFAULT '0' NOT NULL ,item7 INT( 10 ) UNSIGNED DEFAULT '0' NOT NULL ,item8 INT( 10 ) UNSIGNED DEFAULT '0' NOT NULL ,item9 INT( 10 ) UNSIGNED DEFAULT '0' NOT NULL ,item10 INT( 10 ) UNSIGNED DEFAULT '0' NOT NULL ,item11 INT( 10 ) UNSIGNED DEFAULT '0' NOT NULL ,item12 INT( 10 ) UNSIGNED DEFAULT '0' NOT NULL ,item13 INT( 10 ) UNSIGNED DEFAULT '0' NOT NULL ,PRIMARY KEY ( uid ) );
[/code]

[code]
DROP TABLE IF EXISTS cdb_shop;
CREATE TABLE cdb_shop (id int(10) NOT NULL default '0',name char(20) NOT NULL default '',  description char(100) NOT NULL default '',  price int(10) NOT NULL default '0',  `use` tinyint(1) NOT NULL default '1')
[/code]

[code]DROP TABLE IF EXISTS cdb_threadsalert;
CREATE TABLE cdb_threadsalert (tid MEDIUMINT( 8 ) UNSIGNED NOT NULL ,alertmsg VARCHAR( 255 ) NOT NULL ,PRIMARY KEY ( tid ));[/code]

[code]
INSERT INTO cdb_shop VALUES (1, '黄金落日虾', '负金钱清零', 500, '1');
INSERT INTO cdb_shop VALUES (2, '隐身糯米团', '发贴时匿名', 50, '1');
INSERT INTO cdb_shop VALUES (3, '多彩炸香肠', '让帖子标题以多彩的方式显示', 50, '1');
INSERT INTO cdb_shop VALUES (4, '反隐乌龟堡', '浏览隐身帖时使用让发贴人显形', 80, '1');
INSERT INTO cdb_shop VALUES (5, '置顶立体脆', '使用后可以让帖子以Level 1级别置顶1天', 100, '1');
INSERT INTO cdb_shop VALUES (6, '鉴定柠檬派', '鉴定帖子,给帖子盖印章', 50, '1');
INSERT INTO cdb_shop VALUES (7, '沉底炸鸡腿', '让指定的帖子沉到3页之后', 100, '1');
INSERT INTO cdb_shop VALUES (8, '删帖猴子桃', '删除指定帖子', 1000, '0');
INSERT INTO cdb_shop VALUES (9, '提示冰激凌', '发帖时可以设置看贴时跳出的提示小窗口', '120', '1');
INSERT INTO cdb_shop VALUES (10, '克隆甜甜圈', '克隆别人的虚拟形象。在别人的虚拟形象上点击使用', '120', '1');
INSERT INTO cdb_shop VALUES (11, '鲜花', '看帖时送鲜花加积分', '120', '1');
INSERT INTO cdb_shop VALUES (12, '鸡蛋', '看帖时送鸡蛋减积分', '120', '1');
INSERT INTO cdb_shop VALUES (13, '更名三明治', '可以更改自己的用户名。更改成功以后请用新用户名登陆', '120', '1');
[/code]

[code]
ALTER TABLE cdb_posts ADD hide tinyint( 1 ) DEFAULT '0' NOT NULL;
ALTER TABLE cdb_threads ADD hide tinyint( 1 ) DEFAULT '0' NOT NULL;
ALTER TABLE cdb_threads ADD alerted tinyint( 1 ) DEFAULT '0' NOT NULL;
ALTER TABLE cdb_members ADD gift INT( 1 ) DEFAULT '0' NOT NULL;
ALTER TABLE `cdb_posts` ADD `flower` INT(10) DEFAULT '0' NOT NULL;
ALTER TABLE `cdb_posts` ADD `egg` INT(10) DEFAULT '0' NOT NULL;
[/code][/quote]

卸载
[quote]
[code]
DROP TABLE cdb_shop;
DROP TABLE cdb_threadsalert;
DROP TABLE cdb_useritems ;
ALTER TABLE cdb_posts DROP `hide`;
ALTER TABLE cdb_threads DROP `hide`;
ALTER TABLE cdb_threads DROP `alerted`;
ALTER TABLE cdb_members DROP `gift`;
ALTER TABLE cdb_posts DROP `flower`;
ALTER TABLE cdb_posts DROP `egg`;
[/code][/quote]

演示,LOOK!

[[i] 本帖最后由 文文の封印 于 2005-8-11 22:46 编辑 [/i]]
回复

使用道具 举报

winter0706 发表于 2005-8-11 22:52:17 | 显示全部楼层

學我用key......

終極板沒有??
常常更新更新到一直在等~
回复

使用道具 举报

 楼主| PerfectWorks 发表于 2005-8-11 23:02:01 | 显示全部楼层
终结了
这个俺用本地测试两遍
除了降低主题在总页数小于三时不能降低的BUG以外(就算修复也不动语言包)
所有我发现的BUG都已修复
回复

使用道具 举报

darkash 发表于 2005-8-12 04:40:14 | 显示全部楼层
没有成功,发布新帖、点击看帖子以及点击商店都显示为白版
我是不是什么东西漏了
回复

使用道具 举报

netscope 发表于 2005-8-12 07:13:19 | 显示全部楼层
其实我只想用鲜花和鸡蛋的功能。。。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-2-24 03:52 , Processed in 0.039018 second(s), 6 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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