%PDF- %PDF-
| Direktori : /proc/thread-self/root/www/varak.net/www.varak.net/sig/ |
| Current File : //proc/thread-self/root/www/varak.net/www.varak.net/sig/ref.php |
<?
include("_db.php");
include("_armory.php");
logReferer("RefererTracking");
$db = getDBCacheConnection();
?>
<script src="static/sorttable.js"></script>
<style>
body, th, td {
font-family: helvetica;
font-size: 9pt;
}
a {
text-decoration: none;
}
a:visited {
color: #aaa;
}
</style>
<form>
<select name="app">
<option value="">-- All --</option>
<?
$sql = "select distinct app from referrer_log order by app asc";
$result = mysql_query($sql, $db);
while($row = mysql_fetch_array($result)) {
echo "<option>$row[app]</option>\n";
}
?>
</select><br />
Filter: <input type="text" name="filter" /><input type="text" name="title_filter" /><br />
Minimum hits: <input type="text" name="minhits" /><br />
<input type="checkbox" name="nobad" checked /> Try to filter<br />
<input type="checkbox" name="compact" /> Compact (prevents title lookup)<br />
<input type="checkbox" name="exlude_engine" /> Exclude sig engine<br />
<input type="checkbox" name="order_created" /> Order by created_at<br />
<input type="submit" />
</form>
<?
$conditions = array("referrer_url not like '%/friends%' and referrer_url not like '%guildportal%'");
if(@$_REQUEST["app"]) {
$app = mysql_real_escape_string($_REQUEST["app"]);
$conditions[] = "app = '$app'";
}
if(@$_REQUEST["filter"]) {
$refurl = mysql_real_escape_string($_REQUEST["filter"]);
$conditions[] = "referrer_url like '%$refurl%'";
}
if(@$_REQUEST["title_filter"]) {
$refurl = mysql_real_escape_string($_REQUEST["title_filter"]);
$conditions[] = "page_title like '%$refurl%'";
}
if(@$_REQUEST["nobad"]) {
$conditions[] = "page_title not like '%Log%in%'";
}
if(@$_REQUEST["minhits"]) {
$hits = (int)$_REQUEST["minhits"];
$conditions[] = "hits >= $hits";
}
if(@$_REQUEST["exlude_engine"]) {
$conditions[] = "app != 'SigEngine'";
}
$where = "";
if(sizeof($conditions) > 0)
$where = "where " . join(" and ", $conditions);
$CURRENT_PAGE = @$_REQUEST["page"];
$ct = mysql_fetch_row(mysql_query("select count(*), sum(hits) from referrer_log $where", $db));
for($i=1; $i<=ceil($ct[0]/100); $i++) {
@$_REQUEST["page"] = $i;
$vars = array();
foreach($_REQUEST as $key=>$val) {
$vars[] = "$key=$val";
}
$v = join("&", $vars);
echo "<a href='?$v'>$i</a> ";
}
echo "<br />$ct[1] total";
?>
<table border="1" style="border-collapse: collapse" cellpadding="6">
<tr class="sorthead">
<th>Link</th>
<th>Hits</th>
<th>First Seen</th>
<th>App</th>
<th>Page Title</th>
</tr>
<?
$skip = 0;
if(@$CURRENT_PAGE) {
$skip = ((int)$CURRENT_PAGE - 1) * 100;
}
$g = "";
if(@$_REQUEST["compact"])
$g = "group by page_title";
$order = "updated_at";
if(@$_REQUEST["order_created"])
$order = "created_at";
$sql = "select * from referrer_log $where $g order by $order desc limit $skip, 100";
$result = mysql_query($sql, $db);
$thits = 0;
while($row = mysql_fetch_array($result)) {
$row = logTitle($db, $row);
?>
<tr><td>
<a href="<?=$row["referrer_url"]?>"><?=strlen($row["referrer_url"]) > 70 ? (substr($row["referrer_url"], 0, 40) . "..." . substr($row["referrer_url"], strlen($row["referrer_url"])-30, 30)) : $row["referrer_url"]?></a>
</td><td><?=$row["hits"]?></td><td><?=$row["created_at"]?></td><td><?=$row["app"]?></td><td><a href="<?=$row["referrer_url"]?>"><?=stripslashes($row["page_title"])?></a></td></tr>
<?
$thits += $row["hits"];
}
?>
</table>
Total hits: <?=$thits?>
<?
function logTitle($db, $row) {
if($row["page_title"]) return $row;
$t = mysql_real_escape_string(getPageTitle($row["referrer_url"]));
$row["page_title"] = $t;
$sql = "update referrer_log set page_title = '$t' where id = '$row[id]'";
mysql_query($sql, $db);
return $row;
}
function getPageTitle($url) {
$u = @file_get_contents($url);
preg_match("/<title>(.*?)<\/title>/i", $u, $matches);
$m = $matches[1];
if(!$m)
$m = "(no title)";
return $m;
}
?>