主要是在觀看主題的頁面下方把add favorites 改成 remove favorits 如果該主題已加入favorite
來源網頁: http://www.phpbb.com/phpBB/viewtopic.ph ... =60#519083
代碼: 選擇全部
##############################################################
## MOD Title: Favorites Mod (修補)
## MOD Author: DanielT < danielt@hackermail.com > (Daniel Taylor) http://www.commnet.mine.nu
## MOD Description: Also users the build a favorite topics list
## MOD Version: 1.0.1
##
## Patch Author: Markus Rietzler < markus.rietzler@rzf.fin-nrw.de >
##
## Files To Edit: viewtopic.php
##############################################################
#
#-----[ 開啟檔案 ]------------------------------------------
#
language/lang_english/lang_main.php
#
#-----[ 尋找 ]------------------------------------------
#
$lang['add_fav'] = 'Add To Favorites';1
#
#-----[ 貼上於之後 ]------------------------------------------
#
$lang['del_fav'] = 'Remove from Favorites';
#
#-----[ 開啟檔案 ]------------------------------------------
#
viewtopic.php
#
#-----[ 尋找 ]------------------------------------------
#
$can_watch_topic = TRUE;
#
#-----[ 貼上於之後 ]------------------------------------------
#
$sql = "SELECT fav_id FROM " . $table_prefix . "favorites
WHERE topic_id = $topic_id
AND user_id = " . $userdata['user_id'];
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, "Could not obtain topic watch information", '', __LINE__, __FILE__, $sql);
}
$is_favorit_topic = 0;
if ( $row = $db->sql_fetchrow($result) )
{
$fav_id = $row['fav_id'];
if ($fav_id > 0) {
$is_favorit_topic = 1;
}
}
#
#-----[ 尋找 ]------------------------------------------
#
//
// Topic watch information
//
#
#-----[ 貼上於之前 ]------------------------------------------
#
//
// Topic Favorites
//
$s_favorit_topic = '';
$s_favorit_link = '';
if ( $is_favorit_topic ) {
$s_favorit_topic = append_sid("favorites.$phpEx?t=" . $topic_id . "&mode=remove");
$s_favorit_link = $lang['del_fav'];
} else {
$s_favorit_topic = append_sid("favorites.$phpEx?t=" . $topic_id . "&mode=add");
$s_favorit_link = $lang['add_fav'];
}
#
#-----[ 尋找 ]------------------------------------------
#
'U_FAV' => append_sid("favorites.$phpEx?t=" . $topic_id . "&mode=add"),
'L_FAV' => $lang['add_fav'],
#
#-----[ 取代 ]------------------------------------------
#
'U_FAV' => $s_favorit_topic,
'L_FAV' => $s_favorit_link,
#
#-----[ 開啟檔案 ]------------------------------------------
#
favorites.php
#
#-----[ 尋找 ]------------------------------------------
#
'L_INDEX' => $lang['Index'],
#
#-----[ 取代 ]------------------------------------------
#
'L_INDEX' => sprintf($lang['Forum_Index'], $board_config['sitename']),
#
# ----[ DONE ]----------------------------------------------
# 就是如果你在未登入狀態下按"add favorate"後再登入\r
程式並不會繼續加入該主題,而是會到首頁
所以我也在這mod做的一行修改,拿來分享一下
不過先聲明,我對php不熟悉,有問題請大家多多包函!!!
代碼: 選擇全部
#----[OPEN]--------------------------------------------------
#
#favorates.php
#
#-----[FIND]---------------------------------------------------
#
header("Location: " . append_sid($phpbb_script_path . "login." . $phpEx . "?redirect=" . $PHP_SELF));
#
#----[REPLACE WITH]---------------------------------------
#
header("Location: " . append_sid($phpbb_script_path . "login." . $phpEx . "?redirect=favorites.$phpEx" . "&mode=" . $HTTP_GET_VARS['mode'] . "&t=" . $HTTP_GET_VARS['t']));
#
#----[DONE]---------------------------------------------------
