/** * Constructor. * * @param array $parameters * @access public */ function phpOpenTracker_LoggingEngine_Plugin($parameters) { $this->config =& phpOpenTracker_Config::singleton(true); $this->container =& phpOpenTracker_Container::singleton(); $this->db =& phpOpenTracker_DB::singleton(); $this->parameters = $parameters; }
/** * Constructor. * * @param optional array $parameters * @access public */ function phpOpenTracker_LoggingEngine($parameters = array()) { $parameters['init'] = true; $this->config =& phpOpenTracker_Config::singleton(true); $this->container =& phpOpenTracker_Container::singleton($parameters); $this->db =& phpOpenTracker_DB::singleton(); $this->_loadPlugins($parameters); }
<?php // // +---------------------------------------------------------------------+ // | phpOpenTracker - The Website Traffic and Visitor Analysis Solution | // +---------------------------------------------------------------------+ // | Copyright (c) 2000-2003 Sebastian Bergmann. All rights reserved. | // +---------------------------------------------------------------------+ // | This source file is subject to the phpOpenTracker Software License, | // | Version 1.0, that is bundled with this package in the file LICENSE. | // | If you did not receive a copy of this file, you may either read the | // | license online at http://phpOpenTracker.de/license/1_0.txt, or send | // | a note to license@phpOpenTracker.de, so we can mail you a copy. | // +---------------------------------------------------------------------+ // // $Id: exit.php,v 1.5 2004/10/11 18:29:15 sven_weih Exp $ // require_once "../../cms/config.inc.php"; require_once $c["path"] . $cds->path . "modules/stats/phpOpenTracker.php"; if (isset($_GET['url'])) { $exitURL = str_replace('&', '&', base64_decode($_GET['url'])); $config =& phpOpenTracker_Config::singleton(true); $db =& phpOpenTracker_DB::singleton(); $container =& phpOpenTracker_Container::singleton(array('initNoSetup' => true)); $db->query(sprintf("UPDATE %s\r\n SET exit_target_id = '%d'\r\n WHERE accesslog_id = '%d'\r\n AND document_id = '%d'\r\n AND timestamp = '%d'", $config['accesslog_table'], $db->storeIntoDataTable($config['exit_targets_table'], $exitURL), $container['accesslog_id'], $container['document_id'], $container['timestamp'])); header('Location: http://' . $exitURL); }
/** * Parses the parameters of an phpOpenTracker API call. * * @param array $parameters * @return boolean * @access private */ function _parseParameters(&$parameters) { if (!is_array($parameters) || !isset($parameters['api_call'])) { return phpOpenTracker::handleError('No array was passed to API Call, or "api_call" field missing.'); } if (array_search('this', $parameters, true) !== false) { $this->container =& phpOpenTracker_Container::singleton(array('initAPI' => true)); } if (!isset($parameters['client_id'])) { $parameters['client_id'] = isset($this->container['client_id']) ? $this->container['client_id'] : 1; } $parameters['start'] = isset($parameters['start']) ? $parameters['start'] : false; $parameters['end'] = isset($parameters['end']) ? $parameters['end'] : false; $parameters['constraints'] = isset($parameters['constraints']) ? $parameters['constraints'] : array(); $parameters['limit'] = isset($parameters['limit']) ? $parameters['limit'] : false; $parameters['order'] = isset($parameters['order']) ? $parameters['order'] : 'DESC'; $parameters['range'] = isset($parameters['range']) ? $parameters['range'] : 'total'; $parameters['range_start'] = isset($parameters['range_start']) ? $parameters['range_start'] : 0; $parameters['range_length'] = isset($parameters['range_length']) ? $parameters['range_length'] : 0; $parameters['result_format'] = isset($parameters['result_format']) ? $parameters['result_format'] : false; if (!$parameters['start'] && !$parameters['end']) { if ($parameters['range'] != 'total') { $timerange = $this->_timerange($parameters['range'], $parameters['range_start'], $parameters['range_length']); if ($timerange) { $parameters['start'] = $timerange[0]; $parameters['end'] = $timerange[1]; } else { return false; } } } foreach ($parameters['constraints'] as $field => $value) { if (is_string($value)) { if ($value == 'this') { $parameters['constraints'][$field] = $this->container[$field . '_id']; } else { $parameters['constraints'][$field] = crc32(strtolower($value)); } } } if (stristr($parameters['result_format'], 'xml')) { if (!@(include_once 'XML/Tree.php')) { phpOpenTracker::handleError('Could not find PEAR XML_Tree package, exiting.', E_USER_ERROR); } } return true; }
/** * Constructor. * * @access public */ function phpOpenTracker_API_Plugin() { $this->config =& phpOpenTracker_Config::singleton(); $this->container =& phpOpenTracker_Container::singleton(); $this->db =& phpOpenTracker_DB::singleton(); }