############################################################## 
## 
## MOD Title:             User Level Hidden Messages
## 
## MOD Author:            aUsTiN => austin_inc@hotmail.com 
## 
## MOD Description:       This allows users to hide messages inside posts that only 
##				certain user levels can read such as ADMIN, MOD, USER
## 
## MOD Version:           1.0.0 
## 
## MOD Help:              http://phpbb-tweaks.com/ 
## 
## Installation Level:    Easy
## 
## Installation Time:     3 Minutes
## 
## Files To Edit:         6
## 
## Included Files:        0
## 
############################################################## 
## 
## MOD History: 
## 
##   May 06th 2005 - Version 1.0.0
##         - Released 
##
############################################################## 
##
## Author Notes:
##
############################################################## 
## 
##   Definitions: 
## 
##      Root: 	Folder your config.php is located 
##      lang_*: Your language folder (all language folders are recommended)
## 
############################################################## 

-----------------------------------
----[ OPEN ]-----------------------
-----------------------------------

Root/posting.php

-----------------------------------
----[ FIND ]-----------------------
-----------------------------------

	'L_BBCODE_CLOSE_TAGS' => $lang['Close_Tags'],

-----------------------------------
----[ BEFORE, ADD ]----------------
-----------------------------------

#======================================================================= |
#==== Start: == User Level Hidden Messages ============================= |
#==== v1.0.0 =========================================================== |
#====	
	'L_USER_LEVEL_BUTTONS'	=> prepare_staff_message_filter(),
#====
#==== Author: aUsTiN [austin@phpbb-amod.com] [http://phpbb-tweaks.com] = |
#==== End: ==== User Level Hidden Messages ============================= |	
#======================================================================= |

-----------------------------------
----[ CLOSE & SAVE ]---------------
-----------------------------------

-----------------------------------
----[ OPEN ]-----------------------
-----------------------------------

Root/viewtopic.php

-----------------------------------
----[ FIND ]-----------------------
-----------------------------------

	$template->assign_block_vars('postrow', array(

-----------------------------------
----[ BEFORE, ADD ]----------------
-----------------------------------

#======================================================================= |
#==== Start: == User Level Hidden Messages ============================= |
#==== v1.0.0 =========================================================== |
#====	
	if ( (strstr($message, '[admin]')) && (strstr($message, '[moderator]')) && (strstr($message, '[user]')) )
		$message = parse_staff_message_filter($message);
#====
#==== Author: aUsTiN [austin@phpbb-amod.com] [http://phpbb-tweaks.com] = |
#==== End: ==== User Level Hidden Messages ============================= |	
#======================================================================= |

-----------------------------------
----[ CLOSE & SAVE ]---------------
-----------------------------------

-----------------------------------
----[ OPEN ]-----------------------
-----------------------------------

Root/includes/functions.php

-----------------------------------
----[ FIND ]-----------------------
-----------------------------------

?>

-----------------------------------
----[ BEFORE, ADD ]----------------
-----------------------------------

#======================================================================= |
#==== Start: == User Level Hidden Messages ============================= |
#==== v1.0.0 =========================================================== |
#====		
	function prepare_staff_message_filter()
		{
		global $userdata, $lang;
						
		#==== Generate button set depending on user level
		$button_set = '';
		#==== Admin, all 3 buttons (admin, mod, user)
		if ($userdata['user_level'] == ADMIN)
			$button_set = sprintf($lang['staff_message_text_admin'], '<a href="javascript:emoticon(\'\n[admin]\n[/admin]\n\')" alt="'. $lang['staff_message_text_admin_e'] .'" title="'. $lang['staff_message_text_admin_e'] .'">', '</a>', '<a href="javascript:emoticon(\'\n[moderator]\n[/moderator]\n\')" alt="'. $lang['staff_message_text_mod_e'] .'" title="'. $lang['staff_message_text_mod_e'] .'">', '</a>', '<a href="javascript:emoticon(\'\n[user]\n[/user]\n\')" alt="'. $lang['staff_message_text_user_e'] .'" title="'. $lang['staff_message_text_user_e'] .'">', '</a>');
		#==== Mods, 2 buttons (mod, user)
		if ($userdata['user_level'] == MOD)
			$button_set = sprintf($lang['staff_message_text_mod'], '<a href="javascript:emoticon(\'\n[moderator]\n[/moderator]\n\')" alt="'. $lang['staff_message_text_mod_e'] .'" title="'. $lang['staff_message_text_mod_e'] .'">', '</a>', '<a href="javascript:emoticon(\'\n[user]\n[/user]\n\')" alt="'. $lang['staff_message_text_user_e'] .'" title="'. $lang['staff_message_text_user_e'] .'">', '</a>');		
		#==== Users, 1 button (user)
		if ($userdata['user_level'] == USER)
			$button_set = sprintf($lang['staff_message_text_user'], '<a href="javascript:emoticon(\'\n[user]\n[/user]\n\')" alt="'. $lang['staff_message_text_user_e'] .'" title="'. $lang['staff_message_text_user_e'] .'">', '</a>');
			
		return $button_set;
		}
				
	function parse_staff_message_filter($message)
		{
		global $userdata, $lang;
				
		#==== Handle Admin Hidden Messages, Only Viewable To Admins		
		if (strstr($message, '[admin]'))
			{
			#==== Not An Admin, Return Lang Key
			if ($userdata['user_level'] != ADMIN)
				$message = preg_replace("#\[admin\](.*?)\[/admin\]#si", $lang['staff_message_replace'], $message);
			#==== Admin, Let Them See It
			else
				{
			$message = str_replace('[admin]', '<table width="80%" align="left" class="forumline"><tr><th width="100%" align="center" class="thTop">'. $lang['staff_message_admin'] .'</th></tr><tr><td width="100%" class="row2" align="left"><span class="genmed">', $message);
			$message = str_replace('[/admin]', '</span></td></tr><th class="thTop" width="100%">&nbsp;</th></table><br clear="all">', $message);
				}
			}
			
		#==== Handle Admin & Mod Hidden Messages, Only Viewable To Admins & Mods
		if (strstr($message, '[moderator]'))
			{
			if ($userdata['user_level'] == MOD || $userdata['user_level'] == ADMIN)
				$allowed = TRUE;
			else
				$allowed = '';
			#==== Not An Admin or Mod, Deny It
			if (!$allowed)
				$message = preg_replace("#\[moderator\](.*?)\[/moderator\]#si", $lang['staff_message_replace'], $message);
			#==== Admin or Mod, Let Them See It
			else
				{
			$message = str_replace('[moderator]', '<table width="80%" align="left" class="forumline"><tr><th width="100%" align="center" class="thTop">'. $lang['staff_message_mod'] .'</th></tr><tr><td width="100%" class="row2" align="left"><span class="genmed">', $message);
			$message = str_replace('[/moderator]', '</span></td></tr><th class="thTop" width="100%">&nbsp;</th></table><br clear="all">', $message);
				}
			}
			
		#==== Handle Admin & Mod & User Hidden Messages, Only Viewable To Admins & Mods & Users, No Guests		
		if (strstr($message, '[user]'))
			{
			#==== A Guest, Deny It
			if ($userdata['user_id'] == ANONYMOUS)
				$message = preg_replace("#\[user\](.*?)\[/user\]#si", $lang['staff_message_replace'], $message);
			#==== Not A Guest, They Can View
			else
				{
			$message = str_replace('[user]', '<table width="80%" align="left" class="forumline"><tr><th width="100%" align="center" class="thTop">'. $lang['staff_message_user'] .'</th></tr><tr><td width="100%" class="row2" align="left"><span class="genmed">', $message);
			$message = str_replace('[/user]', '</span></td></tr><th class="thTop" width="100%">&nbsp;</th></table><br clear="all">', $message);
				}
			}						
		return $message;
		}
#====
#==== Author: aUsTiN [austin@phpbb-amod.com] [http://phpbb-tweaks.com] = |
#==== End: ==== User Level Hidden Messages ============================= |	
#======================================================================= |

-----------------------------------
----[ CLOSE & SAVE ]---------------
-----------------------------------

-----------------------------------
----[ OPEN ]-----------------------
-----------------------------------

Root/includes/topic_review.php

-----------------------------------
----[ FIND ]-----------------------
-----------------------------------

			$template->assign_block_vars('postrow', array(

-----------------------------------
----[ BEFORE, ADD ]----------------
-----------------------------------

#======================================================================= |
#==== Start: == User Level Hidden Messages ============================= |
#==== v1.0.0 =========================================================== |
#====		
			if ( (strstr($message, '[admin]')) && (strstr($message, '[moderator]')) && (strstr($message, '[user]')) )
				$message = parse_staff_message_filter($message);
#====
#==== Author: aUsTiN [austin@phpbb-amod.com] [http://phpbb-tweaks.com] = |
#==== End: ==== User Level Hidden Messages ============================= |	
#======================================================================= |

-----------------------------------
----[ CLOSE & SAVE ]---------------
-----------------------------------

-----------------------------------
----[ OPEN ]-----------------------
-----------------------------------

Root/language/lang_*/lang_main.php

-----------------------------------
----[ FIND ]-----------------------
-----------------------------------

?>

-----------------------------------
----[ BEFORE, ADD ]----------------
-----------------------------------

#======================================================================= |
#==== Start: == User Level Hidden Messages ============================= |
#==== v1.0.0 =========================================================== |
#====		
$lang['staff_message_replace'] 		= '<i>Staff Message Insert</i>';
$lang['staff_message_admin']		= 'Admin Message';
$lang['staff_message_mod']			= 'Admin &amp; Moderator Message';
$lang['staff_message_user']			= 'Admin &amp; Moderator &amp; User Message';
$lang['staff_message_text_admin']	= '%sAdmin Filter%s&nbsp;&nbsp;&nbsp;&nbsp;%sMod Filter%s&nbsp;&nbsp;&nbsp;&nbsp;%sUser Filter%s';
$lang['staff_message_text_mod']		= '%sMod Filter%s&nbsp;&nbsp;&nbsp;&nbsp;%sUser Filter%s';
$lang['staff_message_text_user']	= '%sUser Filter%s';
$lang['staff_message_text_admin_e']	= 'Anything you put in this filter, only other admins will be able to read.';
$lang['staff_message_text_mod_e']	= 'Anything you put in this filter, only moderators &amp; admins will be able to read.';
$lang['staff_message_text_user_e']	= 'Anything you put in this filter, guests will not be able to read.';
#====
#==== Author: aUsTiN [austin@phpbb-amod.com] [http://phpbb-tweaks.com] = |
#==== End: ==== User Level Hidden Messages ============================= |	
#======================================================================= |

-----------------------------------
----[ CLOSE & SAVE ]---------------
-----------------------------------

-----------------------------------
----[ OPEN ]-----------------------
-----------------------------------

Root/templates/*/posting_body.tpl

-----------------------------------
----[ FIND SIMILAR ]---------------
-----------------------------------

		  <tr> 
			<td colspan="9"><span class="gen"> 
			  <textarea name="message" rows="15" cols="35" wrap="virtual" style="width:450px" tabindex="3" class="post" onselect="storeCaret(this);" onclick="storeCaret(this);" onkeyup="storeCaret(this);">{MESSAGE}</textarea>
			  </span></td>
		  </tr>

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

	<tr>
		<td colspan="9">
			<span class="gensmall">
				{L_USER_LEVEL_BUTTONS}	
			</span>
		</td>
	</tr>

-----------------------------------
----[ CLOSE & SAVE ]---------------
-----------------------------------

EoM