X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fwrapper-functions.php;h=5bc89a05f366da844c18161cb7be874616a5460b;hp=9a885ede7f13c7eaad08ed1403536c15132497ec;hb=82d72ce0fd29e2714e62bd11997272eaf6110fd6;hpb=e81bae12c3ed998e5dce877f5baff1bd3c7bf597 diff --git a/inc/wrapper-functions.php b/inc/wrapper-functions.php index 9a885ede7f..5bc89a05f3 100644 --- a/inc/wrapper-functions.php +++ b/inc/wrapper-functions.php @@ -92,7 +92,7 @@ function writeToFile ($FQFN, $content, $aquireLock = false) { } } else { // Write it with fopen - $fp = fopen($FQFN, 'w') or app_die(__FUNCTION__, __LINE__, "Cannot write file ".basename($FQFN).'!'); + $fp = fopen($FQFN, 'w') or debug_report_bug(__FUNCTION__, __LINE__, 'Cannot write to file ' . basename($FQFN) . '!'); // Aquire lock if ($aquireLock === true) flock($fp, LOCK_EX); @@ -154,10 +154,10 @@ function merge_array ($array1, $array2) { debug_report_bug(__FUNCTION__ . ': No arrays provided!'); } elseif (!is_array($array1)) { // Left one is not an array - debug_report_bug(sprintf("[%s:%s] array1 is not an array. array != %s", __FUNCTION__, __LINE__, gettype($array1))); + debug_report_bug(__FILE__, __LINE__, sprintf("array1 is not an array. array != %s", gettype($array1))); } elseif (!is_array($array2)) { // Right one is not an array - debug_report_bug(sprintf("[%s:%s] array2 is not an array. array != %s", __FUNCTION__, __LINE__, gettype($array2))); + debug_report_bug(__FILE__, __LINE__, sprintf("array2 is not an array. array != %s", gettype($array2))); } // Merge all together @@ -393,19 +393,19 @@ function copyFileVerified ($source, $dest, $chmod = '') { // Is the source file there? if (!isFileReadable($source)) { // Then abort here - debug_report_bug('Cannot read from source file ' . basename($source) . '.'); + debug_report_bug(__FUNCTION__, __LINE__, 'Cannot read from source file ' . basename($source) . '.'); } // END - if // Is the target directory there? if (!isDirectory(dirname($dest))) { // Then abort here - debug_report_bug('Cannot find directory ' . str_replace(getConfig('PATH'), '', dirname($dest)) . '.'); + debug_report_bug(__FUNCTION__, __LINE__, 'Cannot find directory ' . str_replace(getConfig('PATH'), '', dirname($dest)) . '.'); } // END - if // Now try to copy it if (!copy($source, $dest)) { // Something went wrong - debug_report_bug('copy() has failed to copy the file.'); + debug_report_bug(__FUNCTION__, __LINE__, 'copy() has failed to copy the file.'); } else { // Reset cache $GLOBALS['file_readable'][$dest] = true; @@ -437,7 +437,7 @@ function flushHeaders () { // Is the header already sent? if (headers_sent()) { // Then abort here - debug_report_bug('Headers already sent!'); + debug_report_bug(__FUNCTION__, __LINE__, 'Headers already sent!'); } // END - if // Flush all headers if found @@ -457,7 +457,7 @@ function changeMode ($FQFN, $mode) { // Is the file/directory there? if ((!isFileReadable($FQFN)) && (!isDirectory($FQFN))) { // Neither, so abort here - debug_report_bug('Cannot chmod() on ' . basename($FQFN) . '.'); + debug_report_bug(__FUNCTION__, __LINE__, 'Cannot chmod() on ' . basename($FQFN) . '.'); } // END - if // Try to set them @@ -555,7 +555,7 @@ function isWhatSet ($strict = false) { // Should we abort here? if (($strict === true) && ($isset === false)) { // Output backtrace - debug_report_bug('what is empty.'); + debug_report_bug(__FUNCTION__, __LINE__, 'what is empty.'); } // END - if // Return it @@ -590,7 +590,7 @@ function isActionSet ($strict = false) { // Should we abort here? if (($strict === true) && ($isset === false)) { // Output backtrace - debug_report_bug('action is empty.'); + debug_report_bug(__FUNCTION__, __LINE__, 'action is empty.'); } // END - if // Return it @@ -626,7 +626,7 @@ function isModuleSet ($strict = false) { // Should we abort here? if (($strict === true) && ($isset === false)) { // Output backtrace - debug_report_bug('module is empty.'); + debug_report_bug(__FUNCTION__, __LINE__, 'module is empty.'); } // END - if // Return it @@ -661,7 +661,7 @@ function isOutputModeSet ($strict = false) { // Should we abort here? if (($strict === true) && ($isset === false)) { // Output backtrace - debug_report_bug('output_mode is empty.'); + debug_report_bug(__FUNCTION__, __LINE__, 'output_mode is empty.'); } // END - if // Return it @@ -697,7 +697,7 @@ function addPointsDirectly ($subject, $userid, $points) { // Wrapper function to redirect from member-only modules to index function redirectToIndexMemberOnlyModule () { // Do the redirect here - redirectToUrl('modules.php?module=index&code=' . getCode('MODULE_MEM_ONLY') . '&mod=' . getModule()); + redirectToUrl('modules.php?module=index&code=' . getCode('MODULE_MEMBER_ONLY') . '&mod=' . getModule()); } // Wrapper function to redirect to current URL @@ -807,7 +807,7 @@ function isAdminHashSet ($admin) { * 14.:js.php:57, require(1) */ if (!isset($GLOBALS['cache_array']['admin'])) { - debug_report_bug('Cache not set.'); + debug_report_bug(__FUNCTION__, __LINE__, 'Cache not set.'); } // END - if // Check for admin hash @@ -885,7 +885,7 @@ function getCurrentUserId () { // Userid must be set before it can be used if (!isCurrentUserIdSet()) { // Not set - debug_report_bug('User id is not set.'); + debug_report_bug(__FUNCTION__, __LINE__, 'User id is not set.'); } // END - if // Return the userid @@ -941,5 +941,108 @@ function ifFatalErrorsDetected () { return (getTotalFatalErrors() > 0); } +// Wrapper until we merged to the EL branch +function preCompileCode ($code, $template = '', $compiled = false, $full = true, $overwrite = false) { + return compileCode($code, false, true, $full); +} + +// Setter for HTTP status +function setHttpStatus ($status) { + $GLOBALS['http_status'] = (string) $status; +} + +// Getter for HTTP status +function getHttpStatus () { + return $GLOBALS['http_status']; +} + +// Setter for 'is_template_html' +function enableTemplateHtml ($enable = true) { + $GLOBALS['is_template_html'] = (bool) $enable; +} + +// Checks wether the template is HTML or not by previously set flag +// Default: true +function isTemplateHtml () { + // Is the output_mode other than 0 (HTML), then no comments are enabled + if (getOutputMode() != 0) { + // No HTML + return false; + } else { + // Maybe HTML? + return $GLOBALS['is_template_html']; + } +} + +/** + * Send a HTTP redirect to the browser. This function was taken from DokuWiki + * (GNU GPL 2; http://www.dokuwiki.org) and modified to fit into mailer project. + * + * ---------------------------------------------------------------------------- + * If you want to redirect, please use redirectToUrl(); instead + * ---------------------------------------------------------------------------- + * + * Works arround Microsoft IIS cookie sending bug. Does exit the script. + * + * @link http://support.microsoft.com/kb/q176113/ + * @author Andreas Gohr + * @access private + */ +function sendRawRedirect ($url) { + // always close the session + session_write_close(); + + // Revert entity & + $url = str_replace('&', '&', $url); + + // check if running on IIS < 6 with CGI-PHP + if ((isset($_SERVER['SERVER_SOFTWARE'])) && (isset($_SERVER['GATEWAY_INTERFACE'])) && + (strpos($_SERVER['GATEWAY_INTERFACE'],'CGI') !== false) && + (preg_match('|^Microsoft-IIS/(\d)\.\d$|', trim($_SERVER['SERVER_SOFTWARE']), $matches)) && + ($matches[1] < 6)) { + // Send the IIS header + sendHeader('Refresh: 0;url=' . $url); + } else { + // Send generic header + sendHeader('Location: ' . $url); + } + + // Shutdown here + shutdown(); +} + +// Determines the country of the given user id +function determineCountry ($userid) { + // Default is 'invalid' + $country = 'invalid'; + + // Is extension country active? + if (isExtensionActive('country')) { + // Determine the right country code through the country id + $id = getUserData('country_code'); + + // Then handle it over + $country = generateCountryInfo($id); + } else { + // Get raw code from user data + $country = getUserData('country'); + } + + // Return it + return $country; +} + +// "Getter" for total confirmed user accounts +function getTotalConfirmedUser () { + // Is it cached? + if (!isset($GLOBALS['total_confirmed_users'])) { + // Then do it + $GLOBALS['total_confirmed_users'] = countSumTotalData('CONFIRMED', 'user_data', 'userid', 'status', true); + } // END - if + + // Return cached value + return $GLOBALS['total_confirmed_users']; +} + // [EOF] ?>