补充1:评分同时评积分和评威望
前提:安装了仿D4评分;
本部分参考tks999老大的评分又评现金的办法(只替换一个字段即可),tks999老大要见谅啊!
首先:
原oytktk的插件过程中对misc.php的修改不要进行.
进行了改回去就行了.
就是把
- UPDATE $table_members SET prestige=prestige$score
复制代码
改回成
- UPDATE $table_members SET credit=credit$score
复制代码
1、升级数据
- ALTER TABLE cdb_karmalog ADD prestige_rate tinyint(3) NOT NULL default '0';
复制代码
2、打开misc.php
查找- $query = $db->query("SELECT m.adminid, u.groupid FROM $table_members m
- LEFT JOIN $table_usergroups u ON type='member' AND m.credit$score>=u.creditshigher AND m.credit$score<u.creditslower
- WHERE uid='$post[authorid]'");
复制代码
下面加入
- $query = $db->query("SELECT m.adminid, u.groupid FROM $table_members m
- LEFT JOIN $table_usergroups u ON type='member' AND m.prestige$prestige_rate>=u.creditshigher AND m.prestige$prestige_rate<u.creditslower
- WHERE uid='$post[authorid]'");
复制代码
3、查找
- $db->query("UPDATE $table_members SET credit=credit$score $groupidadd WHERE uid='$post[authorid]'", 'UNBUFFERED');
复制代码
下面加入
- $db->query("UPDATE $table_members SET prestige=prestige$prestige_rate $groupidadd WHERE uid='$post[authorid]'", 'UNBUFFERED');
复制代码
4、查找
- $score = intval($score);
- if($score >= 0) {
- $score = "+$score";
- }
复制代码
下面加入
- $prestige_rate = intval($prestige_rate);
- if($prestige_rate >= 0) {
- $prestige_rate = "+$prestige_rate";
- }
复制代码
5、查找
- $db->query("INSERT INTO $table_karmalog (uid, pid, dateline,
复制代码
后面加上
6、查找
- VALUES ('$discuz_uid', '$pid', '$timestamp',
复制代码
后面加上
7、查找
- $score = intval($score);
- $offset = ceil($maxkarmarate / 6);
- $minkarmarate = $offset - $maxkarmarate;
- if($score < $minkarmarate || $score > $maxkarmarate) {
- showmessage('thread_karma_range_invalid');
- }
复制代码
下面加入
- $prestige_rate = intval($prestige_rate);
- $offset = ceil($maxkarmarate / 6);
- $minkarmarate = $offset - $maxkarmarate;
- if($prestige_rate < $minkarmarate || $prestige_rate > $maxkarmarate) {
- showmessage('thread_karma_range_invalid');
- }
复制代码
8、查找
- $query = $db->query("SELECT SUM(score) FROM $table_karmalog WHERE uid='$discuz_uid' AND dateline>=".($timestamp-86400));
- if($maxrateperday && $maxrateperday <= $db->result($query, 0)) {
- showmessage('thread_karma_ctrl');
- }
复制代码
下面加入
- $query = $db->query("SELECT SUM(prestige_rate) FROM $table_karmalog WHERE uid='$discuz_uid' AND dateline>=".($timestamp-86400));
- if($maxrateperday && $maxrateperday <= $db->result($query, 0)) {
- showmessage('thread_karma_ctrl');
- }
复制代码
9、查找
- $ratetimes = round($maxkarmarate / 5);
- $db->query("UPDATE $table_posts SET rate=rate$score, ratetimes=ratetimes+$ratetimes WHERE pid='$pid'", 'UNBUFFERED');
复制代码
替换为
- $ratetimes = round($maxkarmarate / 5);
- $db->query("UPDATE $table_posts SET rate=rate$score+rate$prestige_rate, ratetimes=ratetimes+$ratetimes WHERE pid='$pid'", 'UNBUFFERED');
复制代码
10、打开karma.htm
查找
- <tr>
- <td bgcolor="{ALTBG1}" width="21%">{lang thread_rating}:</td>
- <td bgcolor="{ALTBG2}">{lang credit_title} <select name="score"><option value="0">0</option>$karmaoptions</select> {lang credit_unit}</td>
- </tr>
复制代码
下面加入
- <tr>
- <td bgcolor="{ALTBG1}" width="21%">{lang thread_rating}:</td>
- <td bgcolor="{ALTBG2}">威望 <select name="prestige_rate"><option value="0">0</option>$karmaoptions</select> {lang credit_unit}</td>
- </tr>
复制代码
打开messages.lang.php
11、查找
- 'thread_karma_succeed' => '感谢您的参与,$post[author] 的 $credittitle $score {$creditunit}。<br>现在将转入主题页面。',
复制代码
修改为
- 'thread_karma_succeed' => '感谢您的参与,$post[author] 的 $credittitle $score {$creditunit};$prestige_title $prestige_rate {$prestigeunit}。<br>现在将转入主题页面。',
复制代码
~完~
==================================================
补充2:评分另页显示中加入威望
前提是要安装了tks999老大的评分另页显示插件.
在viewkarma.htm中加入一列
表头上填"威望"
调用内容填"$karma['prestige_rate']"即可.
==================================================
补充3:评分发短信通知作者中加入威望的分数.
前提是安装了评分发短信插件,我安装的是梦网提供的.
在pms.lang.php中
找到:
在下面加:
- [b]评分威望:[/b] {$prestige_rate}
复制代码
即可!
==================================================
补充4:发贴时可填需要多少威望才能浏览的插件
因以前已有人发布这个,用的也是prestige作字段名,所以用以前发布的那个即可.
如果找不到,我转贴出来,作者刚才一时找不着了,在此表示道歉!
升级数据库
- ALTER TABLE `cdb_threads` ADD `prestigesrequire` smallint(6) unsigned NOT NULL default '0' AFTER creditsrequire
复制代码
第二次:
- ALTER TABLE `cdb_usergroups` ADD `allowsetviewprestigeperm` tinyint(1) NOT NULL default '0' AFTER allowsetviewperm
复制代码
1. include/common.php
查找:
后面加上:
2. include/newthread.php
查找:
- $viewperm = $allowsetviewperm ? $viewperm : 0;
复制代码
在後面添加:
- $viewprestigeperm = $allowsetviewprestigeperm ? $viewprestigeperm : 0;
复制代码
查找:
- $db->query("INSERT INTO $table_threads (fid, creditsrequire, iconid, author, authorid, subject, dateline, lastpost, lastposter, displayorder, digest, poll, attachment)
复制代码
在creditsrequire, 後面加上 prestigesrequire,
查找:
- VALUES ('$fid', '$viewperm', '$iconid', '$discuz_user', '$discuz_uid', '$subject', '$timestamp', '$timestamp', '$discuz_user', '$displayorder', '$digest', '$poll', '".attachtype($last_attach_type, 'id')."')");
复制代码
在'$viewperm', 後面加上 '$viewprestigeperm',
3. include/editpost.php
查找:
- $viewpermadd = ($allowsetviewperm && $isfirstpost) ? "creditsrequire='$viewperm'" : NULL;
复制代码
在後面添加:
- $viewprestigepermadd = ($allowsetviewprestigeperm && $isfirstpost) ? "prestigesrequire='$viewprestigeperm'" : NULL;
复制代码
查找:
- if($viewpermadd) {
- $db->query("UPDATE $table_threads SET $viewpermadd WHERE tid='$tid'", 'UNBUFFERED');
- }
复制代码
在下面加:
- if($viewprestigepermadd) {
- $db->query("UPDATE $table_threads SET $viewprestigepermadd WHERE tid='$tid'", 'UNBUFFERED');
- }
复制代码
4. viewthread.php
查找:
- if($thread['creditsrequire'] && $thread['creditsrequire'] > $credit && !$ismoderator && ($thread['authorid'] !=$discuz_uid)) {
- showmessage('thread_nopermission', NULL, 'HALTED');
- }
复制代码
在後面添加:
- if($thread['prestigesrequire'] && $thread['prestigesrequire'] > $prestige && !$ismoderator && ($thread['authorid'] !=$discuz_uid)) {
- showmessage('thread_noprestigepermission', NULL, 'HALTED');
- }
复制代码
5. templates/default/post_newthread.htm模版
查找:
- <!--{if $allowsetviewperm}-->
- <tr>
- <td bgcolor="{ALTBG1}">{lang creditsrequire_view} {lang credit_title}:</td>
- <td bgcolor="{ALTBG2}" class="smalltxt"><input type="text" name="viewperm" size="6" value="$viewperm"> {lang credit_unit} (0 {lang is_unlimited})</td>
- </tr>
- <!--{/if}-->
复制代码
在後面添加:
- <!--{if $allowsetviewprestigeperm}-->
- <tr>
- <td bgcolor="{ALTBG1}">{lang creditsrequire_view} {lang prestige_title}:</td>
- <td bgcolor="{ALTBG2}" class="smalltxt"><input type="text" name="viewprestigeperm" size="6" value="$viewprestigeperm"> {lang prestige_unit} (0 {lang is_unlimited})</td>
- </tr>
- <!--{/if}-->
复制代码
6. templates/default/post_editpost.htm模版
找到:
- <!--{if $allowsetviewperm && $isfirstpost}-->
- <tr>
- <td bgcolor="{ALTBG1}">{lang creditsrequire_view} {lang credit_title}:</td>
- <td bgcolor="{ALTBG2}"><input type="text" name="viewperm" size="6" value="$thread[creditsrequire]"> {lang credit_unit} (0 {lang is_unlimited})</td>
- </tr>
- <!--{/if}-->
复制代码
在后面添加:
- <!--{if $allowsetviewprestigeperm && $isfirstpost}-->
- <tr>
- <td bgcolor="{ALTBG1}">{lang creditsrequire_view} {lang prestige_title}:</td>
- <td bgcolor="{ALTBG2}"><input type="text" name="viewprestigeperm" size="6" value="$thread[prestigesrequire]"> {lang prestige_unit} (0 {lang is_unlimited})</td>
- </tr>
- <!--{/if}-->
复制代码
7. templates/default/forumdisplay.htm
找到:
- <!--{if $thread['creditsrequire']}-->
- - [{lang credit_title} <span class="bold">$thread[creditsrequire]</span>{lang credit_unit}]
- <!--{/if}-->
复制代码
在後面添加:
- <!--{if $thread['prestigesrequire']}-->
- - [{lang prestige_title} <span class="bold">$thread[prestigesrequire]</span>{lang prestige_unit}]
- <!--{/if}-->
复制代码
8. templates/default/viewthread.htm
找到:
- <!--{if $thread['creditsrequire']}--> {lang creditsrequire_view} {lang credit_title} <span class="bold">$thread[creditsrequire]</span> {lang credit_unit}<!--{/if}-->
复制代码
在后面添加:
- <!--{if $thread['prestigesrequire']}--> {lang creditsrequire_view} {lang prestige_title} <span class="bold">$thread[prestigesrequire]</span> {lang prestige_unit}<!--{/if}-->
复制代码
9. admin/groups.php
搜索:
- showsetting('usergroups_edit_set_view_perm', 'allowsetviewpermnew', $group['allowsetviewperm'], 'radio');
复制代码
在下面加:
- showsetting('usergroups_edit_set_viewprestige_perm', 'allowsetviewprestigepermnew', $group['allowsetviewprestigeperm'], 'radio');
复制代码
搜索:
- allowsetviewperm='$allowsetviewpermnew',
复制代码
在后加添加:
- allowsetviewprestigeperm='$allowsetviewprestigepermnew',
复制代码
10. admincp.lang.php
搜索:
- 'usergroups_edit_set_view_perm' => '允许设置帖子权限:',
- 'usergroups_edit_set_view_perm_comment' => '设置是否允许设置帖子需要指定积分以上才可游览',
复制代码
下面加:
- 'usergroups_edit_set_viewprestige_perm' => '允许设置帖子威望权限:',
- 'usergroups_edit_set_viewprestige_perm_comment' => '设置是否允许设置帖子需要指定威望以上才可游览',
复制代码
11. messages.lang.php
搜索:
在下面加:
搜索:
- 'thread_nopermission' => '对不起,本帖要求 $credittitle 高於 $thread[creditsrequire] $creditunit 才可游览,请返回。',
复制代码
在下面加:
- 'thread_noprestigepermission' => '对不起,本帖要求 $prestige_title 高於 $thread[prestigesrequire] $prestigeunit 才可游览,请返回。',
复制代码
~完成~
[ 本帖最后由 beecheung 于 2005-9-15 20:20 编辑 ] |