]> gitweb.fluxo.info Git - lorea/elgg.git/commitdiff
the beginnings of a mechanism to comment on river objects
authordave <dave@36083f99-b078-4883-b0ff-0f9b5a30f544>
Sun, 21 Mar 2010 17:55:00 +0000 (17:55 +0000)
committerdave <dave@36083f99-b078-4883-b0ff-0f9b5a30f544>
Sun, 21 Mar 2010 17:55:00 +0000 (17:55 +0000)
git-svn-id: http://code.elgg.org/elgg/trunk@5463 36083f99-b078-4883-b0ff-0f9b5a30f544

actions/comments/add.php
actions/comments/delete.php
mod/riverdashboard/start.php
mod/riverdashboard/views/default/river/item/wrapper.php
mod/riverdashboard/views/default/riverdashboard/rivercomment.php [new file with mode: 0644]

index 67429f0335123e47018a016a5e4c9f5db0a9021d..bce464fdbcd92622401f928811775419287a2687 100644 (file)
@@ -64,5 +64,5 @@ system_message(elgg_echo("generic_comment:posted"));
 //add to river
 add_to_river('annotation/annotate','comment',$user->guid,$entity->guid, "", 0, $annotation);
 
-// Forward to the entity page
-forward($entity->getURL());
+// Forward to the page the action occurred on
+forward($_SERVER['HTTP_REFERER']);
index 03e575b66859412c4fa9998f554ba059eb09ffa7..fd8156dc3823a0d6806ede6273bdddb72e90b10e 100644 (file)
@@ -29,4 +29,4 @@ if ($comment = get_annotation($annotation_id)) {
 }
 
 register_error(elgg_echo("generic_comment:notdeleted"));
-forward($entity->getURL());
\ No newline at end of file
+forward($_SERVER['HTTP_REFERER']);
\ No newline at end of file
index c093f5ecba14585de71b0c7c06e40731158bbfec..6badd8393b9e4210e288f5e83ad4b528a23c05a2 100644 (file)
@@ -32,4 +32,20 @@ function riverdashboard_dashboard() {
        include(dirname(__FILE__) . '/index.php');\r
 }\r
 \r
+/**\r
+ * For users to make a comment on a river item\r
+ *\r
+ * @param ElggEntity $entity The entity to comment on\r
+ * @return string|false The HTML (etc) for the comment form, or false on failure\r
+ */\r
+function elgg_make_river_comment($entity){\r
+       if (!($entity instanceof ElggEntity)) {\r
+               return false;\r
+       } else {\r
+               //display the comment form\r
+               $comments = elgg_view('riverdashboard/rivercomment',array('entity' => $entity));\r
+               return $comments;\r
+       }\r
+}\r
+\r
 register_elgg_event_handler('init','system','riverdashboard_init');\r
index ab0f7a9a22ec89d9a0ec449af7312458a616a5a2..0dba70e5cc8350753396fa9f56a7804d246b3504 100644 (file)
@@ -105,9 +105,16 @@ else
                }
                        //display the comment link
                if($vars['item']->type != 'user'){
-                       //for now don't display the comment link on bookmarks and wire messages
-                       if($vars['item']->subtype != 'thewire' && $vars['item']->subtype != 'conversations' && $vars['item']->subtype != 'bookmarks' && $vars['item']->subtype != '')
-                               echo "<a class='comment_link' href=\"{$object_url}\">Comment</a>";
+                       //for now don't display the comment link on wire and conversations for now
+                       if($vars['item']->subtype != 'thewire' && $vars['item']->subtype != 'conversations' && $vars['item']->subtype != '')
+                               //don't display the comment option on group discussions atm
+                               if($vars['item']->subtype == 'groupforumtopic'){
+                                       echo "<a class='comment_link' href=\"{$object_url}\">Visit discussion</a>";
+                               }else{
+                                       echo "<div class='river_post_comment'>";
+                                       echo elgg_make_river_comment($object);
+                                       echo "</div>";
+                               }
                        }
                ?>
 </div>
\ No newline at end of file
diff --git a/mod/riverdashboard/views/default/riverdashboard/rivercomment.php b/mod/riverdashboard/views/default/riverdashboard/rivercomment.php
new file mode 100644 (file)
index 0000000..b0e7614
--- /dev/null
@@ -0,0 +1,12 @@
+<?php\r
+/**\r
+ * Elgg comments add on river form\r
+ * @uses $vars['entity']\r
+ */\r
+       \r
+if (isset($vars['entity']) && isloggedin()) {\r
+        $form_body = elgg_view('input/text',array('internalname' => 'generic_comment', 'value' => 'Add a comment...'));\r
+        $form_body .= elgg_view('input/hidden', array('internalname' => 'entity_guid', 'value' => $vars['entity']->getGUID()));\r
+        $form_body .= elgg_view('input/submit', array('value' => elgg_echo("post")));\r
+        echo elgg_view('input/form', array('body' => $form_body, 'action' => "{$vars['url']}action/comments/add"));\r
+}
\ No newline at end of file