diff options
Diffstat (limited to 'mod/pages/views/default/object')
-rw-r--r-- | mod/pages/views/default/object/page_top.php | 83 |
1 files changed, 75 insertions, 8 deletions
diff --git a/mod/pages/views/default/object/page_top.php b/mod/pages/views/default/object/page_top.php index 0a1cfdf83..d1a9ef7e8 100644 --- a/mod/pages/views/default/object/page_top.php +++ b/mod/pages/views/default/object/page_top.php @@ -5,12 +5,79 @@ * @package ElggPages */ -if ($vars['full']) { - echo elgg_view("pages/pageprofile", $vars); + +$full = elgg_get_array_value('full', $vars, FALSE); +$page = elgg_get_array_value('entity', $vars, FALSE); + +if (!$page) { + return TRUE; +} + +$owner = $page->getOwnerEntity(); +$owner_icon = elgg_view('profile/icon', array('entity' => $owner, 'size' => 'tiny')); +$owner_link = elgg_view('output/url', array( + 'href' => "pg/pages/owner/$owner->username", + 'text' => $owner->name, +)); +$author_text = elgg_echo('blog:author_by_line', array($owner_link)); +$tags = elgg_view('output/tags', array('tags' => $page->tags)); +$date = elgg_view_friendly_time($page->time_created); +$excerpt = elgg_get_excerpt($page->description); + +$comments_count = elgg_count_comments($page); +//only display if there are commments +if ($comments_count != 0) { + $text = elgg_echo("comments") . " ($comments_count)"; + $comments_link = elgg_view('output/url', array( + 'href' => $page->getURL() . '#page-comments', + 'text' => $text, + )); } else { - if (get_input('listtype') == "gallery") { - echo elgg_view('pages/pagegallery', $vars); - } else { - echo elgg_view("pages/pagelisting", $vars); - } -}
\ No newline at end of file + $comments_link = ''; +} + +$metadata = elgg_view('layout/objects/list/metadata', array( + 'entity' => $page, + 'handler' => 'pages', +)); + +$subtitle = "$author_text $date $categories $comments_link"; + +// 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' => $page->description)); + + $params = array( + 'entity' => $page, + 'title' => false, + 'metadata' => $metadata, + 'subtitle' => $subtitle, + 'tags' => $tags, + ); + $list_body = elgg_view('layout/objects/list/body', $params); + + $info = elgg_view_image_block($owner_icon, $list_body); + + echo <<<HTML +$info +$body +HTML; + +} else { + // brief view + + $params = array( + 'entity' => $page, + 'metadata' => $metadata, + 'subtitle' => $subtitle, + 'tags' => $tags, + 'content' => $excerpt, + ); + $list_body = elgg_view('layout/objects/list/body', $params); + + echo elgg_view_image_block($owner_icon, $list_body); +} |