diff options
author | cash <cash@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2010-12-25 17:07:41 +0000 |
---|---|---|
committer | cash <cash@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2010-12-25 17:07:41 +0000 |
commit | 58bd19d7cf35e6159124716d0da48d91354d3a2f (patch) | |
tree | baf3133c13b2f5a38e7e16e182a208258069e4ef /mod/blog/views | |
parent | f6045914d7488c43cd7761ddaded55b3791ae950 (diff) | |
download | elgg-58bd19d7cf35e6159124716d0da48d91354d3a2f.tar.gz elgg-58bd19d7cf35e6159124716d0da48d91354d3a2f.tar.bz2 |
amtrak does not have wifi so here is one big commit with group blogs, blog widget, and improved blog sidebar
git-svn-id: http://code.elgg.org/elgg/trunk@7720 36083f99-b078-4883-b0ff-0f9b5a30f544
Diffstat (limited to 'mod/blog/views')
-rw-r--r-- | mod/blog/views/default/blog/group_module.php | 40 | ||||
-rw-r--r-- | mod/blog/views/default/blog/sidebar.php | 18 | ||||
-rw-r--r-- | mod/blog/views/default/blog/sidebar/archives.php | 30 | ||||
-rw-r--r-- | mod/blog/views/default/blog/sidebar/revisions.php (renamed from mod/blog/views/default/blog/sidebar_revisions.php) | 0 | ||||
-rw-r--r-- | mod/blog/views/default/blog/sidebar/tagcloud.php | 31 | ||||
-rw-r--r-- | mod/blog/views/default/blog/sidebar_menu.php | 76 | ||||
-rw-r--r-- | mod/blog/views/default/forms/blog/save.php | 7 | ||||
-rw-r--r-- | mod/blog/views/default/input/datetime.php | 2 | ||||
-rw-r--r-- | mod/blog/views/default/object/blog.php | 7 | ||||
-rw-r--r-- | mod/blog/views/default/widgets/blog/content.php | 29 | ||||
-rw-r--r-- | mod/blog/views/default/widgets/blog/edit.php | 22 |
11 files changed, 180 insertions, 82 deletions
diff --git a/mod/blog/views/default/blog/group_module.php b/mod/blog/views/default/blog/group_module.php new file mode 100644 index 000000000..6e75966af --- /dev/null +++ b/mod/blog/views/default/blog/group_module.php @@ -0,0 +1,40 @@ +<?php +/** + * Group blog module + */ + +$group = elgg_get_page_owner(); + +$all_link = elgg_view('output/url', array( + 'href' => "pg/blog/group/$group->guid/owner", + 'text' => elgg_echo('link:view:all'), +)); + +$header = "<span class=\"group-widget-viewall\">$all_link</span>"; +$header .= '<h3>' . elgg_echo('blog:group') . '</h3>'; + + +elgg_push_context('widgets'); +$options = array( + 'type' => 'object', + 'subtype' => 'blog', + 'container_guid' => elgg_get_page_owner_guid(), + 'limit' => 6, + 'full_view' => false, + 'pagination' => false, +); +$content = elgg_list_entities($options); +elgg_pop_context(); + +$new_link = elgg_view('output/url', array( + 'href' => "pg/blog/group/$group->guid/new", + 'text' => elgg_echo('blog:write'), +)); +$content .= "<span class='elgg-widget-more'>$new_link</span>"; + + +$params = array( + 'header' => $header, + 'body' => $content, +); +echo elgg_view('layout/objects/module', $params); diff --git a/mod/blog/views/default/blog/sidebar.php b/mod/blog/views/default/blog/sidebar.php new file mode 100644 index 000000000..63ed85c0b --- /dev/null +++ b/mod/blog/views/default/blog/sidebar.php @@ -0,0 +1,18 @@ +<?php +/** + * Blog sidebar + * + * @package Blog + */ + +// fetch & display latest comments +if ($vars['page'] == 'all') { + echo elgg_view_latest_comments(0, 'object', 'blog'); +} elseif ($vars['page'] == 'owner') { + // @todo - what we want is the latest comments on this user's blog posts - elgg does not support this + echo elgg_view_latest_comments(elgg_get_page_owner_guid(), 'object', 'blog'); +} + +echo elgg_view('blog/sidebar/archives', $vars); + +echo elgg_view('blog/sidebar/tagcloud', $vars); diff --git a/mod/blog/views/default/blog/sidebar/archives.php b/mod/blog/views/default/blog/sidebar/archives.php new file mode 100644 index 000000000..9904be288 --- /dev/null +++ b/mod/blog/views/default/blog/sidebar/archives.php @@ -0,0 +1,30 @@ +<?php +/** + * Blog archives + */ + +$loggedin_user = get_loggedin_user(); +$page_owner = elgg_get_page_owner(); + +// This is a limitation of the URL schema. +if ($page_owner && $vars['page'] != 'friends') { + $dates = blog_get_blog_months($user); + + if ($dates) { + $title = elgg_echo('blog:archives'); + $content = '<ul class="blog-archives">'; + foreach($dates as $date) { + $date = $date->yearmonth; + + $timestamplow = mktime(0, 0, 0, substr($date,4,2) , 1, substr($date, 0, 4)); + $timestamphigh = mktime(0, 0, 0, ((int) substr($date, 4, 2)) + 1, 1, substr($date, 0, 4)); + + $link = elgg_get_site_url() . 'pg/blog/archive/' . $page_owner->username . '/' . $timestamplow . '/' . $timestamphigh; + $month = elgg_echo('date:month:' . substr($date, 4, 2), array(substr($date, 0, 4))); + $content .= "<li><a href=\"$link\" title=\"$month\">$month</a></li>"; + } + $content .= '</ul>'; + + echo elgg_view('layout/objects/module', array('title' => $title, 'body' => $content)); + } +}
\ No newline at end of file diff --git a/mod/blog/views/default/blog/sidebar_revisions.php b/mod/blog/views/default/blog/sidebar/revisions.php index e3919648b..e3919648b 100644 --- a/mod/blog/views/default/blog/sidebar_revisions.php +++ b/mod/blog/views/default/blog/sidebar/revisions.php diff --git a/mod/blog/views/default/blog/sidebar/tagcloud.php b/mod/blog/views/default/blog/sidebar/tagcloud.php new file mode 100644 index 000000000..2f5ce3955 --- /dev/null +++ b/mod/blog/views/default/blog/sidebar/tagcloud.php @@ -0,0 +1,31 @@ +<?php +/** + * Blog tag cloud + */ + +$loggedin_user = get_loggedin_user(); +$page_owner = elgg_get_page_owner(); + +if ($page_owner && $vars['page'] != 'friends') { + + // friends page lists all tags; mine lists owner's + $owner_guid = ($vars['page'] == 'friends') ? '' : $page_owner->getGUID(); + $options = array( + 'type' => 'object', + 'subtype' => 'blog', + 'owner_guid' => $owner_guid, + 'threshold' => 0, + 'limit' => 50, + 'tag_name' => 'tags', + ); + echo elgg_view_tagcloud($options); +} else { + $options = array( + 'type' => 'object', + 'subtype' => 'blog', + 'threshold' => 0, + 'limit' => 50, + 'tag_name' => 'tags', + ); + echo elgg_view_tagcloud($options); +} diff --git a/mod/blog/views/default/blog/sidebar_menu.php b/mod/blog/views/default/blog/sidebar_menu.php deleted file mode 100644 index 7dfbeb1bc..000000000 --- a/mod/blog/views/default/blog/sidebar_menu.php +++ /dev/null @@ -1,76 +0,0 @@ -<?php -/** - * Blog sidebar menu. - * - * @package Blog - */ - -// a few cases to consider: -// 1. looking at all posts -// 2. looking at a user's post -// 3. looking at your posts - -/* -Logged in or not doesn't matter unless you're looking at your blog. - Does it matter then on the side bar? - -All blogs: - Archives - -Owned blogs; - Archives -*/ - -$loggedin_user = get_loggedin_user(); -$page_owner = elgg_get_page_owner(); - -// include a view for plugins to extend -echo elgg_view("blogs/sidebar", array("object_type" => 'blog')); - -// fetch & display latest comments on all blog posts -echo elgg_view_latest_comments(0, 'object', 'blog'); - -// only show archives for users or groups. -// This is a limitation of the URL schema. -if ($page_owner && $vars['page'] != 'friends') { - $dates = blog_get_blog_months($user); - - if ($dates) { - $title = elgg_echo('blog:archives'); - $content = '<ul class="blog-archives">'; - foreach($dates as $date) { - $date = $date->yearmonth; - - $timestamplow = mktime(0, 0, 0, substr($date,4,2) , 1, substr($date, 0, 4)); - $timestamphigh = mktime(0, 0, 0, ((int) substr($date, 4, 2)) + 1, 1, substr($date, 0, 4)); - - $link = elgg_get_site_url() . 'pg/blog/archive/' . $page_owner->username . '/' . $timestamplow . '/' . $timestamphigh; - $month = elgg_echo('date:month:' . substr($date, 4, 2), array(substr($date, 0, 4))); - $content .= "<li><a href=\"$link\" title=\"$month\">$month</a></li>"; - } - $content .= '</ul>'; - - echo elgg_view('layout/objects/module', array('title' => $title, 'body' => $content)); - } - - // friends page lists all tags; mine lists owner's - $owner_guid = ($vars['page'] == 'friends') ? '' : $page_owner->getGUID(); - $options = array( - 'type' => 'object', - 'subtype' => 'blog', - 'owner_guid' => $owner_guid, - 'threshold' => 0, - 'limit' => 50, - 'tag_name' => 'tags', - ); - echo elgg_view_tagcloud($options); -} else { - $options = array( - 'type' => 'object', - 'subtype' => 'blog', - 'threshold' => 0, - 'limit' => 50, - 'tag_name' => 'tags', - ); - echo elgg_view_tagcloud($options); -} diff --git a/mod/blog/views/default/forms/blog/save.php b/mod/blog/views/default/forms/blog/save.php index f49340985..8597c135c 100644 --- a/mod/blog/views/default/forms/blog/save.php +++ b/mod/blog/views/default/forms/blog/save.php @@ -5,8 +5,6 @@ * @package Blog */ -$forward = $_SERVER['HTTP_REFERER']; - $draft_warning = $vars['draft_warning']; if ($draft_warning) { $draft_warning = '<span class="message warning">' . $draft_warning . '</span>'; @@ -89,6 +87,7 @@ $access_input = elgg_view('input/access', array( 'value' => $vars['access_id'] )); +// not being used $publish_date_label = elgg_echo('blog:publish_date'); $publish_date_input = elgg_view('input/datetime', array( 'internalname' => 'publish_date', @@ -99,9 +98,8 @@ $publish_date_input = elgg_view('input/datetime', array( $categories_input = elgg_view('categories', $vars); // hidden inputs -//$container_guid_input = elgg_view('input/hidden', array('internalname' => 'container_guid', 'value' => $vars['container_guid'])); +$container_guid_input = elgg_view('input/hidden', array('internalname' => 'container_guid', 'value' => elgg_get_page_owner_guid())); $guid_input = elgg_view('input/hidden', array('internalname' => 'guid', 'value' => $vars['guid'])); -$forward_input = elgg_view('input/hidden', array('internalname' => 'forward', 'value' => $forward)); echo <<<___HTML @@ -150,7 +148,6 @@ $categories_input $guid_input $container_guid_input -$forward_input $action_buttons diff --git a/mod/blog/views/default/input/datetime.php b/mod/blog/views/default/input/datetime.php index 5586464f1..f4bad188c 100644 --- a/mod/blog/views/default/input/datetime.php +++ b/mod/blog/views/default/input/datetime.php @@ -1,6 +1,8 @@ <?php /** * A date-time view for the blog publication date. + * + * not being used */ // default date to current time diff --git a/mod/blog/views/default/object/blog.php b/mod/blog/views/default/object/blog.php index 639031113..19018492a 100644 --- a/mod/blog/views/default/object/blog.php +++ b/mod/blog/views/default/object/blog.php @@ -69,7 +69,7 @@ if ($blog->canEdit()) { $metadata .= "<li>$status_text</li>"; } - $edit_url = elgg_get_site_url() . "pg/blog/edit/{$owner->username}/{$blog->getGUID()}/"; + $edit_url = elgg_get_site_url() . "pg/blog/edit/{$blog->getGUID()}/"; $edit_link = elgg_view('output/url', array( 'href' => $edit_url, 'text' => elgg_echo('edit'), @@ -91,6 +91,11 @@ $metadata .= '</ul>'; $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) { $header = elgg_view_title($blog->title); diff --git a/mod/blog/views/default/widgets/blog/content.php b/mod/blog/views/default/widgets/blog/content.php new file mode 100644 index 000000000..83d1c0c41 --- /dev/null +++ b/mod/blog/views/default/widgets/blog/content.php @@ -0,0 +1,29 @@ +<?php +/** + * User blog widget display view + */ + +$num = $vars['entity']->num_display; + +$options = array( + 'type' => 'object', + 'subtype' => 'blog', + 'container_guid' => $vars['entity']->owner_guid, + 'limit' => $num, + 'full_view' => FALSE, + 'pagination' => FALSE, +); +$content = elgg_list_entities($options); + +echo $content; + +if ($content) { + $blog_url = "pg/blog/owner/" . elgg_get_page_owner()->username; + $more_link = elgg_view('output/url', array( + 'href' => $blog_url, + 'text' => elgg_echo('blog:moreblogs'), + )); + echo "<span class=\"elgg-widget-more\">$more_link</span>"; +} else { + echo elgg_echo('blog:noblogs'); +} diff --git a/mod/blog/views/default/widgets/blog/edit.php b/mod/blog/views/default/widgets/blog/edit.php new file mode 100644 index 000000000..aaa9d1a10 --- /dev/null +++ b/mod/blog/views/default/widgets/blog/edit.php @@ -0,0 +1,22 @@ +<?php +/** + * User blog widget edit view + */ + +// set default value +if (!isset($vars['entity']->num_display)) { + $vars['entity']->num_display = 4; +} + +$params = array( + 'internalname' => 'params[num_display]', + 'value' => $vars['entity']->num_display = 4, + 'options' => array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10), +); +$dropdown = elgg_view('input/pulldown', $params); + +?> +<p> + <?php echo elgg_echo('blog:numbertodisplay'); ?>: + <?php echo $dropdown; ?> +</p> |