aboutsummaryrefslogtreecommitdiff
path: root/actions/widgets/add.php
diff options
context:
space:
mode:
Diffstat (limited to 'actions/widgets/add.php')
-rw-r--r--actions/widgets/add.php24
1 files changed, 16 insertions, 8 deletions
diff --git a/actions/widgets/add.php b/actions/widgets/add.php
index cdb26ef07..d7b2f291c 100644
--- a/actions/widgets/add.php
+++ b/actions/widgets/add.php
@@ -6,15 +6,23 @@
* @subpackage Widgets.Management
*/
-$user_guid = get_input('user_guid');
+$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);
-if (!empty($user_guid)) {
- $user = get_entity($user_guid);
- if ($user && $user->canEdit()) {
- $guid = elgg_create_widget($user->getGUID(), $handler, $context);
+elgg_push_context($context);
+if ($default_widgets) {
+ elgg_push_context('default_widgets');
+}
+elgg_push_context('widgets');
+
+if (!empty($owner_guid)) {
+ $owner = get_entity($owner_guid);
+ if ($owner && $owner->canEdit()) {
+ $guid = elgg_create_widget($owner->getGUID(), $handler, $context);
if ($guid) {
$widget = get_entity($guid);
@@ -22,13 +30,13 @@ if (!empty($user_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'));
+ //system_message(elgg_echo('widgets:add:success'));
forward(REFERER);
}
}
}
register_error(elgg_echo('widgets:add:failure'));
-forward(REFERER); \ No newline at end of file
+forward(REFERER);