[問題]全區版主MOD沒有考慮金幣權限?

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

版主: 版主管理群

主題已鎖定
tsairandy
星球公民
星球公民
文章: 45
註冊時間: 2002-11-08 11:54

[問題]全區版主MOD沒有考慮金幣權限?

文章 tsairandy »

問題外掛: Global Moderator Mod
參考連結:

代碼: 選擇全部

##############################################################
## Mod Title: Global Moderator Mod
## Mod Version: 1.0
## Author: Gumeleon <gumeleon@yahoo.com>
## Description: This mod will allow you to give a user moderator status on all forums 
##		from the user permissions page without having to actually make them a 
##		mod of each forum, just like an admin.
##
##
## Installation Level: Moderate
## Installation Time: 15 Minutes
## Files to Edit: /root/admin/admin_ug_auth.php
##		  /root/includes/auth.php
##		  /root/includes/constants.php
##		  /root/language/lang_english/lang_admin.php
##
################################################################
## Remember to always backup your files before adding any new mods to your forum!
################################################################
##
## Revision History
##
## V1.0 - 1/1/04
## - Initial release, everything seems to be working fine, no bugs have been found.
##
#################################################################
## Author Notes: Please report any bugs to me.
#################################################################
##
##
##
##-----------[ Open ]-------------------------------------------
##
root/includes/constants.php
##
##-----------[ Find ]-------------------------------------------
##
define('MOD', 2);
##
##-----------[ After, Add ]-------------------------------------
##
define('GLOBAL_MOD', 3);
##
##-----------[ Open ]-------------------------------------------
##
root/language/lang_english/lang_admin.php
##
##-----------[ Find ]-------------------------------------------
##
$lang['Auth_User'] = 'User';
##
##-----------[ After, Add ]-------------------------------------
##
$lang['Auth_Global'] = 'Global Moderator';
##
##-----------[ Open ]-------------------------------------------
##
root/admin/admin_ug_auth.php
##
##-----------[ Find ]-------------------------------------------
##
	else
	{
		if ( $mode == 'user' && $HTTP_POST_VARS['userlevel'] == 'user' && $user_level == ADMIN )
##
##-----------[ Before, Add ]------------------------------------
##
## // Add this part if you DO NOT have the Global Announcement Mod installed
##
	else if ( $mode == 'user' && $HTTP_POST_VARS['userlevel'] == 'global_mod' && $user_level != GLOBAL_MOD )
	{
		//
		// Make user a global mod (if already user)
		//
		if ( $userdata['user_id'] != $user_id )
		{
			$sql = "UPDATE " . USERS_TABLE . "
				SET user_level = " . GLOBAL_MOD . "
				WHERE user_id = $user_id";
			if ( !($result = $db->sql_query($sql)) )
			{
				message_die(GENERAL_ERROR, 'Could not update user level', '', __LINE__, __FILE__, $sql);
			}

			$sql = "DELETE FROM " . AUTH_ACCESS_TABLE . "
				WHERE group_id = $group_id 
					AND auth_mod = 0";
			if ( !($result = $db->sql_query($sql)) )
			{
				message_die(GENERAL_ERROR, "Couldn't delete auth access info", "", __LINE__, __FILE__, $sql);
			}

			//
			// Delete any entries in auth_access, they are not required if user is becoming a
			// global mod
			//
			$sql = "UPDATE " . AUTH_ACCESS_TABLE . "
				SET auth_view = 0, auth_read = 0, auth_post = 0, auth_reply = 0, auth_edit = 0, auth_delete = 0, auth_sticky = 0, auth_announce = 0
				WHERE group_id = $group_id"; 
			if ( !($result = $db->sql_query($sql)) )
			{
				message_die(GENERAL_ERROR, "Couldn't update auth access", "", __LINE__, __FILE__, $sql);
			}
		}

		$message = $lang['Auth_updated'] . '<br /><br />' . sprintf($lang['Click_return_userauth'], '<a href="' . append_sid("admin_ug_auth.$phpEx?mode=$mode") . '">', '</a>') . '<br /><br />' . sprintf($lang['Click_return_admin_index'], '<a href="' . append_sid("index.$phpEx?pane=right") . '">', '</a>');
		message_die(GENERAL_MESSAGE, $message);
	}
##
## // Or add this part if you HAVE the Global Announcement Mod installed
##
	else if ( $mode == 'user' && $HTTP_POST_VARS['userlevel'] == 'global_mod' && $user_level != GLOBAL_MOD )
	{
		//
		// Make user a global mod (if already user)
		//
		if ( $userdata['user_id'] != $user_id )
		{
			$sql = "UPDATE " . USERS_TABLE . "
				SET user_level = " . GLOBAL_MOD . "
				WHERE user_id = $user_id";
			if ( !($result = $db->sql_query($sql)) )
			{
				message_die(GENERAL_ERROR, 'Could not update user level', '', __LINE__, __FILE__, $sql);
			}

			$sql = "DELETE FROM " . AUTH_ACCESS_TABLE . "
				WHERE group_id = $group_id 
					AND auth_mod = 0";
			if ( !($result = $db->sql_query($sql)) )
			{
				message_die(GENERAL_ERROR, "Couldn't delete auth access info", "", __LINE__, __FILE__, $sql);
			}

			//
			// Delete any entries in auth_access, they are not required if user is becoming a
			// global mod
			//
			$sql = "UPDATE " . AUTH_ACCESS_TABLE . "
				SET auth_view = 0, auth_read = 0, auth_post = 0, auth_reply = 0, auth_edit = 0, auth_delete = 0, auth_sticky = 0, auth_announce = 0, auth_globalannounce = 0
				WHERE group_id = $group_id"; 
			if ( !($result = $db->sql_query($sql)) )
			{
				message_die(GENERAL_ERROR, "Couldn't update auth access", "", __LINE__, __FILE__, $sql);
			}
		}

		$message = $lang['Auth_updated'] . '<br /><br />' . sprintf($lang['Click_return_userauth'], '<a href="' . append_sid("admin_ug_auth.$phpEx?mode=$mode") . '">', '</a>') . '<br /><br />' . sprintf($lang['Click_return_admin_index'], '<a href="' . append_sid("index.$phpEx?pane=right") . '">', '</a>');
		message_die(GENERAL_MESSAGE, $message);
	}
##
##------------[ Find ]--------------------------------------
##
				// Update users level, reset to USER
				//
				$sql = "UPDATE " . USERS_TABLE . "
					SET user_level = " . USER . "
					WHERE user_id = $user_id";
				if ( !($result = $db->sql_query($sql)) )
				{
					message_die(GENERAL_ERROR, 'Could not update user level', '', __LINE__, __FILE__, $sql);
				}
			}

			$message = $lang['Auth_updated'] . '<br /><br />' . sprintf($lang['Click_return_userauth'], '<a href="' . append_sid("admin_ug_auth.$phpEx?mode=$mode") . '">', '</a>') . '<br /><br />' . sprintf($lang['Click_return_admin_index'], '<a href="' . append_sid("index.$phpEx?pane=right") . '">', '</a>');
		}
##
##-------------[ After, Add ]--------------------------------
##
## // Add this part if you DO NOT have the Global Announcement Mod installed
##
		else if ( $mode == 'user' && $HTTP_POST_VARS['userlevel'] == 'user' && $user_level == GLOBAL_MOD )
		{
			//
			// Make global mod a user (if already global mod) ... ignore if you're trying
			// to change yourself from a global mod to user!
			//
			if ( $userdata['user_id'] != $user_id )
			{
				$sql = "UPDATE " . AUTH_ACCESS_TABLE . "
					SET auth_view = 0, auth_read = 0, auth_post = 0, auth_reply = 0, auth_edit = 0, auth_delete = 0, auth_sticky = 0, auth_announce = 0
					WHERE group_id = $group_id";
				if ( !($result = $db->sql_query($sql)) )
				{
					message_die(GENERAL_ERROR, 'Could not update auth access', '', __LINE__, __FILE__, $sql);
				}
\n
				//
				// Update users level, reset to USER
				//
				$sql = "UPDATE " . USERS_TABLE . "
					SET user_level = " . USER . "
					WHERE user_id = $user_id";
				if ( !($result = $db->sql_query($sql)) )
				{
					message_die(GENERAL_ERROR, 'Could not update user level', '', __LINE__, __FILE__, $sql);
				}
			}

			$message = $lang['Auth_updated'] . '<br /><br />' . sprintf($lang['Click_return_userauth'], '<a href="' . append_sid("admin_ug_auth.$phpEx?mode=$mode") . '">', '</a>') . '<br /><br />' . sprintf($lang['Click_return_admin_index'], '<a href="' . append_sid("index.$phpEx?pane=right") . '">', '</a>');
		}
##
## // Or add this part if you HAVE the Global Announcement Mod installed
##
		else if ( $mode == 'user' && $HTTP_POST_VARS['userlevel'] == 'user' && $user_level == GLOBAL_MOD )
		{
			//
			// Make global mod a user (if already global mod) ... ignore if you're trying
			// to change yourself from a global mod to user!
			//
			if ( $userdata['user_id'] != $user_id )
			{
				$sql = "UPDATE " . AUTH_ACCESS_TABLE . "
					SET auth_view = 0, auth_read = 0, auth_post = 0, auth_reply = 0, auth_edit = 0, auth_delete = 0, auth_sticky = 0, auth_announce = 0, auth_globalannounce = 0
					WHERE group_id = $group_id";
				if ( !($result = $db->sql_query($sql)) )
				{
					message_die(GENERAL_ERROR, 'Could not update auth access', '', __LINE__, __FILE__, $sql);
				}

				//
				// Update users level, reset to USER
				//
				$sql = "UPDATE " . USERS_TABLE . "
					SET user_level = " . USER . "
					WHERE user_id = $user_id";
				if ( !($result = $db->sql_query($sql)) )
				{
					message_die(GENERAL_ERROR, 'Could not update user level', '', __LINE__, __FILE__, $sql);
				}
			}

			$message = $lang['Auth_updated'] . '<br /><br />' . sprintf($lang['Click_return_userauth'], '<a href="' . append_sid("admin_ug_auth.$phpEx?mode=$mode") . '">', '</a>') . '<br /><br />' . sprintf($lang['Click_return_admin_index'], '<a href="' . append_sid("index.$phpEx?pane=right") . '">', '</a>');
		}
##
##--------------[ Find ]-------------------------------------------
##
## // Note: You must do this three times!
##
AND u.user_level NOT IN (" . USER . ", " . ADMIN . ")
##
##--------------[ Replace With ]-----------------------------------
##
## // Note: You must do this three times!
##
AND u.user_level NOT IN (" . USER . ", " . GLOBAL_MOD . ", " . ADMIN . ")
##
##--------------[ Find ]--------------------------------------------
##
WHERE u.user_level NOT IN (" . USER . ", " . ADMIN . ")
##
##--------------[ Replace With ]------------------------------------
##
WHERE u.user_level NOT IN (" . USER . ", " . GLOBAL_MOD . ", " . ADMIN . ")
##
##--------------[ Find ]--------------------------------------------
##
	$is_admin = ( $mode == 'user' ) ? ( ( $ug_info[0]['user_level'] == ADMIN && $ug_info[0]['user_id'] != ANONYMOUS ) ? 1 : 0 ) : 0;
##
##--------------[ After, Add ]--------------------------------------
##
	$is_global_mod = ( $mode == 'user' ) ? ( ( $ug_info[0]['user_level'] == GLOBAL_MOD && $ug_info[0]['user_id'] != ANONYMOUS ) ? 1 : 0 ) : 0;
	$is_user = ( $mode == 'user' ) ? ( ( $ug_info[0]['user_level'] == USER || $ug_info[0]['user_level'] == MOD && $ug_info[0]['user_id'] != ANONYMOUS ) ? 1 : 0 ) : 0;
##
##--------------[ Find ]--------------------------------------------
##
		s_user_type = ( $is_admin ) ? '<select name="userlevel"><option value="admin" selected="selected">' . $lang['Auth_Admin'] . '</option><option value="user">' . $lang['Auth_User'] . '</option></select>' : '<select name="userlevel"><option value="admin">' . $lang['Auth_Admin'] . '</option><option value="user" selected="selected">' . $lang['Auth_User'] . '</option></select>';
##
##--------------[ Replace With ]------------------------------------
##
		$s_user_type = '<select name="userlevel">';
		$s_user_type .= ($is_admin) ? '<option value="admin" selected=\"selected\">' . $lang['Auth_Admin'] . '</option>' : '<option value="admin">' . $lang['Auth_Admin'] . '</option>';
		$s_user_type .= ($is_global_mod) ? '<option value="global_mod" selected=\"selected\">' . $lang['Auth_Global'] . '</option>' : '<option value="global_mod">' . $lang['Auth_Global'] . '</option>';
		$s_user_type .= ($is_user) ? '<option value="user" selected=\"selected\">' . $lang['Auth_User'] . '</option>' : '<option value="user">' . $lang['Auth_User'] . '</option>';
		$s_user_type .= '</select>';
##
##--------------[ Find ]--------------------------------------------
##
AND u.user_level NOT IN (" . MOD . ", " . ADMIN . ")
##
##--------------[ Replace With ]------------------------------------
##
AND u.user_level NOT IN (" . MOD . ", " . GLOBAL_MOD . ", " . ADMIN . ")
##
##--------------[ Find ]--------------------------------------------
##
				$optionlist_acl = '<select name="private[' . $forum_id . ']">';

				if ( $is_admin || $user_ary['auth_mod'] )
##
##--------------[ Replace With ]------------------------------------
##
				$optionlist_acl = '<select name="private[' . $forum_id . ']">';

				if ( $is_admin || $is_global_mod || $user_ary['auth_mod'] )
##
##--------------[ Find ]--------------------------------------------
##
if ( isset($auth_field_acl[$forum_id][$field_name]) && !($is_admin || $user_ary['auth_mod']) )
##
##--------------[ Replace With ]------------------------------------
##
if ( isset($auth_field_acl[$forum_id][$field_name]) && !($is_admin || $is_global_mod || $user_ary['auth_mod']) )
##
##--------------[ Find ]--------------------------------------------
##
							else
							{
								if ( $is_admin || $user_ary['auth_mod'] )
								{
									$optionlist_acl_adv[$forum_id][$k] .= '<option value="1">' . $lang['ON'] . '</option>';
##
##--------------[ Replace With ]-------------------------------------
##
							else
							{
								if ( $is_admin || $is_global_mod || $user_ary['auth_mod'] )
								{
									$optionlist_acl_adv[$forum_id][$k] .= '<option value="1">' . $lang['ON'] . '</option>';
##
##--------------[ Open ]---------------------------------------------
##
root/includes/auth.php
##
##--------------[ Find ]---------------------------------------------
##
	$is_admin = ( $userdata['user_level'] == ADMIN && $userdata['session_logged_in'] ) ? TRUE : 0;
##
##--------------[ After, Add ]---------------------------------------
##
	$is_global_mod = ( $userdata['user_level'] == GLOBAL_MOD && $userdata['session_logged_in'] ) ? TRUE : 0;
##
##--------------[ Find ]---------------------------------------------
##
					$auth_user[$key] = ( $userdata['session_logged_in'] ) ? auth_check_user(AUTH_ACL, $key, $u_access, $is_admin) : 0;
##
##--------------[ Replace With ]-------------------------------------
##
					$auth_user[$key] = ( $userdata['session_logged_in'] ) ? auth_check_user(AUTH_ACL, $key, $u_access, $is_global_mod || $is_admin) : 0;
##
##--------------[ Find ]---------------------------------------------
##
					$auth_user[$key] = ( $userdata['session_logged_in'] ) ? auth_check_user(AUTH_MOD, 'auth_mod', $u_access, $is_admin) : 0;
##
##--------------[ Replace With ]-------------------------------------
##
					$auth_user[$key] = ( $userdata['session_logged_in'] ) ? auth_check_user(AUTH_MOD, 'auth_mod', $u_access, $is_global_mod || $is_admin) : 0;
##
##--------------[ Find ]---------------------------------------------
##
## // Don't do this part if you don't want to give global mods access to admin only forums
##
					$auth_user[$key] =  $is_admin;
##
##--------------[ Replace With ]-------------------------------------
##
## // Don't do this part if you don't want to give global mods access to admin only forums
##
					$auth_user[$key] =  $is_global_mod || $is_admin;
##
##--------------[ Find ]---------------------------------------------
##
						$auth_user[$f_forum_id][$key] = ( $userdata['session_logged_in'] ) ? auth_check_user(AUTH_ACL, $key, $u_access[$f_forum_id], $is_admin) : 0;
##
##--------------[ Replace With ]-------------------------------------
##
						$auth_user[$f_forum_id][$key] = ( $userdata['session_logged_in'] ) ? auth_check_user(AUTH_ACL, $key, $u_access[$f_forum_id], $is_global_mod || $is_admin) : 0;
##
##--------------[ Find ]---------------------------------------------
##
						$auth_user[$f_forum_id][$key] = ( $userdata['session_logged_in'] ) ? auth_check_user(AUTH_MOD, 'auth_mod', $u_access[$f_forum_id], $is_admin) : 0;
##
##--------------[ Replace With ]-------------------------------------
##
						$auth_user[$f_forum_id][$key] = ( $userdata['session_logged_in'] ) ? auth_check_user(AUTH_MOD, 'auth_mod', $u_access[$f_forum_id], $is_global_mod || $is_admin) : 0;
##
##--------------[ Find ]---------------------------------------------
##
## // Don't do this part if you don't want to give global mods access to admin only forums
##
						$auth_user[$f_forum_id][$key] =  $is_admin;
##
##--------------[ Replace With ]-------------------------------------
##
## // Don't do this part if you don't want to give global mods access to admin only forums
##
						$auth_user[$f_forum_id][$key] =  $is_global_mod || $is_admin;
##
##--------------[ Find ]---------------------------------------------
##
		$auth_user['auth_mod'] = ( $userdata['session_logged_in'] ) ? auth_check_user(AUTH_MOD, 'auth_mod', $u_access, $is_admin) : 0;
##
##--------------[ Replace With ]--------------------------------------
##
		$auth_user['auth_mod'] = ( $userdata['session_logged_in'] ) ? auth_check_user(AUTH_MOD, 'auth_mod', $u_access, $is_global_mod || $is_admin) : 0;
##
##--------------[ Find ]----------------------------------------------
##
			$auth_user[$f_forum_id]['auth_mod'] = ( $userdata['session_logged_in'] ) ? auth_check_user(AUTH_MOD, 'auth_mod', $u_access[$f_forum_id], $is_admin) : 0;
##
##--------------[ Replace With ]--------------------------------------
##
			$auth_user[$f_forum_id]['auth_mod'] = ( $userdata['session_logged_in'] ) ? auth_check_user(AUTH_MOD, 'auth_mod', $u_access[$f_forum_id], $is_global_mod || $is_admin) : 0;
##
##--------------------------------------------------------------------
##
## // Don't do the rest if you don't want global mods to have access to admin only forums
##
##--------------[ Find ]----------------------------------------------
##
					$result = $result || $is_admin;
##
##--------------[ Replace With ]--------------------------------------
##
					$result = $result || $is_global_mod || $is_admin;
##
##--------------[ Find ]----------------------------------------------
##
		$auth_user = $is_admin;
##
##--------------[ Replace With ]--------------------------------------
##
		$auth_user = $is_global_mod || $is_admin;
##
##--------------------------------------------------------------------
##
## EoM
使用版本:phpBB 2.0.6
網站位置:http://www.heyshowmover.com
狀況描述:
設置這個全區版主後,確實開放了所有權限,但卻遺漏了版主加減金幣的權限
(我有裝CASH MOD2.2.1)
我想此MOD的作者設計時並沒有將金幣權考慮進去,我該如何修改??


補充:
(我有裝CASH MOD2.2.1)
tsairandy
星球公民
星球公民
文章: 45
註冊時間: 2002-11-08 11:54

文章 tsairandy »

是不是沒人裝過全區版主加CASH MOD呢?
hk_andy_hk
星球公民
星球公民
文章: 93
註冊時間: 2002-10-31 14:23
來自: CrAzY ZoNe
聯繫:

文章 hk_andy_hk »

第一次聽見這個Mod @@~ 幫不了你~

不知道這個Mod除了管理所有版外, 還有沒有超級版主管理台的那樣功能?
圖檔
http://crazy-zone.com
CrAzY ZoNe 已轉換到v4.5了~

http://crazy-zone.com/topsitesphp/index.php
小站的登錄及投票系統
Kill
竹貓忠實會員
竹貓忠實會員
文章: 874
註冊時間: 2003-07-31 12:40
來自: CKD Studio
聯繫:

文章 Kill »

全區版主就是超級版主吧....
喜歡...就是淡淡ㄉ愛... ...則是深深ㄉ喜歡...
圖檔
提供phpBB代架服務以及外掛安裝

有付費服務的問題請移駕至CKD Studio發問 ╮( ̄▽ ̄)╭
tsairandy
星球公民
星球公民
文章: 45
註冊時間: 2002-11-08 11:54

文章 tsairandy »

不是超級版主吧....

看上面,我貼在上面的Global Moderator Mod

我看到CASH 和超級版主可以解決,我想這個應該可以
主題已鎖定

回到「外掛問題討論」