Large code cleanups:
[mailer.git] / inc / modules / admin / what-list_payouts.php
index 63ca2e494693e11e313089e20ffb9748a58d963d..1ad813d8af72d96916d7ba5f5ae5845a199afbd8 100644 (file)
  * $Date::                                                            $ *
  * $Tag:: 0.2.1-FINAL                                                 $ *
  * $Author::                                                          $ *
- * Needs to be in all Files and every File needs "svn propset           *
- * svn:keywords Date Revision" (autoprobset!) at least!!!!!!            *
  * -------------------------------------------------------------------- *
  * Copyright (c) 2003 - 2009 by Roland Haeder                           *
- * For more information visit: http://www.mxchange.org                  *
+ * Copyright (c) 2009 - 2011 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 *
 // Some security stuff...
 if ((!defined('__SECURITY')) || (!isAdmin())) {
        die();
-}
+} // END - if
 
 // Add description as navigation point
-addMenuDescription('admin', __FILE__);
+addYouAreHereLink('admin', __FILE__);
 
-if (isGetRequestElementSet(('pid'))) {
+if (isGetRequestElementSet('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(getRequestElement('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(getRequestElement('pid')), __FILE__, __LINE__);
        list($userid, $tuserid, $points, $tstamp, $tpass) = SQL_FETCHROW($result);
        SQL_FREERESULT($result);
 
        // Obtain some data
-       if (!isGetRequestElementSet(('task')) && (!empty($userid)) && ($userid > 0)) {
+       if (!isGetRequestElementSet('task') && (!empty($userid)) && (isValidUserId($userid))) {
                // 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($userid)), __FILE__, __LINE__);
-               list($task) = SQL_FETCHROW($result);
+               $result = SQL_QUERY_ESC("SELECT `id` FROM `{?_MYSQL_PREFIX?}_task_system` WHERE `userid`=%s AND `task_type`='PAYOUT_REQUEST' AND `task_created`=%s LIMIT 1",
+                       array(bigintval($userid), bigintval($tstamp)), __FILE__, __LINE__);
+               list($taskId) = SQL_FETCHROW($result);
                SQL_FREERESULT($result);
-               if (empty($task)) $task = '0';
+               if (empty($taskId)) $taskId = '0';
        } elseif ((empty($userid)) || ($userid == '0')) {
                // Cannot obtain member id!
-               loadTemplate('admin_settings_saved', false, getMessage('PAYOUT_FAILED_OBTAIN_USERID'));
+               displayMessage('{--ADMIN_PAYOUT_FAILED_OBTAIN_USERID--}');
        } else {
                // Get task id from URL
-               $task = getRequestElement('task');
+               $taskId = getRequestElement('task');
        }
 
-       if ((!empty($task)) && (!empty($userid)) && ($userid > 0)) {
+       if ((!empty($taskId)) && (!empty($userid)) && (isValidUserId($userid))) {
                // Load user's data
                if (!fetchUserData($userid)) {
                        // Abort here because it is not valid!
-                       debug_report_bug('No user account ' . $userid . ' found.');
+                       debug_report_bug(__FILE__, __LINE__, 'No user account ' . $userid . ' found.');
                } // END - if
 
-               if ((getRequestElement('do') == 'accept') && (!empty(getUserData('email')))) {
+               if ((getRequestElement('do') == 'accept') && (getUserData('email') != '')) {
                        // Ok, now we can output the form or execute accepting
                        if (isFormSent()) {
                                // 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(getRequestElement('pid'))), __FILE__, __LINE__);
+
+                               // Load ptype (id)
                                list($ptype) = SQL_FETCHROW($result);
+
+                               // Free result
                                SQL_FREERESULT($result);
 
                                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`
+                                       $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($fuserid, $fpass, $eurl, $eok, $failed, $eenc, $allow) = SQL_FETCHROW($result);
+
+                                       // Load data
+                                       $data = SQL_FETCHARRAY($result);
+
+                                       // Free result
                                        SQL_FREERESULT($result);
 
-                                       if (!empty($eurl)) {
+                                       if (!empty($data['engine_url'])) {
                                                // Ok, run URL...
-                                               switch ($eenc) {
+                                               switch ($data['pass_enc']) {
                                                        case 'md5':
-                                                               $fpass = md5($fpass);
+                                                               $data['from_pass'] = md5($data['from_pass']);
                                                                $tpass = md5($tpass);
                                                                break;
 
                                                        case 'base64':
-                                                               $fpass = base64_encode($fpass);
+                                                               $data['from_pass'] = base64_encode($data['from_pass']);
                                                                $tpass = base64_encode($tpass);
                                                                break;
-                                               }
+                                               } // END - switch
 
                                                // Transfer variables...
-                                               $eval = "\$URL = \"".$eurl."\";";
-                                               $reason = encodeString(getMessage('PAYOUT_REASON_PAYOUT'), false);
-
-                                               // Run code...
-                                               // @TODO Do we need this time-consuming eval() here?
-                                               eval($eval);
+                                               $reason = encodeString(getMessage('ADMIN_PAYOUT_REASON'), false);
 
                                                // Execute transfer
-                                               $ret = sendGetRequest($URL);
+                                               $ret = sendGetRequest($data['engine_url']);
                                        } else {
                                                // No URL to run
-                                               $ret[0] = $eok;
+                                               $ret[0] = $data['engine_ret_ok'];
                                        }
 
-                                       if ($ret[0] == $eok) {
+                                       if ($ret[0] == $data['engine_ret_ok']) {
                                                // Clear task
-                                               if ($task > 0) {
-                                                       runFilterChain('solve_task', $task);
+                                               if ($taskId > 0) {
+                                                       runFilterChain('solve_task', $taskId);
                                                }
 
                                                // Clear payout request
@@ -138,42 +141,42 @@ LIMIT 1",
                                                $message = loadEmailTemplate('member_payout_accepted', postRequestElement('text'), $userid);
 
                                                // Output message
-                                               if ($allow == 'Y') {
+                                               if ($data['allow_url'] == 'Y') {
                                                        // Banner / Textlink request
-                                                       loadTemplate('admin_settings_saved', false, getMessage('PAYOUT_BANNER_ACCEPTED_NOTIFIED'));
+                                                       displayMessage('{--ADMIN_PAYOUT_BANNER_ACCEPTED_NOTIFIED--}');
                                                } else {
                                                        // Normal request
-                                                       loadTemplate('admin_settings_saved', false, getMessage('PAYOUT_ACCEPTED_NOTIFIED'));
+                                                       displayMessage('{--ADMIN_PAYOUT_ACCEPTED_NOTIFIED--}');
                                                }
 
                                                // Finally send mail
-                                               sendEmail(getUserData('email'), getMessage('PAYOUT_ACCEPTED_SUBJECT'), $message);
+                                               sendEmail(getUserData('userid'), '{--MEMBER_PAYOUT_ACCEPTED_SUBJECT--}', $message);
                                        } else {
                                                // Something goes wrong... :-(
-                                               $content = implode("<br />", $ret);
+                                               $content = implode('<br />', $ret);
                                                loadTemplate('admin_payout_failed_transfer', false, $content);
                                        }
                                } else {
                                        // Cannot load payout id
-                                       loadTemplate('admin_settings_saved', false, "<div class=\"admin_failed\">{--PAYOUT_FAILED_OBTAIN_PAYOUT_ID--}</div>");
+                                       loadTemplate('admin_settings_unsaved', false, '{--ADMIN_PAYOUT_FAILED_OBTAIN_PAYOUT_ID--}');
                                }
                        } else {
                                // Prepare content
                                $content = array(
-                                       'task' => $task,
+                                       'task' => $taskId,
                                        'pid'  => bigintval(getRequestElement('pid')),
-                                       'user' => "<a href=\"".generateEmailLink(getUserData('email'), 'user_data')."\">".translateGender(getUserData('gender'))." ".getUserData('surname')." ".getUserData('family')."</a>",
+                                       'user' => '<a href="' . generateEmailLink(getUserData('email'), 'user_data') . '">{%pipe,translateGender=' . getUserData('gender') . '%} ' . getUserData('surname') . ' ' . getUserData('family') . '</a>',
                                );
 
                                // Load template
                                loadTemplate('admin_payout_accept_form', false, $content);
                        }
-               } elseif ((getRequestElement('do') == 'reject') && (!empty(getUserData('email')))) {
+               } elseif ((getRequestElement('do') == 'reject') && (getUserData('email') != '')) {
                        // Ok, now we can output the form or execute rejecting
                        if (isFormSent()) {
-                               if ($task > 0) {
+                               if ($taskId > 0) {
                                        // Clear task
-                                       runFilterChain('solve_task', $task);
+                                       runFilterChain('solve_task', $taskId);
                                } // END - if
 
                                // Clear payout request
@@ -184,16 +187,16 @@ LIMIT 1",
                                $message = loadEmailTemplate('member_payout_rejected', postRequestElement('text'), $userid);
 
                                // Output message
-                               loadTemplate('admin_settings_saved', false, getMessage('PAYOUT_REJECTED_NOTIFIED'));
+                               displayMessage('{--ADMIN_PAYOUT_REJECTED_NOTIFIED--}');
 
                                // Finally send mail
-                               sendEmail(getUserData('email'), getMessage('PAYOUT_REJECTED_SUBJECT'), $message);
+                               sendEmail(getUserData('userid'), '{--MEMBER_PAYOUT_REJECTED_SUBJECT--}', $message);
                        } else {
                                // Prepare content
                                $content = array(
-                                       'task' => $task,
+                                       'task' => $taskId,
                                        'pid'  => bigintval(getRequestElement('pid')),
-                                       'user' => "<a href=\"".generateEmailLink(getUserData('email'), 'user_data')."\">".translateGender(getUserData('gender'))." ".getUserData('surname')." ".getUserData('family')."</a>",
+                                       'user' => '<a href="' . generateEmailLink(getUserData('email'), 'user_data') . '">{%pipe,translateGender=' . getUserData('gender') . '%} ' . getUserData('surname') . ' ' . getUserData('family') . '</a>',
                                );
 
                                // Load template
@@ -201,15 +204,13 @@ LIMIT 1",
                        }
                } else {
                        // Cannot load user data
-                       loadTemplate('admin_settings_saved', false, getMessage('PAYOUT_FAILED_OBTAIN_USERDATA'));
+                       displayMessage('{--ADMIN_PAYOUT_FAILED_OBTAIN_USERDATA--}');
                }
-       } elseif ((empty($task)) || ($task == '0')) {
+       } elseif ((empty($taskId)) || ($taskId == '0')) {
                // Failed loading task id
-               loadTemplate('admin_settings_saved', false, getMessage('PAYOUT_FAILED_OBTAIN_TASK_ID'));
+               displayMessage('{--ADMIN_PAYOUT_FAILED_OBTAIN_TASK_ID--}');
        }
 } else {
-       if (!isGetRequestElementSet('do')) setRequestGetElement('do', '');
-
        if (getRequestElement('do') == 'delete') {
                // Delete all requests
                $result = SQL_QUERY("TRUNCATE `{?_MYSQL_PREFIX?}_user_payouts`", __FILE__, __LINE__);
@@ -230,17 +231,16 @@ ON
 ORDER BY
        p.payout_timestamp DESC", __FILE__, __LINE__);
 
-       if (SQL_NUMROWS($result) > 0) {
+       if (!SQL_HASZERONUMS($result)) {
                // List found payouts
-               $OUT = ''; $SW = 2;
+               $OUT = '';
                while ($content = SQL_FETCHARRAY($result)) {
                        if ($content['status'] == 'NEW') {
                                // Generate links for direct accepting and rejecting
-                               $content['status'] = "<a href=\"{?URL?}/modules.php?module=admin&amp;what=list_payouts&amp;do=accept&amp;pid=".$content['id']."\">".PAYOUT_ACCEPT_PAYOUT."</a>&nbsp;|&nbsp;<a href=\"{?URL?}/modules.php?module=admin&amp;what=list_payouts&amp;do=reject&amp;pid=".$content['id']."\">".PAYOUT_REJECT_PAYOUT."</a>";
+                               $content['status'] = '<a href="{%url=modules.php?module=admin&amp;what=list_payouts&amp;do=accept&amp;pid=' . $content['id'] . '%}">{--ADMIN_PAYOUT_ACCEPT_PAYOUT--}</a>|<a href="{%url=modules.php?module=admin&amp;what=list_payouts&amp;do=reject&amp;pid=' . $content['id'] . '%}">{--ADMIN_PAYOUT_REJECT_PAYOUT--}</a>';
                        } else {
                                // Translate status
-                               $content['status'] = getMessage('PAYOUT_STATUS_'.strtoupper($content['status']).'');
-                               $content['status'] = "<div class=\"admin_failed\">".$content['status']."</div>";
+                               $content['status'] = translatePayoutStatus($content['status']);
                        }
 
                        // Nothing entered must be secured in member/what-payputs.php !
@@ -255,28 +255,15 @@ ORDER BY
                                }
 
                                // Admins can addionally test the URL for framekillers
-                               $content['target_bank'] = "<a href=\"".generateFrametesterUrl($content['url'])."\" target=\"_blank\">{--CLICK_HERE--}</a>";
-                       } else {
-                               // e-currency payout request
-                               if (empty($content['target_account'])) $content['target_account'] = '---';
-                               if (empty($content['target_bank']))    $content['target_bank']    = '---';
-                       }
+                               $content['target_bank'] = '<a href="' . generateFrametesterUrl($content['url']) . '" target="_blank">{--CLICK_HERE--}</a>';
+                       } // END - if
 
-                       // Remember data in array for the template
-                       $content = array(
-                               'sw'      => $SW,
-                               'ulink'   => generateUserProfileLink($content['userid']),
-                               'ptype'   => translateComma($content['payout_total']) . ' ' . $content['type'],
-                               'account' => $content['target_account'],
-                               'bank'    => $content['target_bank'],
-                               'tstamp'  => generateDateTime($content['payout_timestamp'], 2),
-                               'status'  => $content['status'],
-                       );
+                       // Add/Translate some data
+                       $content['payout_timestamp'] = generateDateTime($content['payout_timestamp'], 2);
 
                        // Add row and switch color
                        $OUT .= loadTemplate('admin_list_payouts_row', true, $content);
-                       $SW = 3 - $SW;
-               }
+               } // END - while
 
                // Free memory
                SQL_FREERESULT($result);
@@ -285,7 +272,7 @@ ORDER BY
                loadTemplate('admin_list_payouts', false, $OUT);
        } else {
                // No payout requests are sent so far
-               loadTemplate('admin_settings_saved', false, getMessage('PAYOUT_ADMIN_NO_REQUESTS_FOUND'));
+               displayMessage('{--ADMIN_PAYOUT_NO_REQUESTS_FOUND--}');
        }
 }