X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Ffunctions.php;h=d5a4f20347509cd0f2b2833ad90ad51290228827;hp=cfbd66538429ce16230912500ad6b680bf9f6607;hb=6586600d8020147192e5f28ca2a3a0153f774d3c;hpb=37b921016ad1685c0938cff9d7069fb8e8b3f0cf diff --git a/inc/functions.php b/inc/functions.php index cfbd665384..d5a4f20347 100644 --- a/inc/functions.php +++ b/inc/functions.php @@ -132,7 +132,7 @@ function OUTPUT_HTML($HTML, $NEW_LINE = true) { default: // Huh, something goes wrong or maybe you have edited config.php ??? - DEBUG_LOG(__FILE__, __LINE__, sprintf("Invalid renderer %s detected.", OUTPUT_MODE)); + DEBUG_LOG(__FUNCTION__, __LINE__, sprintf("Invalid renderer %s detected.", OUTPUT_MODE)); MXCHANGE_DIE("".FATAL_ERROR.": ".LANG_NO_RENDER_DIRECT); break; } @@ -240,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)) { @@ -259,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 @@ -569,7 +570,7 @@ function MAKE_DATETIME ($time, $mode="0") case "2": $ret = date("d.m.Y|H:i", $time); break; case "3": $ret = date("d.m.Y", $time); break; default: - DEBUG_LOG(__FILE__, __LINE__, sprintf("Invalid date mode %s detected.", $mode)); + DEBUG_LOG(__FUNCTION__, __LINE__, sprintf("Invalid date mode %s detected.", $mode)); break; } break; @@ -581,7 +582,7 @@ function MAKE_DATETIME ($time, $mode="0") case "2": $ret = date("y-m-d|H:i", $time); break; case "3": $ret = date("y-m-d", $time); break; default: - DEBUG_LOG(__FILE__, __LINE__, sprintf("Invalid date mode %s detected.", $mode)); + DEBUG_LOG(__FUNCTION__, __LINE__, sprintf("Invalid date mode %s detected.", $mode)); break; } } @@ -602,23 +603,17 @@ function TRANSLATE_COMMA ($dotted, $cut=true, $max=0) { if ($max > 0) $maxComma = $max; // Cut zeros off? - if ($cut) { + if (($cut) && ($max == 0)) { // Test for commata if in cut-mode $com = explode(".", $dotted); - if (count($com) > 1) { - // Commata found, so only zeros? - if ($com[1] == str_repeat("0", strlen($com[1]))) { - // Only zeros, so display only one - $maxComma = 1; - } // END - if - } else { + if (count($com) < 2) { // Don't display commatas even if there are none... ;-) $maxComma = 0; } } // END - if // Debug log - //DEBUG_LOG(__FUNCTION__, __LINE__, "dotted={$dotted},maxComma={$maxComma}"); + //* DEBUG: */ DEBUG_LOG(__FUNCTION__, __LINE__, "dotted={$dotted},maxComma={$maxComma}"); // Translate it now switch (GET_LANGUAGE()) { @@ -703,7 +698,7 @@ function TRANSLATE_STATUS($status) { break; default: - DEBUG_LOG(__FILE__, __LINE__, sprintf("Unknown status %s detected.", $status)); + DEBUG_LOG(__FUNCTION__, __LINE__, sprintf("Unknown status %s detected.", $status)); $ret = UNKNOWN_STATUS_1.$status.UNKNOWN_STATUS_2; break; } @@ -711,19 +706,22 @@ function TRANSLATE_STATUS($status) { } // function GET_LANGUAGE() { - if (!empty($_GET['mx_lang'])) { - // Accept only first 2 chars - $lang = substr($_GET['mx_lang'], 0, 2); - } else { - // Do nothing - $lang = ""; - } + global $cacheArray; // Set default return value to default language from config $ret = DEFAULT_LANG; - // Check GET variable and cookie - if (!empty($lang)) { + // Init variable + $lang = ""; + + // Is the variable set + if (!empty($_GET['mx_lang'])) { + // Accept only first 2 chars + $lang = substr($_GET['mx_lang'], 0, 2); + } elseif (isset($cacheArray['language'])) { + // Use cached + $ret = $cacheArray['language']; + } elseif (!empty($lang)) { // Check if main language file does exist if (FILE_READABLE(PATH."inc/language/".$lang.".php")) { // Okay found, so let's update cookies @@ -736,6 +734,11 @@ function GET_LANGUAGE() { // Fixes a warning before the session has the mx_lang constant if (empty($ret)) $ret = DEFAULT_LANG; } + + // Cache entry + $cacheArray['language'] = $ret; + + // Return value return $ret; } // @@ -920,15 +923,15 @@ function MAKE_TIME($H, $M, $S, $stamp) { function LOAD_URL($URL, $addUrlData=true) { global $CSS, $_CONFIG, $footer; + // Compile out URI codes + $URL = COMPILE_CODE($URL); + // Check if http(s):// is there if ((substr($URL, 0, 7) != "http://") && (substr($URL, 0, 8) != "https://")) { // Make all URLs full-qualified $URL = URL."/".$URL; } - // Compile out URI codes - $URL = COMPILE_CODE($URL); - // Get output buffer $OUTPUT = ob_get_contents(); @@ -1099,76 +1102,86 @@ function array_pk_sort(&$array, $a_sort, $primary_key = 0, $order = -1, $nums = $array = $dummy; } // -function ADD_SELECTION($type, $DEFAULT, $prefix="", $id="0") -{ - global $MONTH_DESCR; $OUT = ""; - if ($type == "yn") - { +function ADD_SELECTION($type, $DEFAULT, $prefix="", $id="0") { + global $MONTH_DESCR, $_CONFIG; + $OUT = ""; + + if ($type == "yn") { // This is a yes/no selection only! if ($id > 0) $prefix .= "[".$id."]"; $OUT .= " \n"; - } - else - { + } else { // Begin with regular selection box here if (!empty($prefix)) $prefix .= "_"; $type2 = $type; if ($id > 0) $type2 .= "[".$id."]"; $OUT .= " \n"; } - switch ($type) - { + + switch ($type) { case "day": // Day - for ($idx = 1; $idx < 32; $idx++) - { + for ($idx = 1; $idx < 32; $idx++) { $OUT .= "\n"; - } + } // END - for break; case "month": // Month - foreach ($MONTH_DESCR as $month => $descr) - { + foreach ($MONTH_DESCR as $month => $descr) { $OUT .= "\n"; - } + } // END - for break; case "year": // Year // Get current year $YEAR = date('Y', time()); + // Use configured min age or fixed? + if (GET_EXT_VERSION("other") >= "0.2.1") { + // Configured + $startYear = $YEAR - $_CONFIG['min_age']; + } else { + // Fixed 16 years + $startYear = $YEAR - 16; + } + + // Calculate earliest year (100 years old people can still enter Internet???) + $minYear = $YEAR - 100; + // Check if the default value is larger than minimum and bigger than actual year - if (($DEFAULT > 1930) && ($DEFAULT >= $YEAR)) - { - for ($idx = $YEAR; $idx < ($YEAR + 11); $idx++) - { + if (($DEFAULT > $minYear) && ($DEFAULT >= $YEAR)) { + for ($idx = $YEAR; $idx < ($YEAR + 11); $idx++) { $OUT .= "\n"; - } - } - elseif ($DEFAULT == -1) - { + } // END - for + } elseif ($DEFAULT == -1) { // Current year minus 1 - for ($idx = 2003; $idx <= ($YEAR + 1); $idx++) + for ($idx = $startYear; $idx <= ($YEAR + 1); $idx++) { $OUT .= "".$idx."\n"; } - } - else - { - // Get current year and subtract 16 (for erotic content) - $OUT .= "<1930\n"; - $YEAR = date('Y', time()) - 16; - for ($idx = 1930; $idx <= $YEAR; $idx++) - { + } else { + // Get current year and subtract the configured minimum age + $OUT .= "<".$minYear."\n"; + // Calculate earliest year depending on extension version + if (GET_EXT_VERSION("other") >= "0.2.1") { + // Use configured minimum age + $YEAR = date('Y', time()) - $_CONFIG['min_age']; + } else { + // Use fixed 16 years age + $YEAR = date('Y', time()) - 16; + } + + // Construct year selection list + for ($idx = $minYear; $idx <= $YEAR; $idx++) { $OUT .= "\n"; - } + } // END - for } break; @@ -1179,7 +1192,7 @@ function ADD_SELECTION($type, $DEFAULT, $prefix="", $id="0") $OUT .= "\n"; - } + } // END - for break; case "hour": @@ -1188,7 +1201,7 @@ function ADD_SELECTION($type, $DEFAULT, $prefix="", $id="0") $OUT .= "\n"; - } + } // END - for break; case "yn": @@ -1283,6 +1296,9 @@ function bigintval($num, $castValue = true) { // Has the whole value changed? if ("".$ret."" != "".$num."") { // Log the values + print(""); + debug_print_backtrace(); + die(""); DEBUG_LOG(__FUNCTION__, __LINE__, " num={$num},ret={$ret}"); } // END - if @@ -1755,7 +1771,7 @@ function POST_URL ($script, $postData) { // Is postData an array? if (!is_array($postData)) { // Abort here - DEBUG_LOG(__FILE__, __LINE__, sprintf("postData is not an array. Type: %s", gettype($postData))); + DEBUG_LOG(__FUNCTION__, __LINE__, sprintf("postData is not an array. Type: %s", gettype($postData))); return array("", "", ""); } // END - if @@ -2237,7 +2253,7 @@ function mxchange_die ($msg) { // Display parsing time and number of SQL queries in footer function DISPLAY_PARSING_TIME_FOOTER() { - global $startTime, $_CONFIG; + global $_CONFIG; $endTime = microtime(true); // Is the timer started? @@ -2300,23 +2316,23 @@ function set_session ($var, $value) { // Check wether a boolean constant is set // Taken from user comments in PHP documentation for function constant() function isBooleanConstantAndTrue($constName) { // : Boolean - global $constCache; + global $cacheArray; // Failed by default $res = false; // In cache? - if (isset($constCache[$constName])) { + if (isset($cacheArray['const'][$constName])) { // Use cache //* DEBUG: */ print __FUNCTION__."(".__LINE__."): ".$constName."-CACHE!\n"; - $res = $constCache[$constName]; + $res = $cacheArray['const'][$constName]; } else { // Check constant //* DEBUG: */ print __FUNCTION__."(".__LINE__."): ".$constName."-RESOLVE!\n"; if (defined($constName)) $res = (constant($constName) === true); // Set cache - $constCache[$constName] = $res; + $cacheArray['const'][$constName] = $res; } //* DEBUG: */ var_dump($res); @@ -2325,12 +2341,12 @@ function isBooleanConstantAndTrue($constName) { // : Boolean } // Check wether a session variable is set -function isSessionVariableSet($var) { +function isSessionVariableSet ($var) { //* DEBUG: */ print __FUNCTION__."(".__LINE__."):var={$var}\n"; return (isset($_SESSION[$var])); } // Returns wether the value of the session variable or NULL if not set -function get_session($var) { +function get_session ($var) { global $cacheArray; // Default is not found! ;-) @@ -2339,9 +2355,11 @@ function get_session($var) { // Is the variable there or cached values? if (isset($cacheArray['session'][$var])) { // Get cached value (skips a lot SQL_ESCAPE() calles! + //* DEBUG: */ print __FUNCTION__."(".__LINE__."): ".$var."-CACHE!\n"; $value = $cacheArray['session'][$var]; } elseif (isSessionVariableSet($var)) { // Then get it secured! + //* DEBUG: */ print __FUNCTION__."(".__LINE__."): ".$var."-RESOLVE!\n"; $value = SQL_ESCAPE($_SESSION[$var]); // Cache the value @@ -2384,7 +2402,7 @@ function merge_array ($array1, $array2) { die(""); } // 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 @@ -2518,31 +2536,31 @@ function FILE_READABLE($fqfn) { // Converts timestamp selections into a timestamp function CONVERT_SELECTIONS_TO_TIMESTAMP(&$POST, &$DATA, &$id, &$skip) { // Init test variable - $TEST2 = ""; + $test2 = ""; // Get last three chars - $TEST = substr($id, -3); + $test = substr($id, -3); // Improved way of checking! :-) - if (in_array($TEST, array("_ye", "_mo", "_we", "_da", "_ho", "_mi", "_se"))) { + if (in_array($test, array("_ye", "_mo", "_we", "_da", "_ho", "_mi", "_se"))) { // Found a multi-selection for timings? - $TEST = substr($id, 0, -3); - if ((isset($POST[$TEST."_ye"])) && (isset($POST[$TEST."_mo"])) && (isset($POST[$TEST."_we"])) && (isset($POST[$TEST."_da"])) && (isset($POST[$TEST."_ho"])) && (isset($POST[$TEST."_mi"])) && (isset($POST[$TEST."_se"])) && ($TEST != $TEST2)) { + $test = substr($id, 0, -3); + if ((isset($POST[$test."_ye"])) && (isset($POST[$test."_mo"])) && (isset($POST[$test."_we"])) && (isset($POST[$test."_da"])) && (isset($POST[$test."_ho"])) && (isset($POST[$test."_mi"])) && (isset($POST[$test."_se"])) && ($test != $test2)) { // Generate timestamp - $POST[$TEST] = CREATE_TIMESTAMP_FROM_SELECTIONS($TEST, $POST); - $DATA[] = "$TEST='".$POST[$TEST]."'"; + $POST[$test] = CREATE_TIMESTAMP_FROM_SELECTIONS($test, $POST); + $DATA[] = sprintf("%s='%s'", $test, $POST[$test]); // Remove data from array foreach (array("ye", "mo", "we", "da", "ho", "mi", "se") as $rem) { - unset($POST[$TEST."_".$rem]); + unset($POST[$test."_".$rem]); } // END - foreach // Skip adding - unset($id); $skip = true; $TEST2 = $TEST; + unset($id); $skip = true; $test2 = $test; } // END - if } else { // Process this entry - $skip = false; $TEST2 = ""; + $skip = false; $test2 = ""; } } // Reverts the german decimal comma into Computer decimal dot @@ -2604,9 +2622,9 @@ function REBUILD_CACHE ($cache, $inc="") { // Shall I remove the cache file? if ((EXT_IS_ACTIVE("cache")) && (is_object($cacheInstance))) { // Rebuild cache - if ($cacheInstance->cache_file($cache, true)) { + if ($cacheInstance->loadCacheFile($cache)) { // Destroy it - $cacheInstance->cache_destroy(); + $cacheInstance->destroyCacheFile(); } // END - if // Include file given? @@ -2803,6 +2821,12 @@ function DESTROY_ADMIN_SESSION () { return @session_destroy(); } +// Checks if a given apache module is loaded +function IF_APACHE_MODULE_LOADED ($apacheModule) { + // Check it and return result + return (((function_exists('apache_get_modules')) && (in_array($apacheModule, apache_get_modules()))) || (!function_exists('apache_get_modules'))); +} + ////////////////////////////////////////////////// // // // AUTOMATICALLY RE-GENERATED MISSING FUNCTIONS //
"); + debug_print_backtrace(); + die("