<?php
/************************************************************************
- * MXChange v0.2.1 Start: 10/13/2003 *
- * =============== Last change: 09/04/2004 *
+ * Mailer v0.2.1-FINAL Start: 10/13/2003 *
+ * =================== Last change: 09/04/2004 *
* *
* -------------------------------------------------------------------- *
* File : ref.php *
* -------------------------------------------------------------------- *
* Kurzbeschreibung : Weiterleitungsscript fuer die Referral-Links *
* -------------------------------------------------------------------- *
- * *
+ * $Revision:: $ *
+ * $Date:: $ *
+ * $Tag:: 0.2.1-FINAL $ *
+ * $Author:: $ *
* -------------------------------------------------------------------- *
- * Copyright (c) 2003 - 2008 by Roland Haeder *
- * For more information visit: http://www.mxchange.org *
+ * Copyright (c) 2003 - 2009 by Roland Haeder *
+ * Copyright (c) 2009 - 2012 by Mailer Developer Team *
+ * For more information visit: http://mxchange.org *
* *
* 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 *
* MA 02110-1301 USA *
************************************************************************/
-// Load security stuff here (Oh, I hope this is not unsecure? Am I paranoia??? ;-) )
-require_once("inc/libs/security_functions.php");
+// Load security stuff here
+require('inc/libs/security_functions.php');
-// Init "action" and "what"
-global $what, $action;
-$GLOBALS['what'] = ""; $GLOBALS['action'] = "";
+// Init start time
+$GLOBALS['__start_time'] = microtime(TRUE);
// Set module
-$GLOBALS['module'] = "ref"; $CSS = -1;
+$GLOBALS['__module'] = 'ref';
+$GLOBALS['__output_mode'] = -1;
// Load the required file(s)
-require ("inc/config.php");
+require('inc/config-global.php');
-// Redirect only to registration page when this script is installed
-if (defined('mxchange_installed') && (isBooleanConstantAndTrue('mxchange_installed')))
-{
- // Base URL for redirection
- switch ($_CONFIG['refid_target'])
- {
- case "register":
- $URL = URL."/modules.php?module=index&what=register&refid=";
- break;
+// Set content type for e.g. search engines
+setContentType('text/html');
- case "index":
- $URL = URL."/index.php?refid=";
- break;
- }
+// No refid by default
+$url = 'modules.php?module=index';
- // Get referral ID from ref or refid variable
- if (!empty($_GET['ref'])) $ref = secureString($_GET['ref']);
- elseif (!empty($_GET['refid'])) $ref = bigintval($_GET['refid']);
+// Check for determined referral id
+if ((isExtensionActive('user')) && (isReferralIdValid()) && (isValidId(determineReferralId()))) {
+ // Run filter chain for updating referral data
+ runFilterChain('update_referral_data');
- if (!empty($ref))
- {
- // Test if nickname ($test == "0") or ID
- $test = "".round($ref)."";
- if ((EXT_IS_ACTIVE("nickname")) && ($test != $ref))
- {
- // Nickname in URL, so load the ID
- $result = SQL_QUERY_ESC("SELECT userid FROM "._MYSQL_PREFIX."_user_data WHERE nickname='%s' LIMIT 1", array($ref), __FILE__, __LINE__);
- list($ref) = SQL_FETCHROW($result);
- SQL_FREERESULT($result);
- }
+ // Base URL for redirection
+ switch (getConfig('refid_target')) {
+ case 'register':
+ $url = 'modules.php?module=index&what=register';
+ break;
- // Also edit this 0 !
- if (empty($ref)) $ref = "0";
+ case 'index':
+ $url = 'modules.php?module=index';
+ break;
- // We have an refid here. So we simply add it
- $URL .= bigintval($ref);
+ default: // Is not valid
+ reportBug(__FILE__, __LINE__, 'Invalid refid target ' . getConfig('refid_target') . ' detected.');
+ break;
+ } // END - switch
+} // END - if
- // Update ref counter
- $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_data SET ref_clicks=ref_clicks+1 WHERE userid=%s LIMIT 1",
- array(bigintval($ref)), __FILE__, __LINE__);
- }
- else
- {
- // No refid and we add our refid (don't forget to set $def_refid!)
- $URL = URL."/index.php";
- }
- // Load the URL
- LOAD_URL($URL);
- // Redirection should be done here
-}
- else
-{
- // You have to configure first!
- LOAD_URL("install.php");
-}
+// Load the URL
+redirectToUrl($url);
-// Really all done here... ;-)
+// [EOF]
?>