diff options
Diffstat (limited to 'actions/widgets')
| -rw-r--r-- | actions/widgets/add.php | 3 | ||||
| -rw-r--r-- | actions/widgets/save.php | 20 |
2 files changed, 21 insertions, 2 deletions
diff --git a/actions/widgets/add.php b/actions/widgets/add.php index f65d11134..d7b2f291c 100644 --- a/actions/widgets/add.php +++ b/actions/widgets/add.php @@ -9,6 +9,7 @@ $owner_guid = get_input('owner_guid'); $handler = get_input('handler'); $context = get_input('context'); +$show_access = (bool)get_input('show_access', true); $column = get_input('column', 1); $default_widgets = get_input('default_widgets', 0); @@ -29,7 +30,7 @@ if (!empty($owner_guid)) { $widget->move($column, 0); // send widget html for insertion - echo elgg_view_entity($widget); + echo elgg_view_entity($widget, array('show_access' => $show_access)); //system_message(elgg_echo('widgets:add:success')); forward(REFERER); diff --git a/actions/widgets/save.php b/actions/widgets/save.php index 0a2de0c4d..e15deab77 100644 --- a/actions/widgets/save.php +++ b/actions/widgets/save.php @@ -4,6 +4,14 @@ * * @package Elgg.Core * @subpackage Widgets.Management + * + * @uses int $_REQUEST['guid'] The guid of the widget to save + * @uses array $_REQUEST['params'] An array of params to set on the widget. + * @uses int $_REQUEST['default_widgets'] Flag for if these settings are for default wigets. + * @uses string $_REQUEST['context'] An optional context of the widget. Used to return + * the correct output if widget content changes + * depending on context. + * */ elgg_set_context('widgets'); @@ -11,12 +19,22 @@ elgg_set_context('widgets'); $guid = get_input('guid'); $params = get_input('params'); $default_widgets = get_input('default_widgets', 0); +$context = get_input('context'); $widget = get_entity($guid); if ($widget && $widget->saveSettings($params)) { elgg_set_page_owner_guid($widget->getContainerGUID()); + if ($context) { + elgg_push_context($context); + } + if (!$default_widgets) { - $view = "widgets/$widget->handler/content"; + if (elgg_view_exists("widgets/$widget->handler/content")) { + $view = "widgets/$widget->handler/content"; + } else { + elgg_deprecated_notice("widgets use content as the display view", 1.8); + $view = "widgets/$widget->handler/view"; + } echo elgg_view($view, array('entity' => $widget)); } } else { |
