- Daily/weekly/monthly reset completely rewritten
[mailer.git] / ref.php
1 <?php
2 /************************************************************************
3  * MXChange v0.2.1                                    Start: 10/13/2003 *
4  * ===============                              Last change: 09/04/2004 *
5  *                                                                      *
6  * -------------------------------------------------------------------- *
7  * File              : ref.php                                          *
8  * -------------------------------------------------------------------- *
9  * Short description : Redirection for the referral link                *
10  * -------------------------------------------------------------------- *
11  * Kurzbeschreibung  : Weiterleitungsscript fuer die Referral-Links     *
12  * -------------------------------------------------------------------- *
13  *                                                                      *
14  * -------------------------------------------------------------------- *
15  * Copyright (c) 2003 - 2008 by Roland Haeder                           *
16  * For more information visit: http://www.mxchange.org                  *
17  *                                                                      *
18  * This program is free software; you can redistribute it and/or modify *
19  * it under the terms of the GNU General Public License as published by *
20  * the Free Software Foundation; either version 2 of the License, or    *
21  * (at your option) any later version.                                  *
22  *                                                                      *
23  * This program is distributed in the hope that it will be useful,      *
24  * but WITHOUT ANY WARRANTY; without even the implied warranty of       *
25  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the        *
26  * GNU General Public License for more details.                         *
27  *                                                                      *
28  * You should have received a copy of the GNU General Public License    *
29  * along with this program; if not, write to the Free Software          *
30  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,               *
31  * MA  02110-1301  USA                                                  *
32  ************************************************************************/
33
34 // Load security stuff here (Oh, I hope this is not unsecure? Am I paranoia??? ;-) )
35 require_once("inc/libs/security_functions.php");
36
37 // Init "action" and "what"
38 global $what, $action;
39 $GLOBALS['what'] = ""; $GLOBALS['action'] = "";
40
41 // Set module
42 $GLOBALS['module'] = "ref"; $CSS = -1;
43
44 // Load the required file(s)
45 require ("inc/config.php");
46
47 // Redirect only to registration page when this script is installed
48 if (defined('mxchange_installed') && (isBooleanConstantAndTrue('mxchange_installed')))
49 {
50         // Base URL for redirection
51         switch ($_CONFIG['refid_target'])
52         {
53         case "register":
54                 $URL = URL."/modules.php?module=index&what=register&refid=";
55                 break;
56
57         case "index":
58                 $URL = URL."/index.php?refid=";
59                 break;
60         }
61
62         // Get referral ID from ref or refid variable
63         if (!empty($_GET['ref']))        $ref = secureString($_GET['ref']);
64          elseif (!empty($_GET['refid'])) $ref = bigintval($_GET['refid']);
65
66         if (!empty($ref))
67         {
68                 // Test if nickname ($test == "0") or ID
69                 $test = "".round($ref)."";
70                 if ((EXT_IS_ACTIVE("nickname")) && ($test != $ref))
71                 {
72                         // Nickname in URL, so load the ID
73                         $result = SQL_QUERY_ESC("SELECT userid FROM "._MYSQL_PREFIX."_user_data WHERE nickname='%s' LIMIT 1", array($ref), __FILE__, __LINE__);
74                         list($ref) = SQL_FETCHROW($result);
75                         SQL_FREERESULT($result);
76                 }
77
78                 // Also edit this 0 !
79                 if (empty($ref)) $ref = "0";
80
81                 // We have an refid here. So we simply add it
82                 $URL .= bigintval($ref);
83
84                 // Update ref counter
85                 $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_data SET ref_clicks=ref_clicks+1 WHERE userid=%s LIMIT 1",
86                  array(bigintval($ref)), __FILE__, __LINE__);
87         }
88          else
89         {
90                 // No refid and we add our refid (don't forget to set $def_refid!)
91                 $URL = URL."/index.php";
92         }
93         // Load the URL
94         LOAD_URL($URL);
95         // Redirection should be done here
96 }
97  else
98 {
99         // You have to configure first!
100         LOAD_URL("install.php");
101 }
102
103 // Really all done here... ;-)
104 ?>