本文整理汇总了PHP中erLhcoreClassChat::trackTimeout方法的典型用法代码示例。如果您正苦于以下问题:PHP erLhcoreClassChat::trackTimeout方法的具体用法?PHP erLhcoreClassChat::trackTimeout怎么用?PHP erLhcoreClassChat::trackTimeout使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类erLhcoreClassChat
的用法示例。
在下文中一共展示了erLhcoreClassChat::trackTimeout方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: array
<?php
$currentUser = erLhcoreClassUser::instance();
$onlineTimeout = (int) erLhcoreClassModelChatConfig::fetchCache('sync_sound_settings')->data['online_timeout'];
erLhcoreClassChat::$trackActivity = (int) erLhcoreClassModelChatConfig::fetchCache('track_activity')->current_value == 1;
erLhcoreClassChat::$trackTimeout = (int) erLhcoreClassModelChatConfig::fetchCache('checkstatus_timeout')->current_value;
erLhcoreClassChat::$onlineCondition = (int) erLhcoreClassModelChatConfig::fetchCache('online_if')->current_value;
$canListOnlineUsers = false;
$canListOnlineUsersAll = false;
if (erLhcoreClassModelChatConfig::fetchCache('list_online_operators')->current_value == 1) {
$canListOnlineUsers = $currentUser->hasAccessTo('lhuser', 'userlistonline');
$canListOnlineUsersAll = $currentUser->hasAccessTo('lhuser', 'userlistonlineall');
}
// We do not need a session anymore
session_write_close();
$ReturnMessages = array();
$pendingTabEnabled = erLhcoreClassModelUserSetting::getSetting('enable_pending_list', 1);
$activeTabEnabled = erLhcoreClassModelUserSetting::getSetting('enable_active_list', 1);
$closedTabEnabled = erLhcoreClassModelUserSetting::getSetting('enable_close_list', 0);
$unreadTabEnabled = erLhcoreClassModelUserSetting::getSetting('enable_unread_list', 1);
$showAllPending = erLhcoreClassModelUserSetting::getSetting('show_all_pending', 1);
$showDepartmentsStats = $currentUser->hasAccessTo('lhuser', 'canseedepartmentstats');
$showDepartmentsStatsAll = $currentUser->hasAccessTo('lhuser', 'canseealldepartmentstats');
$chatsList = array();
if ($showDepartmentsStats == true) {
/**
* Departments stats
* */
$limitList = is_numeric($Params['user_parameters_unordered']['limitd']) ? (int) $Params['user_parameters_unordered']['limitd'] : 10;
$filter = array('ignore_fields' => erLhcoreClassChat::$chatListIgnoreField);
$filter['limit'] = $limitList;
示例2: __get
//.........这里部分代码省略.........
case 'time_on_site_front':
$this->time_on_site_front = gmdate(erLhcoreClassModule::$dateHourFormat, $this->time_on_site);
return $this->time_on_site_front;
break;
case 'tt_time_on_site_front':
$this->tt_time_on_site_front = null;
$diff = $this->tt_time_on_site;
$days = floor($diff / (3600 * 24));
$hours = floor(($diff - $days * 3600 * 24) / 3600);
$minits = floor(($diff - $hours * 3600 - $days * 3600 * 24) / 60);
$seconds = $diff - $hours * 3600 - $minits * 60 - $days * 3600 * 24;
if ($days > 0) {
$this->tt_time_on_site_front = $days . ' d.';
} elseif ($hours > 0) {
$this->tt_time_on_site_front = $hours . ' h.';
} elseif ($minits > 0) {
$this->tt_time_on_site_front = $minits . ' m.';
} elseif ($seconds >= 0) {
$this->tt_time_on_site_front = $seconds . ' s.';
}
return $this->tt_time_on_site_front;
break;
case 'last_visit_seconds_ago':
$this->last_visit_seconds_ago = time() - $this->last_visit;
return $this->last_visit_seconds_ago;
break;
case 'last_check_time_ago':
$this->last_check_time_ago = time() - $this->last_check_time;
return $this->last_check_time_ago;
break;
case 'visitor_tz_time':
$this->visitor_tz_time = '-';
if ($this->visitor_tz != '') {
$date = new DateTime(null, new DateTimeZone($this->visitor_tz));
$this->visitor_tz_time = $date->format(erLhcoreClassModule::$dateHourFormat);
}
return $this->visitor_tz_time;
break;
case 'lastactivity_ago':
$this->lastactivity_ago = '';
if ($this->last_visit > 0) {
$periods = array("s.", "m.", "h.", "d.", "w.", "m.", "y.", "dec.");
$lengths = array("60", "60", "24", "7", "4.35", "12", "10");
$difference = time() - $this->last_visit;
for ($j = 0; $difference >= $lengths[$j] && $j < count($lengths) - 1; $j++) {
$difference /= $lengths[$j];
}
$difference = round($difference);
$this->lastactivity_ago = "{$difference} {$periods[$j]}";
}
return $this->lastactivity_ago;
break;
case 'screenshot':
$this->screenshot = false;
if ($this->screenshot_id > 0) {
try {
$this->screenshot = erLhcoreClassModelChatFile::fetch($this->screenshot_id);
} catch (Exception $e) {
}
}
return $this->screenshot;
break;
case 'online_attr_system_array':
$this->online_attr_system_array = array();
if ($this->online_attr_system != '') {
$this->online_attr_system_array = json_decode($this->online_attr_system, true);
}
return $this->online_attr_system_array;
break;
case 'online_status':
$this->online_status = 2;
// Offline
if (erLhcoreClassChat::$trackTimeout == 0) {
erLhcoreClassChat::$trackTimeout = 15;
}
if (erLhcoreClassChat::$trackActivity == true) {
if ($this->last_check_time_ago < erLhcoreClassChat::$trackTimeout + 10 && $this->user_active == 1) {
//User still on site, it does not matter that he have closed widget.
$this->online_status = 0;
// Online
} elseif ($this->last_check_time_ago < erLhcoreClassChat::$trackTimeout + 10 && $this->user_active == 0) {
$this->online_status = 1;
// Away
}
} else {
if ($this->last_check_time_ago < erLhcoreClassChat::$trackTimeout + 10 && time() - $this->last_user_msg_time < 300) {
//User still on site, it does not matter that he have closed widget.
$this->online_status = 0;
// Online
} elseif ($this->last_check_time_ago < erLhcoreClassChat::$trackTimeout + 10 && time() - $this->last_user_msg_time >= 300) {
$this->online_status = 1;
// Away
}
}
return $this->online_status;
break;
default:
break;
}
}