$removed = '0';
// Prepare SQL queries
- $insertSQL = "INSERT INTO `{?_MYSQL_PREFIX?}_filters` (`filter_name`,`filter_function`,`filter_active`) VALUES";
- $removeSQL = "DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_filters` WHERE";
+ $insertSQL = 'INSERT INTO `{?_MYSQL_PREFIX?}_filters` (`filter_name`,`filter_function`,`filter_active`) VALUES';
+ $removeSQL = 'DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_filters` WHERE';
// Write all filters to database
foreach ($GLOBALS['cache_array']['filter']['chains'] as $filterName => $filterArray) {
// Walk through all filters
foreach ($filterArray as $filterFunction => $active) {
// Is this filter loaded?
- //* DEBUG: */ print 'FOUND:'.$filterName.'/'.$filterFunction.'='.$active.'<br />';
+ //* DEBUG: */ debugOutput('FOUND:'.$filterName.'/'.$filterFunction.'='.$active);
if (((!isset($GLOBALS['cache_array']['filter']['loaded'][$filterName][$filterFunction])) && ($active != 'R')) || ($active == 'A')) {
// Add this filter (all filters are active by default)
- //* DEBUG: */ print 'ADD:'.$filterName.'/'.$filterFunction.'<br />';
+ //* DEBUG: */ debugOutput('ADD:'.$filterName.'/'.$filterFunction);
$insertSQL .= sprintf("('%s','%s','Y'),", $filterName, $filterFunction);
$inserted++;
} elseif ($active == 'R') {
// Remove this filter
- //* DEBUG: */ print 'REMOVE:'.$filterName.'/'.$filterFunction.'<br />';
+ //* DEBUG: */ debugOutput('REMOVE:'.$filterName.'/'.$filterFunction);
$removeSQL .= sprintf(" (`filter_name`='%s' AND `filter_function`='%s') OR", $filterName, $filterFunction);
$removed++;
}
} // END - if
// Shall we update usage counters (ONLY FOR DEBUGGING!)
- if (getConfig('update_filter_usage') == 'Y') {
+ if ((isExtensionInstalledAndNewer('sql_patches', '0.6.0')) && (isConfigEntrySet('update_filter_usage')) && (getConfig('update_filter_usage') == 'Y')) {
// Update all counters
foreach ($GLOBALS['cache_array']['filter']['counter'] as $filterName => $filterArray) {
// Walk through all filters
// Filter for auto-activation of a extension
function FILTER_AUTO_ACTIVATE_EXTENSION ($data) {
// Is this extension always activated?
- if (getExtensionAlwaysActive() == 'Y') {
+ if (isExtensionAlwaysActive()) {
// Then activate the extension
//* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, "ext_name={$data['ext_name']}<br />");
doActivateExtension($data['ext_name']);
adminSolveTask($data['task_id']);
} else {
// Not detectable!
- debug_report_bug(sprintf("Cannot resolve task. data[%s]=<pre>%s</pre>", gettype($data), print_r($data, true)));
+ debug_report_bug(__FUNCTION__, __LINE__, sprintf("Cannot resolve task. data[%s]=<pre>%s</pre>", gettype($data), print_r($data, true)));
}
// Return the data
// Is it null?
if (is_null($pool)) {
// This should not happen!
- debug_report_bug('pool is null.');
+ debug_report_bug(__FUNCTION__, __LINE__, 'pool is null.');
} // END - if
// Is the pool an array and 'pool' set?
// Is it an array?
if ((!isset($data)) || (!is_array($data))) {
// Then abort here
- debug_report_bug(sprintf("INC_POOL is no array! Type: %s", gettype($data)));
+ debug_report_bug(__FUNCTION__, __LINE__, sprintf("INC_POOL is no array! Type: %s", gettype($data)));
} elseif (isset($data['inc_pool'])) {
// Use this as new inclusion pool!
setIncludePool($realPool, $data['inc_pool']);
// Is the config valid?
if (isConfigEntrySet($matches[1][$key])) {
// Set it for caching
- $GLOBALS['compile_config'][$matches[1][$key]] = "\" . getConfig('" . $matches[1][$key] . "') . \"";
+ $GLOBALS['compile_config'][$matches[1][$key]] = '{%config=' . $matches[1][$key] . '%}';
} elseif (isConfigEntrySet('default_' . strtoupper($matches[1][$key]))) {
// Use default value
- $GLOBALS['compile_config'][$matches[1][$key]] = "\" . getConfig('" . 'DEFAULT_' . strtoupper($matches[1][$key]) . "') . \"";
+ $GLOBALS['compile_config'][$matches[1][$key]] = '{%config=' . 'DEFAULT_' . strtoupper($matches[1][$key]) . '%}';
} elseif (isMessageIdValid('DEFAULT_' . strtoupper($matches[1][$key]))) {
// No config, try the language system
- $GLOBALS['compile_config'][$matches[1][$key]] = "\" . getMessage('". 'DEFAULT_' . strtoupper($matches[1][$key]) . "') . \"";
+ $GLOBALS['compile_config'][$matches[1][$key]] = '{%message,DEFAULT_' . strtoupper($matches[1][$key]) . '%}';
} else {
// Unhandled!
$GLOBALS['compile_config'][$matches[1][$key]] = '!' . $matches[1][$key] . '!';
// Use this for replacing
$code = str_replace($match, $GLOBALS['compile_config'][$matches[1][$key]], $code);
- //* DEBUG: */ if (($match == '{?URL?}') && (strlen($code) > 10000)) die('<pre>'.secureString($code).'</pre>');
+ //* DEBUG: */ if (($match == '{?URL?}') && (strlen($code) > 10000)) die(__FUNCTION__.'['.__LINE__.']:<pre>'.secureString($code).'</pre>');
} // END - foreach
} // END - if
// Should we compile it?
if ($compiled === true) {
// Run the code
- $eval = "\$GLOBALS['compiled_config'][\$uncompiled] = \"" . $GLOBALS['compiled_config'][$uncompiled] . "\";";
- //* DEBUG: */ print('<pre>' . str_replace('$', '$', htmlentities($eval)) . '</pre>');
+ $eval = "\$GLOBALS['compiled_config'][\$uncompiled] = \"" . $GLOBALS['compiled_config'][$uncompiled] . '";';
+ //* DEBUG: */ debugOutput(__FUNCTION__.'['.__LINE__.']:<pre>' . str_replace('$', '$', htmlentities($eval)) . '</pre>');
eval($eval);
} // END - if
// Compile {%cmd,callback,extraFunction=some_value%} to get expression code snippets
// See switch() command below for supported commands
preg_match_all('/\{%(([a-zA-Z0-9-_,]+)(=([^\}]+)){0,1})*%\}/', $code, $matches);
- //* DEBUG: */ print('<pre>'.print_r($matches, true).'</pre>');
+ //* DEBUG: */ debugOutput(__FUNCTION__.'['.__LINE__.']:<pre>'.print_r($matches, true).'</pre>');
// Default is from outputHtml()
$outputMode = getOutputMode();
// Replace all matches
foreach ($matches[2] as $key => $cmd) {
// Init replacer/call-back variable
- $replacer = '';
- $callback = '';
+ $replacer = '';
+ $callback = '';
$extraFunction = '';
+ $value = '';
// Extract command and call-back
$cmdArray = explode(',', $cmd);
$cmd = $cmdArray[0];
- if (isset($cmdArray[1])) $callback = $cmdArray[1];
- if (isset($cmdArray[2])) $extraFunction = $cmdArray[2];
+
+ // Detect call-back function
+ if (isset($cmdArray[1])) {
+ // Call-back function detected
+ $callback = $cmdArray[1];
+ } // END - if
+
+ // Detect extra function
+ if (isset($cmdArray[2])) {
+ // Also detected
+ $extraFunction = $cmdArray[2];
+ } elseif (isset($matches[4][$key])) {
+ // Use this as value
+ $value = $matches[4][$key];
+ }
// Construct call-back function name for the command
$commandFunction = 'doExpression' . ucfirst(strtolower($cmd));
'mode' => $outputMode,
'code' => $code,
'callback' => $callback,
- 'extra_func' => $extraFunction
+ 'extra_func' => $extraFunction,
+ 'value' => $value
);
// Call it
+ //* DEBUG: */ debugOutput(__FUNCTION__ . '[' . __LINE__ . ']: function=' . $commandFunction);
$code = call_user_func($commandFunction, $data);
} else {
// Unsupported command detected
- debug_report_bug('Command=' . $cmd . ', callback=' . $callback . ', extra=' . $extraFunction . ' is unsupported.');
+ debug_report_bug(__FUNCTION__, __LINE__, 'Command=' . $cmd . ', callback=' . $callback . ', extra=' . $extraFunction . ' is unsupported.');
}
} // END - foreach
} // END - if
if ((getOutputMode() != '0') || ($outputMode != '0')) $code = decodeEntities($code);
// Return compiled code
- //* DEBUG: */ die('<pre>'.htmlentities($code).'</pre>');
+ //* DEBUG: */ debugOutput(__FUNCTION__.'['.__LINE__.']:<pre>'.($code).'</pre>');
return $code;
}
// Is the reset set or old sql_patches?
if (((!isResetModeEnabled()) || (!isExtensionInstalled('sql_patches'))) && (getOutputMode() == '0')) {
// Then abort here
- debug_report_bug('Cannot run reset! enabled='.intval(isResetModeEnabled()).',ext='.intval(isExtensionInstalled('sql_patches')).' Please report this bug. Thanks');
+ debug_report_bug(__FUNCTION__, __LINE__, 'Cannot run reset! enabled='.intval(isResetModeEnabled()).',ext='.intval(isExtensionInstalled('sql_patches')).' Please report this bug. Thanks');
} // END - if
// Get more daily reset scripts
// HTML mail?
if ($mode == 'html') $MORE = " AND `html`='Y'";
- if ((isExtensionActive('holiday')) && (getExtensionVersion('holiday') >= '0.1.3')) {
+ if (isExtensionInstalledAndNewer('holiday', '0.1.3')) {
// Add something for the holiday extension
$MORE .= " AND `holiday_active`='N'";
} // END - if
}
// Set default 'what' value
- //* DEBUG: */ outputHtml('-'.getModule().'/'.getWhat()."-<br />");
+ //* DEBUG: */ debugOutput('-' . getModule() . '/' . getWhat() . '-');
if ((!isWhatSet()) && (!isActionSet()) && (getOutputMode() != 1) && (getOutputMode() != -1)) {
if (getModule() == 'admin') {
// Set 'action' value to 'login' in admin menu
// Get user data
if (!fetchUserData($userid)) {
// Userid is not valid
- debug_report_bug('User id '.$userid . ' is invalid.');
+ debug_report_bug(__FUNCTION__, __LINE__, 'User id '.$userid . ' is invalid.');
} // END - if
// Set member id
// Is the user data valid?
if (!isMember()) {
// Do only run for logged in members
- debug_report_bug('Please only run this filter for logged in users.');
+ debug_report_bug(__FUNCTION__, __LINE__, 'Please only run this filter for logged in users.');
} // END - if
// Remmeber login failures if available
WHERE
`userid`=%s
LIMIT 1",
- array(getMemberId()), __FILE__, __LINE__);
+ array(getMemberId()), __FUNCTION__, __LINE__);
// Store it in session
- setSession('mxchange_member_failures' , getUserData('login_failures'));
- setSession('mxchange_member_last_failure', getUserData('last_failure'));
+ setSession('mailer_member_failures' , getUserData('login_failures'));
+ setSession('mailer_member_last_failure', getUserData('last_failure'));
} // END - if
}