aboutsummaryrefslogtreecommitdiff
path: root/mod/editablecomments/views/default
diff options
context:
space:
mode:
authorSilvio Rhatto <rhatto@riseup.net>2014-03-15 15:05:35 -0300
committerSilvio Rhatto <rhatto@riseup.net>2014-03-15 15:05:35 -0300
commited3335df218dca6aa14f1686454b3e265339b729 (patch)
tree93744d4ae085ce936d2353facf3d91a576b8741b /mod/editablecomments/views/default
parent4a86fa9b2e63b9d6bb0a07333d4c7d59df621270 (diff)
parent354eae084587d9a9bddb74cb8aff41c2af9e58ad (diff)
downloadelgg-ed3335df218dca6aa14f1686454b3e265339b729.tar.gz
elgg-ed3335df218dca6aa14f1686454b3e265339b729.tar.bz2
Merge commit '354eae084587d9a9bddb74cb8aff41c2af9e58ad' as 'mod/editablecomments'
Diffstat (limited to 'mod/editablecomments/views/default')
-rw-r--r--mod/editablecomments/views/default/annotation/generic_comment.php95
-rw-r--r--mod/editablecomments/views/default/forms/comments/edit.php60
2 files changed, 155 insertions, 0 deletions
diff --git a/mod/editablecomments/views/default/annotation/generic_comment.php b/mod/editablecomments/views/default/annotation/generic_comment.php
new file mode 100644
index 000000000..588f72e52
--- /dev/null
+++ b/mod/editablecomments/views/default/annotation/generic_comment.php
@@ -0,0 +1,95 @@
+<?php
+/**
+ * Editable Comments -- Override Elgg's generic comment view
+ *
+ * @uses $vars['annotation'] ElggAnnotation object
+ * @uses $vars['full_view'] Display fill view or brief view
+ *
+ * @package Lorea
+ * @subpackage EditableComments
+ *
+ * Copyright 2012 Lorea Faeries <federation@lorea.org>
+ *
+ * This file is part of the EditableComments plugin for Elgg.
+ *
+ * EditableComments is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU Affero General Public License
+ * as published by the Free Software Foundation, either version 3 of
+ * the License, or (at your option) any later version.
+ *
+ * EditableComments is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/>.
+ */
+
+if (!isset($vars['annotation'])) {
+ return true;
+}
+
+$full_view = elgg_extract('full_view', $vars, true);
+
+$comment = $vars['annotation'];
+
+$entity = get_entity($comment->entity_guid);
+$commenter = get_user($comment->owner_guid);
+if (!$entity || !$commenter) {
+ return true;
+}
+
+$friendlytime = elgg_view_friendly_time($comment->time_created);
+
+$commenter_icon = elgg_view_entity_icon($commenter, 'tiny');
+$commenter_link = "<a href=\"{$commenter->getURL()}\">$commenter->name</a>";
+
+$entity_title = $entity->title ? $entity->title : elgg_echo('untitled');
+$entity_link = "<a href=\"{$entity->getURL()}\">$entity_title</a>";
+
+if ($full_view) {
+ $menu = elgg_view_menu('annotation', array(
+ 'annotation' => $comment,
+ 'sort_by' => 'priority',
+ 'class' => 'elgg-menu-hz float-alt',
+ ));
+
+ $comment_text = elgg_view("output/longtext", array("value" => $comment->value));
+ $comment_edit = elgg_view_form("comments/edit", array("class" => ""), array(
+ "entity" => $comment->getEntity(),
+ "annotation" => $comment,
+ ));
+
+ $body = <<<HTML
+<div class="mbn">
+ $menu
+ $commenter_link
+ <span class="elgg-subtext">
+ $friendlytime
+ </span>
+ $comment_text
+ $comment_edit
+</div>
+HTML;
+
+ echo elgg_view_image_block($commenter_icon, $body);
+
+} else {
+ // brief view
+
+ //@todo need link to actual comment!
+
+ $on = elgg_echo('on');
+
+ $excerpt = elgg_get_excerpt($comment->value, 80);
+
+ $body = <<<HTML
+<span class="elgg-subtext">
+ $commenter_link $on $entity_link ($friendlytime): $excerpt
+</span>
+HTML;
+
+ echo elgg_view_image_block($commenter_icon, $body);
+}
diff --git a/mod/editablecomments/views/default/forms/comments/edit.php b/mod/editablecomments/views/default/forms/comments/edit.php
new file mode 100644
index 000000000..1728d838b
--- /dev/null
+++ b/mod/editablecomments/views/default/forms/comments/edit.php
@@ -0,0 +1,60 @@
+<?php
+/**
+ * Editable Comments -- Override Elgg's generic comment add form
+ *
+ * @uses ElggEntity $vars['entity'] The entity to comment on
+ * @uses bool $vars['inline'] Show a single line version of the form?
+ * @uses ElggAnnotation $vars['annotation'] The annotation we are editing (optional)
+ *
+ * @package Lorea
+ * @subpackage EditableComments
+ *
+ * Copyright 2012 Lorea Faeries <federation@lorea.org>
+ *
+ * This file is part of the EditableComments plugin for Elgg.
+ *
+ * EditableComments is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU Affero General Public License
+ * as published by the Free Software Foundation, either version 3 of
+ * the License, or (at your option) any later version.
+ *
+ * EditableComments is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/>.
+ */
+
+if (isset($vars['entity']) && elgg_is_logged_in()) {
+
+ $inline = elgg_extract('inline', $vars, false);
+
+ if ($inline) {
+ echo elgg_view('input/text', array('name' => 'generic_comment', 'value' => $vars['annotation']->value));
+ echo elgg_view('input/submit', array('value' => elgg_echo('comment')));
+ } else {
+?>
+ <div>
+ <label><?php echo elgg_echo("generic_comments:add"); ?></label>
+ <?php echo elgg_view('input/longtext', array('name' => 'generic_comment', 'value' => $vars['annotation']->value)); ?>
+ </div>
+ <div class="elgg-foot">
+<?php
+ echo elgg_view('input/submit', array('value' => elgg_echo("generic_comments:post")));
+?>
+ </div>
+<?php
+ }
+
+ echo elgg_view('input/hidden', array(
+ 'name' => 'entity_guid',
+ 'value' => $vars['entity']->getGUID()
+ ));
+ echo elgg_view('input/hidden', array(
+ 'name' => 'annotation_id',
+ 'value' => $vars['annotation']->id,
+ ));
+}