+// Send notification to admin
+function SEND_ADMIN_NOTIFICATION($subject, $templateName, $content=array(), $uid="0") {
+ if (GET_EXT_VERSION("admins") >= "0.4.1") {
+ // Send new way
+ SEND_ADMIN_EMAILS_PRO($subject, $templateName, $content, $uid);
+ } else {
+ // Send outdated way
+ $msg = LOAD_EMAIL_TEMPLATE($templateName, $content, $uid);
+ SEND_ADMIN_EMAILS($subject, $msg);
+ }
+}
+
+// Merges an array together but only if both are arrays
+function merge_array ($array1, $array2) {
+ // Are both an array?
+ if ((is_array($array1)) && (is_array($array2))) {
+ // Merge all together
+ return array_merge($array1, $array2);
+ } elseif (is_array($array1)) {
+ // Return left array
+ DEBUG_LOG(__FUNCTION__, __LINE__, sprintf("array2 is not an array. array != %s", gettype($array2)));
+ return $array1;
+ } elseif (is_array($array2)) {
+ // Return right array
+ DEBUG_LOG(__FUNCTION__, __LINE__, sprintf("array1 is not an array. array != %s", gettype($array1)));
+ return $array2;
+ }
+
+ // Both are not arrays
+ debug_report_bug(__FUNCTION__.": No arrays provided!");
+}
+
+// Debug message logger
+function DEBUG_LOG ($funcFile, $line, $message, $force=true) {
+ // Is debug mode enabled?
+ if ((isBooleanConstantAndTrue('DEBUG_MODE')) || ($force === true)) {
+ // Log this message away
+ $fp = fopen(constant('PATH')."inc/cache/debug.log", 'a') or mxchange_die("Cannot write logfile debug.log!");
+ fwrite($fp, date("d.m.Y|H:i:s", time())."|".basename($funcFile)."|".$line."|".strip_tags($message)."\n");
+ fclose($fp);
+ } // END - if
+}
+
+// Reads a directory with PHP files in and gets only files back
+function GET_DIR_AS_ARRAY ($baseDir, $prefix) {
+ $INCs = array();
+
+ // Open directory
+ $dirPointer = opendir($baseDir) or mxchange_die("Cannot read ".basename($baseDir)." path!");
+
+ // Read all entries
+ while ($baseFile = readdir($dirPointer)) {
+ // Load file only if extension is active
+ // Make full path
+ $FQFN = $baseDir.$baseFile;
+
+ // Is this a valid reset file?
+ //* DEBUG: */ print __FUNCTION__."(<font color=\"#0000aa\">".__LINE__."</font>):baseDir={$baseDir},prefix={$prefix},baseFile={$baseFile}<br />\n";
+ if ((FILE_READABLE($FQFN)) && (substr($baseFile, 0, strlen($prefix)) == $prefix) && (substr($baseFile, -4, 4) == ".php")) {
+ // Remove both for extension name
+ $extName = substr($baseFile, strlen($prefix), -4);
+
+ // Try to find it
+ $extId = GET_EXT_ID($extName);
+
+ // Is the extension valid and active?
+ if (($extId > 0) && (EXT_IS_ACTIVE($extName))) {
+ // Then add this file
+ $INCs[] = $FQFN;
+ } elseif ($extId == 0) {
+ // Add non-extension files as well
+ $INCs[] = $FQFN;
+ }
+ } // END - if
+ } // END - while
+
+ // Close directory
+ closedir($dirPointer);
+
+ // Sort array
+ asort($INCs);
+
+ // Return array with include files
+ return $INCs;
+}
+
+// Load more reset scripts
+function RESET_ADD_INCLUDES () {
+ // Is the reset set or old sql_patches?
+ if ((!defined('__DAILY_RESET')) || (EXT_VERSION_IS_OLDER("sql_patches", "0.4.5"))) {
+ // Then abort here
+ return array();
+ } // END - if