forked from extern/egroupware
exclude login failures from session list
This commit is contained in:
parent
0a6b4e98b5
commit
828274fea9
@ -68,6 +68,7 @@ class admin_accesslog
|
||||
$query['col_filter']['lo'] = null; // not logged out
|
||||
$query['col_filter'][0] = 'session_dla > '.(int)(time() - $GLOBALS['egw_info']['server']['sessions_timeout']);
|
||||
$query['col_filter'][1] = "(notification_heartbeat IS NULL OR notification_heartbeat > $heartbeat_limit)";
|
||||
$query['col_filter'][2] = 'account_id>0';
|
||||
}
|
||||
$total = $this->so->get_rows($query,$rows,$readonlys);
|
||||
|
||||
|
@ -225,7 +225,6 @@ class admin_ui
|
||||
$apps = array_unique(array_merge(array('admin'), $GLOBALS['egw']->hooks->hook_implemented('edit_user')));
|
||||
foreach($apps as $app)
|
||||
{
|
||||
if ($app == 'felamimail') continue; // disabled fmail for now, as it break whole admin, dono why
|
||||
$GLOBALS['menuData'] = $data = array();
|
||||
$data = $GLOBALS['egw']->hooks->single('edit_user', $app, true);
|
||||
if (!is_array($data)) $data = $GLOBALS['menuData'];
|
||||
@ -264,6 +263,7 @@ if ($app == 'felamimail') continue; // disabled fmail for now, as it break whole
|
||||
'group' => ++$group,
|
||||
'popup' => '400x200',
|
||||
'url' => 'menuaction=admin.admin_account.delete&account_id=$id',
|
||||
'allowOnMultiple' => false,
|
||||
);
|
||||
}
|
||||
//error_log(__METHOD__."() actions=".array2string($actions));
|
||||
|
@ -522,7 +522,7 @@ class egw_session
|
||||
|
||||
// for WebDAV and GroupDAV we use a pseudo sessionid created from md5(user:passwd)
|
||||
// --> allows this stateless protocolls which use basic auth to use sessions!
|
||||
if ($this->sessionid = self::get_sessionid(true))
|
||||
if (($this->sessionid = self::get_sessionid(true)))
|
||||
{
|
||||
$no_session = true; // no need to set cookie
|
||||
session_id($this->sessionid);
|
||||
@ -577,7 +577,7 @@ class egw_session
|
||||
if ($reason) // called hook requests to deny the session
|
||||
{
|
||||
$this->reason = $this->cd_reason = $reason;
|
||||
$this->log_access($this->reason,$login,$user_ip,$this->account_id); // log unsuccessfull login
|
||||
$this->log_access($this->reason,$login,$user_ip,0); // log unsuccessfull login
|
||||
if (self::ERROR_LOG_DEBUG) error_log(__METHOD__."($this->login,$this->passwd,$this->passwd_type,$no_session,$auth_check) UNSUCCESSFULL ($this->reason)");
|
||||
return false;
|
||||
}
|
||||
@ -1677,6 +1677,7 @@ class egw_session
|
||||
$order_by = 'session_dla DESC';
|
||||
}
|
||||
$filter['lo'] = null;
|
||||
$filter[] = 'account_id>0';
|
||||
$filter[] = 'session_dla > '.(int)(time() - $GLOBALS['egw_info']['server']['sessions_timeout']);
|
||||
$filter[] = '(notification_heartbeat IS NULL OR notification_heartbeat > '.self::heartbeat_limit().')';
|
||||
foreach($GLOBALS['egw']->db->select(self::ACCESS_LOG_TABLE, '*', $filter, __LINE__, __FILE__,
|
||||
@ -1690,12 +1691,13 @@ class egw_session
|
||||
/**
|
||||
* Query number of sessions (not more then once every N secs)
|
||||
*
|
||||
* @param array $filter=array() extra filter for sessions
|
||||
* @param array $filter =array() extra filter for sessions
|
||||
* @return int number of active sessions
|
||||
*/
|
||||
public static function session_count(array $filter=array())
|
||||
{
|
||||
$filter['lo'] = null;
|
||||
$filter[] = 'account_id>0';
|
||||
$filter[] = 'session_dla > '.(int)(time() - $GLOBALS['egw_info']['server']['sessions_timeout']);
|
||||
$filter[] = '(notification_heartbeat IS NULL OR notification_heartbeat > '.self::heartbeat_limit().')';
|
||||
return $GLOBALS['egw']->db->select(self::ACCESS_LOG_TABLE, 'COUNT(*)', $filter, __LINE__, __FILE__)->fetchColumn();
|
||||
@ -1708,7 +1710,7 @@ class egw_session
|
||||
*/
|
||||
public static function heartbeat_limit()
|
||||
{
|
||||
static $limit;
|
||||
static $limit=null;
|
||||
|
||||
if (is_null($limit))
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user