Complete rewrite of and , wrapper functions added, see bug #101
[mailer.git] / inc / modules / member / what-transfer.php
index 83510d2d85681bcfac8bba87cba069d4604e8318..1be4d545db6f5171604f1eef7e22bf9bd39dec45 100644 (file)
@@ -54,7 +54,7 @@ list($opt_in) = SQL_FETCHROW($result);
 SQL_FREERESULT($result);
 
 $MODE = "";
-if (!empty($_GET['mode'])) $MODE = $_GET['mode'];
+if (REQUEST_ISSET_GET(('mode'))) $MODE = REQUEST_GET('mode');
 
 // Check for "faker"
 if (($opt_in == "N") && ($MODE == "new")) $MODE = "";
@@ -68,28 +68,28 @@ case "new": // Start new transfer
        // Remember maximum value for template
        define('__TRANSFER_MAX_VALUE', round($total - getConfig('transfer_balance') - 0.5));
 
-       if (isset($_POST['ok'])) {
+       if (IS_FORM_SENT()) {
                // Add new transfer
                if (getConfig('transfer_code') > 0) {
                        // Check for code
-                       $code = GEN_RANDOM_CODE(getConfig('transfer_code'), $_POST['code_chk'], $GLOBALS['userid'], __TRANSFER_MAX_VALUE);
-                       $valid_code = ($code == $_POST['code']);
+                       $code = GEN_RANDOM_CODE(getConfig('transfer_code'), REQUEST_POST('code_chk'), $GLOBALS['userid'], constant('__TRANSFER_MAX_VALUE'));
+                       $valid_code = ($code == REQUEST_POST('code'));
                } else {
                        // Zero length (= disabled) is always valid!
                        $valid_code = true;
                }
 
                // Test password
-               $valid_pass = ($pass == generateHash($_POST['password'], $pass));
+               $valid_pass = ($pass == generateHash(REQUEST_POST('password'), $pass));
 
                // Test transfer amount
-               $valid_amount = ((!empty($_POST['points'])) && ($_POST['points'] <= __TRANSFER_MAX_VALUE));
+               $valid_amount = ((REQUEST_ISSET_POST(('points'))) && (REQUEST_POST('points') <= constant('__TRANSFER_MAX_VALUE')));
 
                // Test reason for transfer
-               $valid_reason = (!empty($_POST['reason']));
+               $valid_reason = (REQUEST_ISSET_POST(('reason')));
 
                // Test if a recipient is selected
-               $valid_recipient = ($_POST['to_uid'] > 0);
+               $valid_recipient = (REQUEST_POST('to_uid') > 0);
 
                // Check for nickname extension and set additional data
                $nick = false; $ADD = ", userid";
@@ -100,7 +100,7 @@ case "new": // Start new transfer
 
                // Re-check receivers and own personal data
                $result = SQL_QUERY_ESC("SELECT userid, gender, surname, family, email".$ADD." FROM `{!_MYSQL_PREFIX!}_user_data` WHERE userid IN ('%s','%s') AND `status`='CONFIRMED' ORDER BY userid LIMIT 2",
-                       array($GLOBALS['userid'], bigintval($_POST['to_uid'])), __FILE__, __LINE__);
+                       array($GLOBALS['userid'], bigintval(REQUEST_POST('to_uid'))), __FILE__, __LINE__);
                $valid_data = (SQL_NUMROWS($result) == 2);
 
                if ($valid_code && $valid_pass && $valid_amount && $valid_reason && $valid_recipient) {
@@ -146,7 +146,7 @@ case "new": // Start new transfer
 
                        // Sender's UID is always currently stored in cookie userid...
                        define('__SENDER_UID'     , $GLOBALS['userid']);
-                       define('__RECIPIENT_UID'  , $_POST['to_uid']);
+                       define('__RECIPIENT_UID'  , REQUEST_POST('to_uid'));
 
                        $SENDER = __SENDER_UID;
                        $RECIPIENT = __RECIPIENT_UID;
@@ -161,25 +161,25 @@ case "new": // Start new transfer
                        }
 
                        // Remember transfer reason and fancy date/time in constants
-                       define('__TRANSFER_REASON', $_POST['reason']);
+                       define('__TRANSFER_REASON', REQUEST_POST('reason'));
                        define('__TRANSFER_EXPIRES', CREATE_FANCY_TIME(getConfig('transfer_age')));
 
                        // Generate tranafer id
-                       define('__TRANS_ID', bigintval(GEN_RANDOM_CODE("10", mt_rand(0, 99999), $GLOBALS['userid'], $_POST['reason'])));
+                       define('__TRANS_ID', bigintval(GEN_RANDOM_CODE("10", mt_rand(0, 99999), $GLOBALS['userid'], REQUEST_POST('reason'))));
 
                        // Add entries to both tables
                        SQL_QUERY_ESC("INSERT INTO `{!_MYSQL_PREFIX!}_user_transfers_in` (userid, from_uid, points, reason, time_trans, trans_id) VALUES ('%s','%s','%s','%s', UNIX_TIMESTAMP(),'%s')",
-                               array(bigintval($_POST['to_uid']), $GLOBALS['userid'], bigintval($_POST['points']), $_POST['reason'], __TRANS_ID),
+                               array(bigintval(REQUEST_POST('to_uid')), $GLOBALS['userid'], bigintval(REQUEST_POST('points')), REQUEST_POST('reason'), __TRANS_ID),
                                __FILE__, __LINE__);
                        SQL_QUERY_ESC("INSERT INTO `{!_MYSQL_PREFIX!}_user_transfers_out` (userid, to_uid, points, reason, time_trans, trans_id) VALUES ('%s','%s','%s','%s', UNIX_TIMESTAMP(),'%s')",
-                               array($GLOBALS['userid'], bigintval($_POST['to_uid']), bigintval($_POST['points']), $_POST['reason'], __TRANS_ID),
+                               array($GLOBALS['userid'], bigintval(REQUEST_POST('to_uid')), bigintval(REQUEST_POST('points')), REQUEST_POST('reason'), __TRANS_ID),
                                __FILE__, __LINE__);
 
                        // Add points to account *directly* ...
-                       ADD_POINTS_REFSYSTEM("member_transfer", bigintval($_POST['to_uid']), bigintval($_POST['points']), false, "0", false, "direct");
+                       ADD_POINTS_REFSYSTEM("member_transfer", bigintval(REQUEST_POST('to_uid')), bigintval(REQUEST_POST('points')), false, "0", false, "direct");
 
                        // ... and add it to current user's used points
-                       SUB_POINTS("transfer", $GLOBALS['userid'], $_POST['points']);
+                       SUB_POINTS("transfer", $GLOBALS['userid'], REQUEST_POST('points'));
 
                        // First send email to recipient
                        $msg = LOAD_EMAIL_TEMPLATE("member_transfer_recipient", "", __RECIPIENT_UID);
@@ -198,31 +198,31 @@ case "new": // Start new transfer
                } elseif (!$valid_code) {
                        // Invalid Touring code!
                        LOAD_TEMPLATE("admin_settings_saved", false, "<div class=\"member_note\">".TRANSFER_INVALID_CODE."</div>");
-                       unset($_POST['ok']);
+                       REQUEST_UNSET_POST('ok');
                } elseif (!$valid_pass) {
                        // Wrong password entered
                        LOAD_TEMPLATE("admin_settings_saved", false, "<div class=\"member_note\">".TRANSFER_INVALID_PASSWORD."</div>");
-                       unset($_POST['ok']);
+                       REQUEST_UNSET_POST('ok');
                } elseif (!$valid_amount) {
                        // Too much points entered
                        LOAD_TEMPLATE("admin_settings_saved", false, "<div class=\"member_note\">".TRANSFER_INVALID_POINTS."</div>");
-                       unset($_POST['ok']);
+                       REQUEST_UNSET_POST('ok');
                } elseif (!$valid_reason) {
                        // No transfer reason entered
                        LOAD_TEMPLATE("admin_settings_saved", false, "<div class=\"member_note\">".TRANSFER_INVALID_REASON."</div>");
-                       unset($_POST['ok']);
+                       REQUEST_UNSET_POST('ok');
                } elseif (!$valid_recipient) {
                        // No recipient selected
                        LOAD_TEMPLATE("admin_settings_saved", false, "<div class=\"member_note\">".TRANSFER_INVALID_RECIPIENT."</div>");
-                       unset($_POST['ok']);
+                       REQUEST_UNSET_POST('ok');
                } elseif (!$valid_data) {
                        // No recipient selected
                        LOAD_TEMPLATE("admin_settings_saved", false, "<div class=\"member_note\">".TRANSFER_INVALID_DATA."</div>");
-                       unset($_POST['ok']);
+                       REQUEST_UNSET_POST('ok');
                }
        }
 
-       if (!isset($_POST['ok'])) {
+       if (!IS_FORM_SENT()) {
                // Load member list
                if (EXT_IS_ACTIVE("nickname")) {
                        // Load userid and nickname
@@ -240,7 +240,7 @@ case "new": // Start new transfer
   <option value=\"0\">".SELECT_NONE."</option>\n";
                        while (list($uid, $nick) = SQL_FETCHROW($result)) {
                                $OUT .= "<option value=\"".$uid."\"";
-                               if ((isset($_POST['to_uid'])) && ($_POST['to_uid'] == $uid)) $OUT .= " selected=\"selected\"";
+                               if ((REQUEST_ISSET_POST(('to_uid'))) && (REQUEST_POST('to_uid') == $uid)) $OUT .= " selected=\"selected\"";
                                $OUT .= ">";
                                if (($nick != $uid) && (!empty($nick))) {
                                        // Output nickname
@@ -258,7 +258,7 @@ case "new": // Start new transfer
                        SQL_FREERESULT($result);
                } else {
                        // No one else is opt-in
-                       $OUT = TRANSFER_NO_ONE_ELSE_OPT_IN;
+                       $OUT = getMessage('TRANSFER_NO_ONE_ELSE_OPT_IN');
                        define('__TRANSFER_TO_DISABLED', " disabled");
                }
 
@@ -268,19 +268,19 @@ case "new": // Start new transfer
                // Generate Code
                if (getConfig('transfer_code') > 0) {
                        $rand = mt_rand(0, 99999);
-                       $code = GEN_RANDOM_CODE(getConfig('transfer_code'), $rand, $GLOBALS['userid'], __TRANSFER_MAX_VALUE);
+                       $code = GEN_RANDOM_CODE(getConfig('transfer_code'), $rand, $GLOBALS['userid'], constant('__TRANSFER_MAX_VALUE'));
                        $img = GENERATE_IMAGE($code, false);
                        define('__TRANSFER_IMAGE_INPUT', "<input type=\"hidden\" name=\"code_chk\" value=\"".$rand."\" /><input type=\"text\" name=\"code\" class=\"member_normal\" size=\"5\" maxlength=\"7\"{!__TRANSFER_TO_DISABLED!} />&nbsp;".$img);
                } else {
                        $code = "00000";
-                       define('__TRANSFER_IMAGE_INPUT', TRANSFER_NO_CODE);
+                       define('__TRANSFER_IMAGE_INPUT', getMessage('TRANSFER_NO_CODE'));
                }
 
                // Transfer maybe already entered valued'
-               if (isset($_GET['ok'])) {
+               if (REQUEST_ISSET_GET('ok')) {
                        // Get values from form
-                       define('__TRANSFER_POINTS_VALUE', bigintval($_POST['points']));
-                       define('__TRANSFER_REASON_VALUE', strip_tags($_POST['reason']));
+                       define('__TRANSFER_POINTS_VALUE', bigintval(REQUEST_POST('points')));
+                       define('__TRANSFER_REASON_VALUE', strip_tags(REQUEST_POST('reason')));
                } else {
                        // Set empty values
                        define('__TRANSFER_POINTS_VALUE', "");
@@ -494,13 +494,13 @@ case "": // Overview page
                define('__TRANSFER_ALL_LINK', $total);
        }
 
-       if (isset($_POST['ok'])) {
+       if (IS_FORM_SENT()) {
                // Save settings
                SQL_QUERY_ESC("UPDATE `{!_MYSQL_PREFIX!}_user_data` SET opt_in='%s' WHERE userid=%s LIMIT 1",
-                       array($_POST['opt_in'], $GLOBALS['userid']), __FILE__, __LINE__);
+                       array(REQUEST_POST('opt_in'), $GLOBALS['userid']), __FILE__, __LINE__);
 
                // Rember for next switch() command
-               $opt_in = $_POST['opt_in'];
+               $opt_in = REQUEST_POST('opt_in');
 
                // "Settings saved..."
                LOAD_TEMPLATE("admin_settings_saved", false, "<div class=\"member_done\">".SETTINGS_SAVED."</div>");