]> git.mxchange.org Git - mailer.git/blobdiff - inc/functions.php
Support form fixed
[mailer.git] / inc / functions.php
index 6472c604482a1bdffe92f20d6e89ded56d5ee194..3f5f434e2486fc8551b0b79fdde7d04d5945e099 100644 (file)
@@ -132,7 +132,8 @@ function OUTPUT_HTML($HTML, $NEW_LINE = true) {
 
                default:
                        // Huh, something goes wrong or maybe you have edited config.php ???
-                       die ("<STRONG>".FATAL_ERROR.":</STRONG> ".LANG_NO_RENDER_DIRECT);
+                       DEBUG_LOG(__FUNCTION__, __LINE__, sprintf("Invalid renderer %s detected.", OUTPUT_MODE));
+                       MXCHANGE_DIE("<STRONG>".FATAL_ERROR.":</STRONG> ".LANG_NO_RENDER_DIRECT);
                        break;
                }
        } elseif ((_OB_CACHING == "on") && ($footer == 1)) {
@@ -142,6 +143,19 @@ function OUTPUT_HTML($HTML, $NEW_LINE = true) {
                // Clear output buffer for later output
                ob_end_clean();
 
+               // Send HTTP header
+               header("HTTP/1.1 200");
+
+               // Used later
+               $now = gmdate('D, d M Y H:i:s') . ' GMT';
+
+               // General headers for no caching
+               header("Expired: " . $now); // RFC2616 - Section 14.21
+               header("Last-Modified: " . $now);
+               header("Cache-Control: no-store, no-cache, must-revalidate, pre-check=0, post-check=0, max-age=0"); // HTTP/1.1
+               header("Pragma: no-cache"); // HTTP/1.0
+               header("Connection: Close");
+
                // Extension "rewrite" installed?
                if ((EXT_IS_ACTIVE("rewrite")) && (function_exists('REWRITE_LINKS')) && ($CSS != "1") && ($CSS != "-1")) {
                        $OUTPUT = REWRITE_LINKS($OUTPUT);
@@ -226,11 +240,11 @@ function LOAD_TEMPLATE($template, $return=false, $content=array()) {
        $ret = "";
        if (empty($GLOBALS['refid'])) $GLOBALS['refid'] = 0;
 
-       // @DEPRECATED Try to remove this if() block
+       // @DEPRECATED Try to rewrite the if() condition
        if ($template == "member_support_form") {
                // Support request of a member
-               $result = SQL_QUERY_ESC("SELECT gender, surname, family, email FROM "._MYSQL_PREFIX."_user_data WHERE userid=%s LIMIT 1",
-                array($GLOBALS['userid']), __FILE__, __LINE__);
+               $result = SQL_QUERY_ESC("SELECT userid, gender, surname, family, email FROM "._MYSQL_PREFIX."_user_data WHERE userid=%s LIMIT 1",
+                       array($GLOBALS['userid']), __FILE__, __LINE__);
 
                // Is content an array?
                if (is_array($content)) {
@@ -245,6 +259,7 @@ function LOAD_TEMPLATE($template, $return=false, $content=array()) {
 
                        // Translate gender
                        $gender = TRANSLATE_GENDER($gender);
+                       DEBUG_LOG(__FUNCTION__, __LINE__, sprintf("DEPRECATION-WARNING: content is not array (%s).", gettype($content)));
                }
 
                // Free result
@@ -524,13 +539,13 @@ function GEN_PASS($LEN = 0) {
        $PASS = "";
        for ($i = 0; $i < $LEN; $i++) {
                $PASS .= $ABC[mt_rand(0, sizeof($ABC) -1)];
-       }
+       } // END - for
 
        // When the size is below 40 we can also add additional security by scrambling it
        if (strlen($PASS) <= 40) {
                // Also scramble the password
                $PASS = scrambleString($PASS);
-       }
+       } // END - if
 
        // Return the password
        return $PASS;
@@ -554,6 +569,9 @@ function MAKE_DATETIME ($time, $mode="0")
                        case "1": $ret = strtolower(date("d.m.Y - H:i", $time)); break;
                        case "2": $ret = date("d.m.Y|H:i", $time); break;
                        case "3": $ret = date("d.m.Y", $time); break;
+                       default:
+                               DEBUG_LOG(__FUNCTION__, __LINE__, sprintf("Invalid date mode %s detected.", $mode));
+                               break;
                }
                break;
 
@@ -563,6 +581,9 @@ function MAKE_DATETIME ($time, $mode="0")
                        case "1": $ret = date("Y-m-d - g:i A", $time); break;
                        case "2": $ret = date("y-m-d|H:i", $time); break;
                        case "3": $ret = date("y-m-d", $time); break;
+                       default:
+                               DEBUG_LOG(__FUNCTION__, __LINE__, sprintf("Invalid date mode %s detected.", $mode));
+                               break;
                }
        }
        return $ret;
@@ -683,6 +704,7 @@ function TRANSLATE_STATUS($status) {
                break;
 
        default:
+               DEBUG_LOG(__FUNCTION__, __LINE__, sprintf("Unknown status %s detected.", $status));
                $ret = UNKNOWN_STATUS_1.$status.UNKNOWN_STATUS_2;
                break;
        }
@@ -1734,6 +1756,7 @@ function POST_URL ($script, $postData) {
        // Is postData an array?
        if (!is_array($postData)) {
                // Abort here
+               DEBUG_LOG(__FUNCTION__, __LINE__, sprintf("postData is not an array. Type: %s", gettype($postData)));
                return array("", "", "");
        } // END - if
 
@@ -1981,8 +2004,8 @@ function generateHash ($plainText, $salt = "") {
 
        // Is the required extension "sql_patches" there and a salt is not given?
        if (((EXT_VERSION_IS_OLDER("sql_patches", "0.3.6")) || (!EXT_IS_ACTIVE("sql_patches"))) && (empty($salt))) {
-               // Extension sql_patches is missing/outdated so we return the plain text
-               return $plainText;
+               // Extension sql_patches is missing/outdated so we hash the plain text with MD5
+               return md5($plainText);
        } // END - if
 
        // Do we miss an arry element here?
@@ -2002,7 +2025,7 @@ function generateHash ($plainText, $salt = "") {
                $keys   = SITE_KEY.":".DATE_KEY.":".$_CONFIG['secret_key'].":".$_CONFIG['file_hash'].":".date("d-m-Y (l-F-T)", bigintval($_CONFIG['patch_ctime'])).":".$_CONFIG['master_salt'];
 
                // Additional data
-               $data = $plainText.":".uniqid(rand(), true).":".time();
+               $data = $plainText.":".uniqid(mt_rand(), true).":".time();
 
                // Calculate number for generating the code
                $a = time() + _ADD - 1;
@@ -2362,7 +2385,7 @@ function merge_array ($array1, $array2) {
        die("</pre>");
 }
 // Debug message logger
-function DEBUG_LOG ($file, $line, $message, $force=false) {
+function DEBUG_LOG ($file, $line, $message, $force=true) {
        // Is debug mode enabled?
        if ((isBooleanConstantAndTrue('DEBUG_MODE')) || ($force)) {
                // Log this message away
@@ -2769,6 +2792,18 @@ function DETERMINE_REFID () {
        } // END - if
 }
 
+// Destroys the admin session
+function DESTROY_ADMIN_SESSION () {
+       // Kill maybe existing session variables including array elements
+       set_session('admin_login'       , "");
+       set_session('admin_md5'         , "");
+       set_session('admin_last'        , "");
+       set_session('admin_to'          , "");
+
+       // Destroy session and return status
+       return @session_destroy();
+}
+
 //////////////////////////////////////////////////
 //                                              //
 // AUTOMATICALLY RE-GENERATED MISSING FUNCTIONS //