singpolyma / wrinks

Code from wrinks.ning.com

This URL has Read+Write access

wrinks / ringlink.php
100755 41 lines (35 sloc) 1.222 kb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<?php
 
if(!$_REQUEST['wrinkid'])
   die('<b>ERROR : No Wrink specified</b>');
 
$wrink = XN_Content::load(intval($_REQUEST['wrinkid']));
$wrink->my->traffic += 1;
if($wrink->my->traffictime < (time() - 604800)) {
   $wrink->my->traffic = 0;
   $wrink->my->traffictime = time();
}//end if traffictime over
$wrink->save();
$sites = explode(' ',$wrink->my->sites);
if(!$_REQUEST['siteid']) {
   $_REQUEST['siteid'] = XN_Query::create('Content')
         ->filter('owner','=')
         ->filter('type','eic','Website')
         ->filter('my.url','=',$_SERVER['HTTP_REFERER']);
   $_REQUEST['siteid'] = $_REQUEST['siteid']->execute();
   $_REQUEST['siteid'] = $_REQUEST['siteid'][0]->id;
}//end if ! siteid
$key = array_search($_REQUEST['siteid'],$sites);
 
$_REQUEST['move'] = $_REQUEST['move'] ? $_REQUEST['move'] : 1;
 
if($_REQUEST['move'] == 'random') {
   $key = 0;
   shuffle($sites);
} else {
   $key += $_REQUEST['move'];
   if($key > count($sites))
      $key -= count($sites);
   if($key < 0)
      $key += count($sites);
}//end if-else random
 
$site = XN_Content::load(intval($sites[$key]));
header('Content-Type: text/plain;');
header('Location: '.$site->my->url,TRUE,303);
 
?>