Continued a bit:
[mailer.git] / show_bonus.php
index 7e83f9b096f05262f7d724fabc37ba1629198e94..895a2e88777cf4bba795ba92f2f97594e2a6cf16 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_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'] = "";
-if (!empty($_GET['action'])) $GLOBALS['action'] = secureString($_GET['action']);
-if (!empty($_GET['what'])) $GLOBALS['what'] = secureString($_GET['what']);
+// Init start time
+$GLOBALS['__start_time'] = microtime(TRUE);
 
-// Set this because we have no module in URI
-$GLOBALS['module'] = "show_bonus"; $CSS = 0;
+// Set this because there is no module in URI
+$GLOBALS['__module']      = 'show_bonus';
+$GLOBALS['__output_mode'] = '0';
 
 // Load the required file(s)
-require ("inc/config.php");
-
-// List only rankings when script is installed
-if (defined('mxchange_installed') && (mxchange_installed))
-{
-       // Include header
-       include(PATH."inc/header.php");
-
-       if (($_GET['uid'] > 0) && ($_GET['d'] > 0) && (!empty($_GET['t'])))
-       {
-               // Set row name
-               $t = "";
-               switch ($_GET['t'])
-               {
-               case "bonusid":
-                       $t = "bonus_id";
+require('inc/config-global.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":
-                       $t = "mail_id";
+               case 'mailid': // Regular member mail
+                       $t = 'mail_id';
                        break;
-               }
-               if (!empty($t))
-               {
-                       // Check for data
-                       $result = SQL_QUERY_ESC("SELECT DISTINCT d.sex, 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=%d AND b.".$t."='%s' LIMIT 1",
- array(bigintval($_GET['uid']), bigintval($_GET['d'])), __FILE__, __LINE__);
-                       if (SQL_NUMROWS($result) == 1)
-                       {
-                               // Load data
-                               list($sex, $sname, $fname, $level, $points) = SQL_FETCHROW($result);
-
-                               // Prepare constants for the pre-template
-                               define('__SALUT'    , TRANSLATE_SEX($sex));
-                               define('__SNAME'    , $sname);
-                               define('__FNAME'    , $fname);
-                               define('__RANK'     , $level);
-                               define('__POINTS'   , $points);
-                               define('__MAILID'   , $_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', "<FONT class=\"guest_failed\">".BONUS_SHOW_NO_DATA."</FONT>");
-                       }
-
-                       // Free memory
-                       SQL_FREERESULT($result);
-               }
-                else
-               {
-                       // Wrong type entered
-                       define('__BONUS_MSG', "<FONT class=\"guest_failed\">".BONUS_SHOW_WRONG_TYPE."</FONT>");
-               }
-       }
-        else
-       {
-               // Wrong call!
-               define('__BONUS_MSG', "<FONT class=\"guest_failed\">".BONUS_SHOW_WRONG_CALL."</FONT>");
-       }
 
-       // Load send_bonus header template (for your banners, e.g.?)
-       define('__BONUS_HEADER', LOAD_TEMPLATE("show_bonus_header", true));
+               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(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 {
+                       // No data found
+                       $content['message'] = '<span class="bad">{--BONUS_SHOW_NO_DATA--}</span>';
+               }
 
-       // Load show_bonus footer template (for your banners, e.g.?)
-       define('__BONUS_FOOTER', LOAD_TEMPLATE("show_bonus_footer", true));
+               // Free memory
+               sqlFreeResult($result);
+       } else {
+               // Wrong type entered
+               $content['message'] = '<span class="bad">{--BONUS_SHOW_WRONG_TYPE--}</span>';
+       }
+} else {
+       // Wrong call!
+       $content['message'] = '<span class="bad">{--BONUS_SHOW_WRONG_CALL--}</span>';
+}
 
-       // Total ranks who can win
-       define('__BONUS_TOTAL_RANKS', $CONFIG['bonus_ranks']);
+// Load final template
+loadTemplate('show_bonus', FALSE, $content);
 
-       // Load final template
-       LOAD_TEMPLATE("show_bonus");
+// Include footer
+loadPageFooter();
 
-       // Include footer
-       include(PATH."inc/footer.php");
-}
- else
-{
-       // You have to configure first!
-       LOAD_URL(URL."/install.php");
-}
-// Really all done here... ;-)
+// [EOF]
 ?>