$user = get_entity($user_guid); if (!$plugin instanceof ElggPlugin) { register_error(elgg_echo('plugins:usersettings:save:fail', array($plugin_id))); forward(REFERER); } if (!$user instanceof ElggUser) { register_error(elgg_echo('plugins:usersettings:save:fail', array($plugin_id))); forward(REFERER); } $plugin_name = $plugin->manifest->getName(); // make sure we're admin or the user if (!$user->canEdit()) { register_error(elgg_echo('plugins:usersettings:save:fail', array($plugin_name))); forward(REFERER); } $result = false; if (elgg_action_exists("usersettings/{$plugin_id}/save")) { action("usersettings/{$plugin_id}/save"); } else { foreach ($params as $k => $v) { // Save $result = $plugin->setUserSetting($k, $v, $user->guid); // Error? if (!$result) { register_error(elgg_echo('plugins:usersettings:save:fail', array($plugin_name))); forward(REFERER); } } } system_message(elgg_echo('plugins:usersettings:save:ok', array($plugin_name))); forward(REFERER);
/** * Entity menu is list of links and info on any entity * @access private */ function _elgg_entity_menu_setup($hook, $type, $return, $params) { if (elgg_in_context('widgets')) { return $return; } $entity = $params['entity']; /* @var \ElggEntity $entity */ $handler = elgg_extract('handler', $params, false); // access if (elgg_is_logged_in()) { $access = elgg_view('output/access', array('entity' => $entity)); $options = array('name' => 'access', 'text' => $access, 'href' => false, 'priority' => 100); $return[] = \ElggMenuItem::factory($options); } if ($entity->canEdit() && $handler) { // edit link $options = array('name' => 'edit', 'text' => elgg_echo('edit'), 'title' => elgg_echo('edit:this'), 'href' => "{$handler}/edit/{$entity->getGUID()}", 'priority' => 200); $return[] = \ElggMenuItem::factory($options); } if ($entity->canDelete() && $handler) { // delete link if (elgg_action_exists("{$handler}/delete")) { $action = "action/{$handler}/delete"; } else { $action = "action/entity/delete"; } $options = array('name' => 'delete', 'text' => elgg_view_icon('delete'), 'title' => elgg_echo('delete:this'), 'href' => "{$action}?guid={$entity->getGUID()}", 'confirm' => elgg_echo('deleteconfirm'), 'priority' => 300); $return[] = \ElggMenuItem::factory($options); } return $return; }
<?php namespace Elgg\Roles\UI; $name = elgg_extract('name', $vars, false); if (!elgg_action_exists($name)) { $name .= elgg_view('admin/roles/warnings/actions'); } $details = elgg_extract('details', $vars); $actionable = elgg_extract('actionable', $vars, true); $rule = elgg_extract('rule', $details); if ($actionable) { $form = elgg_view('forms/roles/templates/actions', $vars); $actions = elgg_view_icon('delete', 'roles-ui-rule-remove'); } $html = <<<__HTML <div class="roles-ui-permission"> \t{$form} \t<div class="roles-ui-rule-perm-type roles-ui-rule-perm-type-actions"><span>actions</span></div> \t<div class="roles-ui-rule-name">{$name}</div> \t<div class="roles-ui-rule roles-ui-rule-{$rule}">{$rule}</div> \t<div class="roles-ui-rule-options roles-ui-rule-options-{$rule}">{$opts}</div> \t<div class="roles-ui-rule-actions">{$actions}</div> </div> __HTML; echo $html;
* * @uses array $_REQUEST['params'] A set of key/value pairs to save to the ElggPlugin entity * @uses int $_REQUEST['plugin_id'] The ID of the plugin * * @package Elgg.Core * @subpackage Plugins.Settings */ $params = get_input('params'); $plugin_id = get_input('plugin_id'); $plugin = elgg_get_plugin_from_id($plugin_id); if (!$plugin instanceof ElggPlugin) { register_error(elgg_echo('plugins:settings:save:fail', array($plugin_id))); forward(REFERER); } $plugin_name = $plugin->getManifest()->getName(); $result = false; // allow a plugin to override the save action for their settings if (elgg_action_exists("{$plugin_id}/settings/save")) { action("{$plugin_id}/settings/save"); } else { foreach ($params as $k => $v) { $result = $plugin->setSetting($k, $v); if (!$result) { register_error(elgg_echo('plugins:settings:save:fail', array($plugin_name))); forward(REFERER); exit; } } } system_message(elgg_echo('plugins:settings:save:ok', array($plugin_name))); forward(REFERER);
/** * Parses action name * * @param string $action Action name * @return string */ public function parseActionName($action = null) { if (is_string($action) && elgg_action_exists($action)) { return $action; } if (Integration::isElggVersionBelow('1.9.0')) { return get_input('action'); } $uri = trim(get_input('__elgg_uri', ''), '/'); $segments = explode('/', $uri); $handler = array_shift($segments); if ($handler == 'action') { return implode('/', $segments); } return $uri; }
<?php $user = elgg_get_logged_in_user_entity(); $message_type = elgg_extract('message_type', $vars, HYPEINBOX_PRIVATE); $outtypes = hj_inbox_get_outgoing_message_types($user); if (!in_array($message_type, $outtypes)) { //echo elgg_echo('actionunauthorized'); return; } $action = "messages/send/{$message_type}"; $view = elgg_view_exists("forms/{$action}") ? $action : "messages/send"; $action = elgg_action_exists($action) ? "action/{$action}" : "action/messages/send"; echo elgg_view_form($view, array('action' => $action, 'enctype' => 'multipart/form-data'), $vars);
<?php use hypeJunction\Inbox\Message; $user = elgg_get_logged_in_user_entity(); $message_type = elgg_extract('message_type', $vars, Message::TYPE_PRIVATE); $outtypes = hypeInbox()->model->getOutgoingMessageTypes($user); if (!in_array($message_type, $outtypes)) { //echo elgg_echo('actionunauthorized'); return; } $action = "messages/send/{$message_type}"; $form = elgg_view_exists("forms/{$action}") ? $action : "messages/send"; echo elgg_view_form($form, array('action' => elgg_action_exists($action) ? "action/{$action}" : "action/messages/send"), $vars);
<?php namespace hypeJunction\DBExplorer; $user_action = get_input('user_action', false); $content_action = get_input('content_action', false); $ha = access_get_show_hidden_status(); access_show_hidden_entities(true); if (elgg_action_exists($content_action)) { action($content_action, false); } if (elgg_action_exists($user_action)) { action($user_action, false); } access_show_hidden_entities($ha); forward(REFERER);
<?php elgg_load_library('elgg:groups'); $entity = elgg_extract('entity', $vars, null); $form_vars = array('enctype' => 'multipart/form-data', 'class' => 'elgg-form-alt'); $view_vars = groups_prepare_form_vars($entity); if (is_array($view_vars)) { $view_vars = array_merge($vars, $view_vars); } if ($entity instanceof ElggGroup) { $subtype = $entity->getSubtype(); } else { $subtype = elgg_extract('subtype', $view_vars); } if ($subtype && elgg_view_exists("forms/groups/edit/{$subtype}") && elgg_action_exists("groups/edit/{$subtype}")) { echo elgg_view_form("groups/edit/{$subtype}", $form_vars, $view_vars); } else { echo elgg_view_form('groups/edit', $form_vars, $view_vars); } ?> <script> require(['elgg/groups/edit']); </script>