Possible further fix for #128
[mailer.git] / inc / modules / guest / what-sponsor_reg.php
index ceb9c6638c2c6d8b1c51f8c531f529dc0b4f1a66..ce88fd80fb1841a38684cf8150d5624a57526a78 100644 (file)
  * -------------------------------------------------------------------- *
  * Kurzbeschreibung  : Anmeldeformular fuer Sponsoren                   *
  * -------------------------------------------------------------------- *
- *                                                                      *
+ * $Revision::                                                        $ *
+ * $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 - 2008 by Roland Haeder                           *
  * For more information visit: http://www.mxchange.org                  *
 
 // Some security stuff...
 if (!defined('__SECURITY')) {
-       $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4)."/security.php";
+       $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), '/inc') + 4) . '/security.php';
        require($INC);
-} elseif ((!EXT_IS_ACTIVE("sponsor"))) {
-       addFatalMessage(getMessage('EXTENSION_PROBLEM_EXT_INACTIVE'), "sponsor");
+} elseif ((!EXT_IS_ACTIVE('sponsor'))) {
+       addFatalMessage(__FILE__, __LINE__, generateExtensionInactiveNotInstalledMessage('sponsor'));
        return;
 }
 
 // Add description as navigation point
-ADD_DESCR("guest", __FILE__);
+ADD_DESCR('guest', __FILE__);
 
 // Create array for form errors (= missing data)
 $FORM_ERRORS = array();
 
-if (IS_FORM_SENT()) {
+if (isFormSent()) {
        //
        // Check submitted form data
        //
@@ -101,13 +106,13 @@ if (IS_FORM_SENT()) {
        }
 
        // 3. ZIP code
-       if (!REQUEST_ISSET_POST(('zip'))) {
+       if (!REQUEST_ISSET_POST('zip')) {
                // ZIP code is empty
                $FORM_ERRORS[] = getMessage('SPONSOR_ZIP_IS_EMPTY');
        } elseif (bigintval(REQUEST_POST('zip')) != REQUEST_POST('zip')) {
                // ZIP is invalid
                $FORM_ERRORS[] = getMessage('SPONSOR_ZIP_IS_INVALID');
-               REQUEST_SET_POST('zip', "");
+               REQUEST_SET_POST('zip', '');
        }
 
        // 4. City
@@ -123,23 +128,23 @@ if (IS_FORM_SENT()) {
        }
 
        // 6. Homepage URL
-       if (!REQUEST_ISSET_POST(('url'))) {
+       if (!REQUEST_ISSET_POST('url')) {
                // Homepage URL is empty
                $FORM_ERRORS[] = getMessage('SPONSOR_URL_IS_EMPTY');
-       } elseif (!VALIDATE_URL(REQUEST_POST('url'))) {
+       } elseif (!isUrlValid(REQUEST_POST('url'))) {
                // Homepage URL is invalid
                $FORM_ERRORS[] = getMessage('SPONSOR_URL_IS_INVALID');
-               REQUEST_SET_POST('url', "");
+               REQUEST_SET_POST('url', '');
        }
 
        // 7. Light validation of email address
-       if ((!REQUEST_ISSET_POST(('email'))) || (REQUEST_POST('email') == "@")) {
+       if ((!REQUEST_ISSET_POST('email')) || (REQUEST_POST('email') == "@")) {
                // Email is invalid/empty
                $FORM_ERRORS[] = getMessage('SPONSOR_EMAIL_IS_INVALID');
        } elseif (SPONSOR_FOUND_EMAIL_DB(REQUEST_POST('email'))) {
                // Email already found in database!
                $FORM_ERRORS[] = getMessage('SPONSOR_EMAIL_IS_ALREADY_REGISTERED');
-               REQUEST_SET_POST('email', "");
+               REQUEST_SET_POST('email', '');
        }
 
        // 8. Pay type selected?
@@ -161,17 +166,17 @@ if (IS_FORM_SENT()) {
        }
 
        // Did he enter his password twice?
-       if (((!REQUEST_ISSET_POST(('pass1'))) || (!REQUEST_ISSET_POST(('pass2')))) || ((REQUEST_POST('pass1') != REQUEST_POST('pass2')) && (REQUEST_ISSET_POST(('pass1'))) && (REQUEST_ISSET_POST(('pass2'))))) {
-               if ((REQUEST_POST('pass1') != REQUEST_POST('pass2')) && (REQUEST_ISSET_POST(('pass1'))) && (REQUEST_ISSET_POST(('pass2')))) {
+       if (((!REQUEST_ISSET_POST('pass1')) || (!REQUEST_ISSET_POST('pass2'))) || ((REQUEST_POST('pass1') != REQUEST_POST('pass2')) && (REQUEST_ISSET_POST('pass1')) && (REQUEST_ISSET_POST('pass2')))) {
+               if ((REQUEST_POST('pass1') != REQUEST_POST('pass2')) && (REQUEST_ISSET_POST('pass1')) && (REQUEST_ISSET_POST('pass2'))) {
                        // Passwords missmatch
                        $FORM_ERRORS[] = getMessage('SPONSOR_PASSWORDS_MISMATCH');
                } else {
-                       if (!REQUEST_ISSET_POST(('pass1'))) {
+                       if (!REQUEST_ISSET_POST('pass1')) {
                                // Password 1 is empty
                                $FORM_ERRORS[] = getMessage('SPONSOR_PASSWORD1_EMPTY');
                        }
 
-                       if (!REQUEST_ISSET_POST(('pass2'))) {
+                       if (!REQUEST_ISSET_POST('pass2')) {
                                // Password 2 is empty
                                $FORM_ERRORS[] = getMessage('SPONSOR_PASSWORD2_EMPTY');
                        }
@@ -186,14 +191,14 @@ if (IS_FORM_SENT()) {
                // Homepage URL is empty
                $FORM_ERRORS[] = getMessage('SPONSOR_TERMS_NOT_ACCEPTED');
        }
-       
+
        // If there is something wrong/missing stop registration
        if (count($FORM_ERRORS) > 0) REQUEST_UNSET_POST('ok');
 }
 
-if ((IS_FORM_SENT()) && (count($FORM_ERRORS) == 0)) {
+if ((isFormSent()) && (count($FORM_ERRORS) == 0)) {
        // Generate message array
-       $MSGs = array(
+       $messageArray = array(
                'failed' => getMessage('SPONSOR_REGISTRATION_FAILED'),
                'added'  => getMessage('SPONSOR_REGISTRATION_COMPLETED'),
        );
@@ -201,7 +206,7 @@ if ((IS_FORM_SENT()) && (count($FORM_ERRORS) == 0)) {
        // 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(REQUEST_POST('pay_type')), __FILE__, __LINE__);
+WHERE `id`='%s' LIMIT 1", array(REQUEST_POST('pay_type')), __FILE__, __LINE__);
        list($points, $pay, $curr) = SQL_FETCHROW($result);
 
        // Free memory
@@ -214,61 +219,61 @@ WHERE id='%s' LIMIT 1", array(REQUEST_POST('pay_type')), __FILE__, __LINE__);
        REQUEST_POST('last_curr'    , $curr);
 
        // Register sponsor but never ever update here!
-       $STATUS = SPONSOR_HANDLE_SPONSOR(REQUEST_POST_ARRAY(), true, $MSGs, true);
+       $STATUS = SPONSOR_HANDLE_SPONSOR(REQUEST_POST_ARRAY(), 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",
+               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(REQUEST_POST('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
-                       define('__ID'       , $id);
-                       define('__HASH'     , $hash);
-                       define('__EMAIL'    , REQUEST_POST('email'));
-                       define('__SURNAME'  , REQUEST_POST('surname'));
-                       define('__FAMILY'   , REQUEST_POST('family'));
-                       define('__GENDER'    , TRANSLATE_GENDER(REQUEST_POST('gender')));
-                       define('__TIMESTAMP', MAKE_DATETIME(time(), 0));
-                       define('__PASSWORD' , REQUEST_POST('pass1'));
-
-                       // Generate email and send it to the new sponsor
-                       $EMAIL_MSG = LOAD_EMAIL_TEMPLATE("sponsor_confirm", $hash);
-                       SEND_EMAIL(REQUEST_POST('email'), getMessage('SPONSOR_PLEASE_CONFIRM_SUBJ'), $EMAIL_MSG);
-
-                       // Send mail to admin
-                       SEND_ADMIN_NOTIFICATION(getMessage('ADMIN_NEW_SPONSOR'), "admin_sponsor_reg", $hash);
-
-                       // Output message: DONE
-                       $MSG = $MSGs['added'];
-               } else {
-                       // Sponsor account not found???
-                       $MSG = sprintf(getMessage('SPONSOR_EMAIL_404'), REQUEST_POST('email'));
-               }
-
-               // Free memory
-               SQL_FREERESULT($result);
-               break;
+                       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
+                               define('__ID'       , $id);
+                               define('__HASH'     , $hash);
+                               define('__EMAIL'    , REQUEST_POST('email'));
+                               define('__SURNAME'  , REQUEST_POST('surname'));
+                               define('__FAMILY'   , REQUEST_POST('family'));
+                               define('__GENDER'   , translateGender(REQUEST_POST('gender')));
+                               define('__TIMESTAMP', generateDateTime(time(), 0));
+                               define('__PASSWORD' , REQUEST_POST('pass1'));
+
+                               // Generate email and send it to the new sponsor
+                               $EMAIL_MSG = LOAD_EMAIL_TEMPLATE("sponsor_confirm", $hash);
+                               sendEmail(REQUEST_POST('email'), getMessage('SPONSOR_PLEASE_CONFIRM_SUBJ'), $EMAIL_MSG);
+
+                               // 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'), REQUEST_POST('email'));
+                       }
 
-       default:
-               DEBUG_LOG(__FILE__, __LINE__, sprintf("Unknown status %s detected.", $STATUS));
-               if (!IS_ADMIN()) {
-                       // Message for testing admin
-                       $MSG = sprintf(getMessage('ADMIN_SPONSOR_UNKNOWN_STATUS'), $STATUS);
-               } else {
-                       // Message for the guest
-                       $MSG = sprintf(getMessage('SPONSOR_UNKNOWN_STATUS'), $STATUS);
-               }
-               break;
+                       // Free memory
+                       SQL_FREERESULT($result);
+                       break;
+
+               default:
+                       DEBUG_LOG(__FILE__, __LINE__, sprintf("Unknown status %s detected.", $STATUS));
+                       if (!IS_ADMIN()) {
+                               // 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
-       LOAD_TEMPLATE("admin_settings_saved", false, $MSG);
+       LOAD_TEMPLATE('admin_settings_saved', false, $message);
 } else {
        // Check for payment types
        $result = SQL_QUERY("SELECT id, pay_name, pay_rate, pay_currency, pay_min_count
@@ -279,23 +284,24 @@ ORDER BY pay_name", __FILE__, __LINE__);
                // @TODO Swap this HTML code to templates
                $OUT = "<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" width=\"300\" class=\"left2 right2 top2\">\n";
                $SW = 2;
-               while (list($id, $name, $rate, $curr, $min) = SQL_FETCHROW($result)) {
-                       $OUT .= "<tr>
-  <td class=\"bottom2 switch_sw".$SW."\" height=\"50\" style=\"padding-left: 2px; padding-right: 2px\">
-    <input type=\"radio\" name=\"pay_type\" class=\"guest_normal\" value=\"".bigintval($id)."\" />&nbsp;".$name."<br />
-    <div align=\"right\">(".$min." ".$curr." = ".TRANSLATE_COMMA($rate * $min)." {!POINTS!})</div>
-  </td>
-</tr>\n";
+               while ($content = SQL_FETCHARRAY($result)) {
+                       // Prepare content for output
+                       $content['sw']  = $SW;
+                       $content['res'] = translateComma($content['pay_rate'] * $content['pay_min_count']);
+
+                       // Load row template and switch color
+                       $OUT .= LOAD_TEMPLATE("guest_sponsor_payment_row", false, $content);
                        $SW = 3 - $SW;
                }
                $OUT .= "</table>\n";
+
+               // @TODO Rewrite this constant
                define('__PAYMENT_LIST', $OUT);
-               SQL_FREERESULT($result);
 
                // Check for invalid entries
-               if (count($FORM_ERRORS) > 0)
-               {
+               if (count($FORM_ERRORS) > 0) {
                        // Some found... :-(
+                       // @TODO Rewrite these constants
                        define('__COMPANY'  , COMPILE_CODE(REQUEST_POST('company')));
                        define('__POSITION' , COMPILE_CODE(REQUEST_POST('position')));
                        define('__TAX_IDENT', COMPILE_CODE(REQUEST_POST('tax_ident')));
@@ -315,37 +321,37 @@ ORDER BY pay_name", __FILE__, __LINE__);
                        // Check for gender selection
                        switch (REQUEST_POST('gender'))
                        {
-                       case "M": // Male
-                               define('__GENDER_M'  , " selected=\"selected\"");
-                               define('__GENDER_F'  , "");
-                               define('__GENDER_C'  , "");
-                               break;
-
-                       case "F": // Female
-                               define('__GENDER_M'  , "");
-                               define('__GENDER_F'  , " selected=\"selected\"");
-                               define('__GENDER_C'  , "");
-                               break;
-
-                       case "C": // Company
-                               define('__GENDER_M'  , "");
-                               define('__GENDER_F'  , "");
-                               define('__GENDER_C'  , " selected=\"selected\"");
-                               break;
+                               case 'M': // Male
+                                       define('__GENDER_M'  , ' selected="selected"');
+                                       define('__GENDER_F'  , '');
+                                       define('__GENDER_C'  , '');
+                                       break;
+
+                               case 'F': // Female
+                                       define('__GENDER_M'  , '');
+                                       define('__GENDER_F'  , ' selected="selected"');
+                                       define('__GENDER_C'  , '');
+                                       break;
+
+                               case 'C': // Company
+                                       define('__GENDER_M'  , '');
+                                       define('__GENDER_F'  , '');
+                                       define('__GENDER_C'  , ' selected="selected"');
+                                       break;
                        }
 
                        // Check for receive_warnings
                        switch (REQUEST_POST('receive_warnings'))
                        {
-                       case "Y":
-                               define('__REC_Y'    , " selected=\"selected\"");
-                               define('__REC_N'    , "");
-                               break;
-
-                       case "N":
-                               define('__REC_Y'    , "");
-                               define('__REC_N'    , " selected=\"selected\"");
-                               break;
+                               case 'Y':
+                                       define('__REC_Y'    , ' selected="selected"');
+                                       define('__REC_N'    , '');
+                                       break;
+
+                               case 'N':
+                                       define('__REC_Y'    , '');
+                                       define('__REC_N'    , ' selected="selected"');
+                                       break;
                        }
 
                        // Errors found
@@ -362,35 +368,35 @@ ORDER BY pay_name", __FILE__, __LINE__);
                        define('__SPONSOR_REFID', REQUEST_POST('refid'));
                } else {
                        // None found, first call
-                       define('__COMPANY'  , "");
-                       define('__POSITION' , "");
-                       define('__TAX_IDENT', "");
-                       define('__GENDER_M'  , "");
-                       define('__GENDER_F'  , "");
-                       define('__GENDER_C'  , "");
-                       define('__SURNAME'  , "");
-                       define('__FAMILY'   , "");
-                       define('__STREET1'  , "");
-                       define('__STREET2'  , "");
-                       define('__COUNTRY'  , "");
-                       define('__ZIP'      , "");
-                       define('__CITY'     , "");
-                       define('__PHONE'    , "");
-                       define('__FAX'      , "");
-                       define('__CELL'     , "");
-                       define('__EMAIL'    , "");
-                       define('__URL'      , "");
-                       define('__REC_Y'    , "");
-                       define('__REC_N'    , "");
+                       define('__COMPANY'  , '');
+                       define('__POSITION' , '');
+                       define('__TAX_IDENT', '');
+                       define('__GENDER_M' , '');
+                       define('__GENDER_F' , '');
+                       define('__GENDER_C' , '');
+                       define('__SURNAME'  , '');
+                       define('__FAMILY'   , '');
+                       define('__STREET1'  , '');
+                       define('__STREET2'  , '');
+                       define('__COUNTRY'  , '');
+                       define('__ZIP'      , '');
+                       define('__CITY'     , '');
+                       define('__PHONE'    , '');
+                       define('__FAX'      , '');
+                       define('__CELL'     , '');
+                       define('__EMAIL'    , '');
+                       define('__URL'      , '');
+                       define('__REC_Y'    , '');
+                       define('__REC_N'    , '');
 
                        // No errors found so far
-                       define('__SPONSOR_FORM_ERRORS', "");
+                       define('__SPONSOR_FORM_ERRORS', '');
                }
 
                // Prepare referal things
                if (!REQUEST_ISSET_GET(('refid'))) {
                        // No referal link
-                       define('__SPONSOR_REFID', "0");
+                       define('__SPONSOR_REFID', '0');
                } else  {
                        // Referal ID transmitted, we don't care here if it is right or not
                        define('__SPONSOR_REFID', bigintval(REQUEST_GET('refid')));
@@ -400,7 +406,7 @@ ORDER BY pay_name", __FILE__, __LINE__);
                LOAD_TEMPLATE("guest_sponsor_reg");
        } else {
                // Nothing added so far
-               LOAD_TEMPLATE("admin_settings_saved", false, SPONSOR_PAYMENT_LIST_IS_EMPTY);
+               LOAD_TEMPLATE('admin_settings_saved', false, getMessage('SPONSOR_PAYMENT_LIST_IS_EMPTY'));
        }
 
        // Free memory