diff options
Diffstat (limited to 'views/default/annotation')
-rw-r--r-- | views/default/annotation/generic_comment.php | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/views/default/annotation/generic_comment.php b/views/default/annotation/generic_comment.php new file mode 100644 index 000000000..588f72e52 --- /dev/null +++ b/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); +} |