statistics_exit
function statistics_exit
statistics_exit()
Implements hook_exit().
Gathers statistics for page accesses.
File
- modules/statistics/statistics.module, line 50
- Logs and displays access statistics for a site.
Code
function statistics_exit() { global $user; // When serving cached pages with the 'page_cache_without_database' // configuration, system variables need to be loaded. This is a major // performance decrease for non-database page caches, but with Statistics // module, it is likely to also have 'statistics_enable_access_log' enabled, // in which case we need to bootstrap to the session phase anyway. drupal_bootstrap(DRUPAL_BOOTSTRAP_VARIABLES); if (variable_get('statistics_count_content_views', 0) && !variable_get('statistics_count_content_views_ajax', 0)) { // We are counting content views. if (arg(0) == 'node' && is_numeric(arg(1)) && arg(2) == NULL) { // A node has been viewed, so update the node's counters. db_merge('node_counter') ->key(array('nid' => arg(1))) ->fields(array( 'daycount' => 1, 'totalcount' => 1, 'timestamp' => REQUEST_TIME, )) ->expression('daycount', 'daycount + 1') ->expression('totalcount', 'totalcount + 1') ->execute(); } } if (variable_get('statistics_enable_access_log', 0)) { drupal_bootstrap(DRUPAL_BOOTSTRAP_SESSION); // For anonymous users unicode.inc will not have been loaded. include_once DRUPAL_ROOT . '/includes/unicode.inc'; // Log this page access. db_insert('accesslog') ->fields(array( 'title' => truncate_utf8(strip_tags(drupal_get_title()), 255), 'path' => truncate_utf8($_GET['q'], 255), 'url' => isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '', 'hostname' => ip_address(), 'uid' => $user->uid, 'sid' => session_id(), 'timer' => (int) timer_read('page'), 'timestamp' => REQUEST_TIME, )) ->execute(); } }
© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
https://api.drupal.org/api/drupal/modules!statistics!statistics.module/function/statistics_exit/7.x