]> git.mxchange.org Git - mailer.git/blobdiff - inc/functions.php
Now CSS classes are being inserted by EL
[mailer.git] / inc / functions.php
index a1577f58a7e5b6caedd1817a0c10ae43e4f6cf49..59f6307c2d1acffe013c6fa968bc7d629caf32b0 100644 (file)
@@ -171,7 +171,7 @@ function compileFinalOutput () {
 
 // Main compilation loop
 function doFinalCompilation ($code, $insertComments = true) {
-       // Insert comments?
+       // Insert comments? (Only valid with HTML templates, of course)
        enableTemplateHtml($insertComments);
 
        // Init counter
@@ -186,7 +186,7 @@ function doFinalCompilation ($code, $insertComments = true) {
                // Compile it
                //* DEBUG: */ print '<pre>'.htmlentities($code).'</pre>';
                $eval = '$newContent = "' . str_replace('{DQUOTE}', '"', compileCode(escapeQuotes($code))) . '";';
-               //* DEBUG: */ die('<pre>'.htmlentities($eval).'</pre>');
+               //* DEBUG: */ if ($insertComments) die('<pre>'.linenumberCode($eval).'</pre>');
                eval($eval);
                //* DEBUG: */ die('<pre>'.htmlentities($newContent).'</pre>');
 
@@ -471,9 +471,6 @@ function loadEmailTemplate ($template, $content = array(), $userid = '0') {
                //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, "content()=".count($content)." - AFTER<br />");
        } // END - if
 
-       // Translate M to male or F to female if present
-       if (isset($content['gender'])) $content['gender'] = translateGender($content['gender']);
-
        // Overwrite email from data if present
        if (isset($content['email'])) $email = $content['email'];
 
@@ -874,24 +871,24 @@ function translateUserStatus ($status) {
 // "Translates" 'visible' and 'locked' to a CSS class
 function translateMenuVisibleLocked ($content, $prefix = '') {
        // Translate 'visible' and keep an eye on the prefix
-       switch ($content[$prefix . 'visible']) {
+       switch ($content['visible']) {
                // Should be visible
-               case 'Y': $content[$prefix . 'visible_css'] = $prefix . 'menu_visible'  ; break;
-               case 'N': $content[$prefix . 'visible_css'] = $prefix . 'menu_invisible'; break;
+               case 'Y': $content['visible_css'] = $prefix . 'menu_visible'  ; break;
+               case 'N': $content['visible_css'] = $prefix . 'menu_invisible'; break;
                default:
                        // Please report this
-                       debug_report_bug(__FUNCTION__, __LINE__, 'Unsupported visible value detected. content=<pre>'.print_r($content, true).'</pre>');
+                       debug_report_bug(__FUNCTION__, __LINE__, 'Unsupported visible value detected. content=<pre>' . print_r($content, true) . '</pre>');
                        break;
        } // END - switch
 
        // Translate 'locked' and keep an eye on the prefix
-       switch ($content[$prefix . 'locked']) {
+       switch ($content['locked']) {
                // Should be locked
-               case 'Y': $content[$prefix . 'locked_css'] = $prefix . 'menu_locked'  ; break;
-               case 'N': $content[$prefix . 'locked_css'] = $prefix . 'menu_unlocked'; break;
+               case 'Y': $content['locked_css'] = $prefix . 'menu_locked'  ; break;
+               case 'N': $content['locked_css'] = $prefix . 'menu_unlocked'; break;
                default:
                        // Please report this
-                       debug_report_bug(__FUNCTION__, __LINE__, 'Unsupported locked value detected. content=<pre>'.print_r($content, true).'</pre>');
+                       debug_report_bug(__FUNCTION__, __LINE__, 'Unsupported locked value detected. content=<pre>' . print_r($content, true) . '</pre>');
                        break;
        } // END - switch
 
@@ -899,6 +896,25 @@ function translateMenuVisibleLocked ($content, $prefix = '') {
        return $content;
 }
 
+// "Getter" for menu CSS classes, mainly used in templates
+function getMenuCssClasses ($data) {
+       // $data needs to be converted into an array
+       $content = explode('|', $data);
+
+       // Non-existent index 2 will happen in menu blocks
+       if (!isset($content[2])) $content[2] = '';
+
+       // Re-construct the array: 0=visible,1=locked,2=prefix
+       $content['visible'] = $content[0];
+       $content['locked']  = $content[1];
+
+       // Call our "translator" function
+       $content = translateMenuVisibleLocked($content, $content[2]);
+
+       // Return CSS classes
+       return ($content['visible_css'] . ' ' . $content['locked_css']);
+}
+
 // Generates an URL for the dereferer
 function generateDerefererUrl ($URL) {
        // Don't de-refer our own links!
@@ -987,6 +1003,9 @@ function redirectToUrl ($URL, $allowSpider = true) {
 
        // Simple probe for bots/spiders from search engines
        if ((isSpider()) && ($allowSpider === true)) {
+               // Set HTTP-Status
+               setHttpStatus('200 OK');
+
                // Set content-type here to fix a missing array element
                setContentType('text/html');
 
@@ -1106,7 +1125,7 @@ function compileRawCode ($code, $simple = false, $constants = true, $full = true
                        if ($fuzzyFound === true) continue;
 
                        // Take all string elements
-                       if ((is_string($matches[4][$key])) && (!isset($matchesFound[$match])) && (!isset($matchesFound[$key."_" . $matches[4][$key]]))) {
+                       if ((is_string($matches[4][$key])) && (!isset($matchesFound[$match])) && (!isset($matchesFound[$key.'_' . $matches[4][$key]]))) {
                                // Replace it in the code
                                //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, "key={$key},match={$match}<br />");
                                $newMatch = str_replace('[', "['", str_replace(']', "']", $match));
@@ -1187,7 +1206,7 @@ function addSelectionBox ($type, $default, $prefix = '', $id = '0', $class = 're
                $OUT .= '<select name="' . $prefix . '" class="' . $class . '" size="1">';
        } else {
                // Begin with regular selection box here
-               if (!empty($prefix)) $prefix .= "_";
+               if (!empty($prefix)) $prefix .= '_';
                $type2 = $type;
                if ($id > 0) $type2 .= '[' . $id . ']';
                $OUT .= '<select name="' . strtolower($prefix . $type2) . '" class="' . $class . '" size="1">';
@@ -2499,7 +2518,7 @@ function generateErrorCodeFromUserStatus ($status='') {
 // Back-ported from the new ship-simu engine. :-)
 function debug_get_printable_backtrace () {
        // Init variable
-       $backtrace = "<ol>\n";
+       $backtrace = '<ol>';
 
        // Get and prepare backtrace for output
        $backtraceArray = debug_backtrace();
@@ -2507,11 +2526,11 @@ function debug_get_printable_backtrace () {
                if (!isset($trace['file'])) $trace['file'] = __FUNCTION__;
                if (!isset($trace['line'])) $trace['line'] = __LINE__;
                if (!isset($trace['args'])) $trace['args'] = array();
-               $backtrace .= "<li class=\"debug_list\"><span class=\"backtrace_file\">".basename($trace['file'])."</span>:" . $trace['line'].", <span class=\"backtrace_function\">" . $trace['function'].'('.count($trace['args']).")</span></li>\n";
+               $backtrace .= '<li class="debug_list"><span class="backtrace_file">' . basename($trace['file']) . '</span>:' . $trace['line'].", <span class=\"backtrace_function\">" . $trace['function'] . '(' . count($trace['args']) . ')</span></li>';
        } // END - foreach
 
        // Close it
-       $backtrace .= "</ol>\n";
+       $backtrace .= '</ol>';
 
        // Return the backtrace
        return $backtrace;
@@ -2563,17 +2582,17 @@ function debug_report_bug ($F, $L, $message = '', $sendEmail = true) {
        } // END - if
 
        // Add output
-       $debug .= "Please report this bug at <a title=\"Direct link to the bug-tracker\" href=\"http://bugs.mxchange.org\" rel=\"external\" target=\"_blank\">http://bugs.mxchange.org</a> and include the logfile from <strong>" . str_replace(getConfig('PATH'), '', getConfig('CACHE_PATH')) . "debug.log</strong> in your report (you can now attach files):<pre>";
+       $debug .= 'Please report this bug at <a title="Direct link to the bug-tracker" href="http://bugs.mxchange.org" rel="external" target="_blank">http://bugs.mxchange.org</a> and include the logfile from <strong>' . str_replace(getConfig('PATH'), '', getConfig('CACHE_PATH')) . 'debug.log</strong> in your report (you can now attach files):<pre>';
        $debug .= debug_get_printable_backtrace();
-       $debug .= "</pre>\nRequest-URI: " . getRequestUri()."<br />\n";
-       $debug .= "Thank you for finding bugs.";
+       $debug .= '</pre>Request-URI: ' . getRequestUri() . '<br />';
+       $debug .= 'Thank you for finding bugs.';
 
        // Send an email? (e.g. not wanted for evaluation errors)
        if (($sendEmail === true) && (!isInstallationPhase())) {
                // Prepare content
                $content = array(
-                       'message'     => trim($message),
-                       'backtrace'   => trim(debug_get_mailable_backtrace())
+                       'message'   => trim($message),
+                       'backtrace' => trim(debug_get_mailable_backtrace())
                );
 
                // Send email to webmaster
@@ -2608,11 +2627,11 @@ function getMessageFromErrorCode ($code) {
                case getCode('COOKIES_DISABLED')   : $message = getMessage('LOGIN_COOKIES_DISABLED'); break;
                case getCode('BEG_SAME_AS_OWN')    : $message = getMessage('BEG_SAME_UID_AS_OWN'); break;
                case getCode('LOGIN_FAILED')       : $message = getMessage('LOGIN_FAILED_GENERAL'); break;
-               case getCode('MODULE_MEM_ONLY')    : $message = getMaskedMessage('MODULE_MEM_ONLY', getRequestParameter('mod')); break;
+               case getCode('MODULE_MEMBER_ONLY') : $message = getMaskedMessage('MODULE_MEMBER_ONLY', getRequestParameter('mod')); break;
                case getCode('OVERLENGTH')         : $message = getMessage('MEMBER_TEXT_OVERLENGTH'); break;
                case getCode('URL_FOUND')          : $message = getMessage('MEMBER_TEXT_CONTAINS_URL'); break;
                case getCode('SUBJ_URL')           : $message = getMessage('MEMBER_SUBJ_CONTAINS_URL'); break;
-               case getCode('BLIST_URL')          : $message = "{--MEMBER_URL_BLACK_LISTED--}<br />\n{--MEMBER_BLIST_TIME--}: ".generateDateTime(getRequestParameter('blist'), 0); break;
+               case getCode('BLIST_URL')          : $message = '{--MEMBER_URL_BLACK_LISTED--}<br />{--MEMBER_BLIST_TIME--}: ' . generateDateTime(getRequestParameter('blist'), 0); break;
                case getCode('NO_RECS_LEFT')       : $message = getMessage('MEMBER_SELECTED_MORE_RECS'); break;
                case getCode('INVALID_TAGS')       : $message = getMessage('MEMBER_HTML_INVALID_TAGS'); break;
                case getCode('MORE_POINTS')        : $message = getMessage('MEMBER_MORE_POINTS_NEEDED'); break;
@@ -3663,9 +3682,6 @@ function sendModeMails ($mod, $modes) {
                        // Load the data
                        $content = getUserDataArray();
 
-                       // Translate gender
-                       $content['gender'] = translateGender($content['gender']);
-
                        // Clear/init the content variable
                        $content['message'] = '';