[討論] 彩色群組外掛的活用問題

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

版主: 版主管理群

主題已鎖定
天霜
竹貓忠實會員
竹貓忠實會員
文章: 882
註冊時間: 2003-04-15 19:40
來自: 星之鄉學園
聯繫:

[討論] 彩色群組外掛的活用問題

文章 天霜 »

外掛名稱:Color Groups 1.2.0
http://www.nivisec.com/phpbb.php?l=p

外掛功能描述:
這是一個可於後台設定新增彩色群組的外掛
可於後台新增一個群組指定使用什麼顏色\r
然後在後台指定會員加入某個彩色群組

所以會取代原本的管理員顏色 
會員名稱顏色都是由Color Groups在後台設定

不必以後想新增一個顏色給會員使用時 花時間修改程式碼\r
但現在我遇到的問題是 要如何將Color Groups與閃光會員名稱進階版合在一起使用\r

Color Groups有關viewtopic.php的修改部份

代碼: 選擇全部

# 
#-----[ FIND ]------------------------------------------ 
#
include($phpbb_root_path . 'includes/bbcode.'.$phpEx);

# 
#-----[ AFTER, ADD ]------------------------------------------ 
#

include_once($phpbb_root_path.'includes/functions_color_groups.'.$phpEx);

# 
#-----[ FIND ]------------------------------------------ 
#
		'POSTER_NAME' => $poster,

# 
#-----[ REPLACE WITH ]------------------------------------------ 
#
		'POSTER_NAME' => ($poster_name = color_group_colorize_name($poster_id, true)) ? $poster_name : $poster,
閃光會員名稱進階版有關viewtopic.php的修改部份

代碼: 選擇全部

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

viewtopic.php 

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

// 
// Go ahead and pull all data for this topic 
// 
$sql = "SELECT u.username, u.user_id, u.user_posts, u.user_level, u.user_from, u.user_website, u.user_email, u.user_icq, u.user_aim, u.user_yim, u.user_regdate, u.user_msnm, u.user_viewemail, u.user_rank, u.user_sig, u.user_sig_bbcode_uid, u.user_avatar, u.user_avatar_type, u.user_allowavatar, u.user_allowsmile, u.user_money, u.user_session_time, u.user_allow_viewonline, p.*,  pt.post_text, pt.post_subject, pt.bbcode_uid 

(註. 這段有幾個MOD會改到, 所以不一定會完全一樣) 

# 
#-----[ ACTION: 在 u.user_posts, 後加入 u.user_level,  ]------------------------------------------ 
# 

$sql = "SELECT .............  u.user_posts, u.user_level, .............. 

(註. 如果你對code一點概念都沒有, 請小心改) 

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

   // 
   // Again this will be handled by the templating 
   // code at some point 
   // 
   $row_color = ( !($i % 2) ) ? $theme['td_color1'] : $theme['td_color2']; 
   $row_class = ( !($i % 2) ) ? $theme['td_class1'] : $theme['td_class2']; 

# 
#-----[ ACTION: 在上面加入 ]------------------------------------------ 
# 

   // 
   // Username in glowing 
   // 
   if($postrow[$i]['user_level'] == 1) // Admin 
   { 
      $glowing_color = '#' . $theme['fontcolor3']; 
   } 
   else if($postrow[$i]['user_level'] == 2) // Moderator 
   { 
      $glowing_color = '#' . $theme['fontcolor2']; 
   } 
   else // normal 
   { 
      $glowing_color = 'blue'; 
   } 

(註. 顏色可以自行調整, 如: $glowing_color = '#FF8000';) 

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

      'MINI_POST_IMG' => $mini_post_img, 

# 
#-----[ ACTION: 在上面加入 ]------------------------------------------ 
# 

      'GLOWING_COLOR' => $glowing_color, // Username in glowing 
我想只要閃光名稱有辦法可與Color Groups一起使用的話\r
那麼其他顯示等級顏色的外掛也應該能以此類推解決掉

希望懂php程式碼的前輩幫忙想想如何解決 :-?
不回答來自 私人訊息, 電子郵件, 及時通 的相關 phpBB 問題
除非是個人疏失所造成的問題

這世界還有拼命守護的價值嗎...
天霜
竹貓忠實會員
竹貓忠實會員
文章: 882
註冊時間: 2003-04-15 19:40
來自: 星之鄉學園
聯繫:

文章 天霜 »

這是將Color Groups(彩色群組)和閃光會員名稱加在一起的寫法
讓裝了Color Groups(彩色群組)的論壇也可以在文章頁面的會員名稱有閃光效果
並且依照群組不同有不同顏色的閃光


修改開始:

#
#-----[ OPEN 打開 ]------------------------------------------------
#

代碼: 選擇全部

includes/functions_color_groups.php
#
#-----[ FIND 尋找 ]------------------------------------------------
#

代碼: 選擇全部

			$user_link = '<a href="' . append_sid($phpbb_root_path."profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=$user_id") . '"' . $style_color .'>' . $username . '</a>';
		}
		return($user_link);
	}
	else
	{
		return false;
	}
}
#
#-----[ AFTER, ADD 之後, 加上 ]------------------------------------
#

代碼: 選擇全部

function color_group_colorize_name_viewtopic($user_id, $no_profile = false)
{
	global $board_config, $phpEx, $db, $phpbb_root_path;
	
	// First see if the user is Anon
	if ($user_id != ANONYMOUS)
	{
		// Get the user info and see if they are assigned a color_group //
		$sql = 'SELECT u.user_color_group, u.username, c.* FROM ' . USERS_TABLE . ' u, ' . COLOR_GROUPS_TABLE . " c
			WHERE u.user_id = $user_id
			AND u.user_color_group = c.group_id";
		$result = $db->sql_query($sql);
		$row = $db->sql_fetchrow($result);
		
		if (!isset($row['username']))
		{
			//If there was a problem before, we don't want a blank username!
			$sql = 'SELECT username FROM ' . USERS_TABLE . "
			WHERE user_id = $user_id";
			$result = $db->sql_query($sql);
			$row = $db->sql_fetchrow($result);
		}
		$username = $row['username'];
		
		if (isset($row['group_color']))
		{
			// WE found the highest level color, head out now //
			$style_color = 'style="filter: glow(color=' . $row['group_color'] . ',strength=3); height:10px; color:white; padding:1px; font-size : 11px"';
		}
		else
		{
			// Now start looking for user group memberships //
			$sql = 'SELECT c.* FROM ' . USER_GROUP_TABLE . ' ug, ' . USERS_TABLE . ' u, ' . COLOR_GROUPS_TABLE . ' c, ' . GROUPS_TABLE . ' g
				WHERE ug.user_id = ' . $user_id . '
				AND u.user_id = ug.user_id
				AND ug.group_id = g.group_id
				AND g.group_color_group = c.group_id
				AND g.group_single_user = 0';
			//print $sql;
				$result = $db->sql_query($sql);
				$curr = 10000000000000;
				$style_color = '';
				while ($row = $db->sql_fetchrow($result))
				{
					// If our new group in the list is a higher order number, it's color takes precedence //
					if ($row['order_num'] < $curr)
					{
						$curr = $row['order_num'];
						$style_color = 'style="filter: glow(color=' . $row['group_color'] . ',strength=3); height:10px; color:white; padding:1px; font-size : 11px"';
					}
				}
		}
		
		// Make the profile link or no and return it //
		if ($no_profile)
		{
			$user_link = "<span $style_color>$username</span>";
		}
		else
		{
			$user_link = '<a href="' . append_sid($phpbb_root_path."profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=$user_id") . '"' . $style_color .'>' . $username . '</a>';
		}
		return($user_link);
	}
	else
	{
		return false;
	}
}
#
#-----[ OPEN 打開 ]------------------------------------------------
#

代碼: 選擇全部

viewtopic.php
#
#-----[ FIND 尋找 ]------------------------------------------------
#

代碼: 選擇全部

'POSTER_NAME' => ($poster_name = color_group_colorize_name($poster_id, true)) ? $poster_name : $poster,
#
#-----[ REPLACE WITH 替換 ]----------------------------------------
#

代碼: 選擇全部

'POSTER_NAME' => ($poster_name = color_group_colorize_name_viewtopic($poster_id, true)) ? $poster_name : $poster,
#
#-----[ SAVE/CLOSE ALL FILES 儲存/關閉所有檔案 ]-------------------
#
# EoM 外掛修正結束
不回答來自 私人訊息, 電子郵件, 及時通 的相關 phpBB 問題
除非是個人疏失所造成的問題

這世界還有拼命守護的價值嗎...
天霜
竹貓忠實會員
竹貓忠實會員
文章: 882
註冊時間: 2003-04-15 19:40
來自: 星之鄉學園
聯繫:

文章 天霜 »

改變沒有加入彩色群組的會員預設顏色

#
#-----[ OPEN 打開 ]------------------------------------------------
#

代碼: 選擇全部

includes/functions_color_groups.php
#
#-----[ FIND 尋找 ]------------------------------------------------
#如果你之前已修改閃光效果 那麼這一段會找到兩個 這一段大約第 275 行左右 並且是最初找到的

代碼: 選擇全部

$style_color = '';
#
#-----[ REPLACE WITH 替換 ]----------------------------------------
# 之中的 color=silver 請換成你想要顯示的顏色\r

代碼: 選擇全部

$style_color = 'style="font-weight:bold;color=silver"';
#
#-----[ SAVE/CLOSE ALL FILES 儲存/關閉所有檔案 ]-------------------
#
# EoM 外掛修正結束

如果你要文章頁面的會員預設顏色也有閃光效果(需先修改過之前的顯示閃光改法)
請繼續往下改

#
#-----[ OPEN 打開 ]------------------------------------------------
#

代碼: 選擇全部

includes/functions_color_groups.php
#
#-----[ FIND 尋找 ]------------------------------------------------
#如果你之前已修改閃光效果 那麼這一段會找到兩個 這一段大約第 344 行左右 並且是最後找到的

代碼: 選擇全部

$style_color = '';
#
#-----[ REPLACE WITH 替換 ]----------------------------------------
#之中的 color=silver 請換成你想要顯示的顏色\r

代碼: 選擇全部

$style_color = 'style="filter: glow(color=silver ,strength=3); height:10px; color:white; padding:1px; font-size : 14px"';
#
#-----[ SAVE/CLOSE ALL FILES 儲存/關閉所有檔案 ]-------------------
#
# EoM 外掛修正結束
不回答來自 私人訊息, 電子郵件, 及時通 的相關 phpBB 問題
除非是個人疏失所造成的問題

這世界還有拼命守護的價值嗎...
~可樂哥~
星球公民
星球公民
文章: 42
註冊時間: 2003-12-12 09:15
來自: 網絡新世紀
聯繫:

文章 ~可樂哥~ »

這個外掛會否與pcp衝撞呢
天霜
竹貓忠實會員
竹貓忠實會員
文章: 882
註冊時間: 2003-04-15 19:40
來自: 星之鄉學園
聯繫:

文章 天霜 »

~可樂哥~ 寫:這個外掛會否與pcp衝撞呢
這我就不大清楚了
因為我沒裝過PCP

不過我認為衝到的可能性很高
不回答來自 私人訊息, 電子郵件, 及時通 的相關 phpBB 問題
除非是個人疏失所造成的問題

這世界還有拼命守護的價值嗎...
~可樂哥~
星球公民
星球公民
文章: 42
註冊時間: 2003-12-12 09:15
來自: 網絡新世紀
聯繫:

文章 ~可樂哥~ »

我安裝了...又要折了.......
主題已鎖定

回到「外掛問題討論」