Go to the documentation of this file.
25 if (! defined(
'CSRFCHECK_WITH_TOKEN')) {
26 define(
'CSRFCHECK_WITH_TOKEN',
'1');
29 require
'../../main.inc.php';
30 require_once DOL_DOCUMENT_ROOT.
'/core/lib/admin.lib.php';
34 $langs->loadLangs(array(
"companies",
"install",
"users",
"other"));
40 $action =
GETPOST(
'action',
'aZ09');
41 $confirm =
GETPOST(
'confirm',
'alpha');
44 if ($user->socid > 0) {
46 $socid = $user->socid;
49 $limit =
GETPOST(
'limit',
'int') ?
GETPOST(
'limit',
'int') : $conf->liste_limit;
50 $sortfield =
GETPOST(
'sortfield',
'aZ09comma');
51 $sortorder =
GETPOST(
'sortorder',
'aZ09comma');
53 if (empty($page) || $page == -1) {
56 $offset = $limit * $page;
57 $pageprev = $page - 1;
58 $pagenext = $page + 1;
63 $sortfield =
"dateevent";
72 if ($action ==
'confirm_purge' && $confirm ==
'yes' && $user->admin) {
77 if ($action ==
'confirm_lock' && $confirm ==
'yes' && $user->admin) {
78 if (
dolibarr_set_const($db,
'MAIN_ONLY_LOGIN_ALLOWED', $user->login,
'text', 1,
'Logon is restricted to a particular user', 0) < 0) {
84 if ($action ==
'confirm_unlock' && $user->admin) {
100 $userstatic =
new User($db);
104 $num = count($listofsessions);
106 print_barre_liste($langs->trans(
"Sessions"), $page, $_SERVER[
"PHP_SELF"],
"", $sortfield, $sortorder,
'', $num, ($num ? $num :
''),
'setup');
108 $savehandler = ini_get(
"session.save_handler");
109 $savepath = ini_get(
"session.save_path");
110 $openbasedir = ini_get(
"open_basedir");
112 $suhosin = empty($phparray[
'suhosin'][
"suhosin.session.encrypt"][
"local"]) ?
'' : $phparray[
'suhosin'][
"suhosin.session.encrypt"][
"local"];
114 print
'<b>'.$langs->trans(
"SessionSaveHandler").
'</b>: '.$savehandler.
'<br>';
115 print
'<b>'.$langs->trans(
"SessionSavePath").
'</b>: '.$savepath.
'<br>';
117 print
'<b>'.$langs->trans(
"OpenBaseDir").
'</b>: '.$openbasedir.
'<br>';
120 print
'<b>'.$langs->trans(
"SuhosinSessionEncrypt").
'</b>: '.$suhosin.
'<br>';
124 if ($action ==
'purge') {
125 $formquestion = array();
126 print
$form->formconfirm($_SERVER[
"PHP_SELF"].
'?noparam=noparam', $langs->trans(
'PurgeSessions'), $langs->trans(
'ConfirmPurgeSessions'),
'confirm_purge', $formquestion,
'no', 2);
127 } elseif ($action ==
'lock') {
128 $formquestion = array();
129 print
$form->formconfirm($_SERVER[
"PHP_SELF"].
'?noparam=noparam', $langs->trans(
'LockNewSessions'), $langs->trans(
'ConfirmLockNewSessions', $user->login),
'confirm_lock', $formquestion,
'no', 1);
132 if ($savehandler ==
'files') {
133 print
'<table class="liste centpercent">';
134 print
'<tr class="liste_titre">';
135 print_liste_field_titre(
"Login", $_SERVER[
"PHP_SELF"],
"login",
"",
"",
'align="left"', $sortfield, $sortorder);
136 print_liste_field_titre(
"SessionId", $_SERVER[
"PHP_SELF"],
"id",
"",
"",
'align="left"', $sortfield, $sortorder);
137 print_liste_field_titre(
"DateCreation", $_SERVER[
"PHP_SELF"],
"datec",
"",
"",
'align="left"', $sortfield, $sortorder);
138 print_liste_field_titre(
"DateModification", $_SERVER[
"PHP_SELF"],
"datem",
"",
"",
'align="left"', $sortfield, $sortorder);
144 foreach ($listofsessions as $key => $sessionentry) {
145 print
'<tr class="oddeven">';
148 print
'<td>'.$sessionentry[
'login'].
'</td>';
151 print
'<td class="nowrap left">';
152 if (
"$key" == session_id()) {
153 print
$form->textwithpicto($key, $langs->trans(
"YourSession"));
160 print
'<td class="nowrap left">'.dol_print_date($sessionentry[
'creation'],
'%Y-%m-%d %H:%M:%S').
'</td>';
163 print
'<td class="nowrap left">'.dol_print_date($sessionentry[
'modification'],
'%Y-%m-%d %H:%M:%S').
'</td>';
166 print
'<td>'.$sessionentry[
'age'].
'</td>';
169 print
'<td>'.dol_trunc($sessionentry[
'raw'], 40,
'middle').
'</td>';
171 print
'<td> </td>';
177 if (count($listofsessions) == 0) {
178 print
'<tr class="oddeven"><td colspan="7">'.$langs->trans(
"NoSessionFound", $savepath, $openbasedir).
'</td></tr>';
182 print $langs->trans(
"NoSessionListWithThisHandler");
189 print
'<div class="tabsAction">';
192 if (empty($conf->global->MAIN_ONLY_LOGIN_ALLOWED)) {
193 print
'<a class="butAction" href="'.$_SERVER[
"PHP_SELF"].
'?action=lock&token='.
newToken().
'">'.$langs->trans(
"LockNewSessions").
'</a>';
195 print
'<a class="butAction" href="'.$_SERVER[
"PHP_SELF"].
'?action=confirm_unlock&token='.
newToken().
'">'.$langs->trans(
"UnlockNewSessions").
'</a>';
198 if ($savehandler ==
'files') {
199 if (count($listofsessions)) {
200 print
'<a class="butActionDelete" href="'.$_SERVER[
"PHP_SELF"].
'?action=purge&token='.
newToken().
'">'.$langs->trans(
"PurgeSessions").
'</a>';
dolibarr_del_const($db, $name, $entity=1)
Delete a constant.
GETPOST($paramname, $check='alphanohtml', $method=0, $filter=null, $options=null, $noreplace=0)
Return value of a param into GET or POST supervariable.
dol_print_error($db='', $error='', $errors=null)
Displays error message system with all the information to facilitate the diagnosis and the escalation...
phpinfo_array()
Return the php_info into an array.
if($cancel &&! $id) if($action=='add' &&! $cancel) if($action=='delete') if($id) $form
Actions.
print_barre_liste($titre, $page, $file, $options='', $sortfield='', $sortorder='', $morehtmlcenter='', $num=-1, $totalnboflines='', $picto='generic', $pictoisfullpath=0, $morehtmlright='', $morecss='', $limit=-1, $hideselectlimit=0, $hidenavigation=0, $pagenavastextinput=0, $morehtmlrightbeforearrow='')
Print a title with navigation controls for pagination.
newToken()
Return the value of token currently saved into session with name 'newtoken'.
listOfSessions()
Return list of session.
dolibarr_set_const($db, $name, $value, $type='chaine', $visible=0, $note='', $entity=1)
Insert a parameter (key,value) into database (delete old key then insert it again).
purgeSessions($mysessionid)
Purge existing sessions.
Class to manage Dolibarr users.
GETPOSTISSET($paramname)
Return true if we are in a context of submitting the parameter $paramname from a POST of a form.
print_liste_field_titre($name, $file="", $field="", $begin="", $moreparam="", $moreattrib="", $sortfield="", $sortorder="", $prefix="", $tooltip="", $forcenowrapcolumntitle=0)
Show title line of an array.
accessforbidden($message='', $printheader=1, $printfooter=1, $showonlymessage=0, $params=null)
Show a message to say access is forbidden and stop program Calling this function terminate execution ...
if(!defined('NOREQUIRESOC')) if(!defined('NOREQUIRETRAN')) if(!defined('NOCSRFCHECK')) if(!defined('NOTOKENRENEWAL')) if(!defined('NOREQUIREMENU')) if(!defined('NOREQUIREHTML')) if(!defined('NOREQUIREAJAX')) llxHeader()
Empty header.