diff options
Diffstat (limited to 'mod/blog/views/default/object/blog.php')
| -rw-r--r-- | mod/blog/views/default/object/blog.php | 187 |
1 files changed, 99 insertions, 88 deletions
diff --git a/mod/blog/views/default/object/blog.php b/mod/blog/views/default/object/blog.php index e6b6b7129..4403a6006 100644 --- a/mod/blog/views/default/object/blog.php +++ b/mod/blog/views/default/object/blog.php @@ -1,88 +1,99 @@ -<?php
-
- /**
- * Elgg blog individual post view
- *
- * @package ElggBlog
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Ben Werdmuller <ben@curverider.co.uk>
- * @copyright Curverider Ltd 2008
- * @link http://elgg.com/
- *
- * @uses $vars['entity'] Optionally, the blog post to view
- */
-
- if (isset($vars['entity'])) {
-
-?>
-
- <div class="blog-post">
- <h3><a href="<?php echo $vars['entity']->getURL(); ?>"><?php echo $vars['entity']->title; ?></a></h3>
- <p class="strapline">
- <?php
-
- echo sprintf(elgg_echo("blog:strapline"),
- date("F j",$vars['entity']->time_created)
- );
-
- ?>
- </p>
- <p style="float: left">
- <?php
- echo elgg_view("profile/icon",array('entity' => $vars['entity']->getOwnerEntity(), 'size' => 'medium'));
- ?><br />
- <a href="<?php echo $vars['url']; ?>pg/blog/<?php echo $vars['entity']->getOwnerEntity()->username; ?>"><?php echo $vars['entity']->getOwnerEntity()->name; ?></a>
- </p>
- <p style="margin-left: 110px; min-height: 110px">
- <?php
-
- echo nl2br($vars['entity']->description);
-
- ?>
- </p>
- <p style="margin-left: 110px">
- <?php
-
- echo elgg_view('output/tags', array('tags' => $vars['entity']->tags));
-
- ?>
- </p>
- <p style="margin-left: 110px">
- <?php
-
- if ($vars['entity']->canEdit()) {
-
- ?>
- <a href="<?php echo $vars['url']; ?>mod/blog/edit.php?blogpost=<?php echo $vars['entity']->getGUID(); ?>"><?php echo elgg_echo("edit"); ?></a>
- <?php
-
- echo elgg_view("output/confirmlink", array(
- 'href' => $vars['url'] . "action_handler.php?action=blog/delete&blogpost=" . $vars['entity']->getGUID(),
- 'text' => elgg_echo('delete'),
- 'confirm' => elgg_echo('deleteconfirm'),
- ));
-
- // Allow the menu to be extended
- echo elgg_view("editmenu",array('entity' => $vars['entity']));
-
- ?>
- <?php
- }
-
- ?>
- </p>
- </div>
-
-<?php
-
- // If we've been asked to display the full view
- if (isset($vars['full']) && $vars['full'] == true) {
- echo elgg_view('object/blog-comments',array('entity' => $vars['entity'], 'comments' => $vars['entity']->getAnnotations('comment')));
- }
-
- // Display comments if any
- // echo elgg_view('object/blog-comments',array('entity' => $vars['entity'], 'comments' => $vars['comments']));
-
- }
-
-?>
\ No newline at end of file +<?php +/** + * View for blog objects + * + * @package Blog + */ + +$full = elgg_extract('full_view', $vars, FALSE); +$blog = elgg_extract('entity', $vars, FALSE); + +if (!$blog) { + return TRUE; +} + +$owner = $blog->getOwnerEntity(); +$container = $blog->getContainerEntity(); +$categories = elgg_view('output/categories', $vars); +$excerpt = $blog->excerpt; +if (!$excerpt) { + $excerpt = elgg_get_excerpt($blog->description); +} + +$owner_icon = elgg_view_entity_icon($owner, 'tiny'); +$owner_link = elgg_view('output/url', array( + 'href' => "blog/owner/$owner->username", + 'text' => $owner->name, + 'is_trusted' => true, +)); +$author_text = elgg_echo('byline', array($owner_link)); +$date = elgg_view_friendly_time($blog->time_created); + +// The "on" status changes for comments, so best to check for !Off +if ($blog->comments_on != 'Off') { + $comments_count = $blog->countComments(); + //only display if there are commments + if ($comments_count != 0) { + $text = elgg_echo("comments") . " ($comments_count)"; + $comments_link = elgg_view('output/url', array( + 'href' => $blog->getURL() . '#blog-comments', + 'text' => $text, + 'is_trusted' => true, + )); + } else { + $comments_link = ''; + } +} else { + $comments_link = ''; +} + +$metadata = elgg_view_menu('entity', array( + 'entity' => $vars['entity'], + 'handler' => 'blog', + 'sort_by' => 'priority', + 'class' => 'elgg-menu-hz', +)); + +$subtitle = "$author_text $date $comments_link $categories"; + +// do not show the metadata and controls in widget view +if (elgg_in_context('widgets')) { + $metadata = ''; +} + +if ($full) { + + $body = elgg_view('output/longtext', array( + 'value' => $blog->description, + 'class' => 'blog-post', + )); + + $params = array( + 'entity' => $blog, + 'title' => false, + 'metadata' => $metadata, + 'subtitle' => $subtitle, + ); + $params = $params + $vars; + $summary = elgg_view('object/elements/summary', $params); + + echo elgg_view('object/elements/full', array( + 'summary' => $summary, + 'icon' => $owner_icon, + 'body' => $body, + )); + +} else { + // brief view + + $params = array( + 'entity' => $blog, + 'metadata' => $metadata, + 'subtitle' => $subtitle, + 'content' => $excerpt, + ); + $params = $params + $vars; + $list_body = elgg_view('object/elements/summary', $params); + + echo elgg_view_image_block($owner_icon, $list_body); +} |
