Index: styles/prosilver/template/ucp_pm_viewmessage.html
===================================================================
--- styles/prosilver/template/ucp_pm_viewmessage.html	(revision 10057)
+++ styles/prosilver/template/ucp_pm_viewmessage.html	(working copy)
@@ -70,6 +70,10 @@
 		
{L_JOINED}: {AUTHOR_JOINED}
 		{L_LOCATION}: {AUTHOR_FROM}
 		
+		
+		{custom_fields.PROFILE_FIELD_NAME}: {custom_fields.PROFILE_FIELD_VALUE}
+		
+		
 		
 		
 			
Index: language/en/acp/board.php
===================================================================
--- language/en/acp/board.php	(revision 10057)
+++ language/en/acp/board.php	(working copy)
@@ -341,6 +341,7 @@
 	'LIMIT_SESSIONS'				=> 'Limit sessions',
 	'LIMIT_SESSIONS_EXPLAIN'		=> 'If the number of sessions exceeds this value within a one minute period the board will go offline. Set to 0 for unlimited sessions.',
 	'LOAD_CPF_MEMBERLIST'			=> 'Allow styles to display custom profile fields in memberlist',
+	'LOAD_CPF_PM'					=> 'Display custom profile fields in private messages',
 	'LOAD_CPF_VIEWPROFILE'			=> 'Display custom profile fields in user profiles',
 	'LOAD_CPF_VIEWTOPIC'			=> 'Display custom profile fields on topic pages',
 	'LOAD_USER_ACTIVITY'			=> 'Show user’s activity',
Index: includes/acp/acp_board.php
===================================================================
--- includes/acp/acp_board.php	(revision 10057)
+++ includes/acp/acp_board.php	(working copy)
@@ -95,6 +95,7 @@
 						'load_moderators'		=> array('lang' => 'YES_MODERATORS',		'validate' => 'bool',	'type' => 'radio:yes_no', 'explain' => false),
 						'load_jumpbox'			=> array('lang' => 'YES_JUMPBOX',			'validate' => 'bool',	'type' => 'radio:yes_no', 'explain' => false),
 						'load_cpf_memberlist'	=> array('lang' => 'LOAD_CPF_MEMBERLIST',	'validate' => 'bool',	'type' => 'radio:yes_no', 'explain' => false),
+						'load_cpf_pm'			=> array('lang' => 'LOAD_CPF_PM',			'validate' => 'bool',	'type' => 'radio:yes_no', 'explain'	=> false),
 						'load_cpf_viewprofile'	=> array('lang' => 'LOAD_CPF_VIEWPROFILE',	'validate' => 'bool',	'type' => 'radio:yes_no', 'explain' => false),
 						'load_cpf_viewtopic'	=> array('lang' => 'LOAD_CPF_VIEWTOPIC',	'validate' => 'bool',	'type' => 'radio:yes_no', 'explain' => false),
 
@@ -316,6 +317,7 @@
 
 						'legend3'				=> 'CUSTOM_PROFILE_FIELDS',
 						'load_cpf_memberlist'	=> array('lang' => 'LOAD_CPF_MEMBERLIST',	'validate' => 'bool',	'type' => 'radio:yes_no', 'explain' => false),
+						'load_cpf_pm'			=> array('lang' => 'LOAD_CPF_PM',			'validate' => 'bool',	'type' => 'radio:yes_no', 'explain'	=> false),
 						'load_cpf_viewprofile'	=> array('lang' => 'LOAD_CPF_VIEWPROFILE',	'validate' => 'bool',	'type' => 'radio:yes_no', 'explain' => false),
 						'load_cpf_viewtopic'	=> array('lang' => 'LOAD_CPF_VIEWTOPIC',	'validate' => 'bool',	'type' => 'radio:yes_no', 'explain' => false),
 
Index: includes/ucp/ucp_pm_viewmessage.php
===================================================================
--- includes/ucp/ucp_pm_viewmessage.php	(revision 10057)
+++ includes/ucp/ucp_pm_viewmessage.php	(working copy)
@@ -58,6 +58,18 @@
 		include($phpbb_root_path . 'includes/bbcode.' . $phpEx);
 		$bbcode = new bbcode($message_row['bbcode_bitfield']);
 	}
+	
+	// Load the custom profile fields
+	if ($config['load_cpf_pm'])
+	{
+		if (!class_exists('custom_profile'))
+		{
+			include($phpbb_root_path . 'includes/functions_profile_fields.' . $phpEx);
+		}
+		$cp = new custom_profile();
+		
+		$profile_fields = $cp->generate_profile_fields_template('grab', $author_id);
+	}
 
 	// Assign TO/BCC Addresses to template
 	write_pm_addresses(array('to' => $message_row['to_address'], 'bcc' => $message_row['bcc_address']), $author_id);
@@ -171,6 +183,13 @@
 
 	// Number of "to" recipients
 	$num_recipients = (int) preg_match_all('/:?(u|g)_([0-9]+):?/', $message_row['to_address'], $match);
+	
+	// Get the profile fields template data
+	$cp_row = array();
+	if ($config['load_cpf_pm'] && isset($profile_fields[$author_id]))
+	{
+		$cp_row = $cp->generate_profile_fields_template('show', false, $profile_fields[$author_id]);
+	}
 
 	$template->assign_vars(array(
 		'MESSAGE_AUTHOR_FULL'		=> get_username_string('full', $author_id, $user_info['username'], $user_info['user_colour'], $user_info['username']),
@@ -229,10 +248,23 @@
 		'S_AUTHOR_DELETED'	=> ($author_id == ANONYMOUS) ? true : false,
 		'S_SPECIAL_FOLDER'	=> in_array($folder_id, array(PRIVMSGS_NO_BOX, PRIVMSGS_OUTBOX)),
 		'S_PM_RECIPIENTS'	=> $num_recipients,
+		'S_CUSTOM_FIELDS'	=> (!empty($cp_row['row'])) ? true : false,
 
 		'U_PRINT_PM'		=> ($config['print_pm'] && $auth->acl_get('u_pm_printpm')) ? "$url&f=$folder_id&p=" . $message_row['msg_id'] . "&view=print" : '',
 		'U_FORWARD_PM'		=> ($config['forward_pm'] && $auth->acl_get('u_sendpm') && $auth->acl_get('u_pm_forward')) ? "$url&mode=compose&action=forward&f=$folder_id&p=" . $message_row['msg_id'] : '')
 	);
+	
+	// Display the custom profile fields
+	if (!empty($cp_row['row']))
+	{
+		$template->assign_vars($cp_row['row']);
+		
+		// Loop them
+		foreach ($cp_row['blockrow'] as $cp_block_row)
+		{
+			$template->assign_block_vars('custom_fields', $cp_block_row);
+		}
+	}
 
 	// Display not already displayed Attachments for this post, we already parsed them. ;)
 	if (isset($attachments) && sizeof($attachments))
Index: install/schemas/schema_data.sql
===================================================================
--- install/schemas/schema_data.sql	(revision 10057)
+++ install/schemas/schema_data.sql	(working copy)
@@ -153,6 +153,7 @@
 INSERT INTO phpbb_config (config_name, config_value) VALUES ('load_anon_lastread', '0');
 INSERT INTO phpbb_config (config_name, config_value) VALUES ('load_birthdays', '1');
 INSERT INTO phpbb_config (config_name, config_value) VALUES ('load_cpf_memberlist', '0');
+INSERT INTO phpbb_config (config_name, config_value) VALUES ('load_cpf_profile', '0');
 INSERT INTO phpbb_config (config_name, config_value) VALUES ('load_cpf_viewprofile', '1');
 INSERT INTO phpbb_config (config_name, config_value) VALUES ('load_cpf_viewtopic', '0');
 INSERT INTO phpbb_config (config_name, config_value) VALUES ('load_db_lastread', '1');
Index: install/database_update.php
===================================================================
--- install/database_update.php	(revision 10057)
+++ install/database_update.php	(working copy)
@@ -1123,6 +1123,9 @@
 
 			// Entry for reporting PMs
 			set_config('allow_pm_report', '1');
+			
+			// Entry to allow custom profile fields in pm templates
+			set_config('load_cpf_pm', '0');
 
 			include_once($phpbb_root_path . 'includes/acp/acp_modules.' . $phpEx);