Avoided some else blocks for nicer code style.
authorRoland Haeder <roland@mxchange.org>
Mon, 28 Mar 2016 13:11:01 +0000 (15:11 +0200)
committerRoland Haeder <roland@mxchange.org>
Mon, 28 Mar 2016 13:11:01 +0000 (15:11 +0200)
Signed-off-by: Roland H├Ąder <roland@mxchange.org>
inc/libs/user_functions.php

index 6944c96..c2baa16 100644 (file)
@@ -578,21 +578,28 @@ function doConfirmUserAccount ($hash) {
        // Search for an unconfirmed or confirmed account
        $result = sqlQueryEscaped("SELECT `userid`, `refid` FROM `{?_MYSQL_PREFIX?}_user_data` WHERE `user_hash`='%s' AND (`status`='UNCONFIRMED' OR `status`='CONFIRMED') LIMIT 1",
                array($hash), __FILE__, __LINE__);
-       if (sqlNumRows($result) == 1) {
-               // Ok, he want's to confirm now so we load some data
-               list($userid, $refid) = sqlFetchRow($result);
 
-               // Fetch user data
-               if (!fetchUserData($userid)) {
-                       // Not found, should not happen
-                       reportBug(__FILE__, __LINE__, 'User account ' . $userid . ' not found.');
-               } // END - if
+       // One result should be found
+       if (ifSqlHasZeroNums($result)) {
+               // Nothing found or tried to confirm twice?
+               displayMessage('{--GUEST_CONFIRMED_TWICE--}');
+               return;
+       } // END - if
 
-               // Load all data and add points
-               $content = getUserDataArray();
+       // Okay, the user want's to confirm now so we load some data
+       list($userid, $refid) = sqlFetchRow($result);
+
+       // Fetch user data
+       if (!fetchUserData($userid)) {
+               // Not found, should not happen
+               reportBug(__FILE__, __LINE__, 'User account ' . $userid . ' not found.');
+       } // END - if
+
+       // Load all data and add points
+       $content = getUserDataArray();
 
-               // Unlock his account (but only when it is on UNCONFIRMED!)
-               sqlQueryEscaped("UPDATE
+       // Unlock his account (but only when it is on UNCONFIRMED!)
+       sqlQueryEscaped("UPDATE
        `{?_MYSQL_PREFIX?}_user_data`
 SET
        `status`='CONFIRMED',
@@ -601,68 +608,61 @@ WHERE
        `user_hash`='%s' AND
        `status`='UNCONFIRMED'
 LIMIT 1",
-                       array($hash), __FILE__, __LINE__);
-
-               // Was it updated?
-               if (!ifSqlHasZeroAffectedRows()) {
-                       // Send email if updated
-                       $message = loadEmailTemplate('guest_user_confirmed', $content, bigintval($userid));
-
-                       // And send him right away the confirmation mail
-                       sendEmail($userid, '{--GUEST_THANX_CONFIRM--}', $message);
-
-                       // Maybe he got "referraled"?
-                       if ((isValidId($refid)) && ($refid != $userid)) {
-                               // Select the referral userid
-                               if (fetchUserData($refid)) {
-                                       // Update ref counter...
-                                       updateReferralCounter($refid);
-
-                                       // If version matches add ref bonus to refid's account
-                                       if ((isExtensionInstalledAndNewer('bonus', '0.4.4')) && (isBonusRallyeActive())) {
-                                               // Add points (directly only!)
-                                               sqlQueryEscaped("UPDATE `{?_MYSQL_PREFIX?}_user_data` SET `bonus_ref`=`bonus_ref`+{?bonus_ref?} WHERE `userid`=%s LIMIT 1",
-                                                       array(bigintval($refid)), __FILE__, __LINE__);
-
-                                               // Subtract points from system
-                                               handleBonusPoints(getBonusRef(), $refid);
-                                       } // END - if
+               array($hash), __FILE__, __LINE__);
 
-                                       // Add one-time referral bonus over referral system or directly
-                                       initReferralSystem();
-                                       addPointsThroughReferralSystem('referral_bonus', $refid, getPointsRef(), bigintval($userid));
-                               } // END - if
-                       } // END - if
+       // Was it updated?
+       if (ifSqlHasZeroAffectedRows()) {
+               // Nobody was found unter this hash key... or our new member want's to confirm twice?
+               displayMessage('{--GUEST_CONFIRMED_TWICE--}');
+               return;
+       } // END - if
 
-                       if (isExtensionActive('rallye')) {
-                               // Add user to rallye (or not?)
-                               addUserToReferralRallye(bigintval($userid));
+       // Load email template
+       $message = loadEmailTemplate('guest_user_confirmed', $content, bigintval($userid));
+
+       // And send him right away the confirmation mail
+       sendEmail($userid, '{--GUEST_THANX_CONFIRM--}', $message);
+
+       // Maybe he got "referraled"?
+       if ((isValidId($refid)) && ($refid != $userid)) {
+               // Select the referral userid
+               if (fetchUserData($refid)) {
+                       // Update ref counter...
+                       updateReferralCounter($refid);
+
+                       // If version matches add ref bonus to refid's account
+                       if ((isExtensionInstalledAndNewer('bonus', '0.4.4')) && (isBonusRallyeActive())) {
+                               // Add points (directly only!)
+                               sqlQueryEscaped("UPDATE `{?_MYSQL_PREFIX?}_user_data` SET `bonus_ref`=`bonus_ref`+{?bonus_ref?} WHERE `userid`=%s LIMIT 1",
+                                       array(bigintval($refid)), __FILE__, __LINE__);
+
+                               // Subtract points from system
+                               handleBonusPoints(getBonusRef(), $refid);
                        } // END - if
 
-                       // Account confirmed!
-                       if (isExtensionActive('lead')) {
-                               // Set special lead cookie
-                               setSession('lead_userid', bigintval($userid));
+                       // Add one-time referral bonus over referral system or directly
+                       initReferralSystem();
+                       addPointsThroughReferralSystem('referral_bonus', $refid, getPointsRef(), bigintval($userid));
+               } // END - if
+       } // END - if
 
-                               // Lead-Code mode enabled
-                               redirectToUrl('lead-confirm.php');
-                       } else {
-                               $content['message'] = '{--GUEST_CONFIRMED_DONE--}';
-                               $content['userid']  = bigintval($userid);
-                       }
-               } elseif (isExtensionActive('lead')) {
-                       // Set special lead cookie
-                       setSession('lead_userid', bigintval($userid));
+       // @TODO Rewrite this to 2 filters as a possible redirect must always come last
+       if (isExtensionActive('rallye')) {
+               // Add user to rallye (or not?)
+               addUserToReferralRallye(bigintval($userid));
+       } // END - if
 
-                       // Lead-Code mode enabled
-                       redirectToUrl('lead-confirm.php');
-               } else {
-                       // Nobody was found unter this hash key... or our new member want's to confirm twice?
-                       $content['message'] = '{--GUEST_CONFIRMED_TWICE--}';
-               }
+       // Account confirmed!
+       if (isExtensionActive('lead')) {
+               // Set special lead cookie
+               setSession('lead_userid', bigintval($userid));
+
+               // Lead-Code mode enabled
+               redirectToUrl('lead-confirm.php');
        } else {
-               // Nobody was found unter this hash key... or our new member want's to confirm twice?
-               $content['message'] = '{--GUEST_CONFIRMED_TWICE--}';
+               // Regular confirmation
+               $content['message'] = '{--GUEST_CONFIRMED_DONE--}';
+               $content['userid']  = bigintval($userid);
        }
 
        // Load template