]> git.mxchange.org Git - mailer.git/blobdiff - inc/functions.php
Referal id will now always be stored, if valid can be found in GLOBALS array
[mailer.git] / inc / functions.php
index 7c6659502ff130f52560fa3d59769a59db561a59..2dddd0d30fa38a87429d51d50af2a2c66e1f976e 100644 (file)
@@ -1654,30 +1654,39 @@ function determineReferalId () {
        // Check if refid is set
        if (isReferalIdValid()) {
                // This is fine...
+               //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using refid from GLOBALS (' . getReferalId() . ')');
        } elseif (isPostRequestParameterSet('refid')) {
                // Get referal id from POST element refid
+               //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using refid from POST data (' . postRequestParameter('refid') . ')');
                setReferalId(secureString(postRequestParameter('refid')));
        } elseif (isGetRequestParameterSet('refid')) {
                // Get referal id from GET parameter refid
+               //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using refid from GET data (' . getRequestParameter('refid') . ')');
                setReferalId(secureString(getRequestParameter('refid')));
        } elseif (isGetRequestParameterSet('ref')) {
                // Set refid=ref (the referal link uses such variable)
+               //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using ref from GET data (' . getRequestParameter('refid') . ')');
                setReferalId(secureString(getRequestParameter('ref')));
        } elseif ((isGetRequestParameterSet('user')) && (basename($_SERVER['PHP_SELF']) == 'click.php')) {
                // The variable user comes from  click.php
+               //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using user from GET data (' . getRequestParameter('user') . ')');
                setReferalId(bigintval(getRequestParameter('user')));
        } elseif ((isSessionVariableSet('refid')) && (isValidUserId(getSession('refid')))) {
-               // Set session refid als global
+               // Set session refid as global
+               //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using refid from SESSION data (' . getSession('refid') . ')');
                setReferalId(bigintval(getSession('refid')));
        } elseif (isRandomReferalIdEnabled()) {
                // Select a random user which has confirmed enougth mails
+               //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Checking random referal id');
                setReferalId(determineRandomReferalId());
        } elseif ((isExtensionInstalledAndNewer('sql_patches', '0.1.2')) && (isValidUserId(getDefRefid()))) {
                // Set default refid as refid in URL
+               //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using default refid (' . getDefRefid() . ')');
                setReferalId(getDefRefid());
        } else {
                // No default id when sql_patches is not installed or none set
-               setReferalId(null);
+               //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using NULL as refid');
+               setReferalId(NULL);
        }
 
        // Set cookie when default refid > 0
@@ -1693,24 +1702,33 @@ function determineReferalId () {
                        // If we found it, use the userid as referal id
                        if ($found === true) {
                                // Set the userid as 'refid'
+                               //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using refid from user account by nickname (' . getUserData('userid') . ')');
                                setReferalId(getUserData('userid'));
                        } // END - if
                } elseif (isValidUserId(getReferalId())) {
                        // Direct userid entered
+                       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using direct userid (' . getReferalId() . ')');
                        $found = fetchUserData(getReferalId());
                }
 
                // Is the record valid?
                if ((($found === false) || (!isUserDataValid())) && (isExtensionInstalledAndNewer('sql_patches', '0.1.2'))) {
                        // No, then reset referal id
+                       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using default refid (' . getDefRefid() . ')');
                        setReferalId(getDefRefid());
                } // END - if
 
                // Set cookie
+               //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Saving refid to session (' . getReferalId() . ') #1');
                setSession('refid', getReferalId());
        } elseif (!isReferalIdValid()) {
                // Not valid!
-               setSession('refid', 0);
+               //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Not valid referal id (' . getReferalId() . '), setting NULL in session');
+               setSession('refid', NULL);
+       } elseif ((!isSessionVariableSet('refid')) && (isValidUserId(getReferalId()))) {
+               // Set it from GLOBALS array in session
+               //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Saving refid to session (' . getReferalId() . ') #2');
+               setSession('refid', getReferalId());
        }
 
        // Return determined refid