. */ // Only record hits for certain pages switch (WT_SCRIPT_NAME) { case 'index.php': switch (Filter::get('ctype', 'gedcom|user', Auth::check() ? 'user' : 'gedcom')) { case 'user': $page_parameter = 'user:' . Auth::check(); break; case 'gedcom': $page_parameter = 'gedcom:' . WT_GED_ID; break; default: $page_parameter = ''; break; } break; case 'individual.php': $page_parameter = Filter::get('pid', WT_REGEX_XREF); break; case 'family.php': $page_parameter = Filter::get('famid', WT_REGEX_XREF); break; case 'source.php': $page_parameter = Filter::get('sid', WT_REGEX_XREF); break; case 'repo.php': $page_parameter = Filter::get('rid', WT_REGEX_XREF); break; case 'note.php': $page_parameter = Filter::get('nid', WT_REGEX_XREF); break; case 'mediaviewer.php': $page_parameter = Filter::get('mid', WT_REGEX_XREF); break; default: $page_parameter = ''; break; } if ($page_parameter) { $hitCount = Database::prepare( "SELECT page_count FROM `##hit_counter`" . " WHERE gedcom_id=? AND page_name=? AND page_parameter=?" )->execute(array(WT_GED_ID, WT_SCRIPT_NAME, $page_parameter))->fetchOne(); // Only record one hit per session if ($page_parameter && empty($WT_SESSION->SESSION_PAGE_HITS[WT_SCRIPT_NAME . $page_parameter])) { $WT_SESSION->SESSION_PAGE_HITS[WT_SCRIPT_NAME . $page_parameter] = true; if (is_null($hitCount)) { $hitCount = 1; Database::prepare( "INSERT INTO `##hit_counter` (gedcom_id, page_name, page_parameter, page_count) VALUES (?, ?, ?, ?)" )->execute(array(WT_GED_ID, WT_SCRIPT_NAME, $page_parameter, $hitCount)); } else { $hitCount++; Database::prepare( "UPDATE `##hit_counter` SET page_count=?" . " WHERE gedcom_id=? AND page_name=? AND page_parameter=?" )->execute(array($hitCount, WT_GED_ID, WT_SCRIPT_NAME, $page_parameter)); } } } else { $hitCount = 1; } $hitCount = '' . I18N::number($hitCount) . ''; unset($page_name, $page_parameter);