[推薦]收放討論分區

MODs Released by Other phpbb Sites
非官方認證通過之 MOD ,或許有安全性之疑慮,所有問題由原發表者回覆!

版主: 版主管理群

oO]-[Oo
南宮博士
南宮博士
文章: 512
註冊時間: 2001-11-11 18:09
來自: TAIWAN
聯繫:

[推薦]收放討論分區

文章 oO]-[Oo »

Source: http://www.phpbb2-users.de/
Mod Title: Closed Category Mod
Mod Version: 1.0
Author: Phantom < admin@world-wars.net >
功能 : 收放討論分區, 會將使用者的設定存在cookie裡\r

中文安裝說明(OOHOO小修正)

代碼: 選擇全部

# 
#-----[ ACTION: 上傳  ]------------------------------------------ 
# 

將 icon_minus.gif 及 icon_plus.gif 上傳至 images/ 


# 
#-----[ ACTION: 打開  ]------------------------------------------ 
# 

index.php

# 
#-----[ ACTION: 尋找  ]------------------------------------------ 
# 

// 
// End session management 
// 

# 
#-----[ ACTION: 在下面加進  ]------------------------------------------ 
# 

//
// Closed Category Mod\r
//
if (isset($HTTP_GET_VARS['cat_show']))
{
	setcookie($board_config['cookie_name'] . '_cat_' . $HTTP_GET_VARS['cat_show'] . '_hide', '0', (time() + 31536000), $board_config['cookie_path'], $board_config['cookie_domain'], $board_config['cookie_secure']);
	header("Location: index.$phpEx");
}

if (isset($HTTP_GET_VARS['cat_hide']))
{
	setcookie($board_config['cookie_name'] . '_cat_' . $HTTP_GET_VARS['cat_hide'] . '_hide', '1', (time() + 31536000), $board_config['cookie_path'], $board_config['cookie_domain'], $board_config['cookie_secure']);
	header("Location: index.$phpEx");
}

# 
#-----[ ACTION: 尋找  ]------------------------------------------ 
# 

			$template->assign_block_vars('catrow', array( 
				    'CAT_ID' => $cat_id, 
				    'CAT_DESC' => $category_rows[$i]['cat_title'], 
				    'U_VIEWCAT' => append_sid("index.$phpEx?" . POST_CAT_URL . "=$cat_id")) 
			 ); 

# 
#-----[ ACTION: 替換成  ]------------------------------------------ 
# 

			//
			// Hide Category Mod (Note. 預設關閉的分區, 請將分區名稱之前加上 ::NC::, ::NC:: 將不會被顯示出來)
			//
			if (!isset($HTTP_COOKIE_VARS[ $board_config['cookie_name'] . '_cat_' . $cat_id . '_hide']))
			{
				$hide_cat[$cat_id] = (substr($category_rows[$i]['cat_title'], 0, 6) == "::NC::") ? 1 : 0;
			}
			else
			{
				$hide_cat[$cat_id] = $HTTP_COOKIE_VARS[ $board_config['cookie_name'] . '_cat_' . $cat_id . '_hide'];
			}

			$cat_title = (substr($category_rows[$i]['cat_title'], 0, 6) == "::NC::") ? ltrim(substr($category_rows[$i]['cat_title'], 6)) : $category_rows[$i]['cat_title'];

			if ($hide_cat[$cat_id] == 1)
			{
				$cat_showhide = 'cat_show';
				$cat_showhide_img = 'icon_plus.gif';
			}
			else
			{
				$cat_showhide = 'cat_hide';
				$cat_showhide_img = 'icon_minus.gif';
			}

			$template->assign_block_vars('catrow', array(
				'CAT_ID' => $cat_id,
				'CAT_DESC' => $cat_title,
				'CAT_TYPE' => '<a href="' . append_sid("index.$phpEx?" . $cat_showhide . "=" . $cat_id) . "\" class=\"cattitle\"><img src=\"images/$cat_showhide_img\" hspace=\"1\" border=\"0\" /></a> ",
				'U_VIEWCAT' => append_sid("index.$phpEx?" . POST_CAT_URL . "=$cat_id")
			));

			if ($hide_cat[$cat_id] == 1)
			{
				continue;
			}


# 
#-----[ ACTION: 打開 ]------------------------------------------ 
# 

templates/your_template/index_body.tpl


# 
#-----[ ACTION: 尋找  ]------------------------------------------ 
#

<a href="{catrow.U_VIEWCAT}" class="cattitle">{catrow.CAT_DESC}</a> 

# 
#-----[ ACTION: 直接在前面加入  ]------------------------------------------ 
#

{catrow.CAT_TYPE} 

[color=red](註. 也就是應該變成 {catrow.CAT_TYPE}<a href="{catrow.U_VIEWCAT}" class="cattitle">{catrow.CAT_DESC}</a>)[/color]

# 
#-----[ ACTION: 存檔搞定 ]------------------------------------------ 
#
# EoM
OOHOO said:
有事Mail給我, 不要P我, 因為根本沒辦法P.
silverwing
星球公民
星球公民
文章: 111
註冊時間: 2002-01-15 15:40
來自: 天涯盡頭
聯繫:

文章 silverwing »

成功了,謝謝!
oO]-[Oo
南宮博士
南宮博士
文章: 512
註冊時間: 2001-11-11 18:09
來自: TAIWAN
聯繫:

文章 oO]-[Oo »

進階改法
新加入功能: 全部展開/隱藏
(ps. 先裝上面那個再來改, 不要還沒裝就來問我說找不到)

代碼: 選擇全部

# 
#-----[ ACTION: 打開  ]------------------------------------------ 
# 

index.php 

# 
#-----[ ACTION: 尋找  ]------------------------------------------ 
# 

// 
// Closed Category Mod 
// 
if (isset($HTTP_GET_VARS['cat_show'])) 
{ 
   setcookie($board_config['cookie_name'] . '_cat_' . $HTTP_GET_VARS['cat_show'] . '_hide', '0', (time() + 31536000), $board_config['cookie_path'], $board_config['cookie_domain'], $board_config['cookie_secure']); 
   header("Location: index.$phpEx"); 
} 

if (isset($HTTP_GET_VARS['cat_hide'])) 
{ 
   setcookie($board_config['cookie_name'] . '_cat_' . $HTTP_GET_VARS['cat_hide'] . '_hide', '1', (time() + 31536000), $board_config['cookie_path'], $board_config['cookie_domain'], $board_config['cookie_secure']); 
   header("Location: index.$phpEx"); 
} 


# 
#-----[ ACTION: 替換成  ]------------------------------------------ 
# 

//
// Closed Category Mod
//
if (isset($HTTP_GET_VARS['cat_show']))
{
	if($HTTP_GET_VARS['cat_show'] == "all")
	{
		$sql = "SELECT cat_id FROM " . CATEGORIES_TABLE;
		if( !($result = $db->sql_query($sql)) )
		{
			message_die(GENERAL_ERROR, 'Could not query categories list', '', __LINE__, __FILE__, $sql);
		}

		while( $row = $db->sql_fetchrow($result) )
		{
			setcookie($board_config['cookie_name'] . '_cat_' . $row['cat_id'] . '_hide', '0', (time() + 31536000), $board_config['cookie_path'], $board_config['cookie_domain'], $board_config['cookie_secure']);
		}
	}
	else
	{
		setcookie($board_config['cookie_name'] . '_cat_' . $HTTP_GET_VARS['cat_show'] . '_hide', '0', (time() + 31536000), $board_config['cookie_path'], $board_config['cookie_domain'], $board_config['cookie_secure']);
	}
	header("Location: " . append_sid("index.$phpEx"));
}

if (isset($HTTP_GET_VARS['cat_hide']))
{
	if($HTTP_GET_VARS['cat_hide'] == "all")
	{
		$sql = "SELECT cat_id FROM " . CATEGORIES_TABLE;
		if( !($result = $db->sql_query($sql)) )
		{
			message_die(GENERAL_ERROR, 'Could not query categories list', '', __LINE__, __FILE__, $sql);
		}

		while( $row = $db->sql_fetchrow($result) )
		{
			setcookie($board_config['cookie_name'] . '_cat_' . $row['cat_id'] . '_hide', '1', (time() + 31536000), $board_config['cookie_path'], $board_config['cookie_domain'], $board_config['cookie_secure']);
		}
	}
	else
	{
		setcookie($board_config['cookie_name'] . '_cat_' . $HTTP_GET_VARS['cat_hide'] . '_hide', '1', (time() + 31536000), $board_config['cookie_path'], $board_config['cookie_domain'], $board_config['cookie_secure']);
	}
	header("Location: " . append_sid("index.$phpEx"));
}

# 
#-----[ ACTION: 尋找 ]------------------------------------------ 
# 

		'L_ONLINE_EXPLAIN' => $lang['Online_explain'],

# 
#-----[ ACTION: 在下面加進  ]------------------------------------------ 
# 

		'L_SHOW_ALL_CATEGORIES' => $lang['Show_All_Categories'], // Closed Category Mod
		'L_HIDE_ALL_CATEGORIES' => $lang['Hide_All_Categories'], // Closed Category Mod
		'U_SHOW_ALL_CATEGORIES' => append_sid("index.$phpEx?cat_show=all") , // Closed Category Mod
		'U_HIDE_ALL_CATEGORIES' => append_sid("index.$phpEx?cat_hide=all") , // Closed Category Mod

# 
#-----[ ACTION: 尋找 ]------------------------------------------ 
# 

			if ($hide_cat[$cat_id] == 1)
			{
				$cat_showhide = 'cat_show';
				$cat_showhide_img = 'icon_plus.gif';
			}
			else
			{
				$cat_showhide = 'cat_hide';
				$cat_showhide_img = 'icon_minus.gif';
			}

# 
#-----[ ACTION: 替換成  ]------------------------------------------ 
# 

			if ($hide_cat[$cat_id] == 1)
			{
				$cat_showhide = 'cat_show';
				$cat_showhide_img = 'icon_plus.gif';
				$cat_showhide_img_alt = $lang['Show_Category'];
			}
			else
			{
				$cat_showhide = 'cat_hide';
				$cat_showhide_img = 'icon_minus.gif';
				$cat_showhide_img_alt = $lang['Hide_Category'];
			}

# 
#-----[ ACTION: 尋找  ]------------------------------------------ 
# 

		'CAT_TYPE' => '<a href="' . append_sid("index.$phpEx?" . $cat_showhide . "=" . $cat_id) . "\" class=\"cattitle\"><img src=\"images/$cat_showhide_img\" hspace=\"1\" border=\"0\" /></a> ", 

# 
#-----[ ACTION: 替換成  ]------------------------------------------ 
# 

		'CAT_TYPE' => '<a href="' . append_sid("index.$phpEx?" . $cat_showhide . "=" . $cat_id) . "\" class=\"cattitle\"><img src=\"images/$cat_showhide_img\" hspace=\"1\" border=\"0\" alt=\"$cat_showhide_img_alt\" /></a> ",


# 
#-----[ ACTION: 打開  ]------------------------------------------ 
# 

templates/your_template/index_body.tpl

# 
#-----[ ACTION: 尋找 (以subSilver為例, 其它theme請自己試)  ]------------------------------------------ 
# 

	<th colspan="2" class="thCornerL" height="25" nowrap="nowrap"> {L_FORUM} </th>

# 
#-----[ ACTION: 替換成  ]------------------------------------------ 
# 

	<th class="thCornerL" width="50" height="25" align="left" nowrap="nowrap"><a href="{U_SHOW_ALL_CATEGORIES}"><img src="images/icon_plus.gif" alt="{L_SHOW_ALL_CATEGORIES}" border="0" hspace="1" /></a><a href="{U_HIDE_ALL_CATEGORIES}"><img src="images/icon_minus.gif" alt="{L_HIDE_ALL_CATEGORIES}" border="0" hspace="1" /></a></th>
	<th class="thTop" nowrap="nowrap"> {L_FORUM} </th>


# 
#-----[ ACTION: 打開  ]------------------------------------------ 
# 

language/lang_chinese_traditional_taiwan/lang_main.php 

# 
#-----[ ACTION: 加進(自己找位置)  ]------------------------------------------ 
# 

// Closed Category Mod
$lang['Show_Category'] = "展開";
$lang['Hide_Category'] = "隱藏";
$lang['Show_All_Categories'] = "全部展開";
$lang['Hide_All_Categories'] = "全部隱藏";

# 
#-----[ ACTION: 存檔搞定 ]------------------------------------------ 
# 
# EoM 

最後由 oO]-[Oo 於 2002-05-16 20:36 編輯,總共編輯了 1 次。
OOHOO said:
有事Mail給我, 不要P我, 因為根本沒辦法P.
英俊業
星球普通子民
星球普通子民
文章: 7
註冊時間: 2002-04-17 21:37
來自: HK

文章 英俊業 »

http://www.handsomeyip.net/phpBB2
在349行有錯誤…\r
以下是349行
if (!isset($HTTP_COOKIE_VARS[ $board_config['cookie_name'] . '_cat_' . $cat_id . '_hide']))
謝謝幫忙…
頭像
kuloo
竹貓好朋友
竹貓好朋友
文章: 142
註冊時間: 2002-01-19 01:29
來自: 就是那個光.......

文章 kuloo »

成功!!沒問題~~謝謝~~:-D
. 文章篇數多與寡 , 非表自身之程度 , 有效助人為優先 , 耐心用心最重要 .

. 問題很多不可恥 , 就怕發問沒規矩 , 入境隨俗最重要 , 自然有人會幫您 .

. 初來乍到無所謂 , 閒聊之間學東西 , 善用搜尋為第一 , 對話用語要適宜 .
oO]-[Oo
南宮博士
南宮博士
文章: 512
註冊時間: 2001-11-11 18:09
來自: TAIWAN
聯繫:

文章 oO]-[Oo »

英俊業 寫:http://www.handsomeyip.net/phpBB2
在349行有錯誤…\r
以下是349行
if (!isset($HTTP_COOKIE_VARS[ $board_config['cookie_name'] . '_cat_' . $cat_id . '_hide']))
謝謝幫忙…
請重裝一遍... 小心裝...
OOHOO said:
有事Mail給我, 不要P我, 因為根本沒辦法P.
紅眼鏡
星球普通子民
星球普通子民
文章: 1
註冊時間: 2002-04-12 19:48
來自: 香港~
聯繫:

文章 紅眼鏡 »

我有個icon可以提供~

圖檔
圖檔
英俊業
星球普通子民
星球普通子民
文章: 7
註冊時間: 2002-04-17 21:37
來自: HK

文章 英俊業 »

噢…謝謝~成功了!
oO]-[Oo 寫:
英俊業 寫:http://www.handsomeyip.net/phpBB2
在349行有錯誤…\r
以下是349行
if (!isset($HTTP_COOKIE_VARS[ $board_config['cookie_name'] . '_cat_' . $cat_id . '_hide']))
謝謝幫忙…
請重裝一遍... 小心裝...
頭像
中等
星球公民
星球公民
文章: 54
註冊時間: 2002-04-19 01:11

文章 中等 »

成功了,真是簡單又好用\r
謝謝博士細心幫忙^^"
嘰哩咕嚕嘰哩咕嚕.........
silverwing
星球公民
星球公民
文章: 111
註冊時間: 2002-01-15 15:40
來自: 天涯盡頭
聯繫:

文章 silverwing »

再次成功,感謝!
weiyiao
星球普通子民
星球普通子民
文章: 30
註冊時間: 2002-04-24 09:50
來自: 嘉義市
聯繫:

文章 weiyiao »

成功ㄌ....相當好用的功能....謝謝了喔...
newmail1
星球普通子民
星球普通子民
文章: 8
註冊時間: 2002-04-10 02:20

文章 newmail1 »

嗯! 我改了以後有些問題, 在全開or全關的圖, 滑鼠指過去的確會有中文字顯示, 但分區的開關圖示卻無法如貴站顯示"展開" or "隱藏" 的中文字, 不知錯誤何處? bbs.slps.tp.edu.tw
小竹子
竹貓星球大統領
竹貓星球大統領
文章: 4596
註冊時間: 2001-10-29 22:13
來自: 竹貓星球
聯繫:

文章 小竹子 »

newmail1 寫:嗯! 我改了以後有些問題, 在全開or全關的圖, 滑鼠指過去的確會有中文字顯示, 但分區的開關圖示卻無法如貴站顯示"展開" or "隱藏" 的中文字, 不知錯誤何處? bbs.slps.tp.edu.tw

代碼: 選擇全部

# 
#-----[ ACTION: 加進(自己找位置)  ]------------------------------------------ 
# 

// Closed Category Mod 
$lang['Show_Category'] = "展開"; 
$lang['Hide_Category'] = "隱藏"; 
$lang['Show_All_Categories'] = "全部展開"; 
$lang['Hide_All_Categories'] = "全部隱藏"; 

# 
#-----[ ACTION: 存檔搞定 ]------------------------------------------ 
這段有加進去嗎
注意事項:
●phpBB 架設相關問題請到 + phpBB 3.0.x 討論區發表!
●都沒有你要的答案嗎??>>點這裡<<搜尋一下吧!
●請使用>>標準的發文格式<<發表問題!
●竹貓星球並非政治團體代言人,請不要在竹貓討論政治議題,也不要認為竹貓是偏向任何一方政治團體,竹貓愛的是台灣這片生長的土地,過於泛政治化文章請來信告知移除!
●關於 phpBB 使用問題請在版面發問,私人訊息提供其他不相干或是隱私的事情聯絡之用。
●所有市面上的免費空間皆非竹貓管轄,請勿來信詢問,請直接與該免費空間連絡。
頭像
Denny-Chang
星球公民
星球公民
文章: 45
註冊時間: 2002-04-13 20:41
來自: 台灣西木
聯繫:

文章 Denny-Chang »

會不會是cookie造成的
把舊cookie刪掉再用用看
我是 "Denny Chang" ,也稱 "小白豬" ,請多多指教!! ^^
頭像
Denny-Chang
星球公民
星球公民
文章: 45
註冊時間: 2002-04-13 20:41
來自: 台灣西木
聯繫:

文章 Denny-Chang »

進階改法少了下面步驟
找到\r

代碼: 選擇全部

         if ($hide_cat[$cat_id] == 1) 
         { 
            $cat_showhide = 'cat_show'; 
            $cat_showhide_img = 'icon_plus.gif';
         } 
         else 
         { 
            $cat_showhide = 'cat_hide'; 
            $cat_showhide_img = 'icon_minus.gif'; 
         } 
取代成

代碼: 選擇全部

         if ($hide_cat[$cat_id] == 1) 
         { 
            $cat_showhide = 'cat_show'; 
            $cat_showhide_img = 'icon_plus.gif';
            $cat_showhide_img_alt = $lang['Hide_Category']; 
         } 
         else 
         { 
            $cat_showhide = 'cat_hide'; 
            $cat_showhide_img = 'icon_minus.gif'; 
            $cat_showhide_img_alt = $lang['Show_Category']; 
         } 
這樣在各分區前的圖才有文字提示
我是 "Denny Chang" ,也稱 "小白豬" ,請多多指教!! ^^
主題已鎖定

回到「非官方認證外掛」