代碼: 選擇全部
##############################################################
## 外掛名稱: 血型外掛
## 外掛作者: some < some@starbeck.net >
## ( design < http://phpbb-tw.net > )
## 示範網站: http://holy.be
## 外掛描述: 這個外掛可以在您的個人資料表內多一個血型欄位
## 可以在檢閱個人資料或文章發表區顯示作者的血型
## 顯示方式為 "血型: (mini icon)"配合星座外掛可以從文章內容
## 去驗證星座血型對人的影響,小女生都喜歡這套 ^^y
##
## 外掛版本: 1.0
## 適用版本: 2.0.6
## 下載地點: http://download.some.idv.tw/blood1.0.zip
##
## 難易度: 簡單\r
## 安裝時間: 10 ~ 15 分鐘
## 需要編輯的檔案: 11
##
## viewtopic.php
## admin/admin_users.php
## includes/usercp_avatar.php
## includes/usercp_register.php
## includes/usercp_viewprofile.php
## language/lang_english/lang_main.php
## templates/subSilver/profile_add_body.tpl
## templates/subSilver/profile_view_body.tpl
## templates/subSliver/viewtopic_body.tpl
## templates/subSilver/admin/user_edit_body.tpl
## templates/subSliver/subSilver.cfg
##
## 附加的圖示: 4 ( 流血的圖 ^^" )
##
## templates/subSliver/images/icon_blood_a.gif
## templates/subSliver/images/icon_blood_b.gif
## templates/subSliver/images/icon_blood_o.gif
## templates/subSliver/images/icon_blood_ab.gif
##
#################################################################
## 由於安全上的考量,請檢查:
## http://www.phpbb.com/mods/downloads/ 是否有此外掛的最新版本
## 從其他地方下載此檔可能會造成你在你的 phpBB 討論版上寫入有誤的程式碼
## 基於這個理由,phpBB 將不會為沒有收藏在我們的外掛資料庫的外掛提供支援
## 我們的外掛資料庫在 http://www.phpbb.com/mods/downloads/
#################################################################
## 版權聲明: 這一個外掛不可以刊登在或加入到非官方的 phpBB 網站
#################################################################
## 外掛記錄:
##
## 2003-12-19 - Version 1.0
## - 基本的使用,在個人資料處出現血型圖示.
##
##
##
##############################################################
## 在增加此外掛前, 請務必備份所有需要修改的檔案
##############################################################
#
#-----[ SQL ]-------------------------------------------------
#
# 在您的 phpMyAdmin中直接執行此段.
ALTER TABLE phpbb2_users ADD user_blood TINYINT not null DEFAULT "0"
# ^^^^^^
# phpbb2_users 是預設的使用者資料表,如果您的資料表有自定前輟非預設.請自行修改成正確的.
#
#-----[ 打開 ]------------------------------------------------
#
admin/admin_users.php
#
#-----[ 尋找 ]------------------------------------------------
#
$interests = ( !empty($HTTP_POST_VARS['interests']) )
#
#-----[ 之後加上 ]------------------------------------------
#
$blood = ( isset($HTTP_POST_VARS['blood']) ) ? intval ($HTTP_POST_VARS['blood']) : 0; // Blood MOD 1.0
#
#-----[ 尋找 ]------------------------------------------------
#
$sql = "UPDATE " . USERS_TABLE . "
SET " . $username_sql . $passwd_sql . "user_email
#
#-----[ 在這段中尋找 ]----------------------------------------
#
$user_rank
#
#-----[ IN-LINE 之後加上 ]----------------------------------
#
, user_blood = '$blood'
#
#-----[ 尋找 ]------------------------------------------------
#
$interests = htmlspecialchars($this_userdata['user_interests']);
#
#-----[ 之後加上 ]------------------------------------------
#
$blood = $this_userdata['user_blood']; // Blood MOD 1.0
#
#-----[ 尋找 ]------------------------------------------------
#
$s_hidden_fields .= '<input type="hidden" name="notifypm" value="' . $notifypm . '" />';
#
#-----[ 之後加上 ]------------------------------------------
#
$s_hidden_fields .= '<input type="hidden" name="blood" value="' . $blood . '" />'; // Blood MOD 1.0
#
#-----[ 尋找 ]------------------------------------------------
#
//
// Let's do an overall check
#
#-----[ 之前,加入 ]-----------------------------------------
#
// Start add - Blood MOD
switch ($blood)
{
case 1: $blood_a_checked="checked=\"checked\"";break;
case 2: $blood_b_checked="checked=\"checked\"";break;
case 3: $blood_o_checked="checked=\"checked\"";break;
case 4: $blood_ab_checked="checked=\"checked\"";break;
default:$blood_no_specify_checked="checked=\"checked\"";
}
// End add - Blood MOD
#
#-----[ 尋找 ]------------------------------------------------
#
'INTERESTS' =>
#
#-----[ 之後加上 ]------------------------------------------
#
// Start add - Blood MOD
'BLOOD' => $blood,
'BLOOD_NO_SPECIFY_CHECKED' => $blood_no_specify_checked,
'BLOOD_A_CHECKED' => $blood_a_checked,
'BLOOD_B_CHECKED' => $blood_b_checked,
'BLOOD_O_CHECKED' => $blood_o_checked,
'BLOOD_AB_CHECKED' => $blood_ab_checked,
// End add - Blood MOD
#
#-----[ 尋找 ]------------------------------------------------
#
'L_INTERESTS' =>
#
#-----[ 之後加上 ]------------------------------------------
#
// Start add - Blood MOD
'L_BLOOD' =>$lang['Blood'],
'L_BLOOD_A' =>$lang['Blood_A'],
'L_BLOOD_B' =>$lang['Blood_B'],
'L_BLOOD_O' =>$lang['Blood_O'],
'L_BLOOD_AB' =>$lang['Blood_AB'],
'L_BLOOD_NOT_SPECIFY' =>$lang['No_blood_specify'],
// End add - Blood MOD
#
#-----[ 打開 ]------------------------------------------------
#
includes/usercp_avatar.php
#
#-----[ 尋找 ]------------------------------------------------
#
function display_avatar_gallery(
#
#-----[ 在這段中尋找 ]----------------------------------------
#
)
#
#-----[ 在這之前加入 ]---------------------------------
#
, &$blood
#
#-----[ 尋找 ]------------------------------------------------
#
$params = array(
#
#-----[ 在這段中尋找 ]----------------------------------------
#
);
#
#-----[ 在這之前加入 ]---------------------------------
#
, 'blood'
#
#-----[ 打開 ]------------------------------------------------
#
includes/usercp_register.php
#
#-----[ 尋找 ]------------------------------------------------
#
$signature = str_replace('<br />', "
", $signature);
#
#-----[ 之後加上 ]------------------------------------------
#
$blood = ( isset($HTTP_POST_VARS['blood']) ) ? intval ($HTTP_POST_VARS['blood']) : 0; // Blood MOD 1.0
#
#-----[ 尋找 ]------------------------------------------------
#
$sql = "UPDATE " . USERS_TABLE . "
SET " . $username_sql . $passwd_sql
#
#-----[ 在這段中尋找 ]----------------------------------------
#
$avatar_sql . "
#
#-----[ IN-LINE 之後加上 ]----------------------------------
#
, user_blood = '$blood'
#
#-----[ 尋找 ]------------------------------------------------
#
$sql = "INSERT INTO " . USERS_TABLE . "
VALUES ($user_id, '" . str_replace("\'", "''", $username)
#
#-----[ 在這段中尋找 ]----------------------------------------
#
, user_style
#
#-----[ IN-LINE 之後加上 ]----------------------------------
#
, user_blood
#
#-----[ 在這段中尋找 ]----------------------------------------
#
, $user_style
#
#-----[ IN-LINE 之後加上 ]----------------------------------
#
, '$blood'
#
#-----[ 尋找 ]------------------------------------------------
#
$interests = $userdata['user_interests'];
#
#-----[ 之後加上 ]------------------------------------------
#
$blood=$userdata['user_blood']; // Blood MOD 1.0
#
#-----[ 尋找 ]------------------------------------------------
#
display_avatar_gallery(
#
#-----[ 在這段中尋找 ]----------------------------------------
#
);
#
#-----[ 在這之前加入 ]---------------------------------
#
, $blood
#
#-----[ 尋找 ]------------------------------------------------
#
$smilies_status = (
#
#-----[ 之後加上 ]------------------------------------------
#
// Start add - Blood MOD
switch ($blood)
{
case 1: $blood_a_checked="checked=\"checked\"";break;
case 2: $blood_b_checked="checked=\"checked\"";break;
case 3: $blood_o_checked="checked=\"checked\"";break;
case 4: $blood_ab_checked="checked=\"checked\"";break;
default:$blood_no_specify_checked="checked=\"checked\"";
}
// End add - Blood MOD
#
#-----[ 尋找 ]------------------------------------------------
#
'VIEW_EMAIL_YES' =>
#
#-----[ 之前,加入 ]------------------------------------------
#
// Start add - Blood MOD
'LOCK_BLOOD' =>($mode!='register') ? 'DISABLED':'',
'BLOOD' => $blood,
'BLOOD_NO_SPECIFY_CHECKED' => $blood_no_specify_checked,
'BLOOD_A_CHECKED' => $blood_a_checked,
'BLOOD_B_CHECKED' => $blood_b_checked,
'BLOOD_O_CHECKED' => $blood_o_checked,
'BLOOD_AB_CHECKED' => $blood_ab_checked,
// End add - Blood MOD
#
#-----[ 尋找 ]------------------------------------------------
#
'L_INTERESTS' =>
#
#-----[ 之後加上 ]------------------------------------------
#
// Start add - Blood MOD
'L_BLOOD' =>$lang['Blood'],
'L_BLOOD_A' =>$lang['Blood_A'],
'L_BLOOD_B' =>$lang['Blood_B'],
'L_BLOOD_O' =>$lang['Blood_O'],
'L_BLOOD_AB' =>$lang['Blood_AB'],
'L_BLOOD_NOT_SPECIFY' =>$lang['No_blood_specify'],
// End add - Blood MOD
#
#-----[ 打開 ]------------------------------------------------
#
includes/usercp_viewprofile.php
#
#-----[ 尋找 ]------------------------------------------------
#
//
// Generate page
#
#-----[ 之前,加入 ]-----------------------------------------
#
// Start add - Blood MOD
if ( !empty($profiledata['user_blood']))
{
switch ($profiledata['user_blood'])
{
case 1: $blood=$lang['Blood_A'];break;
case 2: $blood=$lang['Blood_B'];break;
case 3: $blood=$lang['Blood_O'];break;
case 4: $blood=$lang['Blood_AB'];break;
default:$blood=$lang['No_blood_specify'];
}
} else $blood=$lang['No_blood_specify'];
// End add - Blood MOD
#
#-----[ 尋找 ]------------------------------------------------
#
'INTERESTS' =>
#
#-----[ 之後加上 ]------------------------------------------
#
'BLOOD' => $blood, // Blood MOD 1.0
#
#-----[ 尋找 ]------------------------------------------------
#
'L_INTERESTS' =>
#
#-----[ 之後加上 ]------------------------------------------
#
'L_BLOOD' => $lang['Blood'], // Blood MOD 1.0
#
#-----[ 打開 ]------------------------------------------------
#
language/lang_english/lang_main.php
#
#-----[ 尋找 ]------------------------------------------------
#
?>
#
#-----[ 之前,加入 ]-----------------------------------------
#
// Start add - Blood MOD
$lang['Blood'] = 'Blood';
$lang['Blood_A'] = 'A';
$lang['Blood_B']='B';
$lang['Blood_O']='O';
$lang['Blood_AB']='AB';
$lang['No_blood_specify'] = 'Secret';
// End add - Blood MOD
#
#-----[ 打開 ]------------------------------------------------
#
templates/subSilver/profile_add_body.tpl
#
#-----[ 尋找 ]------------------------------------------------
#
{INTERESTS}
</td>
</tr>
#
#-----[ 之後加上 ]------------------------------------------
#
<!-- Start add - Blood MOD -->
<tr>
<td class="row1"><span class="gen">{L_BLOOD}:</span></td>
<td class="row2">
<input type="radio" {LOCK_BLOOD} name="blood" value="0" {BLOOD_NO_SPECIFY_CHECKED}/>
<span class="gen">{L_BLOOD_NOT_SPECIFY}</span>
<input type="radio" name="blood" value="1" {BLOOD_A_CHECKED}/>
<span class="gen">{L_BLOOD_A}</span>
<input type="radio" name="blood" value="2" {BLOOD_B_CHECKED}/>
<span class="gen">{L_BLOOD_B}</span>
<input type="radio" name="blood" value="3" {BLOOD_O_CHECKED}/>
<span class="gen">{L_BLOOD_O}</span>
<input type="radio" name="blood" value="4" {BLOOD_AB_CHECKED}/>
<span class="gen">{L_BLOOD_AB}</span>
</td>
</tr>
<!-- End add - Blood MOD -->
#
#-----[ 打開 ]------------------------------------------------
#
templates/subSilver/profile_view_body.tpl
#
#-----[ 尋找 ]------------------------------------------------
#
{INTERESTS}</span></b></td>
</tr>
#
#-----[ 之後加上 ]------------------------------------------
#
<!-- Start add - Blood MOD -->
<tr>
<td valign="top" align="right" nowrap="nowrap"><span class="gen">{L_BLOOD}:</span></td>
<td> <b><span class="gen">{BLOOD}</span></b></td>
</tr>
<!-- End add - Blood MOD -->
#
#-----[ 打開 ]------------------------------------------------
#
templates/subSilver/admin/user_edit_body.tpl
#
#-----[ 尋找 ]------------------------------------------------
#
value="{INTERESTS}" />
</td>
</tr>
#
#-----[ 之後加上 ]------------------------------------------
#
<!-- Start add - Blood MOD -->
<tr>
<td class="row1"><span class="gen">{L_Blood}:</span></td>
<td class="row2">
<input type="radio" name="blood" value="0" {BLOOD_NO_SPECIFY_CHECKED}/>
<span class="gen">{L_BLOOD_NOT_SPECIFY}</span>
<input type="radio" name="blood" value="1" {BLOOD_A_CHECKED}/>
<span class="gen">{L_BLOOD_A}</span>
<input type="radio" name="blood" value="2" {BLOOD_B_CHECKED}/>
<span class="gen">{L_BLOOD_B}</span></td>
<input type="radio" name="blood" value="3" {BLOOD_O_CHECKED}/>
<span class="gen">{L_BLOOD_O}</span></td>
<input type="radio" name="blood" value="4" {BLOOD_AB_CHECKED}/>
<span class="gen">{L_BLOOD_AB}</span></td>
</tr>
<!-- End add - Blood MOD -->
##############################################################
## Start - Optional blood image display in posts
##############################################################
#
#-----[ 複製檔案 ]------------------------------------------------
#
copy templates/subSilver/images/icon_blood_a.gif to templates/subSilver/images/
copy templates/subSilver/images/icon_blood_b.gif to templates/subSilver/images/
copy templates/subSilver/images/icon_blood_o.gif to templates/subSilver/images/
copy templates/subSilver/images/icon_blood_ab.gif to templates/subSilver/images/
#
#-----[ 打開 ]------------------------------------------------
#
viewtopic.php
#
#-----[ 尋找 ]------------------------------------------------
#
$sql = "SELECT u.username
#
#-----[ 在這段中尋找 ]----------------------------------------
#
, p.*
#
#-----[ 在這之前加入 ]---------------------------------
#
, u.user_blood
#
#-----[ 尋找 ]------------------------------------------------
#
$rank_image = '';
#
#-----[ 之後加上 ]------------------------------------------
#
$blood_image = ''; // Blood MOD
#
#-----[ 尋找 ]------------------------------------------------
#
$pm_img = '<a href=
#
#-----[ 之後加上 ]------------------------------------------
#
// Start add - Blood MOD
switch ($postrow[$i]['user_blood'])
{
case 1 : $blood_image = $lang['Blood'].": <img src=\"" . $images['icon_blood_a'] . "\" alt=\"" . $lang['Blood']. ":".$lang['Blood_A']."\" title=\"" . $lang['Blood'] . ":".$lang['Blood_A']. "\" border=\"0\" />"; break;
case 2 : $blood_image = $lang['Blood'].": <img src=\"" . $images['icon_blood_b'] . "\" alt=\"" . $lang['Blood']. ":".$lang['Blood_B']. "\" title=\"" . $lang['Blood'] . ":".$lang['Blood_B']. "\" border=\"0\" />"; break;
case 3 : $blood_image = $lang['Blood'].": <img src=\"" . $images['icon_blood_o'] . "\" alt=\"" . $lang['Blood']. ":".$lang['Blood_O']. "\" title=\"" . $lang['Blood'] . ":".$lang['Blood_O']. "\" border=\"0\" />"; break;
case 4 : $blood_image = $lang['Blood'].": <img src=\"" . $images['icon_blood_ab'] . "\" alt=\"" . $lang['Blood']. ":".$lang['Blood_AB']. "\" title=\"" . $lang['Blood'] . ":".$lang['Blood_AB']. "\" border=\"0\" />"; break;
default : $blood_image="";
}
// End add - Blood MOD
#
#-----[ 尋找 ]------------------------------------------------
#
'POSTER_RANK' =>
#
#-----[ 之後加上 ]------------------------------------------
#
'POSTER_BLOOD' => $blood_image, // Blood MOD 1.0
#
#-----[ 尋找 ]------------------------------------------------
#
'DELETE' =>
#
#-----[ 之後加上 ]------------------------------------------
#
'L_BLOOD' => $lang['Blood'], // Blood MOD 1.0
#
#-----[ 打開 ]------------------------------------------------
#
templates/subSilver/subSilver.cfg
#
#-----[ 尋找 ]------------------------------------------------
#
?>
#
#-----[ 之前,加入 ]-----------------------------------------
#
$images['icon_blood_a'] = "$current_template_images/icon_blood_a.gif"; // Blood Mod 1.0 A type
$images['icon_blood_b'] = "$current_template_images/icon_blood_b.gif"; // Blood Mod 1.0 B type
$images['icon_blood_o'] = "$current_template_images/icon_blood_o.gif"; // Blood Mod 1.0 O type
$images['icon_blood_ab'] = "$current_template_images/icon_blood_ab.gif"; // Blood Mod 1.0 AB type
#
#-----[ 打開 ]------------------------------------------------
#
templates/subSilver/viewtopic_body.tpl
#
#-----[ 尋找 ]------------------------------------------------
#
{postrow.POSTER_AVATAR}<br /><br />
#
#-----[ 在這段中尋找 ]----------------------------------------
#
{postrow.POSTER_AVATAR}<br /><br />
#
#-----[ 之後加上 ]----------------------------------
#
{postrow.POSTER_BLOOD}<br />
#
#
#-----[ 全部存檔後上傳 ]--------------------------------
#
# 結束