X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Ffunctions.php;h=8d4cc44e906a65030c6543570847e47885006dbe;hp=9db4633f9ea88296442a825ced830829ae31fe53;hb=9f6c30cc0e06098171d773d671292081ecee3d29;hpb=405bcfb89812a6e571fa579045755168eca3c1e4 diff --git a/inc/functions.php b/inc/functions.php index 9db4633f9e..8d4cc44e90 100644 --- a/inc/functions.php +++ b/inc/functions.php @@ -246,34 +246,6 @@ function loadTemplate ($template, $return=false, $content=array()) { // Is content an array if (is_array($content)) $content['date_time'] = $date_time; - // @DEPRECATED Try to rewrite the if() condition - if ($template == 'member_support_form') { - // Support request of a member - $result = SQL_QUERY_ESC("SELECT `userid`, `gender`, `surname`, `family`, `email` FROM `{?_MYSQL_PREFIX?}_user_data` WHERE `userid`=%s LIMIT 1", - array(getUserId()), __FUNCTION__, __LINE__); - - // Is content an array? - if (is_array($content)) { - // Merge data - $content = merge_array($content, SQL_FETCHARRAY($result)); - - // Translate gender - $content['gender'] = translateGender($content['gender']); - } else { - // @DEPRECATED - // @TODO Find all templates which are using these direct variables and rewrite them. - // @TODO After this step is done, this else-block is history - list($gender, $surname, $family, $email) = SQL_FETCHROW($result); - - // Translate gender - $gender = translateGender($gender); - logDebugMessage(__FUNCTION__, __LINE__, sprintf("DEPRECATION-WARNING: content is not array [%s], template=%s.", gettype($content), $template)); - } - - // Free result - SQL_FREERESULT($result); - } // END - if - // Base directory $basePath = sprintf("%stemplates/%s/html/", getConfig('PATH'), getLanguage()); $mode = ''; @@ -461,25 +433,22 @@ function loadEmailTemplate ($template, $content = array(), $UID = 0) { //* DEBUG: */ outputHtml(__FUNCTION__."(".__LINE__."):UID={$UID},template={$template},content[]=".gettype($content).'
'); if (($UID > 0) && (is_array($content))) { // If nickname extension is installed, fetch nickname as well - if (isExtensionActive('nickname')) { + if (isNicknameUsed($UID)) { //* DEBUG: */ outputHtml(__FUNCTION__."(".__LINE__."):NICKNAME!
"); - // Load nickname - $result = SQL_QUERY_ESC("SELECT `surname`, `family`, `gender`, `email`, `nickname` FROM `{?_MYSQL_PREFIX?}_user_data` WHERE `userid`=%s LIMIT 1", - array(bigintval($UID)), __FUNCTION__, __LINE__); + // Load by nickname + fetchUserData($UID, 'nickname'); } else { //* DEBUG: */ outputHtml(__FUNCTION__."(".__LINE__."):NO-NICK!
"); - /// Load normal data - $result = SQL_QUERY_ESC("SELECT `surname`, `family`, `gender`, `email` FROM `{?_MYSQL_PREFIX?}_user_data` WHERE `userid`=%s LIMIT 1", - array(bigintval($UID)), __FUNCTION__, __LINE__); + /// Load by userid + fetchUserData($UID); } - // Fetch and merge data + // Merge data if valid //* DEBUG: */ outputHtml(__FUNCTION__."(".__LINE__."):content()=".count($content)." - PRE
"); - $content = merge_array($content, SQL_FETCHARRAY($result)); + if (isUserDataValid()) { + $content = merge_array($content, getUserDataArray()); + } // END - if //* DEBUG: */ outputHtml(__FUNCTION__."(".__LINE__."):content()=".count($content)." - AFTER
"); - - // Free result - SQL_FREERESULT($result); } // END - if // Translate M to male or F to female if present @@ -582,22 +551,14 @@ function sendEmail ($toEmail, $subject, $message, $isHtml = 'N', $mailHeader = ' ADD_MESSAGE_TO_BOX($toEmail, $subject, $message, $isHtml); return; } else { - // Load email address - $result_email = SQL_QUERY_ESC("SELECT `email` FROM `{?_MYSQL_PREFIX?}_user_data` WHERE `userid`=%s LIMIT 1", - array(bigintval($toEmail)), __FUNCTION__, __LINE__); - //* DEBUG: */ outputHtml(__FUNCTION__."(".__LINE__."):numRows=".SQL_NUMROWS($result_email).'
'); - // Does the user exist? - if (SQL_NUMROWS($result_email)) { - // Load email address - list($toEmail) = SQL_FETCHROW($result_email); + if (fetchUserData($toEmail)) { + // Get the email + $toEmail = getUserData('email'); } else { // Set webmaster $toEmail = getConfig('WEBMASTER'); } - - // Free result - SQL_FREERESULT($result_email); } } elseif ($toEmail == '0') { // Is the webmaster! @@ -963,7 +924,7 @@ function makeTime ($hours, $minutes, $seconds, $stamp) { // Redirects to an URL and if neccessarry extends it with own base URL function redirectToUrl ($URL) { // Compile out codes - eval('$URL = ' . compileCode($URL) . ';'); + eval('$URL = "' . compileCode($URL) . '";'); // Check if http(s):// is there if ((substr($URL, 0, 7) != 'http://') && (substr($URL, 0, 8) != 'https://')) { @@ -973,7 +934,7 @@ function redirectToUrl ($URL) { // Three different debug ways... //* DEBUG: */ debug_report_bug(sprintf("%s[%s:] URL=%s", __FUNCTION__, __LINE__, $URL)); - //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, $URL); + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'URL=' . $URL); //* DEBUG: */ die($URL); // Default 'rel' value is external, nofollow is evil from Google and hurts the Internet @@ -2405,11 +2366,11 @@ function getThemeId ($name) { } // Generates an error code from given account status -function generateErrorCodeFromUserStatus ($status) { - // @TODO The status should never be empty - if (empty($status)) { - // Something really bad happend here - debug_report_bug(__FUNCTION__ . ': status is empty.'); +function generateErrorCodeFromUserStatus ($status='') { + // If no status is provided, use the default, cached + if ((empty($status)) && (isMember())) { + // Get user status + $status = getUserData('status'); } // END - if // Default error code if unknown account status @@ -3193,8 +3154,8 @@ function addNewBonusMail ($data, $mode = '', $output=true) { // Determines referal id and sets it function determineReferalId () { - // Skip this in non-html-mode - if (getOutputMode() != 0) return false; + // Skip this in non-html-mode and outside ref.php + if ((getOutputMode() != 0) && (basename($_SERVER['PHP_SELF']) != 'ref.php')) return false; // Check if refid is set if ((isset($GLOBALS['refid'])) && ($GLOBALS['refid'] > 0)) { @@ -3227,6 +3188,24 @@ function determineReferalId () { // Set cookie when default refid > 0 if (!isSessionVariableSet('refid') || (!empty($GLOBALS['refid'])) || ((getSession('refid') == 0) && (isConfigEntrySet('def_refid')) && (getConfig('def_refid') > 0))) { + // Default is not found + $found = false; + + // Do we have nickname or userid set? + if (isNicknameUsed($GLOBALS['refid'])) { + // Nickname in URL, so load the id + $found = fetchUserData($GLOBALS['refid'], 'nickname'); + } elseif ($GLOBALS['refid'] > 0) { + // Direct userid entered + $found = fetchUserData($GLOBALS['refid']); + } + + // Is the record valid? + if (($found === false) || (!isUserDataValid())) { + // No, then reset referal id + $GLOBALS['refid'] = getConfig('def_refid'); + } // END - if + // Set cookie setSession('refid', $GLOBALS['refid']); } // END - if @@ -3263,6 +3242,10 @@ function shutdown () { // Setter for userid function setUserId ($userid) { + // We should not set userid to zero + if ($userid == 0) debug_report_bug('Userid should not be set zero.'); + + // Set it secured $GLOBALS['userid'] = bigintval($userid); }