]> git.mxchange.org Git - mailer.git/blobdiff - inc/libs/user_functions.php
Possible fix #2
[mailer.git] / inc / libs / user_functions.php
index 6fc8006e05938e2d0e3498c5d5aefdfccf38a9b5..8e1435575bbc784b2ab413086058ad3e6fdd4a85 100644 (file)
@@ -138,11 +138,11 @@ function addPageNavigation ($PAGES, $offset, $show_form, $colspan,$return=false)
        //if ($show_form === true) {
        //      // Load form for changing number of lines
        //      define('__FORM_HEADER', loadTemplate('admin_list_user_sort_form', true));
-       //      define('__FORM_FOOTER', '<tr><td colspan="'.$colspan.'" class="seperator bottom2">&nbsp;</td></tr>');
+       //      define('__FORM_FOOTER', '<tr><td colspan="'.$colspan.'" class="seperator bottom">&nbsp;</td></tr>');
        //} else {
        //      // Empty row
        //      define('__FORM_HEADER', '<tr><td colspan="' . $colspan . '" class="seperator">&nbsp;</td></tr>');
-       //      define('__FORM_FOOTER', '<tr><td colspan="' . $colspan . '" class="seperator bottom2">&nbsp;</td></tr>');
+       //      define('__FORM_FOOTER', '<tr><td colspan="' . $colspan . '" class="seperator bottom">&nbsp;</td></tr>');
        //}
 
        $OUT = '';
@@ -294,12 +294,12 @@ function doUserLogin ($userid, $passwd, $successUrl = '', $errorUrl = 'modules.p
                fetchUserData($userid);
        }
 
+       // Load entry
+       $content = getUserDataArray();
+       if (!empty($content['userid'])) $userid = bigintval($content['userid']);
+
        // Is there an entry?
        if (((isUserDataValid()) && (getUserData('status') == 'CONFIRMED') && (!empty($content['userid']))) || ($content['userid'] == $userid)) {
-               // Load entry
-               $content = getUserDataArray();
-               if (!empty($content['userid'])) $userid = bigintval($content['userid']);
-
                // Check for old MD5 passwords
                if ((strlen($content['password']) == 32) && (md5($passwd) == $content['password'])) {
                        // Just set the hash to the password from DB... :)
@@ -325,7 +325,7 @@ function doUserLogin ($userid, $passwd, $successUrl = '', $errorUrl = 'modules.p
                        // Probe for last online timemark
                        $probe = time() -  $content['last_online'];
                        if (!empty($content['last_login'])) $probe = time() - $content['last_login'];
-                       if ((getExtensionVersion('bonus') >= '0.2.2') && ($probe >= getConfig('login_timeout'))) {
+                       if ((isExtensionInstalledAndNewer('bonus', '0.2.2')) && ($probe >= getConfig('login_timeout'))) {
                                // Add login bonus to user's account
                                $add = ', `login_bonus`=`login_bonus`+{?login_bonus?}';
                                $GLOBALS['bonus_payed'] = true;
@@ -415,7 +415,11 @@ function doNewUserPassword ($email, $userid) {
 
        // Probe userid/nickname
        // @TODO We should try to rewrite this to fetchUserData() somehow
-       if ((isExtensionActive('nickname')) && (isNicknameOrUserid($userid))) {
+       if (!empty($email)) {
+               // Email entered
+               $result = SQL_QUERY_ESC("SELECT `userid`, `status` FROM `{?_MYSQL_PREFIX?}_user_data` WHERE `email`='%s' LIMIT 1",
+                       array($email), __FUNCTION__, __LINE__);
+       } elseif ((isExtensionActive('nickname')) && (isNicknameOrUserid($userid))) {
                // Nickname entered
                $result = SQL_QUERY_ESC("SELECT `userid`, `status` FROM `{?_MYSQL_PREFIX?}_user_data` WHERE `nickname`='%s' OR `userid`='%s' OR `email`='%s' LIMIT 1",
                        array($userid, $userid, $email), __FUNCTION__, __LINE__);
@@ -423,10 +427,6 @@ function doNewUserPassword ($email, $userid) {
                // Direct userid entered
                $result = SQL_QUERY_ESC("SELECT `userid`, `status` FROM `{?_MYSQL_PREFIX?}_user_data` WHERE `userid`=%s LIMIT 1",
                        array(bigintval($userid)), __FUNCTION__, __LINE__);
-       } elseif (!empty($email)) {
-               // Email entered
-               $result = SQL_QUERY_ESC("SELECT `userid`, `status` FROM `{?_MYSQL_PREFIX?}_user_data` WHERE `email`='%s' LIMIT 1",
-                       array($email), __FUNCTION__, __LINE__);
        } else {
                // Userid not set!
                logDebugMessage(__FUNCTION__, __LINE__, 'Userid is not set! BUG!');