Elgg  Version 5.0
Widget.php
Go to the documentation of this file.
1 <?php
2 
3 namespace Elgg\Menus;
4 
6 
13 class Widget {
14 
22  public static function registerEdit(\Elgg\Event $event) {
23  $widget = $event->getEntityParam();
24  if (!$widget instanceof \ElggWidget) {
25  return;
26  }
27 
28  if (!(bool) $event->getParam('show_edit', $widget->canEdit())) {
29  return;
30  }
31 
32  /* @var $return MenuItems */
33  $return = $event->getValue();
34 
35  $return[] = \ElggMenuItem::factory([
36  'name' => 'settings',
37  'text' => elgg_view_icon('settings-alt'),
38  'title' => elgg_echo('widget:edit'),
39  'href' => "#widget-edit-{$widget->guid}",
40  'link_class' => ['elgg-widget-edit-button', 'elgg-toggle'],
41  'priority' => 800,
42  ]);
43 
44  return $return;
45  }
46 
54  public static function registerDelete(\Elgg\Event $event) {
55  $widget = $event->getEntityParam();
56  if (!$widget instanceof \ElggWidget || !$widget->canDelete()) {
57  return;
58  }
59 
60  /* @var $return MenuItems */
61  $return = $event->getValue();
62 
63  $return[] = \ElggMenuItem::factory([
64  'name' => 'delete',
65  'text' => elgg_view_icon('delete-alt'),
66  'title' => elgg_echo('widget:delete', [$widget->getDisplayName()]),
67  'href' => elgg_generate_action_url('widgets/delete', [
68  'widget_guid' => $widget->guid,
69  ]),
70  'confirm' => elgg_echo('deleteconfirm'),
71  'link_class' => 'elgg-widget-delete-button',
72  'id' => "elgg-widget-delete-button-{$widget->guid}",
73  'data-elgg-widget-type' => $widget->handler,
74  'priority' => 900,
75  ]);
76 
77  return $return;
78  }
79 }
elgg_generate_action_url(string $action, array $query=[], bool $add_csrf_tokens=true)
Generate an action URL.
elgg_echo(string $message_key, array $args=[], string $language= '')
Elgg language module Functions to manage language and translations.
Definition: languages.php:17
static factory(array $options)
Create an ElggMenuItem from an associative array.
Register menu item to the widget menu.
Definition: Widget.php:13
if($guid===false) $widget
Definition: add.php:31
elgg_view_icon(string $name, array $vars=[])
View an icon glyph.
Definition: views.php:1282
static registerEdit(\Elgg\Event $event)
Register the edit menu item for widgets.
Definition: Widget.php:22
static registerDelete(\Elgg\Event $event)
Register the delete menu item for widgets.
Definition: Widget.php:54
Models an event passed to event handlers.
Definition: Event.php:11