diff options
Diffstat (limited to 'mod/pages/views')
| -rw-r--r-- | mod/pages/views/default/annotation/page.php | 20 | ||||
| -rw-r--r-- | mod/pages/views/default/forms/pages/edit.php | 39 | ||||
| -rw-r--r-- | mod/pages/views/default/input/write_access.php | 35 | ||||
| -rw-r--r-- | mod/pages/views/default/object/page_top.php | 75 | ||||
| -rw-r--r-- | mod/pages/views/default/pages/group_module.php | 17 | ||||
| -rw-r--r-- | mod/pages/views/default/pages/icon.php | 2 | ||||
| -rw-r--r-- | mod/pages/views/default/pages/input/parent.php | 37 | ||||
| -rw-r--r-- | mod/pages/views/default/pages/sidebar.php | 14 | ||||
| -rw-r--r-- | mod/pages/views/default/pages/sidebar/history.php | 1 | ||||
| -rw-r--r-- | mod/pages/views/default/pages/sidebar/navigation.php | 6 | ||||
| -rw-r--r-- | mod/pages/views/default/river/object/page/create.php | 30 | ||||
| -rw-r--r-- | mod/pages/views/default/widgets/pages/content.php | 3 |
12 files changed, 207 insertions, 72 deletions
diff --git a/mod/pages/views/default/annotation/page.php b/mod/pages/views/default/annotation/page.php index f7a7a78a1..ecb289092 100644 --- a/mod/pages/views/default/annotation/page.php +++ b/mod/pages/views/default/annotation/page.php @@ -21,6 +21,7 @@ if (!$owner) { $owner_link = elgg_view('output/url', array( 'href' => $owner->getURL(), 'text' => $owner->name, + 'is_trusted' => true, )); $date = elgg_view_friendly_time($annotation->time_created); @@ -28,6 +29,7 @@ $date = elgg_view_friendly_time($annotation->time_created); $title_link = elgg_view('output/url', array( 'href' => $annotation->getURL(), 'text' => $page->title, + 'is_trusted' => true, )); $subtitle = elgg_echo('pages:revision:subtitle', array($date, $owner_link)); @@ -37,4 +39,22 @@ $body = <<< HTML <p class="elgg-subtext">$subtitle</p> HTML; +if (!elgg_in_context('widgets')) { + $menu = elgg_view_menu('annotation', array( + 'annotation' => $annotation, + 'sort_by' => 'priority', + 'class' => 'elgg-menu-hz float-alt', + )); +} + +$body = <<<HTML +<div class="mbn"> + $menu + <h3>$title_link</h3> + <span class="elgg-subtext"> + $subtitle + </span> +</div> +HTML; + echo elgg_view_image_block($icon, $body);
\ No newline at end of file diff --git a/mod/pages/views/default/forms/pages/edit.php b/mod/pages/views/default/forms/pages/edit.php index abb6716fd..e14ff19ec 100644 --- a/mod/pages/views/default/forms/pages/edit.php +++ b/mod/pages/views/default/forms/pages/edit.php @@ -6,26 +6,55 @@ */ $variables = elgg_get_config('pages'); +$user = elgg_get_logged_in_user_entity(); +$entity = elgg_extract('entity', $vars); +$can_change_access = true; +if ($user && $entity) { + $can_change_access = ($user->isAdmin() || $user->getGUID() == $entity->owner_guid); +} + foreach ($variables as $name => $type) { + // don't show read / write access inputs for non-owners or admin when editing + if (($type == 'access' || $type == 'write_access') && !$can_change_access) { + continue; + } + + // don't show parent picker input for top or new pages. + if ($name == 'parent_guid' && (!$vars['parent_guid'] || !$vars['guid'])) { + continue; + } + + if ($type == 'parent') { + $input_view = "pages/input/$type"; + } else { + $input_view = "input/$type"; + } + ?> <div> - <label><?php echo elgg_echo("pages:$name") ?></label><br /> - <?php echo elgg_view("input/$type", array( + <label><?php echo elgg_echo("pages:$name") ?></label> + <?php + if ($type != 'longtext') { + echo '<br />'; + } + + echo elgg_view($input_view, array( 'name' => $name, 'value' => $vars[$name], + 'entity' => ($name == 'parent_guid') ? $vars['entity'] : null, )); ?> </div> <?php } -$cats = elgg_view('categories', $vars); +$cats = elgg_view('input/categories', $vars); if (!empty($cats)) { echo $cats; } -echo '<div>'; +echo '<div class="elgg-foot">'; if ($vars['guid']) { echo elgg_view('input/hidden', array( 'name' => 'page_guid', @@ -36,7 +65,7 @@ echo elgg_view('input/hidden', array( 'name' => 'container_guid', 'value' => $vars['container_guid'], )); -if ($vars['parent_guid']) { +if (!$vars['guid']) { echo elgg_view('input/hidden', array( 'name' => 'parent_guid', 'value' => $vars['parent_guid'], diff --git a/mod/pages/views/default/input/write_access.php b/mod/pages/views/default/input/write_access.php new file mode 100644 index 000000000..69277ca20 --- /dev/null +++ b/mod/pages/views/default/input/write_access.php @@ -0,0 +1,35 @@ +<?php +/** + * Write access + * + * Removes the public option found in input/access + * + * @uses $vars['value'] The current value, if any + * @uses $vars['options_values'] + * @uses $vars['name'] The name of the input field + * @uses $vars['entity'] Optional. The entity for this access control (uses write_access_id) + */ + +$options = get_write_access_array(); +unset($options[ACCESS_PUBLIC]); + +$defaults = array( + 'class' => 'elgg-input-access', + 'disabled' => FALSE, + 'value' => get_default_access(), + 'options_values' => $options, +); + +if (isset($vars['entity'])) { + $defaults['value'] = $vars['entity']->write_access_id; + unset($vars['entity']); +} + +$vars = array_merge($defaults, $vars); + +if ($vars['value'] == ACCESS_DEFAULT) { + $vars['value'] = get_default_access(); +} +$vars['value'] = ($vars['value'] == ACCESS_PUBLIC) ? ACCESS_LOGGED_IN : $vars['value']; + +echo elgg_view('input/dropdown', $vars); diff --git a/mod/pages/views/default/object/page_top.php b/mod/pages/views/default/object/page_top.php index 1e1e5251d..f35202993 100644 --- a/mod/pages/views/default/object/page_top.php +++ b/mod/pages/views/default/object/page_top.php @@ -4,13 +4,13 @@ * * @package ElggPages * - * @uses $vars['entity'] The page object - * @uses $vars['full'] Whether to display the full view - * @uses $vars['revision'] This parameter not supported by elgg_view_entity() + * @uses $vars['entity'] The page object + * @uses $vars['full_view'] Whether to display the full view + * @uses $vars['revision'] This parameter not supported by elgg_view_entity() */ -$full = elgg_extract('full', $vars, FALSE); +$full = elgg_extract('full_view', $vars, FALSE); $page = elgg_extract('entity', $vars, FALSE); $revision = elgg_extract('revision', $vars, FALSE); @@ -18,6 +18,13 @@ if (!$page) { return TRUE; } +// pages used to use Public for write access +if ($page->write_access_id == ACCESS_PUBLIC) { + // this works because this metadata is public + $page->write_access_id = ACCESS_LOGGED_IN; +} + + if ($revision) { $annotation = $revision; } else { @@ -31,13 +38,14 @@ $page_icon = elgg_view('pages/icon', array('annotation' => $annotation, 'size' = $editor = get_entity($annotation->owner_guid); $editor_link = elgg_view('output/url', array( - 'href' => "pg/pages/owner/$editor->username", + 'href' => "pages/owner/$editor->username", 'text' => $editor->name, + 'is_trusted' => true, )); $date = elgg_view_friendly_time($annotation->time_created); $editor_text = elgg_echo('pages:strapline', array($date, $editor_link)); -$tags = elgg_view('output/tags', array('tags' => $page->tags)); +$categories = elgg_view('output/categories', $vars); $comments_count = $page->countComments(); //only display if there are commments @@ -46,27 +54,32 @@ if ($comments_count != 0 && !$revision) { $comments_link = elgg_view('output/url', array( 'href' => $page->getURL() . '#page-comments', 'text' => $text, + 'is_trusted' => true, )); } else { $comments_link = ''; } -$history_link = elgg_view('output/url', array( - 'href' => "pg/pages/history/$page->guid", - 'text' => elgg_echo('pages:history'), -)); - -$metadata = elgg_view('layout/objects/list/metadata', array( - 'entity' => $page, - 'handler' => 'pages', - 'links' => array($history_link), -)); - -$subtitle = "$editor_text $categories $comments_link"; +$subtitle = "$editor_text $comments_link $categories"; // do not show the metadata and controls in widget view -if (elgg_in_context('widgets') || $revision) { - $metadata = ''; +if (!elgg_in_context('widgets')) { + // If we're looking at a revision, display annotation menu + if ($revision) { + $metadata = elgg_view_menu('annotation', array( + 'annotation' => $annotation, + 'sort_by' => 'priority', + 'class' => 'elgg-menu-hz float-alt', + )); + } else { + // Regular entity menu + $metadata = elgg_view_menu('entity', array( + 'entity' => $vars['entity'], + 'handler' => 'pages', + 'sort_by' => 'priority', + 'class' => 'elgg-menu-hz', + )); + } } if ($full) { @@ -74,19 +87,19 @@ if ($full) { $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($page_icon, $list_body); + $params = $params + $vars; + $summary = elgg_view('object/elements/summary', $params); - echo <<<HTML -$info -$body -HTML; + echo elgg_view('object/elements/full', array( + 'entity' => $page, + 'title' => false, + 'icon' => $page_icon, + 'summary' => $summary, + 'body' => $body, + )); } else { // brief view @@ -97,10 +110,10 @@ HTML; 'entity' => $page, 'metadata' => $metadata, 'subtitle' => $subtitle, - 'tags' => $tags, 'content' => $excerpt, ); - $list_body = elgg_view('layout/objects/list/body', $params); + $params = $params + $vars; + $list_body = elgg_view('object/elements/summary', $params); echo elgg_view_image_block($page_icon, $list_body); } diff --git a/mod/pages/views/default/pages/group_module.php b/mod/pages/views/default/pages/group_module.php index c41de043d..0d7df96ac 100644 --- a/mod/pages/views/default/pages/group_module.php +++ b/mod/pages/views/default/pages/group_module.php @@ -13,13 +13,11 @@ if ($group->pages_enable == "no") { } $all_link = elgg_view('output/url', array( - 'href' => "pg/pages/group/$group->guid/owner", + 'href' => "pages/group/$group->guid/all", 'text' => elgg_echo('link:view:all'), + 'is_trusted' => true, )); -$header = "<span class=\"group-widget-viewall\">$all_link</span>"; -$header .= '<h3>' . elgg_echo('pages:group') . '</h3>'; - elgg_push_context('widgets'); $options = array( @@ -38,9 +36,14 @@ if (!$content) { } $new_link = elgg_view('output/url', array( - 'href' => "pg/pages/add/$group->guid", + 'href' => "pages/add/$group->guid", 'text' => elgg_echo('pages:add'), + 'is_trusted' => true, )); -$content .= "<span class='elgg-widget-more'>$new_link</span>"; -echo elgg_view_module('info', '', $content, array('header' => $header)); +echo elgg_view('groups/profile/module', array( + 'title' => elgg_echo('pages:group'), + 'content' => $content, + 'all_link' => $all_link, + 'add_link' => $new_link, +)); diff --git a/mod/pages/views/default/pages/icon.php b/mod/pages/views/default/pages/icon.php index d3b749eb8..cba034ec4 100644 --- a/mod/pages/views/default/pages/icon.php +++ b/mod/pages/views/default/pages/icon.php @@ -21,5 +21,5 @@ if (!in_array($vars['size'], array('small', 'medium', 'large', 'tiny', 'master', ?> <a href="<?php echo $annotation->getURL(); ?>"> - <img src="<?php echo $entity->getIconURL($vars['size']); ?>" /> + <img alt="<?php echo $entity->title; ?>" src="<?php echo $entity->getIconURL($vars['size']); ?>" /> </a> diff --git a/mod/pages/views/default/pages/input/parent.php b/mod/pages/views/default/pages/input/parent.php new file mode 100644 index 000000000..c5ee3c3fb --- /dev/null +++ b/mod/pages/views/default/pages/input/parent.php @@ -0,0 +1,37 @@ +<?php +/** + * Parent picker + * + * @uses $vars['value'] The current value, if any + * @uses $vars['options_values'] + * @uses $vars['name'] The name of the input field + * @uses $vars['entity'] Optional. The child entity (uses container_guid) + */ + +elgg_load_library('elgg:pages'); + +if (empty($vars['entity'])) { + $container = elgg_get_page_owner_entity(); +} else { + $container = $vars['entity']->getContainerEntity(); +} + +$pages = pages_get_navigation_tree($container); +$options = array(); + +foreach ($pages as $page) { + $spacing = ""; + for ($i = 0; $i < $page['depth']; $i++) { + $spacing .= "--"; + } + $options[$page['guid']] = "$spacing " . $page['title']; +} + +$defaults = array( + 'class' => 'elgg-pages-input-parent-picker', + 'options_values' => $options, +); + +$vars = array_merge($defaults, $vars); + +echo elgg_view('input/dropdown', $vars); diff --git a/mod/pages/views/default/pages/sidebar.php b/mod/pages/views/default/pages/sidebar.php new file mode 100644 index 000000000..16fc12de0 --- /dev/null +++ b/mod/pages/views/default/pages/sidebar.php @@ -0,0 +1,14 @@ +<?php +/** + * Pages sidebar + */ + +echo elgg_view('page/elements/comments_block', array( + 'subtypes' => array('page', 'page_top'), + 'owner_guid' => elgg_get_page_owner_guid(), +)); + +echo elgg_view('page/elements/tagcloud_block', array( + 'subtypes' => array('page', 'page_top'), + 'owner_guid' => elgg_get_page_owner_guid(), +));
\ No newline at end of file diff --git a/mod/pages/views/default/pages/sidebar/history.php b/mod/pages/views/default/pages/sidebar/history.php index 7077edb9a..e0e8ed11a 100644 --- a/mod/pages/views/default/pages/sidebar/history.php +++ b/mod/pages/views/default/pages/sidebar/history.php @@ -14,6 +14,7 @@ if ($vars['page']) { 'limit' => 20, 'reverse_order_by' => true ); + elgg_push_context('widgets'); $content = elgg_list_annotations($options); } diff --git a/mod/pages/views/default/pages/sidebar/navigation.php b/mod/pages/views/default/pages/sidebar/navigation.php index fe017b1a7..65eb500c8 100644 --- a/mod/pages/views/default/pages/sidebar/navigation.php +++ b/mod/pages/views/default/pages/sidebar/navigation.php @@ -5,6 +5,11 @@ * @uses $vars['page'] Page object if manually setting selected item */ +// add the jquery treeview files for navigation +elgg_load_js('jquery-treeview'); +elgg_load_css('jquery-treeview'); + + $selected_page = elgg_extract('page', $vars, false); if ($selected_page) { $url = $selected_page->getURL(); @@ -51,4 +56,3 @@ if ($selected_page) { }); </script> - diff --git a/mod/pages/views/default/river/object/page/create.php b/mod/pages/views/default/river/object/page/create.php index 032046063..4c31def33 100644 --- a/mod/pages/views/default/river/object/page/create.php +++ b/mod/pages/views/default/river/object/page/create.php @@ -7,29 +7,7 @@ $object = $vars['item']->getObjectEntity(); $excerpt = strip_tags($object->description); $excerpt = elgg_get_excerpt($excerpt); -$params = array( - 'href' => $object->getURL(), - 'text' => $object->title, -); -$link = elgg_view('output/url', $params); - -$group_string = ''; -$container = $object->getContainerEntity(); -if ($container instanceof ElggGroup) { - $params = array( - 'href' => $container->getURL(), - 'text' => $container->name, - ); - $group_link = elgg_view('output/url', $params); - $group_string = elgg_echo('river:ingroup', array($group_link)); -} - -echo elgg_echo('pages:river:create'); - -echo " $link $group_string"; - -if ($excerpt) { - echo '<div class="elgg-river-content">'; - echo $excerpt; - echo '</div>'; -} +echo elgg_view('river/elements/layout', array( + 'item' => $vars['item'], + 'message' => $excerpt, +));
\ No newline at end of file diff --git a/mod/pages/views/default/widgets/pages/content.php b/mod/pages/views/default/widgets/pages/content.php index eea482273..f63777c09 100644 --- a/mod/pages/views/default/widgets/pages/content.php +++ b/mod/pages/views/default/widgets/pages/content.php @@ -20,10 +20,11 @@ $content = elgg_list_entities($options); echo $content; if ($content) { - $url = "pg/pages/owner/" . elgg_get_page_owner_entity()->username; + $url = "pages/owner/" . elgg_get_page_owner_entity()->username; $more_link = elgg_view('output/url', array( 'href' => $url, 'text' => elgg_echo('pages:more'), + 'is_trusted' => true, )); echo "<span class=\"elgg-widget-more\">$more_link</span>"; } else { |
