aboutsummaryrefslogtreecommitdiff
path: root/mod/tabbed_profile/actions
diff options
context:
space:
mode:
Diffstat (limited to 'mod/tabbed_profile/actions')
-rw-r--r--mod/tabbed_profile/actions/addcomment.php47
-rw-r--r--mod/tabbed_profile/actions/deletecomment.php29
2 files changed, 76 insertions, 0 deletions
diff --git a/mod/tabbed_profile/actions/addcomment.php b/mod/tabbed_profile/actions/addcomment.php
new file mode 100644
index 000000000..07f72ef8e
--- /dev/null
+++ b/mod/tabbed_profile/actions/addcomment.php
@@ -0,0 +1,47 @@
+<?php
+/**
+ * Elgg profile commentwall: add message action
+ */
+
+// 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 commentwall owner 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('commentwall',$message_content,$user->access_id, get_loggedin_userid())) {
+
+ global $CONFIG;
+
+ if ($user->getGUID() != get_loggedin_userid())
+ notify_user($user->getGUID(), get_loggedin_userid(), elgg_echo('profile:comment:subject'),
+ elgg_echo('profile:comment:body', array(
+ get_loggedin_user()->name,
+ $message_content,
+ elgg_get_site_url() . "pg/profile/" . $user->username,
+ get_loggedin_user()->name,
+ get_loggedin_user()->getURL()
+ ))
+ );
+
+ system_message(elgg_echo("profile:commentwall:posted"));
+ // add to river
+ add_to_river('river/object/profile/commentwall/create','commentwall',get_loggedin_userid(),$user->guid);
+
+ } else {
+ register_error(elgg_echo("profile:commentwall:failure"));
+ }
+
+} else {
+ register_error(elgg_echo("profile:commentwall:blank"));
+}
+
+// Forward back to the messageboard
+forward(REFERER); \ No newline at end of file
diff --git a/mod/tabbed_profile/actions/deletecomment.php b/mod/tabbed_profile/actions/deletecomment.php
new file mode 100644
index 000000000..233d53069
--- /dev/null
+++ b/mod/tabbed_profile/actions/deletecomment.php
@@ -0,0 +1,29 @@
+<?php
+/**
+ * Elgg profile commentwall: delete message action
+ */
+
+// 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 commentwall 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 commentwall
+ if ($message->canEdit()) {
+ //delete the comment
+ $message->delete();
+ //display message
+ system_message(elgg_echo("profile:commentwall:deleted"));
+ forward(REFERER);
+ }
+
+} else {
+ system_message(elgg_echo("profile:commentwall:notdeleted"));
+}
+
+forward(REFERER); \ No newline at end of file