]> git.mxchange.org Git - mailer.git/blobdiff - inc/modules/admin/what-list_payouts.php
Complete rewrite of and , wrapper functions added, see bug #101
[mailer.git] / inc / modules / admin / what-list_payouts.php
index a4d1dc66bc80401040c21bfbf636cdc126ed89b8..c6600aec5c06a4408327df22efe7e415dcdfdcf7 100644 (file)
  ************************************************************************/
 
 // Some security stuff...
-if ((ereg(basename(__FILE__), $_SERVER['PHP_SELF'])) || (!IS_ADMIN()))
-{
+if ((!defined('__SECURITY')) || (!IS_ADMIN())) {
        $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
        require($INC);
 }
+
 // Add description as navigation point
-ADD_DESCR("admin", basename(__FILE__));
+ADD_DESCR("admin", __FILE__);
 
-if (!empty($_GET['pid']))
-{
+if (REQUEST_ISSET_GET(('pid'))) {
        // First let's get the member's ID
-       $result = SQL_QUERY_ESC("SELECT userid, target_account, payout_total, payout_timestamp, password FROM "._MYSQL_PREFIX."_user_payouts WHERE id=%s LIMIT 1",
-        array($_GET['pid']), __FILE__, __LINE__);
+       $result = SQL_QUERY_ESC("SELECT userid, target_account, payout_total, payout_timestamp, password FROM `{!_MYSQL_PREFIX!}_user_payouts` WHERE id=%s LIMIT 1",
+               array(REQUEST_GET('pid')), __FILE__, __LINE__);
        list($uid, $tuid, $points, $tstamp, $tpass) = SQL_FETCHROW($result);
        SQL_FREERESULT($result);
 
        // Obtain some data
-       if (empty($_GET['task']) && (!empty($uid)) && ($uid > 0))
-       {
+       if (!REQUEST_ISSET_GET(('task')) && (!empty($uid)) && ($uid > 0)) {
                // Get task ID from database
-               $result = SQL_QUERY_ESC("SELECT id FROM "._MYSQL_PREFIX."_task_system WHERE userid=%s AND task_type='PAYOUT_REQUEST' AND task_created='".$tstamp."' LIMIT 1",
-                array(bigintval($uid)), __FILE__, __LINE__);
+               $result = SQL_QUERY_ESC("SELECT id FROM `{!_MYSQL_PREFIX!}_task_system` WHERE userid=%s AND task_type='PAYOUT_REQUEST' AND task_created='".$tstamp."' LIMIT 1",
+                       array(bigintval($uid)), __FILE__, __LINE__);
                list($task) = SQL_FETCHROW($result);
                SQL_FREERESULT($result);
-               if (empty($task)) $task = "0";
-
-       }
-        elseif ((empty($uid)) || ($uid == "0"))
-       {
+               if (empty($task)) $task = 0;
+       } elseif ((empty($uid)) || ($uid == "0")) {
                // Cannot obtain member ID!
                LOAD_TEMPLATE("admin_settings_saved", false, PAYOUT_FAILED_OBTAIN_USERID);
-       }
-        else
-       {
+       } else {
                // Get task ID from URL
-               $task = $_GET['task'];
+               $task = REQUEST_GET('task');
        }
-       if ((!empty($task)) && (!empty($uid)) && ($uid > 0))
-       {
+
+       if ((!empty($task)) && (!empty($uid)) && ($uid > 0)) {
                // Load user's data
-               $result = SQL_QUERY_ESC("SELECT email, sex, surname, family FROM "._MYSQL_PREFIX."_user_data WHERE userid=%s LIMIT 1",
-                array(bigintval($uid)), __FILE__, __LINE__);
-               list($email, $sex, $surname, $family) = SQL_FETCHROW($result);
+               $result = SQL_QUERY_ESC("SELECT email, gender, surname, family FROM `{!_MYSQL_PREFIX!}_user_data` WHERE userid=%s LIMIT 1",
+                       array(bigintval($uid)), __FILE__, __LINE__);
+               list($email, $gender, $surname, $family) = SQL_FETCHROW($result);
                SQL_FREERESULT($result);
 
                // Konstante bauen
-               define('PAYOUT_USERDATA_VALUE', "<A href=\"".CREATE_EMAIL_LINK($email, "user_data")."\">".TRANSLATE_SEX($sex)." ".$surname." ".$family."</A>");
+               define('PAYOUT_USERDATA_VALUE', "<a href=\"".CREATE_EMAIL_LINK($email, "user_data")."\">".TRANSLATE_GENDER($gender)." ".$surname." ".$family."</a>");
 
-               if (($_GET['do'] == "accept") && (!empty($email)))
-               {
+               if ((REQUEST_GET('do') == "accept") && (!empty($email))) {
                        // Ok, now we can output the form or execute accepting
-                       if (isset($_POST['ok']))
-                       {
+                       if (IS_FORM_SENT()) {
                                // Obtain payout type and other data
-                               $result = SQL_QUERY_ESC("SELECT payout_id FROM "._MYSQL_PREFIX."_user_payouts WHERE id=%s LIMIT 1",
-                                array(bigintval($_GET['pid'])), __FILE__, __LINE__);
+                               $result = SQL_QUERY_ESC("SELECT payout_id FROM `{!_MYSQL_PREFIX!}_user_payouts` WHERE id=%s LIMIT 1",
+                                array(bigintval(REQUEST_GET('pid'))), __FILE__, __LINE__);
                                list($ptype) = SQL_FETCHROW($result);
                                SQL_FREERESULT($result);
 
-                               if (!empty($ptype))
-                               {
+                               if (!empty($ptype)) {
                                        // Obtain data from payout type
-                                       $result = SQL_QUERY_ESC("SELECT from_account, from_pass, engine_url, engine_ret_ok, engine_ret_failed, pass_enc, allow_url FROM "._MYSQL_PREFIX."_payout_types WHERE id=%s LIMIT 1",
+                                       $result = SQL_QUERY_ESC("SELECT from_account, from_pass, engine_url, engine_ret_ok, engine_ret_failed, pass_enc, allow_url FROM `{!_MYSQL_PREFIX!}_payout_types` WHERE id=%s LIMIT 1",
                                         array(bigintval($ptype)), __FILE__, __LINE__);
                                        list($fuid, $fpass, $eurl, $eok, $failed, $eenc, $allow) = SQL_FETCHROW($result);
                                        SQL_FREERESULT($result);
 
-                                       if (!empty($eurl))
-                                       {
+                                       if (!empty($eurl)) {
                                                // Ok, run URL...
                                                $eurl = COMPILE_CODE($eurl);
                                                switch ($eenc)
@@ -118,148 +107,118 @@ if (!empty($_GET['pid']))
 
                                                // Transfer variables...
                                                $eval = "\$URL = \"".$eurl."\";";
-                                               $reason = urlencode(base64_encode(PAYOUT_REASON_PAYOUT));
+                                               $reason = encodeString(getMessage('PAYOUT_REASON_PAYOUT'), false);
 
                                                // Run code...
                                                eval($eval);
 
                                                // Execute transfer
-                                               $ret = @file($URL);
-                                       }
-                                        else
-                                       {
+                                               $ret = GET_URL($URL);
+                                       } else {
                                                // No URL to run
                                                $ret[0] = $eok;
                                        }
-                                       if ($ret[0] == $eok)
-                                       {
+
+                                       if ($ret[0] == $eok) {
                                                // Clear task
                                                if ($task > 0) {
-                                                       ADMIN_SOLVE_TASK($task);
+                                                       RUN_FILTER('solve_task', $task);
                                                }
 
                                                // Clear payout request
-                                               $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_payouts SET status='ACCEPTED' WHERE id=%s LIMIT 1",
-                                                array(bigintval($_GET['pid'])), __FILE__, __LINE__);
+                                               SQL_QUERY_ESC("UPDATE `{!_MYSQL_PREFIX!}_user_payouts` SET `status`='ACCEPTED' WHERE id=%s LIMIT 1",
+                                                       array(bigintval(REQUEST_GET('pid'))), __FILE__, __LINE__);
 
                                                // Send out mail
-                                               $msg = LOAD_EMAIL_TEMPLATE("member_payout_accepted", $_POST['text'], $uid);
+                                               $msg = LOAD_EMAIL_TEMPLATE("member_payout_accepted", REQUEST_POST('text'), $uid);
 
                                                // Output message
-                                               if ($allow == "Y")
-                                               {
+                                               if ($allow == "Y") {
                                                        // Banner / Textlink request
                                                        LOAD_TEMPLATE("admin_settings_saved", false, PAYOUT_BANNER_ACCEPTED_NOTIFIED);
-                                               }
-                                                else
-                                               {
+                                               } else {
                                                        // Normal request
                                                        LOAD_TEMPLATE("admin_settings_saved", false, PAYOUT_ACCEPTED_NOTIFIED);
                                                }
 
                                                // Finally send mail
                                                SEND_EMAIL($email, PAYOUT_ACCEPTED_SUBJECT, $msg);
-                                       }
-                                        else
-                                       {
+                                       } else {
                                                // Something goes wrong... :-(
                                                $content = implode("<br />", $ret);
                                                LOAD_TEMPLATE("admin_payout_failed_transfer", false, $content);
                                        }
-                               }
-                                else
-                               {
+                               } else {
                                        // Cannot load payout id
-                                       OUTPUT_HTML("<STRONG class=\"admin_failed\">".PAYOUT_FAILED_OBTAIN_PAYOUT_ID."</STRONG>");
+                                       LOAD_TEMPLATE("admin_settings_saved", false, "<div class=\"admin_failed\">".PAYOUT_FAILED_OBTAIN_PAYOUT_ID."</div>");
                                }
-                       }
-                        else
-                       {
+                       } else {
                                // Load template
                                LOAD_TEMPLATE("admin_payout_accept_form", false, $task);
                        }
-               }
-                elseif (($_GET['do'] == "reject") && (!empty($email)))
-               {
+               } elseif ((REQUEST_GET('do') == "reject") && (!empty($email))) {
                        // Ok, now we can output the form or execute rejecting
-                       if (isset($_POST['ok']))
-                       {
+                       if (IS_FORM_SENT()) {
                                if ($task > 0) {
                                        // Clear task
-                                       ADMIN_SOLVE_TASK($task);
+                                       RUN_FILTER('solve_task', $task);
                                }
 
                                // Clear payout request
-                               $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_payouts SET status='REJECTED' WHERE id=%s LIMIT 1",
-                                array(bigintval($_GET['pid'])), __FILE__, __LINE__);
+                               SQL_QUERY_ESC("UPDATE `{!_MYSQL_PREFIX!}_user_payouts` SET `status`='REJECTED' WHERE id=%s LIMIT 1",
+                                array(bigintval(REQUEST_GET('pid'))), __FILE__, __LINE__);
 
                                // Send out mail
-                               $msg = LOAD_EMAIL_TEMPLATE("member_payout_rejected", $_POST['text'], $uid);
+                               $msg = LOAD_EMAIL_TEMPLATE("member_payout_rejected", REQUEST_POST('text'), $uid);
 
                                // Output message
                                LOAD_TEMPLATE("admin_settings_saved", false, PAYOUT_REJECTED_NOTIFIED);
 
                                // Finally send mail
                                SEND_EMAIL($email, PAYOUT_REJECTED_SUBJECT, $msg);
-                       }
-                        else
-                       {
+                       } else {
                                // Load template
                                LOAD_TEMPLATE("admin_payout_reject_form", false, $task);
                        }
-               }
-                else
-               {
+               } else {
                        // Cannot load user data
                        LOAD_TEMPLATE("admin_settings_saved", false, PAYOUT_FAILED_OBTAIN_USERDATA);
                }
-       }
-        elseif((empty($task)) || ($task == "0"))
-       {
+       } elseif ((empty($task)) || ($task == "0")) {
                // Failed loading task ID
-               LOAD_TEMPLATE("admin_settings_saved", false, PAYOUT_FAILED_OBTAIN_TASK_ID);
+               LOAD_TEMPLATE("admin_settings_saved", false, getMessage('PAYOUT_FAILED_OBTAIN_TASK_ID'));
        }
-}
- else
-{
-       if (empty($_GET['do'])) $_GET['do'] = "";
-       if ($_GET['do'] == "delete")
-       {
+} else {
+       if (!REQUEST_ISSET_GET(('do'))) REQUEST_SET_GET('do', "");
+
+       if (REQUEST_GET('do') == "delete") {
                // Delete all requests
-               $result = SQL_QUERY("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_user_payouts", __FILE__, __LINE__);
+               $result = SQL_QUERY("DELETE LOW_PRIORITY FROM `{!_MYSQL_PREFIX!}_user_payouts`", __FILE__, __LINE__);
        }
 
        // Search for payouts
        $result = SQL_QUERY("SELECT p.id, p.userid AS uid, p.payout_total, p.target_account, p.target_bank, t.type, p.payout_timestamp, p.status, t.allow_url AS allow, p.target_url AS url, p.link_text AS alt, p.banner_url AS banner
-FROM "._MYSQL_PREFIX."_user_payouts AS p, "._MYSQL_PREFIX."_payout_types AS t
+FROM `{!_MYSQL_PREFIX!}_user_payouts` AS p, `{!_MYSQL_PREFIX!}_payout_types` AS t
 WHERE p.payout_id=t.id
 ORDER BY p.payout_timestamp DESC", __FILE__, __LINE__);
 
-       if (SQL_NUMROWS($result) > 0)
-       {
+       if (SQL_NUMROWS($result) > 0) {
                // List found payouts
                $OUT = ""; $SW = 2;
-               while (list($pid, $uid, $total, $account, $bank, $type, $tstamp, $status, $allow, $url, $alt, $banner) = SQL_FETCHROW($result))
-               {
-                       if ($status == "NEW")
-                       {
+               while (list($pid, $uid, $total, $account, $bank, $type, $tstamp, $status, $allow, $url, $alt, $banner) = SQL_FETCHROW($result)) {
+                       if ($status == "NEW") {
                                // Generate links for direct accepting and rejecting
-                               $status = "<A href=\"".URL."/modules.php?module=admin&amp;what=list_payouts&amp;do=accept&amp;pid=".$pid."\">".PAYOUT_ACCEPT_PAYOUT."</A>&nbsp;|&nbsp;<A href=\"".URL."/modules.php?module=admin&amp;what=list_payouts&amp;do=reject&amp;pid=".$pid."\">".PAYOUT_REJECT_PAYOUT."</A>";
-                       }
-                        else
-                       {
+                               $status = "<a href=\"{!URL!}/modules.php?module=admin&amp;what=list_payouts&amp;do=accept&amp;pid=".$pid."\">".PAYOUT_ACCEPT_PAYOUT."</a>&nbsp;|&nbsp;<a href=\"{!URL!}/modules.php?module=admin&amp;what=list_payouts&amp;do=reject&amp;pid=".$pid."\">".PAYOUT_REJECT_PAYOUT."</a>";
+                       } else {
                                // Translate status
-                               $evl = "\$status = PAYOUT_STATUS_".strtoupper($status).";";
-                               eval($evl);
-                               $status = "<FONT class=\"admin_failed\">".$status."</FONT>";
+                               $status = constant('PAYOUT_STATUS_'.strtoupper($status).'');
+                               $status = "<div class=\"admin_failed\">".$status."</div>";
                        }
 
                        // Nothing entered must be secured in member/what-payputs.php !
-                       if ($allow == "Y")
-                       {
+                       if ($allow == "Y") {
                                // Banner/Textlink views/clicks request
-                               if (!empty($banner))
-                               {
+                               if (!empty($banner)) {
                                        // Prepare array for the banner
                                        $content = array(
                                                'banner' => $banner,
@@ -269,9 +228,7 @@ ORDER BY p.payout_timestamp DESC", __FILE__, __LINE__);
 
                                        // Load template for the banner
                                        $account = LOAD_TEMPLATE("admin_list_payouts_banner", true, $content);
-                               }
-                                else
-                               {
+                               } else {
                                        // Textlink
                                        $content = array(
                                                'txt_link' => $alt,
@@ -281,10 +238,8 @@ ORDER BY p.payout_timestamp DESC", __FILE__, __LINE__);
                                }
 
                                // Admins can addionally test the URL for framekillers
-                               $bank = "<A href=\"".FRAMETESTER($url)."\" target=\"_blank\">".CLICK_HERE."</A>";
-                       }
-                        else
-                       {
+                               $bank = "<a href=\"".FRAMETESTER($url)."\" target=\"_blank\">".CLICK_HERE."</a>";
+                       } else {
                                // e-currency payout request
                                if (empty($account)) $account = "---";
                                if (empty($bank))    $bank    = "---";
@@ -312,9 +267,7 @@ ORDER BY p.payout_timestamp DESC", __FILE__, __LINE__);
 
                // Load final template
                LOAD_TEMPLATE("admin_list_payouts");
-       }
-        else
-       {
+       } else {
                // No payout requests are sent so far
                LOAD_TEMPLATE("admin_settings_saved", false, PAYOUT_ADMIN_NO_REQUESTS_FOUND);
        }