���ѧۧݧ�ӧ�� �ާ֧ߧ֧էا֧� - ���֧էѧܧ�ڧ��ӧѧ�� - /home/alphpwcp/public_html/us/alphachat/lib/core/lhchat/lhchatviewresque.php
���ѧ٧ѧ�
<?php #[\AllowDynamicProperties] class erLhcoreClassViewResque { public function perform() { $db = ezcDbInstance::get(); $db->reconnect(); // Because it timeouts automatically, this calls to reconnect to database, this is implemented in 2.52v if (isset($this->args['inst_id']) && $this->args['inst_id'] > 0) { $cfg = \erConfigClassLhConfig::getInstance(); $db->query('USE ' . $cfg->getSetting('db', 'database')); $instance = \erLhcoreClassModelInstance::fetch($this->args['inst_id']); \erLhcoreClassInstance::$instanceChat = $instance; $db->query('USE ' . $cfg->getSetting('db', 'database_user_prefix') . $this->args['inst_id']); } $viewId = $this->args['view_id']; $search = erLhAbstractModelSavedSearch::fetch($viewId); if ($search instanceof erLhAbstractModelSavedSearch && $search->updated_at < time() - 2 * 60 && $search->requested_at > time() - 5 * 60) { $startTime = microtime(); self::updateView($search); erLhcoreClassViewResque::logSlowView($startTime, microtime(), $search); } } public static function logSlowView( $start_time, $end_time, $savedSearch ) { $start = explode(' ', $start_time); $end = explode(' ', $end_time); $time = $end[0] + $end[1] - $start[0] - $start[1]; if ($time > 1) { erLhcoreClassLog::write($time, ezcLog::SUCCESS_AUDIT, array( 'source' => 'View', 'category' => 'slow_view', 'line' => __LINE__, 'file' => __FILE__, 'object_id' => $savedSearch->id ) ); } } public static function updateView($search) { if ($search->scope == 'chat') { $filterSearch = $search->params_array['filter']; if ($search->days > 0) { $filterSearch['filtergte']['time'] = time() - $search->days * 24 * 3600; } $search->getDateRangeFilter($filterSearch); $totalRecords = erLhcoreClassModelChat::getCount($filterSearch); $search->updated_at = time(); if ($search->total_records != $totalRecords) { $search->total_records = $totalRecords; $search->updateThis(['update' => ['updated_at','total_records']]); } else { $search->updateThis(['update' => ['updated_at']]); } } elseif ($search->scope == 'mail') { $filterSearch = $search->params_array['filter']; if ($search->days > 0) { $filterSearch['filtergte']['udate'] = time() - $search->days * 24 * 3600; } $search->getDateRangeFilter($filterSearch); $totalRecords = erLhcoreClassModelMailconvConversation::getCount($filterSearch); $search->updated_at = time(); if ($search->total_records != $totalRecords) { $search->total_records = $totalRecords; $search->updateThis(['update' => ['updated_at','total_records']]); } else { $search->updateThis(['update' => ['updated_at']]); } } else { erLhcoreClassChatEventDispatcher::getInstance()->dispatch('views.update_vew', array( 'search' => $search )); } } } ?>
| ver. 1.4 |
Github
|
.
| PHP 8.2.30 | ���֧ߧ֧�ѧ�ڧ� ����ѧߧڧ��: 0 |
proxy
|
phpinfo
|
���ѧ����ۧܧ�