Beispiel #1
0
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public License
 * as published by the Free Software Foundation; either version 2
 * of the License, or (at your option) any later version.
 * 
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
 */
include_once realpath(dirname(__FILE__) . "/../../_functions.php");
print SlimStat::render_module("Paths taken by recent visitors", show_paths(), "largemodule");
function show_paths()
{
    $config =& SlimStatConfig::get_instance();
    // get max visit
    $query = "SELECT MAX(`visit`) FROM `" . SlimStat::my_esc($config->database) . "`.`" . SlimStat::my_esc($config->stats) . "`";
    if ($result = mysql_query($query)) {
        list($max_visit) = mysql_fetch_row($result);
    }
    $str = "";
    // get requests
    $query = "SELECT * FROM `" . SlimStat::my_esc($config->database) . "`.`" . SlimStat::my_esc($config->stats) . "` WHERE ";
    if (!$config->show_crawlers) {
        $query .= "`browser` != '" . SlimStat::my_esc($config->i18n->crawler) . "' AND ";
    }
    $query .= "`visit` >= " . ($max_visit - $config->rows);
Beispiel #2
0
    print SlimStat::render_module($config->i18n->module_titles["language"], percentage_table("language", $config->truncate, "language != '' AND language != 'empty'", $filters));
}
if ($config->show_modules["remote_ip"] && $config->show_visits && !isset($filters["filter_remote_ip"])) {
    print SlimStat::render_module($config->i18n->module_titles["remote_ip"], total_table("remote_ip", $config->truncate, "", $filters));
}
if ($config->show_modules["visit"] && $config->show_visits && isset($days_spanned) && $days_spanned == 1) {
    print SlimStat::render_module($config->i18n->module_titles["visit"], visit_table($filters));
}
if ($config->show_modules["dayofweek"] && isset($days_spanned) && $days_spanned > 7) {
    print SlimStat::render_module($config->i18n->module_titles["dayofweek"], dt_table("DAYOFWEEK", $filters));
}
if ($config->show_modules["hour"] && isset($days_spanned) && $days_spanned > 1) {
    print SlimStat::render_module($config->i18n->module_titles["hour"], dt_table("HOUR", $filters));
}
if ($config->show_modules["pageviews"] && !isset($filters["filter_resource"])) {
    print SlimStat::render_module($config->i18n->module_titles["pageviews"], pageviews_table("", $filters));
}
function hour_table($_dt, $_title, $_n_loops, $_end_increment, $_dt_decrement, $_filters)
{
    $config =& SlimStatConfig::get_instance();
    $thead = array("first" => array(isset($config->i18n->fields[$_title]) ? $config->i18n->fields[$_title] : $_title), "last" => array($config->i18n->hits));
    $tbody = array();
    if ($config->show_visits && !isset($_filters["filter_visit"])) {
        $thead["last"][] = $config->i18n->visits;
    }
    if ($config->show_uniques) {
        $thead["last"][] = $config->i18n->uniques;
    }
    for ($i = 0; $i < $_n_loops; $i++) {
        $dt_start = SlimStat::to_server_time(strtotime(date("Y-m-d H:00:00", $_dt)));
        $dt_end = SlimStat::to_server_time(strtotime(date("Y-m-d H:59:59", $_dt + eval("return (" . $_end_increment . ");"))));
Beispiel #3
0
		<?php 
    }
    if ($config->show_modules["recent_resource"]) {
        print SlimStat::render_module($config->i18n->module_titles["recent_resource"], recent_table(array("href" => "resource", "title" => $config->show_hostnames ? "remote_addr" : "remote_ip", "display" => "resource"), $config->truncate_medium, "dt > " . $config->recent_threshold), "mediummodule");
    }
    if ($config->show_modules["recent_referer"]) {
        print SlimStat::render_module($config->i18n->module_titles["recent_referer"], recent_table(array("href" => "referer", "title" => "resource", "display" => "domain"), $config->truncate, "dt > " . $config->recent_threshold . " AND referer NOT LIKE '%" . SlimStat::my_esc(SlimStat::trim_referer($_SERVER["SERVER_NAME"])) . "/%' AND referer NOT LIKE '%" . SlimStat::my_esc(SlimStat::trim_referer($_SERVER["SERVER_NAME"])) . "' AND referer != '' AND domain != ''"));
    }
    if ($config->show_modules["recent_searchterms"]) {
        print SlimStat::render_module($config->i18n->module_titles["recent_searchterms"], recent_table(array("href" => "referer", "title" => "resource", "display" => "searchterms"), $config->truncate, "dt > " . $config->recent_threshold . " AND searchterms != ''"));
    }
    if ($config->show_modules["unique_domain"]) {
        print SlimStat::render_module($config->i18n->module_titles["unique_domain"] . " <span><a href=\"rss.php?domain\">" . $config->i18n->feed . "</a></span>", unique_table(array("href" => "referer", "title" => "resource", "display" => "domain"), $config->truncate, "dt > " . $config->recent_threshold . " AND domain != '" . SlimStat::my_esc(SlimStat::trim_referer($_SERVER["SERVER_NAME"])) . "' AND domain != ''"));
    }
    if ($config->show_modules["unique_resource"]) {
        print SlimStat::render_module($config->i18n->module_titles["unique_resource"] . " <span><a href=\"rss.php?resource\">" . $config->i18n->feed . "</a></span>", unique_table(array("href" => "resource", "title" => $config->show_hostnames ? "remote_addr" : "remote_ip", "display" => "resource"), $config->truncate_medium, "dt > " . $config->recent_threshold), "mediummodule");
    }
}
function recent_table($_cols, $_truncate, $_where_clause = "", $_filters = array())
{
    $config =& SlimStatConfig::get_instance();
    $thead = array("first" => array(isset($config->i18n->fields[$_cols["display"]]) ? $config->i18n->fields[$_cols["display"]] : $_cols["display"]), "last" => array("&nbsp;", $config->i18n->when));
    $tbody = array();
    $col_query = is_array($_cols) ? array_merge($_cols, array("dt")) : array($_cols, "dt");
    $results = SlimStat::_get_table_data($col_query, $_where_clause, implode(", ", $col_query), "dt", $_filters);
    foreach ($results as $result) {
        $display_value = $result[$_cols["display"]];
        if (isset($config->i18n->name_lookups[$_cols["display"]])) {
            if (is_array($config->i18n->name_lookups[$_cols["display"]]) && isset($config->i18n->name_lookups[$_cols["display"]][$display_value])) {
                $display_value = $config->i18n->name_lookups[$_cols["display"]][$display_value];
            } elseif (is_string($config->i18n->name_lookups[$_cols["display"]])) {