[問題]關於安裝i-Cash Mod1.0.3(已解決)

phpBB 2 MOD Support
無論是官方或非官方認證之外掛,安裝與使用問題討論。
(發表文章請按照公告格式發表,違者砍文)

版主: 版主管理群

主題已鎖定
jeff0510
星球普通子民
星球普通子民
文章: 8
註冊時間: 2005-01-25 21:03

[問題]關於安裝i-Cash Mod1.0.3(已解決)

文章 jeff0510 »

小弟第一次起論壇和裝mod,不太懂裝mod我看到

代碼: 選擇全部

#-----[ SQL ]--
,我知道要copy到資料庫,但是到

代碼: 選擇全部

#-----[ OPEN ]-------------
這個字打後便不知道如何做,我唔明咩意思,請指教!!!!!! :cry: :cry: :cry:

代碼: 選擇全部

##############################################################
## 外掛名稱: i-Cash Mod
## 外掛作者: Ray < blue_sky_ray@hotmail.com > (Ray Fung) http://www.ioptional.com/
## 外掛簡介: 	一個簡單的貨幣系統,對於論壇運算速度沒有太大的負面影
##		響,而暫時功能有版主修改貨幣,發文以及回文獎勵,自定
##		user_money 和 user_points 名稱,捐贈的功能等等。
## 外掛版本: 1.0.3
##
## 安裝難度: 初手
## 安裝時間: 35 分鐘
## 修改檔案: 8
##		viewtopic.php
##		includes/constants.php
##		includes/functions_post.php
##		includes/usercp_viewprofile.php
##		admin/admin_board.php
##		language/lang_chinese_traditional_taiwan/lang_admin.php
##		language/lang_chinese_traditional_taiwan/lang_main.php
##		templates/subSilver/viewtopic_body.tpl
##		templates/subSilver/admin/board_config_body.tpl
##
## 加入檔案: 4
##		icash.php
##		admin/admin_icashmod.php
##		templates/subSilver/icash_mod_body.tpl
##		templates/subSilver/admin/icashlogs_list_body.tpl
##############################################################
## 作者之言:
##	- 兩種貨幣功能\r
## 	- 捐贈功能\r
##	- 歷史記錄
##	- 自定貨幣名稱\r
##	- 自定貨幣新減
##############################################################
## Version History
## v1.0.3
##	- 修正 user_points 更新問題
##	- 刪除個人資料編輯貨幣
##	- 加入獨立編輯貨幣頁面\r
##	- 加入歷史記錄
##	- 語系更變
##	- 檢視文章中加入修改會員貨幣\r
##	- 個人資料加入修改會員貨幣\r
##	- 刪除文章/主題時減少會員貨幣\r
## v1.0.2
##	- 美化個人資料
##	- 修正捐贈名稱\r
## v1.0.1
##	- 加強安全性\r
##	- 加入捐贈功能\r
## v1.0.0
##	- 版本釋出\r
##############################################################
## 安裝此外掛之前請先備份好你的論壇。
##############################################################
#
#-----[ SQL ]--------------------------------------------
#
ALTER TABLE phpbb_users ADD user_money mediumint(8) DEFAULT '0' NOT NULL;
ALTER TABLE phpbb_users ADD user_points mediumint(8) DEFAULT '0' NOT NULL;
INSERT INTO phpbb_config (config_name, config_value) VALUES ('icash_money', '金錢');
INSERT INTO phpbb_config (config_name, config_value) VALUES ('icash_points', '積分');
INSERT INTO phpbb_config (config_name, config_value) VALUES ('icash_money_reply', '5');
INSERT INTO phpbb_config (config_name, config_value) VALUES ('icash_points_reply', '1');
INSERT INTO phpbb_config (config_name, config_value) VALUES ('icash_money_newtopic', '10');
INSERT INTO phpbb_config (config_name, config_value) VALUES ('icash_points_newtopic', '2');

CREATE TABLE phpbb_icash_log (
	log_id mediumint(8) NOT NULL auto_increment,
	log_affort mediumint(8) NOT NULL default '0',
	log_value mediumint(8) NOT NULL default '0',
	log_reason varchar(255) NOT NULL default '',
	log_user mediumint(8) NOT NULL default '0',
	log_time varchar(255) NOT NULL default '',
	log_to mediumint(8) NOT NULL default '0',
	log_cash mediumint(8) NOT NULL default '0',
	PRIMARY KEY  (log_id)
);

#
#-----[ OPEN ]--------------------------------------------
#
viewtopic.php

#
#-----[ FIND ]--------------------------------------------
#
//
// Go ahead and pull all data for this topic
//
$sql = "SELECT u.username

#
#-----[ IN-LINE FIND ]--------------------------------------------
#
, u.user_allowsmile

#
#-----[ AFTER, ADD ]--------------------------------------------
#
, u.user_money, u.user_points

#
#-----[ FIND ]--------------------------------------------
#
	$poster_joined = ( $postrow[$i]['user_id'] != ANONYMOUS ) ? $lang['Joined'] . ': ' . create_date($lang['DATE_FORMAT'], $postrow[$i]['user_regdate'], $board_config['board_timezone']) : '';

#
#-----[ AFTER, ADD ]--------------------------------------------
#
	$poster_money = ( $postrow[$i]['user_id'] != ANONYMOUS ) ? $board_config['icash_money'] . ': ' . $postrow[$i]['user_money'] : '';

	$poster_points = ( $postrow[$i]['user_id'] != ANONYMOUS ) ? $board_config['icash_points'] . ': ' . $postrow[$i]['user_points'] : '';

#
#-----[ FIND ]--------------------------------------------
#
	else
	{
		$l_edited_by = '';
	}

#
#-----[ AFTER, ADD ]--------------------------------------------
#
$icash_mod = ( $is_auth['auth_mod'] ) ? '<a href="'.append_sid("icash.$phpEx?u=".$poster_id).'">'.sprintf($lang['icash_modd'], $poster).'</a>' : '<a href="'.append_sid("icash.$phpEx?u=".$poster_id).'">'.sprintf($lang['icash_mod_donate'], $poster).'</a>';

#
#-----[ FIND ]--------------------------------------------
#
		'POSTER_FROM' => $poster_from,
		'POSTER_AVATAR' => $poster_avatar,

#
#-----[ AFTER, ADD ]--------------------------------------------
#
		'POSTER_MONEY' => $poster_money,
		'POSTER_POINTS' => $poster_points,
		'ICASH' => $icash_mod,

#
#-----[ OPEN ]---------------------------------
#
includes/constants

#
#-----[ FIND ]---------------------------------
#
?>

#
#-----[ BEFORE, ADD ]---------------------------------
#
define('ICASH_LOG_TABLE', $table_prefix.'icash_log');

#
#-----[ OPEN ]--------------------------------------------
#
includes/functions_post.php

#
#-----[ FIND ]--------------------------------------------
#
	global $db;

	$sign = ($mode == 'delete') ? '- 1' : '+ 1';

#
#-----[ REPLACE WITH ]--------------------------------------------
#
	global $db, $board_config;

	$sign = ($mode == 'delete') ? '- 1' : '+ 1';

#
#-----[ FIND ]--------------------------------------------
#
	$sign = ($mode == 'delete') ? '- 1' : '+ 1';

#
#-----[ AFTER, ADD ]--------------------------------------------
#
	$money ='0';
	$points = '0';
	if($mode == 'newtopic') 
	{ 
		$money = '+' . $board_config['icash_money_newtopic'];
		$points = '+' . $board_config['icash_points_newtopic'];
	}
	else if($mode == 'reply') 
	{ 
		$money = '+' . $board_config['icash_money_reply'];
		$points = '+' . $board_config['icash_points_reply'];
	}


#
#-----[ FIND ]--------------------------------------------
#
			if ($post_data['first_post'])
			{
				$forum_update_sql .= ', forum_topics = forum_topics - 1';

#
#-----[ AFTER, ADD ]--------------------------------------------
#
				$money = '- ' . $board_config['icash_money_newtopic'];
				$points = '- ' . $board_config['icash_points_newtopic'];

#
#-----[ FIND ]--------------------------------------------
#
				$sql = "SELECT MAX(post_id) AS last_post_id
					FROM " . POSTS_TABLE . " 
					WHERE topic_id = $topic_id";
				if (!($result = $db->sql_query($sql)))
				{
					message_die(GENERAL_ERROR, 'Error in deleting post', '', __LINE__, __FILE__, $sql);
				}

#
#-----[ BEFORE, ADD ]--------------------------------------------
#
				$money = '- ' . $board_config['icash_money_reply'];
				$points = '- ' . $board_config['icash_points_reply'];

#
#-----[ FIND ]--------------------------------------------
#
	if ($mode != 'poll_delete')
	{
		$sql = "UPDATE " . USERS_TABLE . " 
			SET user_posts = user_posts $sign
			WHERE user_id = $user_id";
		if (!$db->sql_query($sql, END_TRANSACTION))
		{
			message_die(GENERAL_ERROR, 'Error in posting', '', __LINE__, __FILE__, $sql);
		}

#
#-----[ REPLACE WITH ]--------------------------------------------
#
	if ($mode != 'poll_delete')
	{
		$sql = "UPDATE " . USERS_TABLE . " 
			SET user_posts = user_posts $sign , user_money = user_money $money , user_points = user_points $points 
			WHERE user_id = $user_id";
		if (!$db->sql_query($sql, END_TRANSACTION))
		{
\n			message_die(GENERAL_ERROR, 'Error in posting', '', __LINE__, __FILE__, $sql);
		}

#
#-----[ OPEN ]--------------------------------------------
#
admin/admin_board.php

#
#-----[ FIND ]--------------------------------------------
#
	"SMTP_USERNAME" => $new['smtp_username'],
	"SMTP_PASSWORD" => $new['smtp_password'],

#
#-----[ AFTER, ADD ]--------------------------------------------
#
	"L_ICASH_MOD" => $lang['icash'],
	"L_ICASH_MONEY" => $lang['icash_money'],
	"L_ICASH_POINTS" => $lang['icash_points'],
	"L_ICASH_MONEY_REPLY" => $lang['icash_money_reply'],
	"L_ICASH_POINTS_REPLY" => $lang['icash_points_reply'],
	"L_ICASH_MONEY_NEWTOPIC" => $lang['icash_money_newtopic'],
	"L_ICASH_POINTS_NEWTOPIC" => $lang['icash_points_newtopic'],
	"ICASH_MONEY" => $new['icash_money'],
	"ICASH_POINTS" => $new['icash_points'],
	"ICASH_MONEY_REPLY" => $new['icash_money_reply'],
	"ICASH_POINTS_REPLY" => $new['icash_points_reply'],
	"ICASH_MONEY_NEWTOPIC" => $new['icash_money_newtopic'],
	"ICASH_POINTS_NEWTOPIC" => $new['icash_points_newtopic'],

#
#-----[ OPEN ]--------------------------------------------
#
includes/usercp_viewprofile.php

#
#-----[ FIND ]--------------------------------------------
#
$search_img = '<a href="' . $temp_url . '"><img src="' . $images['icon_search'] . '" alt="' . $lang['Search_user_posts'] . '" title="' . $lang['Search_user_posts'] . '" border="0" /></a>';
$search = '<a href="' . $temp_url . '">' . $lang['Search_user_posts'] . '</a>';

#
#-----[ AFTER, ADD ]--------------------------------------------
#
$user_points = $profiledata['user_points'];
$user_money = $profiledata['user_money'];

$icash_mod = ( $userdata['user_level'] >= 1 ) ? '<a href="'.append_sid("icash.$phpEx?u=".$profiledata['user_id']).'">'.sprintf($lang['icash_modd'], $profiledata['username']).'</a>' : '<a href="'.append_sid("icash.$phpEx?u=".$profiledata['user_id']).'">'.sprintf($lang['icash_mod_donate'], $profiledata['username']).'</a>';

#
#-----[ FIND ]--------------------------------------------
#
	'YIM_IMG' => $yim_img,
	'YIM' => $yim,

#
#-----[ AFTER, ADD ]--------------------------------------------
#
	'AUTH' => $ap_mod,
	'ICASH' => $icash_mod,
	'POINTS' => $user_points,
	'MONEY' => $user_money,
	'L_POINTS' => $board_config['icash_points'],
	'L_MONEY' => $board_config['icash_money'],

#
#-----[ OPEN ]--------------------------------------------
#
language/lang_chinese_traditional_taiwan/lang_admin.php

#
#-----[ FIND ]--------------------------------------------
#
// 
// That's all Folks!
// -------------------------------------------------

#
#-----[ BEFORE, ADD ]--------------------------------------------
#
/* i-Cash Mod */
$lang['icash'] = 'i-Cash Mod';
$lang['icash_money'] = 'user_money 名稱';
$lang['icash_points'] = 'user_points 名稱';
$lang['icash_money_reply'] = 'user_money 回覆獎勵';
$lang['icash_points_reply'] = 'user_points 回覆獎勵';
$lang['icash_money_newtopic'] = 'user_money 發文獎勵';
$lang['icash_points_newtopic'] = 'user_points 發文獎勵';
$lang['icashmod_log_id'] = '編號';
$lang['icashmod_log_reason'] = '原因';
$lang['icashmod_log_affort'] = '影響模式';
$lang['icashmod_log_auth_value'] = '影響數值';
$lang['icashmod_log_time'] = '時間';
$lang['icashmod_log_user'] = '行動會員名稱';
$lang['icashmod_log_title'] = '貨幣記錄';
$lang['icashmod_log_to'] = '影響會員名稱';
$lang['icashmod_log_cash'] = '貨幣';

#
#-----[ OPEN ]--------------------------------------------
#
language/lang_chinese_traditional_taiwan/lang_main.php

#
#-----[ FIND ]--------------------------------------------
#
//
// That's all Folks!
// -------------------------------------------------

#
#-----[ BEFORE, ADD ]--------------------------------------------
#
/* i-Cash Mod */
$lang['icash_mod'] = '虛擬貨幣';
$lang['icash_increase'] = '增加'; 
$lang['icash_decrease'] = '減少'; 
$lang['icash_set'] = '設為'; 
$lang['icash_aset'] = '設定';
$lang['icash_donate'] = '捐贈'; 
$lang['icash_success'] = '更新會員貨幣完成<br /><br />點選 %s這裡%s 返回首頁';
$lang['icash_error1'] = '請不要試行非法更改貨幣<br /><br />點選 %s這裡%s 返回首頁';
$lang['icash_error2'] = '身上貨幣不足,無法捐贈貨幣<br /><br />點選 %s這裡%s 返回首頁';
$lang['icash_error3'] = '貨幣值不能為負數<br /><br />點選 %s這裡%s 返回首頁';
$lang['icash_error4'] = '訪客不能捐贈貨幣<br /><br />點選 %s這裡%s 返回首頁';
$lang['icash_auth_error'] = '你沒有權限修改會員的貨幣。';
$lang['icash_mod_title'] = '虛擬貨幣';
$lang['icash_reason'] = '原因';
$lang['icash_modd'] = '修改 %s 的貨幣';
$lang['icash_mod_donate'] = '捐贈貨幣給 %s ';

#
#-----[ OPEN ]--------------------------------------------
#
templates/subSilver/viewtopic_body.tpl

#
#-----[ FIND ]------------------------------------------ 
#
<br />{postrow.POSTER_FROM}

#
#-----[ IN-LINE FIND ]------------------------------------------ 
#\r
<br />{postrow.POSTER_FROM}

#
#-----[ IN-LINE AFTER, ADD ]------------------------------------------ 
#
<br />{postrow.POSTER_MONEY}<br />{postrow.POSTER_POINTS}

#
#-----[ FIND ]--------------------------------------------
#
			<tr> 
				<td class="{postrow.ROW_CLASS}" width="150" align="left" valign="middle"><a href="#top">{L_BACK_TO_TOP}</a></td>

#
#-----[ BEFORE, ADD ]--------------------------------------------
#
			<tr>
				<td width="150" class="row1">{postrow.ICASH}</td>
				<td width="100%" class="row1" nowrap="nowrap"></td>
			</tr>

#
#-----[ OPEN ]--------------------------------------------
#
templates/subSilver/profile_view_body.tpl

#
#-----[ FIND ]------------------------------------------ 
# 
		<tr> 
		  <td valign="top" align="right" nowrap="nowrap"><span class="gen">{L_INTERESTS}: </span></td>
		  <td> <b><span class="gen">{INTERESTS}</span></b></td>
		</tr>

#
#-----[ AFTER, ADD ]--------------------------------------------
#
		<tr> 
		  <td class="row1" valign="middle" align="right" nowrap="nowrap"><span class="gen">{L_MONEY}: </span></td>
		  <td class="row1"><b><span class="gen">{MONEY}</span></b></td>
		</tr>
		<tr> 
		  <td class="row1" valign="top" align="right" nowrap="nowrap"><span class="gen">{L_POINTS}: </span></td>
		  <td class="row1"><b><span class="gen">{POINTS}</span></b></td>
		</tr>
		<tr> 
		  <td class="row1" valign="middle" align="right" nowrap="nowrap"></td>
		  <td class="row1">{ICASH}</td>
		</tr>

#
#-----[ OPEN ]--------------------------------------------
#
templates/subSilver/admin/board_config_body.tpl

#
#-----[ FIND ]--------------------------------------------
#
	<tr>
		<td class="row1">{L_ENABLE_PRUNE}</td>
		<td class="row2"><input type="radio" name="prune_enable" value="1" {PRUNE_YES} /> {L_YES}  <input type="radio" name="prune_enable" value="0" {PRUNE_NO} /> {L_NO}</td>
	</tr>

#
#-----[ AFTER, ADD ]--------------------------------------------
#
	<tr>
		<th colspan="2">{L_ICASH_MOD}</th>
	</tr>
	<tr>
		<td class="row1">{L_ICASH_MONEY}</td>
		<td class="row2"><input class="post" type="text" name="icash_money" size="12" maxlength="12" value="{ICASH_MONEY}" /></td>
	</tr>
	<tr>
		<td class="row1">{L_ICASH_POINTS}</td>
		<td class="row2"><input class="post" type="text" name="icash_points" size="12" maxlength="12" value="{ICASH_POINTS}" /></td>
	</tr>
	<tr>
		<td class="row1">{L_ICASH_MONEY_NEWTOPIC}</td>
		<td class="row2"><input class="post" type="text" name="icash_money_newtopic" size="8" maxlength="8" value="{ICASH_MONEY_NEWTOPIC}" /></td>
	</tr>
	<tr>
		<td class="row1">{L_ICASH_POINTS_NEWTOPIC}</td>\r
		<td class="row2"><input class="post" type="text" name="icash_points_newtopic" size="8" maxlength="8" value="{ICASH_POINTS_NEWTOPIC}" /></td>
	</tr>
	<tr>
		<td class="row1">{L_ICASH_MONEY_REPLY}</td>
		<td class="row2"><input class="post" type="text" name="icash_money_reply" size="8" maxlength="8" value="{ICASH_MONEY_REPLY}" /></td>
	</tr>
	<tr>
		<td class="row1">{L_ICASH_POINTS_REPLY}</td>
		<td class="row2"><input class="post" type="text" name="icash_points_reply" size="8" maxlength="8" value="{ICASH_POINTS_REPLY}" /></td>
	</tr>

#
#-----[ COPY ]--------------------------------------------
#
root/icash.php						to  ./
root/admin/admin_icashmod.php				to  ./admin/
root/templates/subSilver/icash_mod_bocy.tpl		to  ./templates/subSilver/
root/templates/subSilver/admin/icashlogs_list_body.tpl	to  ./templates/admin/subSilver/

# 
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------ 
# 
# EoM 
最後由 jeff0510 於 2005-02-15 17:29 編輯,總共編輯了 1 次。
問題狂
竹貓忠實會員
竹貓忠實會員
文章: 1947
註冊時間: 2004-06-28 17:13

文章 問題狂 »

jeff0510
星球普通子民
星球普通子民
文章: 8
註冊時間: 2005-01-25 21:03

文章 jeff0510 »

代碼: 選擇全部

# 
#-----[ FIND ]-------------------------------------------- 
# 
// 
// Go ahead and pull all data for this topic 
// 
$sql = "SELECT u.username 
這是甚麼意思?
問題狂
竹貓忠實會員
竹貓忠實會員
文章: 1947
註冊時間: 2004-06-28 17:13

文章 問題狂 »

尋找這段程式碼\r

代碼: 選擇全部

// 
// Go ahead and pull all data for this topic 
// 
$sql = "SELECT u.username 
的意思
主題已鎖定

回到「外掛問題討論」