diff options
Diffstat (limited to 'mod/messages/views')
-rw-r--r-- | mod/messages/views/default/forms/messages/process.php | 43 | ||||
-rw-r--r-- | mod/messages/views/default/forms/messages/reply.php | 43 | ||||
-rw-r--r-- | mod/messages/views/default/forms/messages/send.php | 54 | ||||
-rw-r--r-- | mod/messages/views/default/messages/css.php | 63 | ||||
-rw-r--r-- | mod/messages/views/default/messages/js.php | 7 | ||||
-rw-r--r-- | mod/messages/views/default/object/messages.php | 86 |
6 files changed, 296 insertions, 0 deletions
diff --git a/mod/messages/views/default/forms/messages/process.php b/mod/messages/views/default/forms/messages/process.php new file mode 100644 index 000000000..cb30792e9 --- /dev/null +++ b/mod/messages/views/default/forms/messages/process.php @@ -0,0 +1,43 @@ +<?php +/** + * Messages folder view (inbox, sent) + * + * Provides form body for mass deleting messages + * + * @uses $vars['list'] List of messages + * + */ + +$messages = $vars['list']; +if (!$messages) { + echo elgg_echo('messages:nomessages'); + return true; +} + +echo '<div class="messages-container">'; +echo $messages; +echo '</div>'; + +echo '<div class="elgg-foot messages-buttonbank">'; + +echo elgg_view('input/submit', array( + 'value' => elgg_echo('delete'), + 'name' => 'delete', + 'class' => 'elgg-button-delete elgg-requires-confirmation', + 'title' => elgg_echo('deleteconfirm:plural'), +)); + +if ($vars['folder'] == "inbox") { + echo elgg_view('input/submit', array( + 'value' => elgg_echo('messages:markread'), + 'name' => 'read', + )); +} + +echo elgg_view('input/button', array( + 'value' => elgg_echo('messages:toggle'), + 'class' => 'elgg-button elgg-button-cancel', + 'id' => 'messages-toggle', +)); + +echo '</div>'; diff --git a/mod/messages/views/default/forms/messages/reply.php b/mod/messages/views/default/forms/messages/reply.php new file mode 100644 index 000000000..a0a01afce --- /dev/null +++ b/mod/messages/views/default/forms/messages/reply.php @@ -0,0 +1,43 @@ +<?php +/** + * Reply form + * + * @uses $vars['message'] + */ + +// fix for RE: RE: RE: that builds on replies +$reply_title = $vars['message']->title; +if (strncmp($reply_title, "RE:", 3) != 0) { + $reply_title = "RE: " . $reply_title; +} + +echo elgg_view('input/hidden', array( + 'name' => 'recipient_guid', + 'value' => $vars['message']->fromId, +)); +echo elgg_view('input/hidden', array( + 'name' => 'reply', + 'value' => $vars['message']->guid, +)); + +?> + +<div> + <label><?php echo elgg_echo("messages:title"); ?>: <br /></label> + <?php echo elgg_view('input/text', array( + 'name' => 'subject', + 'value' => $reply_title, + )); + ?> +</div> +<div> + <label><?php echo elgg_echo("messages:message"); ?>:</label> + <?php echo elgg_view("input/longtext", array( + 'name' => 'body', + 'value' => '', + )); + ?> +</div> +<div class="elgg-foot"> + <?php echo elgg_view('input/submit', array('value' => elgg_echo('messages:send'))); ?> +</div> diff --git a/mod/messages/views/default/forms/messages/send.php b/mod/messages/views/default/forms/messages/send.php new file mode 100644 index 000000000..5b7e7830e --- /dev/null +++ b/mod/messages/views/default/forms/messages/send.php @@ -0,0 +1,54 @@ +<?php +/** + * Compose message form + * + * @package ElggMessages + * @uses $vars['friends'] + */ + +$recipient_guid = elgg_extract('recipient_guid', $vars, 0); +$subject = elgg_extract('subject', $vars, ''); +$body = elgg_extract('body', $vars, ''); + +$recipients_options = array(); +foreach ($vars['friends'] as $friend) { + $recipients_options[$friend->guid] = $friend->name; +} + +if (!array_key_exists($recipient_guid, $recipients_options)) { + $recipient = get_entity($recipient_guid); + if (elgg_instanceof($recipient, 'user')) { + $recipients_options[$recipient_guid] = $recipient->name; + } +} + +$recipient_drop_down = elgg_view('input/dropdown', array( + 'name' => 'recipient_guid', + 'value' => $recipient_guid, + 'options_values' => $recipients_options, +)); + +?> +<div> + <label><?php echo elgg_echo("messages:to"); ?>: </label> + <?php echo $recipient_drop_down; ?> +</div> +<div> + <label><?php echo elgg_echo("messages:title"); ?>: <br /></label> + <?php echo elgg_view('input/text', array( + 'name' => 'subject', + 'value' => $subject, + )); + ?> +</div> +<div> + <label><?php echo elgg_echo("messages:message"); ?>:</label> + <?php echo elgg_view("input/longtext", array( + 'name' => 'body', + 'value' => $body, + )); + ?> +</div> +<div class="elgg-foot"> + <?php echo elgg_view('input/submit', array('value' => elgg_echo('messages:send'))); ?> +</div> diff --git a/mod/messages/views/default/messages/css.php b/mod/messages/views/default/messages/css.php new file mode 100644 index 000000000..f304e0f15 --- /dev/null +++ b/mod/messages/views/default/messages/css.php @@ -0,0 +1,63 @@ +<?php +/** + * Elgg Messages CSS + * + * @package ElggMessages + */ +?> + +.messages-container { + min-height: 200px; +} +.message.unread a { + color: #d40005; +} +.messages-buttonbank { + text-align: right; +} +.messages-buttonbank input { + margin-left: 10px; +} + +/*** message metadata ***/ +.messages-owner { + float: left; + width: 20%; + margin-right: 2%; +} +.messages-subject { + float: left; + width: 55%; + margin-right: 2%; +} +.messages-timestamp { + float: left; + width: 14%; + margin-right: 2%; +} +.messages-delete { + float: left; + width: 5%; +} +/*** topbar icon ***/ +.messages-new { + color: white; + background-color: red; + + -webkit-border-radius: 10px; + -moz-border-radius: 10px; + border-radius: 10px; + + -webkit-box-shadow: -2px 2px 4px rgba(0, 0, 0, 0.50); + -moz-box-shadow: -2px 2px 4px rgba(0, 0, 0, 0.50); + box-shadow: -2px 2px 4px rgba(0, 0, 0, 0.50); + + position: absolute; + text-align: center; + top: 0px; + left: 26px; + min-width: 16px; + height: 16px; + font-size: 10px; + font-weight: bold; +} diff --git a/mod/messages/views/default/messages/js.php b/mod/messages/views/default/messages/js.php new file mode 100644 index 000000000..60cf36b92 --- /dev/null +++ b/mod/messages/views/default/messages/js.php @@ -0,0 +1,7 @@ + +// messages plugin toggle +elgg.register_hook_handler('init', 'system', function() { + $("#messages-toggle").click(function() { + $('input[type=checkbox]').click(); + }); +}); diff --git a/mod/messages/views/default/object/messages.php b/mod/messages/views/default/object/messages.php new file mode 100644 index 000000000..b12f98522 --- /dev/null +++ b/mod/messages/views/default/object/messages.php @@ -0,0 +1,86 @@ +<?php +/** + * File renderer. + * + * @package ElggFile + */ + +$full = elgg_extract('full_view', $vars, false); +$message = elgg_extract('entity', $vars, false); + +if (!$message) { + return true; +} + +if ($message->toId == elgg_get_page_owner_guid()) { + // received + $user = get_entity($message->fromId); + if ($user) { + $icon = elgg_view_entity_icon($user, 'tiny'); + $user_link = elgg_view('output/url', array( + 'href' => "messages/compose?send_to=$user->guid", + 'text' => $user->name, + 'is_trusted' => true, + )); + } else { + $icon = ''; + $user_link = elgg_echo('messages:deleted_sender'); + } + + if ($message->readYet) { + $class = 'message read'; + } else { + $class = 'message unread'; + } + +} else { + // sent + $user = get_entity($message->toId); + + if ($user) { + $icon = elgg_view_entity_icon($user, 'tiny'); + $user_link = elgg_view('output/url', array( + 'href' => "messages/compose?send_to=$user->guid", + 'text' => elgg_echo('messages:to_user', array($user->name)), + 'is_trusted' => true, + )); + } else { + $icon = ''; + $user_link = elgg_echo('messages:deleted_sender'); + } + + $class = 'message read'; +} + +$timestamp = elgg_view_friendly_time($message->time_created); + +$subject_info = ''; +if (!$full) { + $subject_info .= "<input type='checkbox' name=\"message_id[]\" value=\"{$message->guid}\" />"; +} +$subject_info .= elgg_view('output/url', array( + 'href' => $message->getURL(), + 'text' => $message->title, + 'is_trusted' => true, +)); + +$delete_link = elgg_view("output/confirmlink", array( + 'href' => "action/messages/delete?guid=" . $message->getGUID(), + 'text' => "<span class=\"elgg-icon elgg-icon-delete float-alt\"></span>", + 'confirm' => elgg_echo('deleteconfirm'), + 'encode_text' => false, + )); + +$body = <<<HTML +<div class="messages-owner">$user_link</div> +<div class="messages-subject">$subject_info</div> +<div class="messages-timestamp">$timestamp</div> +<div class="messages-delete">$delete_link</div> +HTML; + +if ($full) { + echo elgg_view_image_block($icon, $body, array('class' => $class)); + echo elgg_view('output/longtext', array('value' => $message->description)); +} else { + echo elgg_view_image_block($icon, $body, array('class' => $class)); +}
\ No newline at end of file |