also prevent it in .htacces. You may want to add this to one of your files in /etc...
[mailer.git] / show_bonus.php
index 2987ae3f11fa6ff0250d3f660491ae6e15e20037..1b8dec3d3bbf3f6d05660525f7254d42c5e10831 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 /************************************************************************
- * MXChange v0.2.1                                    Start: 11/13/2004 *
- * ===============                              Last change: 11/14/2004 *
+ * Mailer v0.2.1-FINAL                                Start: 11/13/2004 *
+ * ===================                          Last change: 11/14/2004 *
  *                                                                      *
  * -------------------------------------------------------------------- *
  * File              : show_bonus.php                                   *
  * -------------------------------------------------------------------- *
  * Kurzbeschreibung  : Rankliste fuer Turbo-Bonus anzeigen              *
  * -------------------------------------------------------------------- *
- *                                                                      *
- * -------------------------------------------------------------------- *
- * 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 - 2016 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("inc/libs/security_functions.php");
-
-// Init "action" and "what"
-global $what, $action, $startTime;
-$GLOBALS['startTime'] = microtime(true);
-$GLOBALS['what'] = "";
-$GLOBALS['action'] = "";
-
-// Set this because we have no module in URI
-$GLOBALS['module'] = "show_bonus"; $CSS = 0;
-
-// Load the required file(s)
-require("inc/config.php");
-
-// Is the "bonus" extension active?
-if (!EXT_IS_ACTIVE("bonus")) {
-       // Redirect to index
-       LOAD_URL("modules.php?module=index&amp;msg=".CODE_EXTENSION_PROBLEM."&amp;ext=bonus");
-} // END - if
-
-// List only rankings when script is installed
-if (isBooleanConstantAndTrue('mxchange_installed')) {
-       // Include header
-       LOAD_INC("inc/header.php");
-
-       if (($_GET['uid'] > 0) && ($_GET['d'] > 0) && (!empty($_GET['t']))) {
-               // Set row name
-               $t = "";
-               switch ($_GET['t']) {
-                       case "bonusid": // Bonus mail
-                               $t = "bonus_id";
-                               break;
-
-                       case "mailid": // Regular member mail
-                               $t = "mail_id";
-                               break;
-
-                       default: // Invalid type
-                               DEBUG_LOG(__FILE__, __LINE__, sprintf("Invalid type %s detected.", $_GET['t']));
-                               break;
-               } // END - switch
-
-               // Valid type?
-               if (!empty($t)) {
-                       // Check for data
-                       $result = SQL_QUERY_ESC("SELECT DISTINCT d.gender, d.surname, d.family, b.level, b.points
-FROM `{!_MYSQL_PREFIX!}_user_data` AS d
-RIGHT JOIN `{!_MYSQL_PREFIX!}_bonus_turbo` AS b
-ON d.userid=b.userid
-WHERE d.`status`='CONFIRMED' AND d.userid=%s AND b.%s=%s
+// Load security stuff here
+require('inc/libs/security_functions.php');
+
+// Init start time
+$GLOBALS['__start_time'] = microtime(TRUE);
+
+// Set this because there is no module in URI
+$GLOBALS['__module']      = 'show_bonus';
+$GLOBALS['__output_mode'] = '0';
+
+// Initialize application
+require('inc/init.php');
+
+// Set content type
+setContentType('text/html');
+
+// Is the 'bonus' extension active?
+redirectOnUninstalledExtension('bonus');
+
+// Include header
+loadPageHeader();
+
+if ((isValidId(getRequestElement('userid'))) && (getRequestElement('d') > 0) && (isGetRequestElementSet('t'))) {
+       // Set row name
+       $t = '';
+       switch (getRequestElement('t')) {
+               case 'bonusid': // Bonus mail
+                       $t = 'bonus_id';
+                       break;
+
+               case 'mailid': // Regular member mail
+                       $t = 'mail_id';
+                       break;
+
+               default: // Invalid type
+                       logDebugMessage(__FILE__, __LINE__, sprintf('Invalid type %s detected.', getRequestElement('t')));
+                       break;
+       } // END - switch
+
+       // Valid type?
+       if (!empty($t)) {
+               // Check for data
+               $result = sqlQueryEscaped("SELECT
+       `d`.`userid`,
+       `b`.`level`,
+       `b`.`points`
+FROM
+       `{?_MYSQL_PREFIX?}_user_data` AS `d`
+INNER JOIN
+       `{?_MYSQL_PREFIX?}_bonus_turbo` AS `b`
+ON
+       `d`.`userid`=`b`.`userid`
+WHERE
+       `d`.`status`='CONFIRMED' AND
+       `d`.`userid`=%s AND
+       `b`.`%s`=%s
 LIMIT 1",
-                               array(bigintval($_GET['uid']), $t, bigintval($_GET['d'])), __FILE__, __LINE__);
-
-                       // Entry found?
-                       if (SQL_NUMROWS($result) == 1) {
-                               // Load data
-                               $content = SQL_FETCHARRAY($result);
-
-                               // Prepare constants for the pre-template
-                               define('__GENDER'   , TRANSLATE_GENDER($content['gender']));
-                               define('__SNAME'    , $content['surname']);
-                               define('__FNAME'    , $content['family']);
-                               define('__RANK'     , BIGINTVAL($content['level']));
-                               define('__POINTS'   , TRANSLATE_COMMA($content['points']));
-                               define('__MAILID'   , bigintval($_GET['d']));
-                               define('__RANK_ROWS', BONUS_MAKE_RANK_ROWS(bigintval($_GET['d']), $t, bigintval($_GET['uid'])));
-
-                               // Constant created within previous function which contains informations for current user's ranking position:
-                               //   __YOUR_RANKING_LINE
-
-                               // Load pre-template
-                               define('__BONUS_MSG', LOAD_TEMPLATE("show_bonus_msg", true));
-                       } else {
-                               // No data found
-                               define('__BONUS_MSG', "<span class=\"guest_failed\">".BONUS_SHOW_NO_DATA."</span>");
-                       }
-
-                       // Free memory
-                       SQL_FREERESULT($result);
+                       array(
+                               bigintval(getRequestElement('userid')),
+                               $t,
+                               bigintval(getRequestElement('d'))
+                       ), __FILE__, __LINE__);
+
+               // Entry found?
+               if (sqlNumRows($result) == 1) {
+                       // Load data
+                       $content = sqlFetchArray($result);
+
+                       // Prepare constants for the pre-template
+                       $content['mailid'] = bigintval(getRequestElement('d'));
+                       $content['rows']   = addBonusRanks(bigintval(getRequestElement('d')), $t, bigintval(getRequestElement('userid')));
+
+                       // Get some prepared content
+                       $content = merge_array($content, $GLOBALS['ranking_content']);
+
+                       // Load pre-template
+                       $content['message'] = loadTemplate('show_bonus_msg', TRUE, $content);
                } else {
-                       // Wrong type entered
-                       define('__BONUS_MSG', "<span class=\"guest_failed\">".BONUS_SHOW_WRONG_TYPE."</span>");
+                       // No data found
+                       $content['message'] = '<span class="bad">{--BONUS_SHOW_NO_DATA--}</span>';
                }
+
+               // Free memory
+               sqlFreeResult($result);
        } else {
-               // Wrong call!
-               define('__BONUS_MSG', "<span class=\"guest_failed\">".BONUS_SHOW_WRONG_CALL."</span>");
+               // Wrong type entered
+               $content['message'] = '<span class="bad">{--BONUS_SHOW_WRONG_TYPE--}</span>';
        }
-
-       // Load send_bonus header template (for your banners, e.g.?)
-       define('__BONUS_HEADER', LOAD_TEMPLATE("show_bonus_header", true));
-
-       // Load show_bonus footer template (for your banners, e.g.?)
-       define('__BONUS_FOOTER', LOAD_TEMPLATE("show_bonus_footer", true));
-
-       // Total ranks who can win
-       define('__BONUS_TOTAL_RANKS', getConfig('bonus_ranks'));
-
-       // Load final template
-       LOAD_TEMPLATE("show_bonus");
-
-       // Include footer
-       LOAD_INC("inc/footer.php");
 } else {
-       // You have to install first!
-       LOAD_URL("install.php");
+       // Wrong call!
+       $content['message'] = '<span class="bad">{--BONUS_SHOW_WRONG_CALL--}</span>';
 }
 
-// Really all done here... ;-)
+// Load final template
+loadTemplate('show_bonus', FALSE, $content);
+
+// Include footer
+loadPageFooter();
+
+// [EOF]
 ?>