aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcash <cash@36083f99-b078-4883-b0ff-0f9b5a30f544>2010-05-12 23:31:00 +0000
committercash <cash@36083f99-b078-4883-b0ff-0f9b5a30f544>2010-05-12 23:31:00 +0000
commit4ae064871ba9dca9f03e095671db48815632d070 (patch)
treeccccacdac0f608e2d262d1d3a8916408c033f132
parent8618288ed51942c814f45c67354b14eec43c2422 (diff)
downloadelgg-4ae064871ba9dca9f03e095671db48815632d070.tar.gz
elgg-4ae064871ba9dca9f03e095671db48815632d070.tar.bz2
merging messageboard cleanup from 1.7 branch [5908],[5909],[5917]
git-svn-id: http://code.elgg.org/elgg/trunk@6019 36083f99-b078-4883-b0ff-0f9b5a30f544
-rw-r--r--mod/messageboard/actions/add.php98
-rw-r--r--mod/messageboard/actions/delete.php75
-rw-r--r--mod/messageboard/ajax_endpoint/load.php111
-rw-r--r--mod/messageboard/history.php74
-rw-r--r--mod/messageboard/index.php73
-rw-r--r--mod/messageboard/languages/en.php118
-rw-r--r--mod/messageboard/readme.txt13
-rw-r--r--mod/messageboard/start.php164
-rw-r--r--mod/messageboard/views/default/messageboard/css.php4
-rw-r--r--mod/messageboard/views/default/messageboard/forms/add.php49
-rw-r--r--mod/messageboard/views/default/messageboard/group_messageboard.php96
-rw-r--r--mod/messageboard/views/default/messageboard/messageboard.php67
-rw-r--r--mod/messageboard/views/default/messageboard/messageboard_content.php110
-rw-r--r--mod/messageboard/views/default/river/object/messageboard/create.php14
-rw-r--r--mod/messageboard/views/default/widgets/messageboard/edit.php52
-rw-r--r--mod/messageboard/views/default/widgets/messageboard/view.php165
16 files changed, 559 insertions, 724 deletions
diff --git a/mod/messageboard/actions/add.php b/mod/messageboard/actions/add.php
index 98ffe4b47..7b2402732 100644
--- a/mod/messageboard/actions/add.php
+++ b/mod/messageboard/actions/add.php
@@ -1,68 +1,40 @@
<?php
- /**
- * Elgg Message board: add message action
- *
- * @package ElggMessageBoard
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider Ltd <info@elgg.com>
- * @copyright Curverider Ltd 2008-2010
- * @link http://elgg.org/
- */
+/**
+ * Elgg Message board: add message action
+ *
+ * @package ElggMessageBoard
+ * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
+ * @author Curverider Ltd <info@elgg.com>
+ * @copyright Curverider Ltd 2008-2010
+ * @link http://elgg.org/
+ */
- // Make sure we're logged in; forward to the front page if not
- if (!isloggedin()) forward();
-
- // Get input
- $message_content = get_input('message_content'); // the actual message
- $page_owner = get_input("pageOwner"); // the message board owner
- $message_owner = get_input("guid"); // the user posting the message
- $user = get_entity($page_owner); // the message board owner's details
-
- // Let's see if we can get a user entity from the specified page_owner
- if ($user && !empty($message_content)) {
-
- // If posting the comment was successful, say so
- if ($user->annotate('messageboard',$message_content,$user->access_id, $_SESSION['user']->getGUID())) {
-
- global $CONFIG;
-
- if ($user->getGUID() != $_SESSION['user']->getGUID())
- notify_user($user->getGUID(), $_SESSION['user']->getGUID(), elgg_echo('messageboard:email:subject'),
- sprintf(
- elgg_echo('messageboard:email:body'),
- $_SESSION['user']->name,
- $message_content,
- $CONFIG->wwwroot . "pg/messageboard/" . $user->username,
- $_SESSION['user']->name,
- $_SESSION['user']->getURL()
- )
- );
-
- system_message(elgg_echo("messageboard:posted"));
- // add to river
- add_to_river('river/object/messageboard/create','messageboard',$_SESSION['user']->guid,$user->guid);
+// Get input
+$message_content = get_input('message_content'); // the actual message
+$page_owner = get_input("pageOwner"); // the message board owner
+$user = get_entity($page_owner); // the message board owner's details
-
- } else {
-
- register_error(elgg_echo("messageboard:failure"));
-
- }
-
- //set the url to return the user to the correct message board
- $url = "pg/messageboard/" . $user->username;
-
- } else {
-
- register_error(elgg_echo("messageboard:blank"));
-
- //set the url to return the user to the correct message board
- $url = "pg/messageboard/" . $user->username;
-
- }
-
- // Forward back to the messageboard
- forward($url);
+// Let's see if we can get a user entity from the specified page_owner
+if ($user && !empty($message_content)) {
-?> \ No newline at end of file
+ if (messageboard_add(get_loggedin_user(), $user, $message_content, $user->access_id)) {
+ system_message(elgg_echo("messageboard:posted"));
+ } else {
+ register_error(elgg_echo("messageboard:failure"));
+ }
+
+ //set the url to return the user to the correct message board
+ $url = "pg/messageboard/" . $user->username;
+
+} else {
+
+ register_error(elgg_echo("messageboard:blank"));
+
+ //set the url to return the user to the correct message board
+ $url = "pg/messageboard/" . $user->username;
+
+}
+
+// Forward back to the messageboard
+forward($url);
diff --git a/mod/messageboard/actions/delete.php b/mod/messageboard/actions/delete.php
index 9c17f1fcd..c903a0d20 100644
--- a/mod/messageboard/actions/delete.php
+++ b/mod/messageboard/actions/delete.php
@@ -1,44 +1,41 @@
<?php
- /**
- * Elgg Message board: delete message action
- *
- * @package ElggMessageBoard
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider Ltd <info@elgg.com>
- * @copyright Curverider Ltd 2008-2010
- * @link http://elgg.org/
- */
+/**
+ * Elgg Message board: delete message action
+ *
+ * @package ElggMessageBoard
+ * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
+ * @author Curverider Ltd <info@elgg.com>
+ * @copyright Curverider Ltd 2008-2010
+ * @link http://elgg.org/
+ */
- // Ensure we're logged in
- if (!isloggedin()) forward();
-
- // Make sure we can get the comment in question
- $annotation_id = (int) get_input('annotation_id');
-
- //make sure that there is a message on the message board matching the passed id
- if ($message = get_annotation($annotation_id)) {
-
- //grab the user or group entity
- $entity = get_entity($message->entity_guid);
-
- //check to make sure the current user can actually edit the message board
- if ($message->canEdit()) {
- //delete the comment
- $message->delete();
- //display message
- system_message(elgg_echo("messageboard:deleted"));
- //generate the url to forward to
- $url = "pg/messageboard/" . $entity->username;
- //forward the user back to their message board
- forward($url);
- }
-
- } else {
- $url = "";
- system_message(elgg_echo("messageboard:notdeleted"));
- }
-
+// Make sure we can get the comment in question
+$annotation_id = (int) get_input('annotation_id');
+
+//make sure that there is a message on the message board matching the passed id
+if ($message = get_annotation($annotation_id)) {
+
+ //grab the user or group entity
+ $entity = get_entity($message->entity_guid);
+
+ //check to make sure the current user can actually edit the message board
+ if ($message->canEdit()) {
+ //delete the comment
+ $message->delete();
+ // delete river entry
+ remove_from_river_by_annotation($annotation_id);
+ //display message
+ system_message(elgg_echo("messageboard:deleted"));
+ //generate the url to forward to
+ $url = "pg/messageboard/" . $entity->username;
+ //forward the user back to their message board
forward($url);
+ }
+
+} else {
+ $url = "";
+ system_message(elgg_echo("messageboard:notdeleted"));
+}
-?> \ No newline at end of file
+forward($url);
diff --git a/mod/messageboard/ajax_endpoint/load.php b/mod/messageboard/ajax_endpoint/load.php
index 5bba34681..28f6766ff 100644
--- a/mod/messageboard/ajax_endpoint/load.php
+++ b/mod/messageboard/ajax_endpoint/load.php
@@ -1,73 +1,46 @@
<?php
- /**
- * Elgg message board widget ajax logic page
- *
- * @package ElggMessageBoard
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider Ltd <info@elgg.com>
- * @copyright Curverider Ltd 2008-2010 - 2009
- * @link http://elgg.com/
- */
+/**
+ * Elgg message board widget ajax logic page
+ *
+ * @package ElggMessageBoard
+ * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
+ * @author Curverider Ltd <info@elgg.com>
+ * @copyright Curverider Ltd 2008-2010 - 2009
+ * @link http://elgg.com/
+ */
- // Load Elgg engine will not include plugins
- require_once(dirname(dirname(dirname(dirname(__FILE__)))) . "/engine/start.php");
-
- //get the required info
-
- //the actual message
- $message = get_input('messageboard_content');
- //the number of messages to display
- $numToDisplay = get_input('numToDisplay');
- //get the full page owner entity
- $user = get_entity($_POST['pageOwner']);
-
- //stage one - if a message was posted, add it as an annotation
- if($message){
-
- // If posting the comment was successful, send message
- if ($user->annotate('messageboard',$message,$user->access_id, $_SESSION['user']->getGUID())) {
-
- global $CONFIG;
-
- if ($user->getGUID() != $_SESSION['user']->getGUID())
- notify_user($user->getGUID(), $_SESSION['user']->getGUID(), elgg_echo('messageboard:email:subject'),
- sprintf(
- elgg_echo('messageboard:email:body'),
- $_SESSION['user']->name,
- $message,
- $CONFIG->wwwroot . "pg/messageboard/" . $user->username,
- $_SESSION['user']->name,
- $_SESSION['user']->getURL()
- )
- );
-
- // add to river
- add_to_river('river/object/messageboard/create','messageboard',$_SESSION['user']->guid,$user->guid);
- }else{
- register_error(elgg_echo("messageboard:failure"));
- }
-
- } else {
-
- echo elgg_echo('messageboard:somethingwentwrong');
-
- }
-
- //step two - grab the latest messageboard contents, this will include the message above, unless an issue
- //has occurred.
- $contents = $user->getAnnotations('messageboard', $numToDisplay, 0, 'desc');
-
- //step three - display the latest results
- if($contents){
-
- foreach($contents as $content) {
-
- echo elgg_view("messageboard/messageboard_content", array('annotation' => $content));
-
- }
-
- }
+// Load Elgg engine will not include plugins
+require_once(dirname(dirname(dirname(dirname(__FILE__)))) . "/engine/start.php");
-
-?> \ No newline at end of file
+//get the required info
+
+//the actual message
+$message = get_input('messageboard_content');
+//the number of messages to display
+$numToDisplay = get_input('numToDisplay');
+//get the full page owner entity
+$user = get_entity(get_input('pageOwner'));
+
+//stage one - if a message was posted, add it as an annotation
+if ($message) {
+
+ if (!messageboard_add(get_loggedin_user(), $user, $message, $user->access_id)) {
+ echo elgg_echo("messageboard:failure");
+ }
+
+} else {
+ echo elgg_echo('messageboard:somethingwentwrong');
+}
+
+
+//step two - grab the latest messageboard contents, this will include the message above, unless an issue
+//has occurred.
+$contents = $user->getAnnotations('messageboard', $numToDisplay, 0, 'desc');
+
+//step three - display the latest results
+if ($contents) {
+ foreach ($contents as $content) {
+ echo elgg_view("messageboard/messageboard_content", array('annotation' => $content));
+ }
+}
diff --git a/mod/messageboard/history.php b/mod/messageboard/history.php
index 1f7ecd0e4..3accb9ae9 100644
--- a/mod/messageboard/history.php
+++ b/mod/messageboard/history.php
@@ -1,43 +1,35 @@
<?php
- /**
- * Elgg Message board history page
- *
- * @package ElggMessageBoard
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider Ltd <info@elgg.com>
- * @copyright Curverider Ltd 2008-2010
- * @link http://elgg.com/
- */
-
-
- // Load Elgg engine
- require_once(dirname(dirname(dirname(__FILE__))) . "/engine/start.php");
-
- // Get the user who is the owner of the message board
- $current_user = $_SESSION['user']->getGUID(); //history is only available for your own wall
- $history_user = get_input('user'); // this is the user how has posted on your messageboard that you want to display your history with
-
-
- // Get any annotations for their message board
- // $contents = $entity->getAnnotations('messageboard', 50, 0, 'desc');
-
- $users_array = array($current_user, $history_user);
-
- $contents = get_annotations($users_array, "user", "", "messageboard", $value = "", $users_array, $limit = 10, $offset = 0, $order_by = "desc");
-
- // Get the content to display
- $area2 = elgg_view_title(elgg_echo('messageboard:history:title'));
- $area2 .= elgg_view("messageboard/messageboard", array('annotation' => $contents));
-
- //$area1 = "<h2>Profile owner: " . $current_user . "</h2>";
- //$area1 .= "<h2>User guid: " . $history_user . "</h2>";
-
-
- //select the correct canvas area
- $body = elgg_view_layout("two_column_left_sidebar", '', $area2);
-
- // Display page
- page_draw(elgg_echo('messageboard:history:title'),$body);
-
-?> \ No newline at end of file
+/**
+ * Elgg Message board history page
+ *
+ * @package ElggMessageBoard
+ * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
+ * @author Curverider Ltd <info@elgg.com>
+ * @copyright Curverider Ltd 2008-2010
+ * @link http://elgg.com/
+ */
+
+
+// Load Elgg engine
+require_once(dirname(dirname(dirname(__FILE__))) . "/engine/start.php");
+
+// Get the user who is the owner of the message board
+$current_user = get_loggedin_userid();
+
+// this is the user how has posted on your messageboard that you want to display your history with
+$history_user = get_input('user');
+
+$users_array = array($current_user, $history_user);
+
+$contents = get_annotations($users_array, "user", "", "messageboard", $value = "", $users_array, $limit = 10, $offset = 0, $order_by = "desc");
+
+// Get the content to display
+$area2 = elgg_view_title(elgg_echo('messageboard:history:title'));
+$area2 .= elgg_view("messageboard/messageboard", array('annotation' => $contents));
+
+//select the correct canvas area
+$body = elgg_view_layout("two_column_left_sidebar", '', $area2);
+
+// Display page
+page_draw(elgg_echo('messageboard:history:title'),$body);
diff --git a/mod/messageboard/index.php b/mod/messageboard/index.php
index 5c73bf168..97798e8bb 100644
--- a/mod/messageboard/index.php
+++ b/mod/messageboard/index.php
@@ -1,39 +1,38 @@
<?php
- /**
- * Elgg Message board index page
- *
- * @package ElggMessageBoard
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider Ltd <info@elgg.com>
- * @copyright Curverider Ltd 2008-2010
- * @link http://elgg.com/
- */
-
-
- // Load Elgg engine
- require_once(dirname(dirname(dirname(__FILE__))) . "/engine/start.php");
-
- // Get the user who is the owner of the message board
- $entity = get_entity(page_owner());
-
- // Get any annotations for their message board
- $contents = $entity->getAnnotations('messageboard', 50, 0, 'desc');
-
- // Get the content to display
- $area2 = elgg_view_title(elgg_echo('messageboard:board'));
-
- // only display the add form and board to logged in users
- if(isloggedin()){
- $area2 .= elgg_view("messageboard/forms/add");
- $area2 .= elgg_view("messageboard/messageboard", array('annotation' => $contents));
- }
-
-
- //select the correct canvas area
- $body = elgg_view_layout("two_column_left_sidebar", '', $area2);
-
- // Display page
- page_draw(sprintf(elgg_echo('messageboard:user'),$entity->name),$body);
-
-?> \ No newline at end of file
+/**
+ * Elgg Message board index page
+ *
+ * @package ElggMessageBoard
+ * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
+ * @author Curverider Ltd <info@elgg.com>
+ * @copyright Curverider Ltd 2008-2010
+ * @link http://elgg.com/
+ */
+
+
+// Load Elgg engine
+require_once(dirname(dirname(dirname(__FILE__))) . "/engine/start.php");
+
+// Get the user who is the owner of the message board
+$entity = get_entity(page_owner());
+
+// Get any annotations for their message board
+$contents = $entity->getAnnotations('messageboard', 50, 0, 'desc');
+
+// Get the content to display
+$area2 = elgg_view_title(elgg_echo('messageboard:board'));
+
+// only display the add form and board to logged in users
+if (isloggedin()) {
+ $area2 .= elgg_view("messageboard/forms/add");
+ $area2 .= elgg_view("messageboard/messageboard", array('annotation' => $contents));
+}
+
+
+//select the correct canvas area
+$body = elgg_view_layout("two_column_left_sidebar", '', $area2);
+
+// Display page
+page_draw(sprintf(elgg_echo('messageboard:user'),$entity->name),$body);
+
diff --git a/mod/messageboard/languages/en.php b/mod/messageboard/languages/en.php
index ebe2cd50c..537177014 100644
--- a/mod/messageboard/languages/en.php
+++ b/mod/messageboard/languages/en.php
@@ -1,49 +1,49 @@
<?php
- $english = array(
-
- /**
- * Menu items and titles
- */
-
- 'messageboard:board' => "Message board",
- 'messageboard:messageboard' => "message board",
- 'messageboard:viewall' => "View all",
- 'messageboard:postit' => "Post it",
- 'messageboard:history:title' => "History",
- 'messageboard:none' => "There is nothing on this message board yet",
- 'messageboard:num_display' => "Number of messages to display",
- 'messageboard:desc' => "This is a message board that you can put on your profile where other users can comment.",
-
- 'messageboard:user' => "%s's message board",
-
- 'messageboard:replyon' => 'reply on',
- 'messageboard:history' => "history",
-
- /**
- * Message board widget river
- **/
-
- 'messageboard:river:annotate' => "%s has had a new comment posted on their message board.",
- 'messageboard:river:create' => "%s added the message board widget.",
- 'messageboard:river:update' => "%s updated their message board widget.",
- 'messageboard:river:added' => "%s posted on",
- 'messageboard:river:messageboard' => "message board",
+$english = array(
-
- /**
- * Status messages
- */
-
- 'messageboard:posted' => "You successfully posted on the message board.",
- 'messageboard:deleted' => "You successfully deleted the message.",
-
- /**
- * Email messages
- */
-
- 'messageboard:email:subject' => 'You have a new message board comment!',
- 'messageboard:email:body' => "You have a new message board comment from %s. It reads:
+ /**
+ * Menu items and titles
+ */
+
+ 'messageboard:board' => "Message board",
+ 'messageboard:messageboard' => "message board",
+ 'messageboard:viewall' => "View all",
+ 'messageboard:postit' => "Post",
+ 'messageboard:history:title' => "History",
+ 'messageboard:none' => "There is nothing on this message board yet",
+ 'messageboard:num_display' => "Number of messages to display",
+ 'messageboard:desc' => "This is a message board that you can put on your profile where other users can comment.",
+
+ 'messageboard:user' => "%s's message board",
+
+ 'messageboard:replyon' => 'reply on',
+ 'messageboard:history' => "history",
+
+ /**
+ * Message board widget river
+ **/
+
+ 'messageboard:river:annotate' => "%s has had a new comment posted on their message board.",
+ 'messageboard:river:create' => "%s added the message board widget.",
+ 'messageboard:river:update' => "%s updated their message board widget.",
+ 'messageboard:river:added' => "%s posted on",
+ 'messageboard:river:messageboard' => "message board",
+
+
+ /**
+ * Status messages
+ */
+
+ 'messageboard:posted' => "You successfully posted on the message board.",
+ 'messageboard:deleted' => "You successfully deleted the message.",
+
+ /**
+ * Email messages
+ */
+
+ 'messageboard:email:subject' => 'You have a new message board comment!',
+ 'messageboard:email:body' => "You have a new message board comment from %s. It reads:
%s
@@ -58,20 +58,18 @@ To view %s's profile, click here:
%s
You cannot reply to this email.",
-
- /**
- * Error messages
- */
-
- 'messageboard:blank' => "Sorry; you need to actually put something in the message area before we can save it.",
- 'messageboard:notfound' => "Sorry; we could not find the specified item.",
- 'messageboard:notdeleted' => "Sorry; we could not delete this message.",
- 'messageboard:somethingwentwrong' => "Something went wrong when trying to save your message, make sure you actually wrote a message.",
-
- 'messageboard:failure' => "An unexpected error occurred when adding your message. Please try again.",
-
- );
-
- add_translation("en",$english);
-
-?> \ No newline at end of file
+
+ /**
+ * Error messages
+ */
+
+ 'messageboard:blank' => "Sorry; you need to actually put something in the message area before we can save it.",
+ 'messageboard:notfound' => "Sorry; we could not find the specified item.",
+ 'messageboard:notdeleted' => "Sorry; we could not delete this message.",
+ 'messageboard:somethingwentwrong' => "Something went wrong when trying to save your message, make sure you actually wrote a message.",
+
+ 'messageboard:failure' => "An unexpected error occurred when adding your message. Please try again.",
+
+);
+
+add_translation("en", $english);
diff --git a/mod/messageboard/readme.txt b/mod/messageboard/readme.txt
deleted file mode 100644
index feffd6651..000000000
--- a/mod/messageboard/readme.txt
+++ /dev/null
@@ -1,13 +0,0 @@
-/**
- * Elgg message board
- *
- * @package ElggMessageBoard
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Dave Tosh <dave@elgg.com>
- * @copyright Curverider Ltd 2008-2009
- * @link http://elgg.com/
-*/
-
-This plugin provides Elgg profiles, both users and groups, with a basic message board for comments and media.
-
-Install: Just drop it into the mod directory and that should be it.
diff --git a/mod/messageboard/start.php b/mod/messageboard/start.php
index 0d9033a82..0ddb58169 100644
--- a/mod/messageboard/start.php
+++ b/mod/messageboard/start.php
@@ -1,71 +1,97 @@
<?php
- /**
- * Elgg Message board
- * This plugin allows users and groups to attach a message board to their profile for other users
- * to post comments and media.
- *
- * @todo allow users to attach media such as photos and videos as well as other resources such as bookmarked content
- *
- * @package ElggMessageBoard
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider Ltd <info@elgg.com>
- * @copyright Curverider Ltd 2008-2010
- * @link http://elgg.com/
- */
-
- /**
- * MessageBoard initialisation
- *
- * These parameters are required for the event API, but we won't use them:
- *
- * @param unknown_type $event
- * @param unknown_type $object_type
- * @param unknown_type $object
- */
-
- function messageboard_init() {
-
- // Load system configuration
- global $CONFIG;
-
- // Extend system CSS with our own styles, which are defined in the messageboard/css view
- elgg_extend_view('css','messageboard/css');
-
- // Register a page handler, so we can have nice URLs
- register_page_handler('messageboard','messageboard_page_handler');
-
- // add a messageboard widget
- add_widget_type('messageboard',"". elgg_echo("messageboard:board") . "","" . elgg_echo("messageboard:desc") . ".", "profile");
-
-
- }
-
- /**
- * Messageboard page handler
- *
- * @param array $page Array of page elements, forwarded by the page handling mechanism
- */
- function messageboard_page_handler($page) {
-
- global $CONFIG;
-
- // The username should be the file we're getting
- if (isset($page[0])) {
- set_input('username',$page[0]);
- }
- // Include the standard messageboard index
- include($CONFIG->pluginspath . "messageboard/index.php");
-
- }
-
-
- // Make sure the shouts initialisation function is called on initialisation
- register_elgg_event_handler('init','system','messageboard_init');
-
- // Register actions
- global $CONFIG;
- register_action("messageboard/add",false,$CONFIG->pluginspath . "messageboard/actions/add.php");
- register_action("messageboard/delete",false,$CONFIG->pluginspath . "messageboard/actions/delete.php");
-
-?> \ No newline at end of file
+/**
+ * Elgg Message board
+ * This plugin allows users and groups to attach a message board to their profile for other users
+ * to post comments.
+ *
+ * @package ElggMessageBoard
+ * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
+ * @author Curverider Ltd <info@elgg.com>
+ * @copyright Curverider Ltd 2008-2010
+ * @link http://elgg.com/
+ */
+
+/**
+ * MessageBoard initialisation
+ */
+function messageboard_init() {
+
+ // Extend system CSS with our own styles, which are defined in the messageboard/css view
+ elgg_extend_view('css', 'messageboard/css');
+
+ // Register a page handler, so we can have nice URLs
+ register_page_handler('messageboard', 'messageboard_page_handler');
+
+ // add a messageboard widget - only for profile
+ add_widget_type('messageboard', elgg_echo("messageboard:board"), elgg_echo("messageboard:desc"), "profile");
+}
+
+/**
+ * Messageboard page handler
+ *
+ * @param array $page Array of page elements, forwarded by the page handling mechanism
+ */
+function messageboard_page_handler($page) {
+
+ global $CONFIG;
+
+ // The username should be the first array entry
+ if (isset($page[0])) {
+ set_input('username', $page[0]);
+ }
+
+ // Include the standard messageboard index
+ include($CONFIG->pluginspath . "messageboard/index.php");
+}
+
+/**
+ * Add messageboard post
+ *
+ * @param ElggUser $poster User posting the message
+ * @param ElggUser $owner User who owns the message board
+ * @param string $message The posted message
+ * @param int $access_id Access level (see defines in elgglib.php)
+ * @return bool
+ */
+function messageboard_add($poster, $owner, $message, $access_id = ACCESS_PUBLIC) {
+ global $CONFIG;
+
+ $result = $owner->annotate('messageboard', $message, $access_id, $poster->guid);
+ if (!$result) {
+ return FALSE;
+ }
+
+ add_to_river('river/object/messageboard/create',
+ 'messageboard',
+ $poster->guid,
+ $owner->guid,
+ $access_id,
+ 0,
+ $result);
+
+ // only send notification if not self
+ if ($poster->guid != $owner->guid) {
+ $subject = elgg_echo('messageboard:email:subject');
+ $body = sprintf(
+ elgg_echo('messageboard:email:body'),
+ $poster->name,
+ $message,
+ $CONFIG->wwwroot . "pg/messageboard/" . $owner->username,
+ $poster->name,
+ $poster->getURL()
+ );
+
+ notify_user($owner->guid, $poster->guid, $subject, $body);
+ }
+
+ return TRUE;
+}
+
+
+// Register initialisation callback
+register_elgg_event_handler('init', 'system', 'messageboard_init');
+
+// Register actions
+register_action("messageboard/add", FALSE, $CONFIG->pluginspath . "messageboard/actions/add.php");
+register_action("messageboard/delete", FALSE, $CONFIG->pluginspath . "messageboard/actions/delete.php");
diff --git a/mod/messageboard/views/default/messageboard/css.php b/mod/messageboard/views/default/messageboard/css.php
index 0bf150bc2..2dd25a364 100644
--- a/mod/messageboard/views/default/messageboard/css.php
+++ b/mod/messageboard/views/default/messageboard/css.php
@@ -89,7 +89,3 @@ p.message_item_timestamp {
background-position: 0 -16px;
}
-
-
-
-
diff --git a/mod/messageboard/views/default/messageboard/forms/add.php b/mod/messageboard/views/default/messageboard/forms/add.php
index 91337fdc9..f835e8af0 100644
--- a/mod/messageboard/views/default/messageboard/forms/add.php
+++ b/mod/messageboard/views/default/messageboard/forms/add.php
@@ -1,32 +1,29 @@
<?php
- /**
- * Elgg Message board add form
- *
- * @package ElggMessageBoard
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider Ltd <info@elgg.com>
- * @copyright Curverider Ltd 2008-2010
- * @link http://elgg.com/
- */
-
+/**
+ * Elgg Message board add form
+ *
+ * @package ElggMessageBoard
+ * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
+ * @author Curverider Ltd <info@elgg.com>
+ * @copyright Curverider Ltd 2008-2010
+ * @link http://elgg.com/
+ */
+
?>
<div id="mb_input_wrapper">
-<form action="<?php echo $vars['url']; ?>action/messageboard/add" method="post" name="messageboardForm">
-
- <!-- textarea for the contents -->
- <textarea name="message_content" value="" class="input_textarea"></textarea><br />
-
- <!-- the person posting an item on the message board -->
- <input type="hidden" name="guid" value="<?php echo $_SESSION['guid']; ?>" />
-
- <!-- the page owner, this will be the profile owner -->
- <input type="hidden" name="pageOwner" value="<?php echo page_owner(); ?>" />
+ <form action="<?php echo $vars['url']; ?>action/messageboard/add" method="post" name="messageboardForm">
+
+ <!-- textarea for the contents -->
+ <textarea name="message_content" value="" class="input_textarea"></textarea><br />
+
+ <!-- the page owner, this will be the profile owner -->
+ <input type="hidden" name="pageOwner" value="<?php echo page_owner(); ?>" />
+
+ <?php echo elgg_view('input/securitytoken'); ?>
+
+ <!-- submit messages input -->
+ <input type="submit" id="postit" value="<?php echo elgg_echo('messageboard:postit'); ?>">
- <?php echo elgg_view('input/securitytoken'); ?>
-
- <!-- submit messages input -->
- <input type="submit" id="postit" value="<?php echo elgg_echo('messageboard:postit'); ?>">
-
-</form>
+ </form>
</div>
diff --git a/mod/messageboard/views/default/messageboard/group_messageboard.php b/mod/messageboard/views/default/messageboard/group_messageboard.php
deleted file mode 100644
index 8662d45ac..000000000
--- a/mod/messageboard/views/default/messageboard/group_messageboard.php
+++ /dev/null
@@ -1,96 +0,0 @@
-<?php
-
- /**
- * Elgg messageboard group profile view
- *
- * @package ElggMessageBoard
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider Ltd <info@elgg.com>
- * @copyright Curverider Ltd 2008-2010
- * @link http://elgg.com/
- */
-
- // get the groups passed over here
-
- //get the full page owner entity
- $entity = $vars['entity'];
-
- $num_display = 10;
-
-?>
-<script type="text/JavaScript">
-$(document).ready(function(){
-
- $("#postit").click(function(){
-
- //display the ajax loading gif at the start of the function call
- //$('#loader').html('<img src="<?php echo $vars['url']; ?>_graphics/ajax_loader.gif" />');
- $('#loader').html('<?php echo elgg_view('ajax/loader',array('slashes' => true)); ?>');
-
-
- //load the results back into the message board contents and remove the loading gif
- //remember that the actual div being populated is determined on views/default/messageboard/messageboard.php
- $("#messageboard_wrapper").load("<?php echo $vars['url']; ?>mod/messageboard/ajax_endpoint/load.php", {messageboard_content:$("[name=message_content]").val(), pageOwner:$("[name=pageOwner]").val(), numToDisplay:<?php echo $num_display; ?>}, function(){
- $('#loader').empty(); // remove the loading gif
- $('[name=message_content]').val(''); // clear the input textarea
- }); //end
-
- }); // end of the main click function
-
-}); //end of the document .ready function
-</script>
-
-<div id="mb_input_wrapper"><!-- start of mb_input_wrapper div -->
-
- <h2><?php echo elgg_echo("messageboard:board"); ?></h2>
-
-<?php
- //if not a member don't display the add comment to messageboard
- if(is_group_member($entity->guid, $_SESSION['guid'])){
-?>
-
- <!-- message textarea -->
- <textarea name="message_content" id="testing" value="" class="input_textarea"></textarea>
-
- <!-- the person posting an item on the message board -->
- <input type="hidden" name="guid" value="<?php echo $_SESSION['guid']; ?>" class="guid" />
-
- <!-- the page owner, this will be the profile owner -->
- <input type="hidden" name="pageOwner" value="<?php echo page_owner(); ?>" class="pageOwner" />
-
- <!-- submit button -->
- <input type="submit" id="postit" value="<?php echo elgg_echo('messageboard:postit'); ?>">
-
- <!-- menu options -->
- <div id="messageboard_widget_menu">
- <a href="<?php echo $vars['url']; ?>pg/messageboard/<?php echo get_entity(page_owner())->username; ?>"><?php echo elgg_echo("messageboard:viewall"); ?></a>
- </div>
-
- <!-- loading graphic -->
- <div id="loader" class="loading"> </div>
-
-<?php
- }
-?>
-
-</div><!-- end of mb_input_wrapper div -->
-
-
- <?php
-
- //this for the first time the page loads, grab the latest 5 messages.
- $contents = $entity->getAnnotations('messageboard', $num_display, 0, 'desc');
-
- //as long as there is some content to display, display it
- if (!empty($contents)) {
-
- echo elgg_view('messageboard/messageboard',array('annotation' => $contents));
-
- } else {
-
- //put the required div on the page for the first message
- echo "<div id=\"messageboard_wrapper\" /></div>";
-
- }
-
- ?>
diff --git a/mod/messageboard/views/default/messageboard/messageboard.php b/mod/messageboard/views/default/messageboard/messageboard.php
index bb563d7fb..92c880593 100644
--- a/mod/messageboard/views/default/messageboard/messageboard.php
+++ b/mod/messageboard/views/default/messageboard/messageboard.php
@@ -1,37 +1,34 @@
<?php
- /**
- * Elgg Message board display page
- *
- * @package ElggMessageBoard
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider Ltd <info@elgg.com>
- * @copyright Curverider Ltd 2008-2010
- * @link http://elgg.com/
- */
-
-
- // If there is any content to view, view it
- if (is_array($vars['annotation']) && sizeof($vars['annotation']) > 0) {
-
- //start the div which will wrap all the message board contents
- echo "<div id=\"messageboard_wrapper\">";
-
- //loop through all annotations and display
- foreach($vars['annotation'] as $content) {
-
- echo elgg_view("messageboard/messageboard_content", array('annotation' => $content));
-
- }
-
- //close the wrapper div
- echo "</div>";
-
- } else {
-
- echo "<div class='contentWrapper'>" . elgg_echo("messageboard:none") . "</div>";
-
- }
-
-
-?> \ No newline at end of file
+/**
+ * Elgg Message board display page
+ *
+ * @package ElggMessageBoard
+ * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
+ * @author Curverider Ltd <info@elgg.com>
+ * @copyright Curverider Ltd 2008-2010
+ * @link http://elgg.com/
+ */
+
+
+// If there is any content to view, view it
+if (is_array($vars['annotation']) && sizeof($vars['annotation']) > 0) {
+
+ //start the div which will wrap all the message board contents
+ echo "<div id=\"messageboard_wrapper\">";
+
+ //loop through all annotations and display
+ foreach($vars['annotation'] as $content) {
+
+ echo elgg_view("messageboard/messageboard_content", array('annotation' => $content));
+
+ }
+
+ //close the wrapper div
+ echo "</div>";
+
+} else {
+
+ echo "<div class='contentWrapper'>" . elgg_echo("messageboard:none") . "</div>";
+
+}
diff --git a/mod/messageboard/views/default/messageboard/messageboard_content.php b/mod/messageboard/views/default/messageboard/messageboard_content.php
index 86240e910..41a308892 100644
--- a/mod/messageboard/views/default/messageboard/messageboard_content.php
+++ b/mod/messageboard/views/default/messageboard/messageboard_content.php
@@ -1,65 +1,65 @@
<?php
- /**
- * Elgg Message board individual item display page
- *
- * @package ElggMessageBoard
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider Ltd <info@elgg.com>
- * @copyright Curverider Ltd 2008-2010
- * @link http://elgg.com/
- */
-
+/**
+ * Elgg Message board individual item display view
+ *
+ * @package ElggMessageBoard
+ * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
+ * @author Curverider Ltd <info@elgg.com>
+ * @copyright Curverider Ltd 2008-2010
+ * @link http://elgg.com/
+ */
+
?>
<div class="messageboard"><!-- start of messageboard div -->
-
- <!-- display the user icon of the user that posted the message -->
- <div class="message_sender">
- <?php
- echo elgg_view("profile/icon",array('entity' => get_entity($vars['annotation']->owner_guid), 'size' => 'tiny'));
- ?>
- </div>
-
- <!-- display the user's name who posted and the date/time -->
- <p class="message_item_timestamp">
- <?php echo get_entity($vars['annotation']->owner_guid)->name . " " . friendly_time($vars['annotation']->time_created); ?>
- </p>
-
+
+ <!-- display the user icon of the user that posted the message -->
+ <div class="message_sender">
+ <?php
+ echo elgg_view("profile/icon",array('entity' => get_entity($vars['annotation']->owner_guid), 'size' => 'tiny'));
+ ?>
+ </div>
+
+ <!-- display the user's name who posted and the date/time -->
+ <p class="message_item_timestamp">
+ <?php echo get_entity($vars['annotation']->owner_guid)->name . " " . friendly_time($vars['annotation']->time_created); ?>
+ </p>
+
<!-- output the actual comment -->
<div class="message"><?php echo elgg_view("output/longtext",array("value" => parse_urls($vars['annotation']->value))); ?></div>
<div class="message_buttons">
-
- <?php
-
- // if the user looking at the comment can edit, show the delete link
- if ($vars['annotation']->canEdit()) {
-
-
- echo "<div class='delete_message'>" . elgg_view("output/confirmlink",array(
- 'href' => $vars['url'] . "action/messageboard/delete?annotation_id=" . $vars['annotation']->id,
- 'text' => elgg_echo('delete'),
- 'confirm' => elgg_echo('deleteconfirm'),
- )) . "</div>";
-
- } //end of can edit if statement
- ?>
-<?php
- // If the message being looked at is owned by the current user, don't show the reply
- // Also do not show if the user is not logged in
- if (isloggedin() && $vars['annotation']->owner_guid != get_loggedin_userid()){
-
- //get the message owner
- $msg_owner = get_entity($vars['annotation']->owner_guid);
- //create the url to their messageboard
- $user_mb = "pg/messageboard/" . $msg_owner->username;
-
- echo "<a href=\"" . $vars['url'] . $user_mb . "\">".elgg_echo('messageboard:replyon')." " . $msg_owner->name . "'s " . elgg_echo('messageboard:messageboard') . "</a> | ";
-
- echo "<a href=\"" . $vars['url'] . "mod/messageboard/history.php?user=" . $msg_owner->guid ."\">" . elgg_echo('messageboard:history') . "</a>";
- }
-?>
-
- </div>
+
+ <?php
+
+ // if the user looking at the comment can edit, show the delete link
+ if ($vars['annotation']->canEdit()) {
+
+
+ echo "<div class='delete_message'>" . elgg_view("output/confirmlink",array(
+ 'href' => $vars['url'] . "action/messageboard/delete?annotation_id=" . $vars['annotation']->id,
+ 'text' => elgg_echo('delete'),
+ 'confirm' => elgg_echo('deleteconfirm'),
+ )) . "</div>";
+
+ } //end of can edit if statement
+ ?>
+ <?php
+ // If the message being looked at is owned by the current user, don't show the reply
+ // Also do not show if the user is not logged in
+ if (isloggedin() && $vars['annotation']->owner_guid != get_loggedin_userid()) {
+
+ //get the message owner
+ $msg_owner = get_entity($vars['annotation']->owner_guid);
+ //create the url to their messageboard
+ $user_mb = "pg/messageboard/" . $msg_owner->username;
+
+ echo "<a href=\"" . $vars['url'] . $user_mb . "\">".elgg_echo('messageboard:replyon')." " . $msg_owner->name . "'s " . elgg_echo('messageboard:messageboard') . "</a> | ";
+
+ echo "<a href=\"" . $vars['url'] . "mod/messageboard/history.php?user=" . $msg_owner->guid ."\">" . elgg_echo('messageboard:history') . "</a>";
+ }
+ ?>
+
+ </div>
<div class="clearfloat"></div>
</div><!-- end of messageboard div -->
diff --git a/mod/messageboard/views/default/river/object/messageboard/create.php b/mod/messageboard/views/default/river/object/messageboard/create.php
index 9f65122d0..88bbd56aa 100644
--- a/mod/messageboard/views/default/river/object/messageboard/create.php
+++ b/mod/messageboard/views/default/river/object/messageboard/create.php
@@ -1,12 +1,10 @@
<?php
- $performed_by = get_entity($vars['item']->subject_guid); // $statement->getSubject();
- $performed_on = get_entity($vars['item']->object_guid);
+$performed_by = get_entity($vars['item']->subject_guid);
+$performed_on = get_entity($vars['item']->object_guid);
- $url = "<a href=\"{$performed_by->getURL()}\">{$performed_by->name}</a>";
- $string = sprintf(elgg_echo("messageboard:river:added"),$url) . " <a href=\"{$performed_on->getURL()}\">" . $performed_on->name . "'s</a> " . elgg_echo("messageboard:river:messageboard");
-
-
- echo $string;
+$url = "<a href=\"{$performed_by->getURL()}\">{$performed_by->name}</a>";
+$string = sprintf(elgg_echo("messageboard:river:added"),$url) . " <a href=\"{$performed_on->getURL()}\">" . $performed_on->name . "'s</a> " . elgg_echo("messageboard:river:messageboard");
-?> \ No newline at end of file
+
+echo $string;
diff --git a/mod/messageboard/views/default/widgets/messageboard/edit.php b/mod/messageboard/views/default/widgets/messageboard/edit.php
index cf0741a36..4e3bb19bf 100644
--- a/mod/messageboard/views/default/widgets/messageboard/edit.php
+++ b/mod/messageboard/views/default/widgets/messageboard/edit.php
@@ -1,28 +1,36 @@
<?php
- /**
- * Elgg message board edit page
- *
- * @package ElggMessageBoard
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider Ltd <info@elgg.com>
- * @copyright Curverider Ltd 2008-2010
- * @link http://elgg.com/
- */
+/**
+ * Elgg message board widget edit view
+ *
+ * @package ElggMessageBoard
+ * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
+ * @author Curverider Ltd <info@elgg.com>
+ * @copyright Curverider Ltd 2008-2010
+ * @link http://elgg.com/
+ */
+
+// default value
+$num_display = 5;
+if (isset($vars['entity']->num_display)) {
+ $num_display = $vars['entity']->num_display;
+}
+
?>
<p>
- <?php echo elgg_echo("messageboard:num_display"); ?>:
- <select name="params[num_display]">
- <option value="1" <?php if($vars['entity']->num_display == 1) echo "SELECTED"; ?>>1</option>
- <option value="2" <?php if($vars['entity']->num_display == 2) echo "SELECTED"; ?>>2</option>
- <option value="3" <?php if($vars['entity']->num_display == 3) echo "SELECTED"; ?>>3</option>
- <option value="4" <?php if($vars['entity']->num_display == 4) echo "SELECTED"; ?>>4</option>
- <option value="5" <?php if($vars['entity']->num_display == 5) echo "SELECTED"; ?>>5</option>
- <option value="6" <?php if($vars['entity']->num_display == 6) echo "SELECTED"; ?>>6</option>
- <option value="7" <?php if($vars['entity']->num_display == 7) echo "SELECTED"; ?>>7</option>
- <option value="8" <?php if($vars['entity']->num_display == 8) echo "SELECTED"; ?>>8</option>
- <option value="9" <?php if($vars['entity']->num_display == 9) echo "SELECTED"; ?>>9</option>
- <option value="10" <?php if($vars['entity']->num_display == 10) echo "SELECTED"; ?>>10</option>
- </select>
+ <?php echo elgg_echo("messageboard:num_display"); ?>:
+ <select name="params[num_display]">
+<?php
+$options = array(1,2,3,4,5,6,7,8,9,10);
+foreach ($options as $option) {
+ $selected = '';
+ if ($num_display == $option) {
+ $selected = "selected='selected'";
+ }
+
+ echo " <option value='{$option}' $selected >{$option}</option>\n";
+}
+?>
+ </select>
</p> \ No newline at end of file
diff --git a/mod/messageboard/views/default/widgets/messageboard/view.php b/mod/messageboard/views/default/widgets/messageboard/view.php
index 9a0d8e251..c05d6b618 100644
--- a/mod/messageboard/views/default/widgets/messageboard/view.php
+++ b/mod/messageboard/views/default/widgets/messageboard/view.php
@@ -1,93 +1,84 @@
<?php
- /**
- * Elgg messageboard plugin view page
- *
- * @todo let users choose how many messages they want displayed
- *
- * @package ElggMessageBoard
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider Ltd <info@elgg.com>
- * @copyright Curverider Ltd 2008-2010
- * @link http://elgg.com/
- */
-
- // a couple of required variables
-
- //get the full page owner entity
- $entity = get_entity(page_owner());
-
- //the number of message to display
- $num_display = $vars['entity']->num_display;
-
- //if no num set, set to one
- if(!$num_display)
- $num_display = 5;
-
-//Just the loggedin user can send messages
-if(isloggedin()){
+/**
+ * Elgg messageboard widget view
+ *
+ *
+ * @package ElggMessageBoard
+ * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
+ * @author Curverider Ltd <info@elgg.com>
+ * @copyright Curverider Ltd 2008-2010
+ * @link http://elgg.com/
+ */
+
+//get the full page owner entity
+$user = get_entity(page_owner());
+
+//the number of message to display
+$num_display = 5;
+if (isset($vars['entity']->num_display)) {
+ $num_display = $vars['entity']->num_display;
+}
+
+//Just the loggedin user can post messages
+if (isloggedin()) {
?>
- <script type="text/JavaScript">
+<script type="text/javascript">
$(document).ready(function(){
-
- $("#postit").click(function(){
-
- //display the ajax loading gif at the start of the function call
- //$('#loader').html('<img src="<?php echo $vars['url']; ?>_graphics/ajax_loader.gif" />');
- $('#loader').html('<?php echo elgg_view('ajax/loader',array('slashes' => true)); ?>');
-
- //load the results back into the message board contents and remove the loading gif
- //remember that the actual div being populated is determined on views/default/messageboard/messageboard.php
- $("#messageboard_wrapper").load("<?php echo $vars['url']; ?>mod/messageboard/ajax_endpoint/load.php", {messageboard_content:$("[name=message_content]").val(), pageOwner:$("[name=pageOwner]").val(), numToDisplay:<?php echo $num_display; ?>}, function(){
- $('#loader').empty(); // remove the loading gif
- $('[name=message_content]').val(''); // clear the input textarea
- }); //end
-
- }); // end of the main click function
-
- }); //end of the document .ready function
- </script>
-
- <div id="mb_input_wrapper"><!-- start of mb_input_wrapper div -->
-
- <!-- message textarea -->
- <textarea name="message_content" id="testing" value="" class="input_textarea"></textarea>
-
- <!-- the person posting an item on the message board -->
- <input type="hidden" name="guid" value="<?php echo $_SESSION['guid']; ?>" class="guid" />
-
- <!-- the page owner, this will be the profile owner -->
- <input type="hidden" name="pageOwner" value="<?php echo page_owner(); ?>" class="pageOwner" />
-
- <!-- submit button -->
- <input type="submit" id="postit" value="<?php echo elgg_echo('messageboard:postit'); ?>">
-
- <!-- menu options -->
- <div id="messageboard_widget_menu">
- <a href="<?php echo $vars['url']; ?>pg/messageboard/<?php echo get_entity(page_owner())->username; ?>"><?php echo elgg_echo("messageboard:viewall"); ?></a>
- </div>
-
- <!-- loading graphic -->
- <div id="loader" class="loading"> </div>
-
- </div><!-- end of mb_input_wrapper div -->
-<?php
+ $("#postit").click(function(){
+
+ //display the ajax loading gif at the start of the function call
+ //$('#loader').html('<img src="<?php echo $vars['url']; ?>_graphics/ajax_loader.gif" />');
+ $('#loader').html('<?php echo elgg_view('ajax/loader',array('slashes' => TRUE)); ?>');
+
+ //load the results back into the message board contents and remove the loading gif
+ //remember that the actual div being populated is determined on views/default/messageboard/messageboard.php
+ $("#messageboard_wrapper").load("<?php echo $vars['url']; ?>mod/messageboard/ajax_endpoint/load.php", {messageboard_content:$("[name=message_content]").val(), pageOwner:$("[name=pageOwner]").val(), numToDisplay:<?php echo $num_display; ?>}, function(){
+ $('#loader').empty(); // remove the loading gif
+ $('[name=message_content]').val(''); // clear the input textarea
+ }); //end
+
+ }); // end of the main click function
+
+ }); //end of the document .ready function
+</script>
+
+<div id="mb_input_wrapper"><!-- start of mb_input_wrapper div -->
+
+ <!-- message textarea -->
+ <textarea name="message_content" class="input_textarea"></textarea>
+
+ <!-- the page owner, this will be the profile owner -->
+ <input type="hidden" name="pageOwner" value="<?php echo page_owner(); ?>" class="pageOwner" />
+
+ <!-- submit button -->
+ <input type="submit" id="postit" value="<?php echo elgg_echo('messageboard:postit'); ?>">
+
+ <!-- menu options -->
+ <div id="messageboard_widget_menu">
+ <a href="<?php echo $vars['url']; ?>pg/messageboard/<?php echo $user->username; ?>"><?php echo elgg_echo("messageboard:viewall"); ?></a>
+ </div>
+
+ <!-- loading graphic -->
+ <div id="loader" class="loading"> </div>
+
+</div><!-- end of mb_input_wrapper div -->
+
+ <?php
} // if(isloggedin())
-
- //this for the first time the page loads, grab the latest 5 messages.
- $contents = $entity->getAnnotations('messageboard', $num_display, 0, 'desc');
-
- //as long as there is some content to display, display it
- if (!empty($contents)) {
-
- echo elgg_view('messageboard/messageboard',array('annotation' => $contents));
-
- } else {
-
- //put the required div on the page for the first message
- echo "<div id=\"messageboard_wrapper\"></div>";
-
- }
-
-?> \ No newline at end of file
+
+//this for the first time the page loads, grab the latest messages.
+$contents = $user->getAnnotations('messageboard', $num_display, 0, 'desc');
+
+//as long as there is some content to display, display it
+if (!empty($contents)) {
+
+ echo elgg_view('messageboard/messageboard',array('annotation' => $contents));
+
+} else {
+
+ //put the required div on the page for the first message
+ echo "<div id=\"messageboard_wrapper\"></div>";
+
+}