From 9e198bd6a68fc0cb255bae5ca310e256f3ed2317 Mon Sep 17 00:00:00 2001 From: Andrew Davis Date: Wed, 18 Jul 2012 08:37:23 +0800 Subject: [PATCH] MDL-28568 message: added a warning message when the user is about to message someone who cant reply --- lang/en/message.php | 3 ++- message/index.php | 15 +++++++++++++-- theme/standard/style/core.css | 1 + 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/lang/en/message.php b/lang/en/message.php index 5aa5f4e6083..de1f60cca9b 100644 --- a/lang/en/message.php +++ b/lang/en/message.php @@ -82,6 +82,7 @@ $string['messagehistory'] = 'Message history'; $string['messagehistoryfull'] = 'All messages'; $string['messages'] = 'Messages'; $string['messaging'] = 'Messaging'; +$string['messagingblockednoncontact'] = '{$a} will not be able to reply as you have blocked non-contacts'; $string['messagingdisabled'] = 'Messaging is disabled on this site, emails will be sent instead'; $string['mycontacts'] = 'My contacts'; $string['newonlymsg'] = 'Show only new'; @@ -139,5 +140,5 @@ $string['unreadnewmessage'] = 'New message from {$a}'; $string['unreadnewnotification'] = 'New notification'; $string['unreadnewnotifications'] = 'New notifications ({$a})'; $string['userisblockingyou'] = 'This user has blocked you from sending messages to them'; -$string['userisblockingyounoncontact'] = 'This user is only accepting messages from people listed as contacts, and you are not currently on the list.'; +$string['userisblockingyounoncontact'] = '{$a} only accepts messages from their contacts.'; $string['userssearchresults'] = 'Users found: {$a}'; diff --git a/message/index.php b/message/index.php index b7498a97c56..5dd251f1d4a 100644 --- a/message/index.php +++ b/message/index.php @@ -154,7 +154,7 @@ if ($currentuser && !empty($user2) && has_capability('moodle/site:sendmessage', if (!empty($userpreferences['message_blocknoncontacts'])) { // User is blocking non-contacts if (empty($contact)) { // We are not a contact! - $messageerror = get_string('userisblockingyounoncontact', 'message'); + $messageerror = get_string('userisblockingyounoncontact', 'message', fullname($user2)); } } @@ -288,8 +288,19 @@ echo html_writer::start_tag('div', array('class' => 'messagearea mdl-align')); if ($currentuser && has_capability('moodle/site:sendmessage', $context)) { echo html_writer::start_tag('div', array('class' => 'mdl-align messagesend')); if (!empty($messageerror)) { - echo $OUTPUT->heading($messageerror, 3); + echo html_writer::tag('span', $messageerror, array('id' => 'messagewarning')); } else { + // Display a warning if the current user is blocking non-contacts and is about to message to a non-contact + // Otherwise they may wonder why they never get a reply + $blocknoncontacts = get_user_preferences('message_blocknoncontacts', '', $user1->id); + if (!empty($blocknoncontacts)) { + $contact = $DB->get_record('message_contacts', array('userid' => $user1->id, 'contactid' => $user2->id)); + if (empty($contact)) { + $msg = get_string('messagingblockednoncontact', 'message', fullname($user2)); + echo html_writer::tag('span', $msg, array('id' => 'messagewarning')); + } + } + $mform = new send_form(); $defaultmessage = new stdClass; $defaultmessage->id = $user2->id; diff --git a/theme/standard/style/core.css b/theme/standard/style/core.css index 4b69618ca9f..4e6de97ea2f 100644 --- a/theme/standard/style/core.css +++ b/theme/standard/style/core.css @@ -451,3 +451,4 @@ table#tag-management-list {margin: 10px auto;width: 80%;} #page-message-edit table.generaltable th.c0 {text-align: left;} #page-message-edit table.generaltable td.c0 {text-align: right;} #page-message-edit table.generaltable td.disallowed {text-align: center;vertical-align:middle;} +#messagewarning {font-style:italic;}