Sfoglia il codice sorgente

! Also the PM view needs to respect the visibility of profile fileds

Signed-off-by: emanuele <[email protected]>
emanuele 12 anni fa
parent
commit
8af1c0c989

+ 1 - 1
Sources/Display.php

@@ -1145,7 +1145,7 @@ function prepareDisplayContext($reset = false)
 	}
 
 	$memberContext[$message['id_member']]['ip'] = $message['poster_ip'];
-	$context['show_profile_buttons'] = $settings['show_profile_buttons'] && (!empty($memberContext[$message['id_member']]['can_view_profile']) || (!empty($memberContext[$message['id_member']]['website']['url']) && !isset($context['disabled_fields']['website'])) || (in_array($memberContext[$message['id_member']]['show_email'], array('yes', 'yes_permission_override', 'no_through_forum'))) || $context['can_send_pm']);
+	$memberContext[$message['id_member']]['show_profile_buttons'] = $settings['show_profile_buttons'] && (!empty($memberContext[$message['id_member']]['can_view_profile']) || (!empty($memberContext[$message['id_member']]['website']['url']) && !isset($context['disabled_fields']['website'])) || (in_array($memberContext[$message['id_member']]['show_email'], array('yes', 'yes_permission_override', 'no_through_forum'))) || $context['can_send_pm']);
 
 	// Do the censor thang.
 	censorText($message['body']);

+ 3 - 1
Sources/PersonalMessage.php

@@ -856,7 +856,7 @@ function MessageFolder()
  */
 function prepareMessageContext($type = 'subject', $reset = false)
 {
-	global $txt, $scripturl, $modSettings, $context, $messages_request, $memberContext, $recipients, $smcFunc;
+	global $txt, $scripturl, $modSettings, $settings, $context, $messages_request, $memberContext, $recipients, $smcFunc;
 	global $user_info, $subjects_request;
 
 	// Count the current message number....
@@ -945,6 +945,8 @@ function prepareMessageContext($type = 'subject', $reset = false)
 		$memberContext[$message['id_member_from']]['can_see_warning'] = !isset($context['disabled_fields']['warning_status']) && $memberContext[$message['id_member_from']]['warning_status'] && ($context['user']['can_mod'] || (!empty($modSettings['warning_show']) && ($modSettings['warning_show'] > 1 || $message['id_member_from'] == $user_info['id'])));
 	}
 
+		$memberContext[$message['id_member_from']]['show_profile_buttons'] = $settings['show_profile_buttons'] && (!empty($memberContext[$message['id_member_from']]['can_view_profile']) || (!empty($memberContext[$message['id_member_from']]['website']['url']) && !isset($context['disabled_fields']['website'])) || (in_array($memberContext[$message['id_member_from']]['show_email'], array('yes', 'yes_permission_override', 'no_through_forum'))) || $context['can_send_pm']);
+
 	// Censor all the important text...
 	censorText($message['body']);
 	censorText($message['subject']);

+ 1 - 1
Themes/default/Display.template.php

@@ -350,7 +350,7 @@ function template_main()
 								</li>';
 
 			// Show the profile, website, email address, and personal message buttons.
-			if ($context['show_profile_buttons'])
+			if ($message['member']['show_profile_buttons'])
 			{
 				echo '
 								<li class="profile">

+ 3 - 2
Themes/default/PersonalMessage.template.php

@@ -291,14 +291,15 @@ function template_folder()
 				</li>';
 
 				// Show the profile, website, email address, and personal message buttons.
-				if ($settings['show_profile_buttons'])
+				if ($message['member']['show_profile_buttons'])
 				{
 					echo '
 				<li class="profile">
 					<ul>';
 
 					// Show the profile button
-					echo '
+					if ($message['member']['can_view_profile'])
+						echo '
 						<li><a href="', $message['member']['href'], '">', ($settings['use_image_buttons'] ? '<img src="' . $settings['images_url'] . '/icons/profile_sm.png" alt="' . $txt['view_profile'] . '" title="' . $txt['view_profile'] . '" />' : $txt['view_profile']), '</a></li>';
 
 					// Don't show an icon if they haven't specified a website.