From 561c160ed8db7f418cc5ae34e04b959be5066442 Mon Sep 17 00:00:00 2001 From: cash Date: Tue, 25 Jan 2011 12:12:54 +0000 Subject: converted widgets to modules git-svn-id: http://code.elgg.org/elgg/trunk@7928 36083f99-b078-4883-b0ff-0f9b5a30f544 --- views/default/layout/objects/widget.php | 63 +++++++++++++++--------- views/default/layout/objects/widget/controls.php | 27 +++++----- views/default/layout/objects/widget/settings.php | 24 +++++---- 3 files changed, 67 insertions(+), 47 deletions(-) (limited to 'views/default/layout/objects') diff --git a/views/default/layout/objects/widget.php b/views/default/layout/objects/widget.php index d9a0681af..727b04533 100644 --- a/views/default/layout/objects/widget.php +++ b/views/default/layout/objects/widget.php @@ -2,7 +2,8 @@ /** * Widget object * - * @uses $vars['entity'] + * @uses $vars['entity'] ElggWidget + * @uses $vars['show_access'] Show the access control in edit area? (true) */ $widget = $vars['entity']; @@ -10,41 +11,57 @@ if (!elgg_instanceof($widget, 'object', 'widget')) { return true; } +$show_access = elgg_get_array_value('show_access', $vars, true); + // @todo catch for disabled plugins -$widgettypes = elgg_get_widget_types('all'); +$widget_types = elgg_get_widget_types('all'); $handler = $widget->handler; $title = $widget->getTitle(); +$edit_area = ''; $can_edit = $widget->canEdit(); +if ($can_edit) { + $edit_area = elgg_view('layout/objects/widget/settings', array( + 'widget' => $widget, + 'show_access' => $show_access, + )); +} +$controls = elgg_view('layout/objects/widget/controls', array( + 'widget' => $widget, + 'show_edit' => $edit_area != '', +)); + + +if (elgg_view_exists("widgets/$handler/content")) { + $content = elgg_view("widgets/$handler/content", $vars); +} else { + elgg_deprecated_notice("widgets use content as the display view", 1.8); + $content = elgg_view("widgets/$handler/view", $vars); +} + $widget_id = "elgg-widget-$widget->guid"; $widget_instance = "elgg-widget-instance-$handler"; +$widget_class = "elgg-module elgg-module-widget"; +if ($can_edit) { + $widget_class .= " elgg-state-draggable $widget_instance"; +} else { + $widget_class .= " elgg-state-fixed $widget_instance"; +} -?> -
-
-

+echo << +
+

$title

+ $controls
- $widget)); - ?> -
- $widget)); - } - ?> +
+ $edit_area
- + $content
+HTML; diff --git a/views/default/layout/objects/widget/controls.php b/views/default/layout/objects/widget/controls.php index 9693ba42f..bd1e96ea7 100644 --- a/views/default/layout/objects/widget/controls.php +++ b/views/default/layout/objects/widget/controls.php @@ -2,18 +2,17 @@ /** * Elgg widget controls * - * @package Elgg - * @subpackage Core + * @uses $vars['widget'] + * @uses $vars['show_edit'] Whether to show the edit button (true) */ $widget = $vars['widget']; +$show_edit = elgg_get_array_value('show_edit', $vars, true); $params = array( 'text' => ' ', 'href' => "#", 'class' => 'elgg-widget-collapse-button', -// 'internalid' => "elgg-toggler-widget-$widget->guid" -// 'internalid' => "elgg-widget-collapse-button-$widget->guid" ); $collapse_link = elgg_view('output/url', $params); @@ -29,20 +28,20 @@ if ($widget->canEdit()) { ); $delete_link = elgg_view('output/url', $params); - $params = array( - 'text' => ' ', - 'title' => elgg_echo('widget:edit'), - 'href' => "#", - 'class' => 'elgg-widget-edit-button elgg-toggle', - 'internalid' => "elgg-toggler-widget-$widget->guid" - ); - $edit_link = elgg_view('output/url', $params); + if ($show_edit) { + $params = array( + 'text' => ' ', + 'title' => elgg_echo('widget:edit'), + 'href' => "#", + 'class' => 'elgg-widget-edit-button elgg-toggle', + 'internalid' => "elgg-toggler-widget-$widget->guid" + ); + $edit_link = elgg_view('output/url', $params); + } } echo <<<___END -
$collapse_link $delete_link $edit_link -
___END; diff --git a/views/default/layout/objects/widget/settings.php b/views/default/layout/objects/widget/settings.php index 8020983c6..c53ea8fc6 100644 --- a/views/default/layout/objects/widget/settings.php +++ b/views/default/layout/objects/widget/settings.php @@ -2,27 +2,31 @@ /** * Elgg widget edit settings * - * @package Elgg - * @subpackage Core + * @uses $vars['widget'] + * @uses $vars['show_access'] */ $widget = $vars['widget']; +$show_access = elgg_get_array_value('show_access', $vars, true); $edit_view = "widgets/$widget->handler/edit"; $custom_form_section = elgg_view($edit_view, array('entity' => $widget)); -$access_label = elgg_echo('access'); -$access = elgg_view('input/access', array('internalname' => 'params[access_id]','value' => $widget->access_id)); -$access_html = "

$access

"; +$access = ''; +if ($show_access) { + $access = elgg_view('input/access', array( + 'internalname' => 'params[access_id]', + 'value' => $widget->access_id, + )); +} + +if (!$custom_form_section && !$access) { + return true; +} $hidden = elgg_view('input/hidden', array('internalname' => 'guid', 'value' => $widget->guid)); $submit = elgg_view('input/submit', array('value' => elgg_echo('save'))); -// dashboard widgets do not get access controls -if (elgg_in_context('dashboard')) { - $access = ''; -} - $body = <<<___END $custom_form_section $access -- cgit v1.2.3