0) { // At least one entry selected foreach (postRequestElement('id') as $id => $selected) { // Secure id number and init $content $content = array( 'id' => bigintval($id), 'refid' => 0 ); // Load his personal data $result_main = SQL_QUERY_ESC("SELECT gender, surname, family, email, remote_addr, sponsor_created, points_amount, refid FROM `{?_MYSQL_PREFIX?}_sponsor_data` WHERE `status`='PENDING' AND id='%s' LIMIT 1", array($content['id']), __FILE__, __LINE__); if (SQL_NUMROWS($result_main) == 1) { // Load data $content = SQL_FETCHARRAY($result_main); // Check for open payments and close them $result = SQL_QUERY_ESC("SELECT so.admin_id, so.pay_count, so.pay_ordered, so.pay_status, sp.pay_name, sp.pay_rate, sp.pay_currency FROM `{?_MYSQL_PREFIX?}_sponsor_orders` AS so LEFT JOIN `{?_MYSQL_PREFIX?}_sponsor_paytypes` AS sp ON sp.id=so.payid WHERE so.sponsorid='%s' ORDER BY sp.pay_name", array($content['id']), __FILE__, __LINE__); if (SQL_NUMROWS($result) > 0) { // Payment does exist while ($content2 = SQL_FETCHARRAY($result)) { // Merge both arrays $content = merge_array($content, $content2); // Set default email $content['email'] = getMessage('SPONSOR_NO_ADMIN'); if ($content['admin_id'] > 0) { // Load admin's email address for contact $content['email'] = getAdminEmail($content['admin_id']); } // END - if // Transfer data to array $data = array( 'admin_id' => $content['email'], 'order' => ($content['pay_count'] * $content['pay_rate'])." ".$content['pay_currency'], 'stamp' => generateDateTime($content['pay_ordered'], 2), 'pname' => $content['pay_name'], ); // Load email template $content['message'] = loadEmailTemplate('sponsor_unlock_sponsor_pay', $data, $content['id']); } } else { // No payments found $content['message'] = getMessage('SPONSOR_NO_PAYMENTS_FOUND'); } // Free memory SQL_FREERESULT($result); } // Free memory SQL_FREERESULT($result_main); // Unlock sponsor account SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_sponsor_data` SET `status`='CONFIRMED' WHERE `id`='%s' AND `status`='PENDING' LIMIT 1", array($content['id']), __FILE__, __LINE__); // Update, if applyable, referal count and points if (($content['refid'] > 0) && ($content['refid'] != $content['id'])) { // Update referal account SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_sponsor_data` SET `points_amount`=`points_amount`+{?sponsor_ref_points?}, `ref_count`=`ref_count`+1 WHERE `id`='%s' LIMIT 1", array(bigintval($content['refid'])), __FILE__, __LINE__); // Whas that update fine? if (SQL_AFFECTEDROWS() == 1) { // Load referal's data $result = SQL_QUERY_ESC("SELECT id, gender, surname, family, email, (points_amount - points_used) AS points, receive_warnings, ref_count AS refs FROM `{?_MYSQL_PREFIX?}_sponsor_data` WHERE `id`='%s' LIMIT 1", array(bigintval($content['refid'])), __FILE__, __LINE__); $REFERRAL = SQL_FETCHARRAY($result); // Send warnings out? if ($REFERRAL['receive_warnings'] == 'Y') { // Translate some data $REFERRAL['points'] = translateComma($REFERRAL['points']); $REFERRAL['ref_points'] = translateComma(getConfig('sponsor_ref_points')); $REFERRAL['gender'] = translateGender($REFERRAL['gender']); // Send notification to referal $REF_MSG = loadEmailTemplate('sponsor_ref_notify', $REFERRAL); sendEmail($REFERRAL['email'], getMessage('SPONSOR_REF_NOTIFY_SUBJ'), $REF_MSG); } // Free memory SQL_FREERESULT($result); } } // Transfer data to array $content['gender'] = translateGender($content['gender']); $content['sponsor'] = $content['id']; $content['points'] = translateComma($content['points_amount']); // So let's send the email away $message = loadEmailTemplate('sponsor_unlocked', $content); sendEmail($content['email'], getMessage('SPONSOR_UNLOCKED_SUBJ'), $message); } } else { // Nothing selected loadTemplate('admin_settings_saved', false, getMessage('ADMIN_SPONSOR_NONE_SELECTED_UNLOCK')); } // Add seperator outputHtml('
'); } // Begin listing of all pending sponsor accounts $result = SQL_QUERY("SELECT `id`, `gender`, `surname`, `family`, `email`, `remote_addr`, `sponsor_created` FROM `{?_MYSQL_PREFIX?}_sponsor_data` WHERE `status`='PENDING' ORDER BY `id`", __FILE__, __LINE__); if (SQL_NUMROWS($result) > 0) { // Entries found so let's list them! $OUT = ''; $SW = 2; while ($content = SQL_FETCHARRAY($result)) { // Transfer data to array // @TODO Rewritings: remote->remote_addr, created->sponsor_created in template $content = array( 'sw' => $SW, 'id' => $content['id'], 'gender' => translateGender($content['gender']), 'surname' => $content['surname'], 'family' => $content['family'], 'email' => generateEmailLink($content['email'], 'sponsor_data'), 'remote' => $content['remote_addr'], 'created' => generateDateTime($content['sponsor_created'], 2), ); // Load row template and switch colors $OUT .= loadTemplate('admin_unlock_sponsor_row', true, $content); $SW = 3 - $SW; } // Load template loadTemplate('admin_unlock_sponsor', false, $OUT); } else { // No pending accounts found loadTemplate('admin_settings_saved', false, getMessage('ADMIN_SPONSOR_NONE_PENDING')); } // Free memory SQL_FREERESULT($result); // [EOF] ?>