0) unsetPostRequestElement('ok'); } if ((isFormSent()) && (count($FORM_ERRORS) == 0)) { // Generate message array $messageArray = array( 'failed' => getMessage('SPONSOR_REGISTRATION_FAILED'), 'added' => getMessage('SPONSOR_REGISTRATION_COMPLETED'), ); // Calulate points $result = SQL_QUERY_ESC("SELECT (`pay_rate` * `pay_min_count`) AS points, `pay_min_count` AS pay, `pay_currency` AS curr FROM `{?_MYSQL_PREFIX?}_sponsor_paytypes` WHERE `id`='%s' LIMIT 1", array(postRequestElement('pay_type')), __FILE__, __LINE__); list($points, $pay, $curr) = SQL_FETCHROW($result); // Free memory SQL_FREERESULT($result); // Add points to array postRequestElement('points_amount', $points); postRequestElement('points_used' , '0.00000'); postRequestElement('last_pay' , $pay); postRequestElement('last_curr' , $curr); // Register sponsor but never ever update here! $STATUS = handlSponsorRequest(postRequestArray(), true, $messageArray, true); // Check the status of the registration process switch ($STATUS) { case 'added': // Sponsor successfully added with account status = UNCONFIRMED! // Check for his ID number $result = SQL_QUERY_ESC("SELECT `id`, `hash` FROM `{?_MYSQL_PREFIX?}_sponsor_data` WHERE `email`='%s' LIMIT 1", array(postRequestElement('email')), __FILE__, __LINE__); if (SQL_NUMROWS($result) == 1) { // ID found so let's load it for the confirmation email list($id, $hash) = SQL_FETCHROW($result); // Prepare data for the email template $content['id'] = $id; $content['hash'] = $hash; $content['email'] = secureString(postRequestElement('email')); $content['surname'] = secureString(postRequestElement('surname')); $content['family'] = secureString(postRequestElement('family')); $content['gender'] = translateGender(postRequestElement('gender')); $content['timestamp'] = generateDateTime(time(), 0); $content['password'] = secureString(postRequestElement('pass1')); // Generate email and send it to the new sponsor $message = loadEmailTemplate('sponsor_confirm', $hash); sendEmail(postRequestElement('email'), getMessage('SPONSOR_PLEASE_CONFIRM_SUBJ'), $message); // Send mail to admin sendAdminNotification(getMessage('ADMIN_NEW_SPONSOR'), 'admin_sponsor_reg', $hash); // Output message: DONE $message = $messageArray['added']; } else { // Sponsor account not found??? $message = sprintf(getMessage('SPONSOR_EMAIL_404'), postRequestElement('email')); } // Free memory SQL_FREERESULT($result); break; default: logDebugMessage(__FILE__, __LINE__, sprintf("Unknown status %s detected.", $STATUS)); if (!isAdmin()) { // Message for testing admin $message = sprintf(getMessage('ADMIN_SPONSOR_UNKNOWN_STATUS'), $STATUS); } else { // Message for the guest $message = sprintf(getMessage('SPONSOR_UNKNOWN_STATUS'), $STATUS); } break; } // Display message loadTemplate('admin_settings_saved', false, $message); } else { // Check for payment types $result = SQL_QUERY("SELECT `id`, `pay_name`, `pay_rate`, `pay_currency`, `pay_min_count` FROM `{?_MYSQL_PREFIX?}_sponsor_paytypes` ORDER BY `pay_name`", __FILE__, __LINE__); if (SQL_NUMROWS($result) > 0) { // Load all types... // @TODO Swap this HTML code to templates $OUT = "