aboutsummaryrefslogtreecommitdiff
path: root/mod/bookmarks/views
diff options
context:
space:
mode:
Diffstat (limited to 'mod/bookmarks/views')
-rw-r--r--mod/bookmarks/views/default/bookmarks/bookmarklet.php43
-rw-r--r--mod/bookmarks/views/default/bookmarks/css.php53
-rw-r--r--mod/bookmarks/views/default/bookmarks/form.php112
-rwxr-xr-xmod/bookmarks/views/default/bookmarks/group_bookmarks.php35
-rw-r--r--mod/bookmarks/views/default/bookmarks/group_module.php47
-rw-r--r--mod/bookmarks/views/default/bookmarks/js.php12
-rw-r--r--mod/bookmarks/views/default/bookmarks/sidebar.php14
-rwxr-xr-xmod/bookmarks/views/default/bookmarks/stats.php7
-rw-r--r--mod/bookmarks/views/default/forms/bookmarks/save.php59
-rw-r--r--mod/bookmarks/views/default/object/bookmarks.php176
-rw-r--r--mod/bookmarks/views/default/river/object/bookmarks/create.php28
-rw-r--r--mod/bookmarks/views/default/widgets/bookmarks/content.php32
-rw-r--r--mod/bookmarks/views/default/widgets/bookmarks/edit.php36
-rw-r--r--mod/bookmarks/views/default/widgets/bookmarks/view.php56
-rw-r--r--mod/bookmarks/views/rss/object/bookmarks.php51
15 files changed, 354 insertions, 407 deletions
diff --git a/mod/bookmarks/views/default/bookmarks/bookmarklet.php b/mod/bookmarks/views/default/bookmarks/bookmarklet.php
index c12b461e3..b3e9737fe 100644
--- a/mod/bookmarks/views/default/bookmarks/bookmarklet.php
+++ b/mod/bookmarks/views/default/bookmarks/bookmarklet.php
@@ -1,36 +1,35 @@
<?php
/**
- * Elgg get bookmarks bookmarklet view
+ * Bookmarklet
*
- * @package ElggBookmarks
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider <info@elgg.com>
- * @copyright Curverider Ltd 2008-2010
- * @link http://elgg.org/
+ * @package Bookmarks
*/
-$page_owner = page_owner_entity();
-$bookmarktext = elgg_echo("bookmarks:this");
+$page_owner = elgg_get_page_owner_entity();
if ($page_owner instanceof ElggGroup) {
- $bookmarktext = sprintf(elgg_echo("bookmarks:this:group"), $page_owner->name);
- $name = "group:$page_owner->guid";
+ $title = elgg_echo("bookmarks:this:group", array($page_owner->name));
} else {
- $name = $page_owner->username;
+ $title = elgg_echo("bookmarks:this");
}
-if (!$name && ($user = get_loggedin_user())) {
+$guid = $page_owner->getGUID();
+
+if (!$name && ($user = elgg_get_logged_in_user_entity())) {
$name = $user->username;
}
-?>
-<h3><?php echo elgg_echo('bookmarks:browser_bookmarklet')?></h3>
-<a href="javascript:location.href='<?php echo $vars['url']; ?>pg/bookmarks/<?php echo $name; ?>/add?address='+encodeURIComponent(location.href)+'&title='+encodeURIComponent(document.title)"> <img src="<?php echo $vars['url']; ?>_graphics/elgg_bookmarklet.gif" border="0" title="<?php echo elgg_echo('bookmarks:this');?>" /> </a>
-<br />
-<a class="link" onclick="elgg_slide_toggle(this,'#elgg_sidebar','.bookmarklet');">Instructions</a>
+$url = elgg_get_site_url();
+$img = elgg_view('output/img', array(
+ 'src' => 'mod/bookmarks/graphics/bookmarklet.gif',
+ 'alt' => $title,
+));
+$bookmarklet = "<a href=\"javascript:location.href='{$url}bookmarks/add/$guid?address='"
+ . "+encodeURIComponent(location.href)+'&title='+encodeURIComponent(document.title)\">"
+ . $img . "</a>";
-<div class="bookmarklet hidden">
- <p><?php echo elgg_echo("bookmarks:bookmarklet:description"); ?></p>
- <p><?php echo elgg_echo("bookmarks:bookmarklet:descriptionie"); ?></p>
- <p><?php echo elgg_echo("bookmarks:bookmarklet:description:conclusion"); ?></p>
-</div> \ No newline at end of file
+?>
+<p><?php echo elgg_echo("bookmarks:bookmarklet:description"); ?></p>
+<p><?php echo $bookmarklet; ?></p>
+<p><?php echo elgg_echo("bookmarks:bookmarklet:descriptionie"); ?></p>
+<p><?php echo elgg_echo("bookmarks:bookmarklet:description:conclusion"); ?></p>
diff --git a/mod/bookmarks/views/default/bookmarks/css.php b/mod/bookmarks/views/default/bookmarks/css.php
index 1e8f8c145..0d734c847 100644
--- a/mod/bookmarks/views/default/bookmarks/css.php
+++ b/mod/bookmarks/views/default/bookmarks/css.php
@@ -1,50 +1,3 @@
-<?php
-/**
- * Elgg bookmarks CSS
- *
- * @package ElggBookmarks
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider <info@elgg.com>
- * @copyright Curverider Ltd 2008-2010
- * @link http://elgg.org/
- */
-?>
-
-.bookmark_note {
- margin:0 0 0 5px;
-}
-.note {
- margin-top:5px;
-}
-
-
-/* BOOKMARKS WIDGET
-.collapsable_box_content .ContentWrapper.bookmarks {
- margin-bottom:5px;
- line-height:1.2em;
-}
-.collapsable_box_content .ContentWrapper.bookmarks .share_desc {
- display:none;
- line-height: 1.2em;
-}
-.collapsable_box_content .ContentWrapper.bookmarks .share_desc p {
- margin:0 0 5px 0;
-}
-.collapsable_box_content .ContentWrapper.bookmarks .river_object_bookmarks_create p {
- min-height:17px;
- padding:0 0 0 17px;
-}
-.collapsable_box_content .ContentWrapper.bookmarks .shares_timestamp {
- color:#666666;
- margin:0;
- padding:0 0 0 17px;
-}
-.collapsable_box_content .ContentWrapper.bookmarks .shares_title {
- margin:0;
- line-height: 1.1em;
-}
-.collapsable_box_content .ContentWrapper.bookmarks.more {
- margin:0 10px;
- padding:5px 10px;
-}
-*/
+.elgg-icon-bookmark {
+ background: transparent url(<?php echo elgg_get_site_url();?>mod/bookmarks/graphics/bookmark.gif);
+} \ No newline at end of file
diff --git a/mod/bookmarks/views/default/bookmarks/form.php b/mod/bookmarks/views/default/bookmarks/form.php
deleted file mode 100644
index ba83e6876..000000000
--- a/mod/bookmarks/views/default/bookmarks/form.php
+++ /dev/null
@@ -1,112 +0,0 @@
-<?php
-
-/**
- * Elgg bookmarks plugin form
- *
- * @package ElggBookmarks
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider <info@elgg.com>
- * @copyright Curverider Ltd 2008-2010
- * @link http://elgg.org/
- */
-
-if(isset($vars['entity'])){
- $guid = $vars['entity']->guid;
- $title = $vars['entity']->title;
- $address = $vars['entity']->address;
- $access_id = $vars['entity']->access_id;
- $tags = $vars['entity']->tags;
- $notes = $vars['entity']->description;
- $url = "action/bookmarks/edit";
-}else{
- //set some variables
- $guid = '';
- $title = get_input('title',"");
- $title = stripslashes($title); // strip slashes from URL encoded apostrophes
- $address = get_input('address',"");
- $notes = '';
- if ($address == "previous")
- $address = $_SERVER['HTTP_REFERER'];
- $tags = array();
- if(page_owner_entity() instanceof ElggGroup){
- //if in a group, set the access level to default to the group
- $access_id = page_owner_entity()->group_acl;
- }else{
- $access_id = get_default_access(get_loggedin_user());
- }
- $owner = $vars['user'];
- $url = "action/bookmarks/add";
-}
-?>
-<form id="bookmark_edit_form" class="margin_top" action="<?php echo $vars['url'] . $url; ?>" method="post">
- <?php echo elgg_view('input/securitytoken'); ?>
- <p>
- <label>
- <?php echo elgg_echo('title'); ?>
- <?php
- echo elgg_view('input/text',array(
- 'internalname' => 'title',
- 'value' => $title,
- ));
- ?>
- </label>
- </p>
- <p>
- <label>
- <?php echo elgg_echo('bookmarks:address'); ?>
- <?php
- echo elgg_view('input/url',array(
- 'internalname' => 'address',
- 'value' => $address,
- ));
- ?>
- </label>
- </p>
- <p>
- <label>
- <?php echo elgg_echo('bookmarks:addnote'); ?>
- <br />
- <?php
-
- echo elgg_view('input/text',array(
- 'internalname' => 'notes',
- 'value' => $notes,
- ));
-
- ?>
- </label>
- </p>
- <p>
- <label>
- <?php echo elgg_echo('tags'); ?>
- <?php
- echo elgg_view('input/tags',array(
- 'internalname' => 'tags',
- 'value' => $tags,
- ));
- ?>
- </label>
- </p>
- <p>
- <label>
- <?php echo elgg_echo('access'); ?>
- <?php
- //if it is a group, pull out the group access view
- if(page_owner_entity() instanceof ElggGroup){
- $access_options = group_access_options(page_owner_entity());
- echo elgg_view('input/access', array('internalname' => 'access',
- 'value' => $access_id,
- 'options' => $access_options));
- }else{
- echo elgg_view('input/access', array('internalname' => 'access',
- 'value' => $access_id));
- }
- ?>
- </label>
- </p>
- <p>
- <?php echo $vars['container_guid'] ? elgg_view('input/hidden', array('internalname' => 'container_guid', 'value' => $vars['container_guid'])) : ""; ?>
- <input type="hidden" value="<?php echo $guid; ?>" name="guid" />
- <input type="submit" onfocus="blur()" value="<?php echo elgg_echo('save'); ?>" />
- </p>
-</form>
diff --git a/mod/bookmarks/views/default/bookmarks/group_bookmarks.php b/mod/bookmarks/views/default/bookmarks/group_bookmarks.php
deleted file mode 100755
index b9c9d27a8..000000000
--- a/mod/bookmarks/views/default/bookmarks/group_bookmarks.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-
-//grab the groups bookmarks
-$bookmarks = elgg_get_entities(array('type' => 'object', 'subtype' => 'bookmarks',
- 'container_guids' => page_owner(), 'limit' => 6));
-?>
-<div class="group_tool_widget bookmarks">
-<span class="group_widget_link"><a href="<?php echo $vars['url'] . "pg/bookmarks/" . page_owner_entity()->username; ?>"><?php echo elgg_echo('link:view:all')?></a></span>
-<h3><?php echo elgg_echo('bookmarks:group') ?></h3>
-<?php
-if($bookmarks){
- foreach($bookmarks as $b){
-
- //get the owner
- $owner = $b->getOwnerEntity();
-
- //get the time
- $friendlytime = friendly_time($b->time_created);
-
- $info = "<div class='entity_listing_icon'>" . elgg_view('profile/icon',array('entity' => $b->getOwnerEntity(), 'size' => 'tiny')) . "</div>";
-
- //get the bookmark entries body
- $info .= "<div class='entity_listing_info'><p class='entity_title'><a href=\"{$b->address}\">{$b->title}</a></p>";
-
- //get the user details
- $info .= "<p class='entity_subtext'>{$friendlytime}</p>";
- $info .= "</div>";
- //display
- echo "<div class='entity_listing clearfloat'>" . $info . "</div>";
- }
-} else {
- $create_bookmark = $vars['url'] . "pg/bookmarks/" . page_owner_entity()->username . "/add";
- echo "<p class='margin_top'><a href=\"{$create_bookmark}\">" . elgg_echo("bookmarks:new") . "</a></p>";
-}
-echo "</div>"; \ No newline at end of file
diff --git a/mod/bookmarks/views/default/bookmarks/group_module.php b/mod/bookmarks/views/default/bookmarks/group_module.php
new file mode 100644
index 000000000..60a727819
--- /dev/null
+++ b/mod/bookmarks/views/default/bookmarks/group_module.php
@@ -0,0 +1,47 @@
+<?php
+/**
+ * List most recent bookmarks on group profile page
+ *
+ * @package Bookmarks
+ */
+
+$group = elgg_get_page_owner_entity();
+
+if ($group->bookmarks_enable == "no") {
+ return true;
+}
+
+$all_link = elgg_view('output/url', array(
+ 'href' => "bookmarks/group/$group->guid/all",
+ 'text' => elgg_echo('link:view:all'),
+ 'is_trusted' => true,
+));
+
+elgg_push_context('widgets');
+$options = array(
+ 'type' => 'object',
+ 'subtype' => 'bookmarks',
+ 'container_guid' => elgg_get_page_owner_guid(),
+ 'limit' => 6,
+ 'full_view' => false,
+ 'pagination' => false,
+);
+$content = elgg_list_entities($options);
+elgg_pop_context();
+
+if (!$content) {
+ $content = '<p>' . elgg_echo('bookmarks:none') . '</p>';
+}
+
+$new_link = elgg_view('output/url', array(
+ 'href' => "bookmarks/add/$group->guid",
+ 'text' => elgg_echo('bookmarks:add'),
+ 'is_trusted' => true,
+));
+
+echo elgg_view('groups/profile/module', array(
+ 'title' => elgg_echo('bookmarks:group'),
+ 'content' => $content,
+ 'all_link' => $all_link,
+ 'add_link' => $new_link,
+));
diff --git a/mod/bookmarks/views/default/bookmarks/js.php b/mod/bookmarks/views/default/bookmarks/js.php
new file mode 100644
index 000000000..c36823c09
--- /dev/null
+++ b/mod/bookmarks/views/default/bookmarks/js.php
@@ -0,0 +1,12 @@
+
+elgg.provide('elgg.bookmarks');
+
+elgg.bookmarks.init = function() {
+ // append the title to the url
+ var title = document.title;
+ var e = $('a.elgg-bookmark-page');
+ var link = e.attr('href') + '&title=' + encodeURIComponent(title);
+ e.attr('href', link);
+};
+
+elgg.register_hook_handler('init', 'system', elgg.bookmarks.init);
diff --git a/mod/bookmarks/views/default/bookmarks/sidebar.php b/mod/bookmarks/views/default/bookmarks/sidebar.php
new file mode 100644
index 000000000..811284ef3
--- /dev/null
+++ b/mod/bookmarks/views/default/bookmarks/sidebar.php
@@ -0,0 +1,14 @@
+<?php
+/**
+ * Bookmarks sidebar
+ */
+
+echo elgg_view('page/elements/comments_block', array(
+ 'subtypes' => 'bookmarks',
+ 'owner_guid' => elgg_get_page_owner_guid(),
+));
+
+echo elgg_view('page/elements/tagcloud_block', array(
+ 'subtypes' => 'bookmarks',
+ 'owner_guid' => elgg_get_page_owner_guid(),
+));
diff --git a/mod/bookmarks/views/default/bookmarks/stats.php b/mod/bookmarks/views/default/bookmarks/stats.php
deleted file mode 100755
index 77c3d703f..000000000
--- a/mod/bookmarks/views/default/bookmarks/stats.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-/**
- * All site bookmark stats
- **/
-
-echo "<h3>".elgg_echo('bookmarks:stats')."</h3>";
-echo "<p>". $vars['count'] . " " . elgg_echo('bookmarks:resources') .".</p>"; \ No newline at end of file
diff --git a/mod/bookmarks/views/default/forms/bookmarks/save.php b/mod/bookmarks/views/default/forms/bookmarks/save.php
new file mode 100644
index 000000000..7d064a55b
--- /dev/null
+++ b/mod/bookmarks/views/default/forms/bookmarks/save.php
@@ -0,0 +1,59 @@
+<?php
+/**
+ * Edit / add a bookmark
+ *
+ * @package Bookmarks
+ */
+
+// once elgg_view stops throwing all sorts of junk into $vars, we can use extract()
+$title = elgg_extract('title', $vars, '');
+$desc = elgg_extract('description', $vars, '');
+$address = elgg_extract('address', $vars, '');
+$tags = elgg_extract('tags', $vars, '');
+$access_id = elgg_extract('access_id', $vars, ACCESS_DEFAULT);
+$container_guid = elgg_extract('container_guid', $vars);
+$guid = elgg_extract('guid', $vars, null);
+$shares = elgg_extract('shares', $vars, array());
+
+?>
+<div>
+ <label><?php echo elgg_echo('title'); ?></label><br />
+ <?php echo elgg_view('input/text', array('name' => 'title', 'value' => $title)); ?>
+</div>
+<div>
+ <label><?php echo elgg_echo('bookmarks:address'); ?></label><br />
+ <?php echo elgg_view('input/text', array('name' => 'address', 'value' => $address)); ?>
+</div>
+<div>
+ <label><?php echo elgg_echo('description'); ?></label>
+ <?php echo elgg_view('input/longtext', array('name' => 'description', 'value' => $desc)); ?>
+</div>
+<div>
+ <label><?php echo elgg_echo('tags'); ?></label>
+ <?php echo elgg_view('input/tags', array('name' => 'tags', 'value' => $tags)); ?>
+</div>
+<?php
+
+$categories = elgg_view('input/categories', $vars);
+if ($categories) {
+ echo $categories;
+}
+
+?>
+<div>
+ <label><?php echo elgg_echo('access'); ?></label><br />
+ <?php echo elgg_view('input/access', array('name' => 'access_id', 'value' => $access_id)); ?>
+</div>
+<div class="elgg-foot">
+<?php
+
+echo elgg_view('input/hidden', array('name' => 'container_guid', 'value' => $container_guid));
+
+if ($guid) {
+ echo elgg_view('input/hidden', array('name' => 'guid', 'value' => $guid));
+}
+
+echo elgg_view('input/submit', array('value' => elgg_echo("save")));
+
+?>
+</div> \ No newline at end of file
diff --git a/mod/bookmarks/views/default/object/bookmarks.php b/mod/bookmarks/views/default/object/bookmarks.php
index 23aad799c..83bae2b13 100644
--- a/mod/bookmarks/views/default/object/bookmarks.php
+++ b/mod/bookmarks/views/default/object/bookmarks.php
@@ -1,87 +1,127 @@
<?php
/**
* Elgg bookmark view
- *
+ *
* @package ElggBookmarks
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider <info@elgg.com>
- * @copyright Curverider Ltd 2008-2010
- * @link http://elgg.org/
*/
-$owner = $vars['entity']->getOwnerEntity();
-$friendlytime = friendly_time($vars['entity']->time_created);
-$parsed_url = parse_url($vars['entity']->address);
-$faviconurl = $parsed_url['scheme'] . "://" . $parsed_url['host'] . "/favicon.ico";
-
-//sort out the access level for display
-$object_acl = get_readable_access_level($vars['entity']->access_id);
-//files with these access level don't need an icon
-$general_access = array('Public', 'Logged in users', 'Friends');
-//set the right class for access level display - need it to set on groups and shared access only
-$is_group = get_entity($vars['entity']->container_guid);
-if($is_group instanceof ElggGroup){
- //get the membership type open/closed
- $membership = $is_group->membership;
- //we decided to show that the item is in a group, rather than its actual access level
- $object_acl = "Group: " . $is_group->name;
- if($membership == 2)
- $access_level = "class='access_level group_open'";
- else
- $access_level = "class='access_level group_closed'";
-}elseif($object_acl == 'Private'){
- $access_level = "class='access_level private'";
-}else{
- if(!in_array($object_acl, $general_access))
- $access_level = "class='access_level shared_collection'";
- else
- $access_level = "class='access_level entity_access'";
+$full = elgg_extract('full_view', $vars, FALSE);
+$bookmark = elgg_extract('entity', $vars, FALSE);
+
+if (!$bookmark) {
+ return;
}
-if($vars['entity']->description != '')
- $view_notes = "<a class='link' onclick=\"elgg_slide_toggle(this,'.entity_listing','.note');\">note</a>";
-else
- $view_notes = '';
-if (@file_exists($faviconurl)) {
- $icon = "<img src=\"{$faviconurl}\" />";
+$owner = $bookmark->getOwnerEntity();
+$owner_icon = elgg_view_entity_icon($owner, 'tiny');
+$container = $bookmark->getContainerEntity();
+$categories = elgg_view('output/categories', $vars);
+
+$link = elgg_view('output/url', array('href' => $bookmark->address));
+$description = elgg_view('output/longtext', array('value' => $bookmark->description, 'class' => 'pbl'));
+
+$owner_link = elgg_view('output/url', array(
+ 'href' => "bookmarks/owner/$owner->username",
+ 'text' => $owner->name,
+ 'is_trusted' => true,
+));
+$author_text = elgg_echo('byline', array($owner_link));
+
+$date = elgg_view_friendly_time($bookmark->time_created);
+
+$comments_count = $bookmark->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' => $bookmark->getURL() . '#comments',
+ 'text' => $text,
+ 'is_trusted' => true,
+ ));
} else {
- $icon = elgg_view("profile/icon", array('entity' => $owner,'size' => 'tiny',));
+ $comments_link = '';
}
+$metadata = elgg_view_menu('entity', array(
+ 'entity' => $vars['entity'],
+ 'handler' => 'bookmarks',
+ 'sort_by' => 'priority',
+ 'class' => 'elgg-menu-hz',
+));
+
+$subtitle = "$author_text $date $comments_link $categories";
-//delete
-if($vars['entity']->canEdit()){
-$delete .= "<span class='delete_button'>" . elgg_view('output/confirmlink',array(
- 'href' => $vars['url'] . "action/bookmarks/delete?bookmark_guid=" . $vars['entity']->guid,
- 'text' => elgg_echo("delete"),
- 'confirm' => elgg_echo("bookmarks:delete:confirm"),
- )) . "</span>";
+// do not show the metadata and controls in widget view
+if (elgg_in_context('widgets')) {
+ $metadata = '';
}
-$info = "<div class='entity_metadata'><span {$access_level}>{$object_acl}</span>";
+if ($full && !elgg_in_context('gallery')) {
-// include a view for plugins to extend
-$info .= elgg_view("bookmarks/options",array('entity' => $vars['entity']));
-$info .= elgg_view_likes($vars['entity']); // include likes
-
-//include edit and delete options
-if($vars['entity']->canEdit()){
- $info .= "<span class='entity_edit'><a href=\"{$vars['url']}pg/bookmarks/{$owner->username}/edit/{$vars['entity']->getGUID()}\">" . elgg_echo('edit') . "</a></span>";
- $info .= $delete;
-}
+ $params = array(
+ 'entity' => $bookmark,
+ 'title' => false,
+ 'metadata' => $metadata,
+ 'subtitle' => $subtitle,
+ );
+ $params = $params + $vars;
+ $summary = elgg_view('object/elements/summary', $params);
- $info .= "</div>";
+ $bookmark_icon = elgg_view_icon('push-pin-alt');
+ $body = <<<HTML
+<div class="bookmark elgg-content mts">
+ $bookmark_icon<span class="elgg-heading-basic mbs">$link</span>
+ $description
+</div>
+HTML;
-$info .= "<p class='entity_title'><a href=\"{$vars['entity']->address}\" target=\"_blank\">{$vars['entity']->title}</a></p>";
-$info .= "<p class='entity_subtext'>Bookmarked by <a href=\"{$vars['url']}pg/bookmarks/{$owner->username}\">{$owner->name}</a> {$friendlytime} {$view_notes}</p>";
+ echo elgg_view('object/elements/full', array(
+ 'entity' => $bookmark,
+ 'icon' => $owner_icon,
+ 'summary' => $summary,
+ 'body' => $body,
+ ));
-$tags = elgg_view('output/tags', array('tags' => $vars['entity']->tags));
-if (!empty($tags)) {
- $info .= '<p class="tags">' . $tags . '</p>';
-}
-if($view_notes != ''){
- $info .= "<div class='note hidden'>". $vars['entity']->description . "</div>";
-}
+} elseif (elgg_in_context('gallery')) {
+ echo <<<HTML
+<div class="bookmarks-gallery-item">
+ <h3>$bookmark->title</h3>
+ <p class='subtitle'>$owner_link $date</p>
+</div>
+HTML;
+} else {
+ // brief view
+ $url = $bookmark->address;
+ $display_text = $url;
+ $excerpt = elgg_get_excerpt($bookmark->description);
+ if ($excerpt) {
+ $excerpt = " - $excerpt";
+ }
+
+ if (strlen($url) > 25) {
+ $bits = parse_url($url);
+ if (isset($bits['host'])) {
+ $display_text = $bits['host'];
+ } else {
+ $display_text = elgg_get_excerpt($url, 100);
+ }
+ }
+
+ $link = elgg_view('output/url', array(
+ 'href' => $bookmark->address,
+ 'text' => $display_text,
+ ));
+
+ $content = elgg_view_icon('push-pin-alt') . "$link{$excerpt}";
+
+ $params = array(
+ 'entity' => $bookmark,
+ 'metadata' => $metadata,
+ 'subtitle' => $subtitle,
+ 'content' => $content,
+ );
+ $params = $params + $vars;
+ $body = elgg_view('object/elements/summary', $params);
-//display
-echo elgg_view_listing($icon, $info); \ No newline at end of file
+ echo elgg_view_image_block($owner_icon, $body);
+}
diff --git a/mod/bookmarks/views/default/river/object/bookmarks/create.php b/mod/bookmarks/views/default/river/object/bookmarks/create.php
index d5124e4ca..388f54ac9 100644
--- a/mod/bookmarks/views/default/river/object/bookmarks/create.php
+++ b/mod/bookmarks/views/default/river/object/bookmarks/create.php
@@ -1,21 +1,15 @@
<?php
/**
- * Elgg bookmark river entry view
+ * New bookmarks river entry
+ *
+ * @package Bookmarks
*/
-$performed_by = get_entity($vars['item']->subject_guid); // $statement->getSubject();
-$object = get_entity($vars['item']->object_guid);
-$is_group = get_entity($object->container_guid);
-$url = $object->getURL();
-$url = "<a href=\"{$performed_by->getURL()}\">{$performed_by->name}</a>";
-$string = sprintf(elgg_echo("bookmarks:river:created"),$url) . " ";
-$string .= "<a href=\"" . $object->address . "\">" . $object->title . "</a>";
-if(($is_group instanceof ElggGroup) && (get_context() != 'groups')){
- $string .= " " . elgg_echo('bookmarks:ingroup') . " <a href=\"{$is_group->getURL()}\">" . $is_group->name . "</a>";
-}
-$string .= " <span class='entity_subtext'>" . friendly_time($object->time_created) . "</span>";
-if (isloggedin()){
- $string .= "<a class='river_comment_form_button link'>Comment</a>";
- $string .= elgg_view('likes/forms/link', array('entity' => $object));
-}
-echo $string; \ No newline at end of file
+$object = $vars['item']->getObjectEntity();
+$excerpt = elgg_get_excerpt($object->description);
+
+echo elgg_view('river/elements/layout', array(
+ 'item' => $vars['item'],
+ 'message' => $excerpt,
+ 'attachments' => elgg_view('output/url', array('href' => $object->address)),
+));
diff --git a/mod/bookmarks/views/default/widgets/bookmarks/content.php b/mod/bookmarks/views/default/widgets/bookmarks/content.php
new file mode 100644
index 000000000..0b85017fc
--- /dev/null
+++ b/mod/bookmarks/views/default/widgets/bookmarks/content.php
@@ -0,0 +1,32 @@
+<?php
+/**
+ * Elgg bookmarks widget
+ *
+ * @package Bookmarks
+ */
+
+$max = (int) $vars['entity']->num_display;
+
+$options = array(
+ 'type' => 'object',
+ 'subtype' => 'bookmarks',
+ 'container_guid' => $vars['entity']->owner_guid,
+ 'limit' => $max,
+ 'full_view' => FALSE,
+ 'pagination' => FALSE,
+);
+$content = elgg_list_entities($options);
+
+echo $content;
+
+if ($content) {
+ $url = "bookmarks/owner/" . elgg_get_page_owner_entity()->username;
+ $more_link = elgg_view('output/url', array(
+ 'href' => $url,
+ 'text' => elgg_echo('bookmarks:more'),
+ 'is_trusted' => true,
+ ));
+ echo "<span class=\"elgg-widget-more\">$more_link</span>";
+} else {
+ echo elgg_echo('bookmarks:none');
+}
diff --git a/mod/bookmarks/views/default/widgets/bookmarks/edit.php b/mod/bookmarks/views/default/widgets/bookmarks/edit.php
index 2098b200b..ed9c7fd88 100644
--- a/mod/bookmarks/views/default/widgets/bookmarks/edit.php
+++ b/mod/bookmarks/views/default/widgets/bookmarks/edit.php
@@ -1,28 +1,24 @@
<?php
/**
* Elgg bookmark widget edit view
- *
- * @package ElggBookmarks
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider <info@elgg.com>
- * @copyright Curverider Ltd 2008-2010
- * @link http://elgg.org/
+ *
+ * @package Bookmarks
*/
-?>
-<p>
- <?php echo elgg_echo('bookmarks:numbertodisplay'); ?>:
- <select name="params[num_display]">
-<?php
+// set default value
+if (!isset($vars['entity']->num_display)) {
+ $vars['entity']->num_display = 4;
+}
-for ($i=1; $i<=10; $i++) {
- $selected = '';
- if ($vars['entity']->num_display == $i) {
- $selected = "selected='selected'";
- }
+$params = array(
+ 'name' => 'params[num_display]',
+ 'value' => $vars['entity']->num_display,
+ 'options' => array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10),
+);
+$dropdown = elgg_view('input/dropdown', $params);
- echo " <option value='{$i}' $selected >{$i}</option>\n";
-}
?>
- </select>
-</p> \ No newline at end of file
+<div>
+ <?php echo elgg_echo('bookmarks:numbertodisplay'); ?>:
+ <?php echo $dropdown; ?>
+</div>
diff --git a/mod/bookmarks/views/default/widgets/bookmarks/view.php b/mod/bookmarks/views/default/widgets/bookmarks/view.php
deleted file mode 100644
index 4240b95f0..000000000
--- a/mod/bookmarks/views/default/widgets/bookmarks/view.php
+++ /dev/null
@@ -1,56 +0,0 @@
-<?php
-/**
- * Elgg bookmark widget view
- *
- * @package ElggBookmarks
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider <info@elgg.com>
- * @copyright Curverider Ltd 2008-2010
- * @link http://elgg.org/
- */
-
-//get the num of shares the user want to display
-$num = $vars['entity']->num_display;
-
-//if no number has been set, default to 4
-if(!$num)
- $num = 4;
-
-//grab the users bookmarked items
-$bookmarks = elgg_get_entities('object', 'bookmarks',$vars['entity']->owner_guid, "", $num, 0, false);
-
-if($bookmarks){
-
- foreach($bookmarks as $b){
-
- //get the owner
- $owner = $b->getOwnerEntity();
-
- //get the time
- $friendlytime = friendly_time($b->time_created);
-
- //get the bookmark title
- $info = "<div class='river_object_bookmarks_create'><p class=\"shares_title\"><a href=\"{$b->address}\">{$b->title}</a></p></div>";
-
- //get the user details
- $info .= "<p class=\"shares_timestamp\"><small>{$friendlytime} ";
-
- //get the bookmark description
- if($s->description)
- $info .= "<a href=\"javascript:void(0);\" class=\"share_more_info\">".elgg_echo('bookmarks:more')."</a></small></p><div class=\"share_desc\"><p>{$s->description}</p></div>";
- else
- $info .= "</small></p>";
-
- //display
- echo "<div class='ContentWrapper bookmarks'>";
- echo "<div class='shares_widget_content'>" . $info . "</div></div>";
-
- }
-
- $user_inbox = $vars['url'] . "pg/bookmarks/" . page_owner_entity()->username;
- if (get_entities('object', 'bookmarks', $vars['entity']->container_guid, '', '', '', true) > $num)
- echo "<div class='ContentWrapper bookmarks more'><a href=\"{$user_inbox}\">".elgg_echo('bookmarks:read')."</a></div>";
-
-} else {
- echo "<div class='ContentWrapper'>" . elgg_echo("bookmarks:widget:description") . "</div>";
-} \ No newline at end of file
diff --git a/mod/bookmarks/views/rss/object/bookmarks.php b/mod/bookmarks/views/rss/object/bookmarks.php
index 0a9a46333..1abda4710 100644
--- a/mod/bookmarks/views/rss/object/bookmarks.php
+++ b/mod/bookmarks/views/rss/object/bookmarks.php
@@ -1,26 +1,37 @@
<?php
/**
- * Elgg bookmark rss view
- *
+ * Bookmark RSS object view
+ *
* @package ElggBookmarks
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider <info@elgg.com>
- * @copyright Curverider Ltd 2008-2010
- * @link http://elgg.org/
*/
- $title = $vars['entity']->title;
- if (empty($title)) {
- $title = substr($vars['entity']->description,0,32);
- if (strlen($vars['entity']->description) > 32)
- $title .= " ...";
- }
-?>
+$title = $vars['entity']->title;
+if (empty($title)) {
+ $title = strip_tags($vars['entity']->description);
+ $title = elgg_get_excerpt($title, 32);
+}
- <item>
- <guid isPermaLink='true'><?php echo $vars['entity']->getURL(); ?></guid>
- <pubDate><?php echo date("r",$vars['entity']->time_created) ?></pubDate>
- <link><?php echo $vars['entity']->address; ?></link>
- <title><![CDATA[<?php echo $title; ?>]]></title>
- <description><![CDATA[<?php echo (autop($vars['entity']->description)); ?>]]></description>
- </item>
+$permalink = htmlspecialchars($vars['entity']->getURL(), ENT_NOQUOTES, 'UTF-8');
+$pubdate = date('r', $vars['entity']->getTimeCreated());
+
+$url_text = elgg_echo('bookmarks:address');
+$link = elgg_view('output/url', array('href' => $vars['entity']->address));
+$description = $vars['entity']->description . "<p>$url_text: $link</p>";
+
+$creator = elgg_view('page/components/creator', $vars);
+$georss = elgg_view('page/components/georss', $vars);
+$extension = elgg_view('extensions/item');
+
+$item = <<<__HTML
+<item>
+ <guid isPermaLink="true">$permalink</guid>
+ <pubDate>$pubdate</pubDate>
+ <link>$permalink</link>
+ <title><![CDATA[$title]]></title>
+ <description><![CDATA[$description]]></description>
+ $creator$georss$extension
+</item>
+
+__HTML;
+
+echo $item;