Elgg  Version 6.2
sessions.php
Go to the documentation of this file.
1 <?php
8 
16  return _elgg_services()->session;
17 }
18 
25  return _elgg_services()->session_manager->getLoggedInUser();
26 }
27 
35  return _elgg_services()->session_manager->getLoggedInUserGuid();
36 }
37 
43 function elgg_is_logged_in(): bool {
44  return _elgg_services()->session_manager->isLoggedIn();
45 }
46 
52 function elgg_is_admin_logged_in(): bool {
53  return _elgg_services()->session_manager->isAdminLoggedIn();
54 }
55 
65 function elgg_set_cookie(\ElggCookie $cookie): bool {
66  return _elgg_services()->responseFactory->setCookie($cookie);
67 }
68 
81 function elgg_login(\ElggUser $user, bool $persistent = false): void {
82  _elgg_services()->session_manager->login($user, $persistent);
83 }
84 
91 function elgg_logout(): bool {
92  return _elgg_services()->session_manager->logout();
93 }
94 
104  _elgg_services()->accounts->registerAuthenticationFailure($user);
105 }
106 
116  _elgg_services()->accounts->resetAuthenticationFailures($user);
117 }
118 
129 function elgg_is_authentication_failure_limit_reached(\ElggUser $user, ?int $limit = null, ?int $lifetime = null): bool {
130  return _elgg_services()->accounts->isAuthenticationFailureLimitReached($user, $limit, $lifetime);
131 }
132 
142  $session = _elgg_services()->session;
143  if ($session->has('last_forward_from')) {
144  $forward_url = $session->get('last_forward_from');
145  $session->remove('last_forward_from');
146  $forward_source = 'last_forward_from';
147  } elseif (get_input('returntoreferer')) {
149  $forward_source = 'return_to_referer';
150  } else {
151  // forward to main index page
152  $forward_url = '';
153  $forward_source = null;
154  }
155 
156  $params = [
157  'user' => $user,
158  'source' => $forward_source,
159  ];
160 
161  return elgg_trigger_event_results('login:forward', 'user', $params, $forward_url);
162 }
if(! $entity->delete(true, true)) $forward_url
Definition: delete.php:30
$params
Saves global plugin settings.
Definition: save.php:13
return[ 'admin/delete_admin_notices'=>['access'=> 'admin'], 'admin/menu/save'=>['access'=> 'admin'], 'admin/plugins/activate'=>['access'=> 'admin'], 'admin/plugins/activate_all'=>['access'=> 'admin'], 'admin/plugins/deactivate'=>['access'=> 'admin'], 'admin/plugins/deactivate_all'=>['access'=> 'admin'], 'admin/plugins/set_priority'=>['access'=> 'admin'], 'admin/security/security_txt'=>['access'=> 'admin'], 'admin/security/settings'=>['access'=> 'admin'], 'admin/security/regenerate_site_secret'=>['access'=> 'admin'], 'admin/site/cache/invalidate'=>['access'=> 'admin'], 'admin/site/flush_cache'=>['access'=> 'admin'], 'admin/site/icons'=>['access'=> 'admin'], 'admin/site/set_maintenance_mode'=>['access'=> 'admin'], 'admin/site/set_robots'=>['access'=> 'admin'], 'admin/site/theme'=>['access'=> 'admin'], 'admin/site/unlock_upgrade'=>['access'=> 'admin'], 'admin/site/settings'=>['access'=> 'admin'], 'admin/upgrade'=>['access'=> 'admin'], 'admin/upgrade/reset'=>['access'=> 'admin'], 'admin/user/ban'=>['access'=> 'admin'], 'admin/user/bulk/ban'=>['access'=> 'admin'], 'admin/user/bulk/delete'=>['access'=> 'admin'], 'admin/user/bulk/unban'=>['access'=> 'admin'], 'admin/user/bulk/validate'=>['access'=> 'admin'], 'admin/user/change_email'=>['access'=> 'admin'], 'admin/user/delete'=>['access'=> 'admin'], 'admin/user/login_as'=>['access'=> 'admin'], 'admin/user/logout_as'=>[], 'admin/user/makeadmin'=>['access'=> 'admin'], 'admin/user/resetpassword'=>['access'=> 'admin'], 'admin/user/removeadmin'=>['access'=> 'admin'], 'admin/user/unban'=>['access'=> 'admin'], 'admin/user/validate'=>['access'=> 'admin'], 'annotation/delete'=>[], 'avatar/upload'=>[], 'comment/save'=>[], 'diagnostics/download'=>['access'=> 'admin'], 'entity/chooserestoredestination'=>[], 'entity/delete'=>[], 'entity/mute'=>[], 'entity/restore'=>[], 'entity/subscribe'=>[], 'entity/trash'=>[], 'entity/unmute'=>[], 'entity/unsubscribe'=>[], 'login'=>['access'=> 'logged_out'], 'logout'=>[], 'notifications/mute'=>['access'=> 'public'], 'plugins/settings/remove'=>['access'=> 'admin'], 'plugins/settings/save'=>['access'=> 'admin'], 'plugins/usersettings/save'=>[], 'register'=>['access'=> 'logged_out', 'middleware'=>[\Elgg\Router\Middleware\RegistrationAllowedGatekeeper::class,],], 'river/delete'=>[], 'settings/notifications'=>[], 'settings/notifications/subscriptions'=>[], 'user/changepassword'=>['access'=> 'public'], 'user/requestnewpassword'=>['access'=> 'public'], 'useradd'=>['access'=> 'admin'], 'usersettings/save'=>[], 'widgets/add'=>[], 'widgets/delete'=>[], 'widgets/move'=>[], 'widgets/save'=>[],]
Definition: actions.php:73
$user
Definition: ban.php:7
Elgg Session Management.
Definition: ElggSession.php:19
Generic parent class for login exceptions.
const REFERRER
Used in calls to forward() to specify the browser should be redirected to the referring page.
Definition: constants.php:37
if($item instanceof \ElggEntity) elseif($item instanceof \ElggRiverItem) elseif($item instanceof \ElggRelationship) elseif(is_callable([ $item, 'getType']))
Definition: item.php:48
_elgg_services()
Get the global service provider.
Definition: elgglib.php:353
get_input(string $variable, $default=null, bool $filter_result=true)
Parameter input functions.
Definition: input.php:20
elgg_trigger_event_results(string $event, string $type, array $params=[], $returnvalue=null)
Triggers an event where it is expected that the mixed return value could be manipulated by event call...
Definition: events.php:117
$persistent
Definition: login_as.php:21
if(isset($_COOKIE['elggperm'])) $session
Definition: login_as.php:29
$limit
Definition: pagination.php:28
elgg_get_session()
Gets Elgg's session object.
Definition: sessions.php:15
elgg_reset_authentication_failures(\ElggUser $user)
Clears all authentication failures for a give user.
Definition: sessions.php:115
elgg_is_authentication_failure_limit_reached(\ElggUser $user, ?int $limit=null, ?int $lifetime=null)
Checks if the authentication failure limit has been reached.
Definition: sessions.php:129
elgg_is_admin_logged_in()
Returns whether or not the viewer is currently logged in and an admin user.
Definition: sessions.php:52
elgg_set_cookie(\ElggCookie $cookie)
Set a cookie, but allow plugins to customize it first.
Definition: sessions.php:65
elgg_get_logged_in_user_guid()
Return the current logged in user by guid.
Definition: sessions.php:34
elgg_login(\ElggUser $user, bool $persistent=false)
Log in a user.
Definition: sessions.php:81
elgg_register_authentication_failure(\ElggUser $user)
Registers an authentication failure for a user.
Definition: sessions.php:103
elgg_logout()
Log the current user out.
Definition: sessions.php:91
elgg_get_logged_in_user_entity()
Return the current logged in user, or null if no user is logged in.
Definition: sessions.php:24
elgg_is_logged_in()
Returns whether or not the user is currently logged in.
Definition: sessions.php:43
elgg_get_login_forward_url(\ElggUser $user)
Determine which URL the user should be forwarded to upon successful login.
Definition: sessions.php:141