X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Fmysql-manager.php;h=836d1d850dc9fa3ef5080c8ec5571491646514c9;hb=0a8aa21fd12518fb7549b2ea225f75f5a24cd309;hp=754ca58d903baf831c74568228c15f7b0462d87e;hpb=1ebf518b9552f71ee95de6f4b80e6de3a27716d1;p=mailer.git
diff --git a/inc/mysql-manager.php b/inc/mysql-manager.php
index 754ca58d90..836d1d850d 100644
--- a/inc/mysql-manager.php
+++ b/inc/mysql-manager.php
@@ -134,10 +134,10 @@ function checkModulePermissions ($mod = '') {
// Check for prefix is a extension...
$modSplit = explode('_', $mod);
$extension = ''; $mod_chk = $mod;
- //* DEBUG: */ outputHtml(__LINE__."*".count($modSplit)."*/".$mod."*
");
+ //* DEBUG: */ print(__LINE__."*".count($modSplit)."*/".$mod."*
");
if (count($modSplit) == 2) {
// Okay, there is a seperator (_) in the name so is the first part a module?
- //* DEBUG: */ outputHtml(__LINE__."*".$modSplit[0]."*
");
+ //* DEBUG: */ print(__LINE__."*".$modSplit[0]."*
");
if (isExtensionActive($modSplit[0])) {
// The prefix is an extension's name, so let's set it
$extension = $modSplit[0]; $mod = $modSplit[1];
@@ -253,7 +253,7 @@ function checkModulePermissions ($mod = '') {
// Destroy cache here
// @TODO Rewrite this to a filter
- if (getOutputMode() == '0') rebuildCacheFile('modreg', 'modreg');
+ if ((getOutputMode() == 0) || (getOutputMode() == -1)) rebuildCacheFile('modules', 'modules');
// And reload data
unset($GLOBALS['module_status'][$mod]);
@@ -264,7 +264,7 @@ function checkModulePermissions ($mod = '') {
}
} elseif (($ret == 'cache_miss') && (getOutputMode() == 0)) {
// Rebuild the cache files
- rebuildCacheFile('modreg', 'modreg');
+ rebuildCacheFile('modules', 'modules');
} elseif ($found === false) {
// Problem with module detected
logDebugMessage(__FUNCTION__, __LINE__, sprintf("Problem in module %s detected. ret=%s, locked=%s, hidden=%s, mem=%s, admin=%s, output_mode=%s",
@@ -381,12 +381,12 @@ function addMenuDescription ($accessLevel, $FQFN, $return = false, $output = tru
$OUT = $prefix . "" . $ret . "\n";
// Can we close the you-are-here navigation?
- //* DEBUG: */ outputHtml(__LINE__."*".$type.'/'.getWhat()."*
");
+ //* DEBUG: */ print(__LINE__."*".$type.'/'.getWhat()."*
");
if (($type == 'what') || (($type == 'action') && ((!isWhatSet()) || (getWhat() == 'overview')))) {
- //* DEBUG: */ outputHtml(__LINE__.'+'.$type."+
");
+ //* DEBUG: */ print(__LINE__.'+'.$type."+
");
// Add closing div and br-tag
$OUT .= "
\n";
- $GLOBALS['nav_depth'] = '0';
+ $GLOBALS['nav_depth'] = 0;
// Run the filter chain
$ret = runFilterChain('post_youhere_line', array('access_level' => $accessLevel, 'type' => $type, 'content' => ""));
@@ -428,12 +428,12 @@ function addMenu ($mode, $action, $what) {
$result_main = SQL_QUERY_ESC("SELECT `title`, `action` FROM `{?_MYSQL_PREFIX?}_%s_menu` WHERE (`what`='' OR `what` IS NULL)".$AND." ORDER BY `sort` ASC",
array($mode), __FUNCTION__, __LINE__);
- //* DEBUG: */ outputHtml(__LINE__.'/'.$main_cnt.':'.getWhat()."*
");
+ //* DEBUG: */ print(__LINE__.'/'.$main_cnt.':'.getWhat()."*
");
if (SQL_NUMROWS($result_main) > 0) {
// There are menus available, so we simply display them... :)
$GLOBALS['rows'] = '';
while ($content = SQL_FETCHARRAY($result_main)) {
- //* DEBUG: */ outputHtml(__LINE__.'/'.$main_cnt.'/'.$content['action'].':'.getWhat()."*
");
+ //* DEBUG: */ print(__LINE__.'/'.$main_cnt.'/'.$content['action'].':'.getWhat()."*
");
// Init variables
enableBlockMode(false);
$action = $content['action'];
@@ -462,7 +462,7 @@ function addMenu ($mode, $action, $what) {
$OUT = '';
// Full file name for checking menu
- //* DEBUG: */ outputHtml(__LINE__.":!!!!".$content['sub_what']."!!!
");
+ //* DEBUG: */ print(__LINE__.":!!!!".$content['sub_what']."!!!
");
$inc = sprintf("inc/modules/%s/what-%s.php", $mode, $content['sub_what']);
if (isIncludeReadable($inc)) {
// Mark currently selected menu - open
@@ -513,21 +513,21 @@ function addMenu ($mode, $action, $what) {
enableBlockMode();
// Load menu block
- $inc_BLOCK = sprintf("inc/modules/%s/action-%s.php", $mode, $content['action']);
- if (isFileReadable($inc_BLOCK)) {
+ $INC = sprintf("inc/modules/%s/action-%s.php", $mode, $content['action']);
+ if (isFileReadable($INC)) {
// Load include file
if ((!isExtensionActive($content['action'])) || ($content['action'] == 'online')) $GLOBALS['rows'] .= loadTemplate('menu_what_begin', true, $mode);
- //* DEBUG: */ outputHtml(__LINE__.'/'.$main_cnt.'/'.$content['action'].'/'.$content['sub_what'].':'.getWhat()."*
");
- loadInclude($inc_BLOCK);
- //* DEBUG: */ outputHtml(__LINE__.'/'.$main_cnt.'/'.$content['action'].'/'.$content['sub_what'].':'.getWhat()."*
");
- if ((!isExtensionActive($content['action'])) || ($content['action'] == 'online')) $GLOBALS['rows'] .= loadTemplate('menu_what_end', true);
+ //* DEBUG: */ print(__LINE__.'/'.$main_cnt.'/'.$content['action'].'/'.getWhat()."*
");
+ loadInclude($INC);
+ //* DEBUG: */ print(__LINE__.'/'.$main_cnt.'/'.$content['action'].'/'.getWhat()."*
");
+ if ((!isExtensionActive($content['action'])) || ($content['action'] == 'online')) $GLOBALS['rows'] .= loadTemplate('menu_what_end', true, $mode);
}
- //* DEBUG: */ outputHtml(__LINE__.'/'.$main_cnt.'/'.$content['action'].'/'.$content['sub_what'].':'.getWhat()."*
");
+ //* DEBUG: */ print(__LINE__.'/'.$main_cnt.'/'.$content['action'].'/'.$content['sub_what'].':'.getWhat()."*
");
}
$main_cnt++;
- //* DEBUG: */ outputHtml(__LINE__.'/'.$main_cnt.'/'.$content['action'].'/'.$content['sub_what'].':'.getWhat()."*
");
+ //* DEBUG: */ print(__LINE__.'/'.$main_cnt.':'.getWhat()."*
");
if (SQL_NUMROWS($result_main) > $main_cnt) {
// Add seperator
$GLOBALS['rows'] .= loadTemplate('menu_seperator', true, $mode);
@@ -562,7 +562,7 @@ function addMenu ($mode, $action, $what) {
);
// Load main template
- //* DEBUG: */ outputHtml(__LINE__.'/'.$main_cnt.'/'.$content['action'].'/'.$content['sub_what'].':'.getWhat()."*
");
+ //* DEBUG: */ print(__LINE__.'/'.$main_cnt.'/'.$content['action'].'/'.$content['sub_what'].':'.getWhat()."*
");
loadTemplate('menu_table', false, $content);
} // END - if
}
@@ -613,12 +613,12 @@ function isMember () {
$ret = true;
} else {
// Maybe got locked etc.
- //* DEBUG: */ outputHtml(__LINE__."!!!
");
+ //* DEBUG: */ print(__LINE__."!!!
");
destroyUserSession();
}
} else {
// Cookie data is invalid!
- //* DEBUG: */ outputHtml(__LINE__."***
");
+ //* DEBUG: */ print(__LINE__."***
");
destroyUserSession();
}
@@ -626,7 +626,7 @@ function isMember () {
SQL_FREERESULT($result);
} else {
// Cookie data is invalid!
- //* DEBUG: */ outputHtml(__LINE__."///
");
+ //* DEBUG: */ print(__LINE__."///
");
destroyUserSession();
}
@@ -641,59 +641,65 @@ function isMember () {
function isAdmin ($admin = '') {
// Init variables
$ret = false; $passCookie = ''; $valPass = '';
- //* DEBUG: */ outputHtml(__LINE__."ADMIN:".$admin."
");
+ //* DEBUG: */ print(__FUNCTION__.':'.$admin.'
');
// If admin login is not given take current from cookies...
if ((empty($admin)) && (isSessionVariableSet('admin_login')) && (isSessionVariableSet('admin_md5'))) {
// Get admin login and password from session/cookies
$admin = getSession('admin_login');
$passCookie = getSession('admin_md5');
- }
- //* DEBUG: */ outputHtml(__LINE__."ADMIN:".$admin.'/'.$passCookie."
");
+ } // END - if
+ //* DEBUG: */ print(__FUNCTION__.':'.$admin.'/'.$passCookie.'
');
- // Search in array for entry
- if (isset($GLOBALS['admin_hash'])) {
- // Use cached string
- $valPass = $GLOBALS['admin_hash'];
- } elseif ((!empty($passCookie)) && (isset($GLOBALS['cache_array']['admins']['password'][$admin])) && (!empty($admin))) {
- // Login data is valid or not?
- $valPass = generatePassString($GLOBALS['cache_array']['admins']['password'][$admin]);
+ // Do we have cache?
+ if (!isset($GLOBALS['is_admin'][$admin])) {
+ // Init it with failed
+ $GLOBALS['is_admin'][$admin] = false;
+
+ // Search in array for entry
+ if (isset($GLOBALS['admin_hash'])) {
+ // Use cached string
+ $valPass = $GLOBALS['admin_hash'];
+ } elseif ((!empty($passCookie)) && (isAdminHashSet($admin) === true) && (!empty($admin))) {
+ // Login data is valid or not?
+ $valPass = generatePassString(getAdminHash($admin));
+
+ // Cache it away
+ $GLOBALS['admin_hash'] = $valPass;
+
+ // Count cache hits
+ incrementStatsEntry('cache_hits');
+ } elseif ((!empty($admin)) && ((!isExtensionActive('cache'))) || (isAdminHashSet($admin) === false)) {
+ // Search for admin
+ $result = SQL_QUERY_ESC("SELECT HIGH_PRIORITY `password` FROM `{?_MYSQL_PREFIX?}_admins` WHERE `login`='%s' LIMIT 1",
+ array($admin), __FUNCTION__, __LINE__);
- // Cache it away
- $GLOBALS['admin_hash'] = $valPass;
+ // Is he admin?
+ $passDB = '';
+ if (SQL_NUMROWS($result) == 1) {
+ // Admin login was found so let's load password from DB
+ list($passDB) = SQL_FETCHROW($result);
- // Count cache hits
- incrementStatsEntry('cache_hits');
- } elseif ((!empty($admin)) && ((!isExtensionActive('cache'))) || (!isset($GLOBALS['cache_array']['admins']['password'][$admin]))) {
- // Search for admin
- $result = SQL_QUERY_ESC("SELECT HIGH_PRIORITY `password` FROM `{?_MYSQL_PREFIX?}_admins` WHERE `login`='%s' LIMIT 1",
- array($admin), __FUNCTION__, __LINE__);
+ // Temporary cache it
+ setAdminHash($admin, $passDB);
- // Is he admin?
- $passDB = '';
- if (SQL_NUMROWS($result) == 1) {
- // Admin login was found so let's load password from DB
- list($passDB) = SQL_FETCHROW($result);
+ // Generate password hash
+ $valPass = generatePassString($passDB);
+ } // END - if
- // Temporary cache it
- $GLOBALS['cache_array']['admins']['password'][$admin] = $passDB;
+ // Free memory
+ SQL_FREERESULT($result);
+ }
- // Generate password hash
- $valPass = generatePassString($passDB);
+ if (!empty($valPass)) {
+ // Check if password is valid
+ //* DEBUG: */ print(__FUNCTION__ . ':(' . $valPass . '==' . $passCookie . ')='.intval($valPass == $passCookie).'
');
+ $GLOBALS['is_admin'][$admin] = (($valPass == $passCookie) || ((strlen($valPass) == 32) && ($valPass == md5($passCookie))) || (($valPass == '*FAILED*') && (!isExtensionActive('cache'))));
} // END - if
-
- // Free memory
- SQL_FREERESULT($result);
- }
-
- if (!empty($valPass)) {
- // Check if password is valid
- //* DEBUG: */ outputHtml(__FUNCTION__."*".$valPass.'/'.$passCookie."*
");
- $ret = (($valPass == $passCookie) || ((strlen($valPass) == 32) && ($valPass == md5($passCookie))) || (($valPass == "*FAILED*") && (!isExtensionActive('cache'))));
} // END - if
// Return result of comparision
- return $ret;
+ return $GLOBALS['is_admin'][$admin];
}
// Generates a list of "max receiveable emails per day"
@@ -766,9 +772,9 @@ function isEmailTaken ($email) {
}
// Validate the given menu action
-function isMenuActionValid ($mode, $action, $what, $UPDATE=false) {
+function isMenuActionValid ($mode, $action, $what, $updateEntry=false) {
// Is the cache entry there and we shall not update?
- if ((isset($GLOBALS['action_valid'][$mode][$action][$what])) && ($UPDATE === false)) {
+ if ((isset($GLOBALS['action_valid'][$mode][$action][$what])) && ($updateEntry === false)) {
// Count cache hit
incrementStatsEntry('cache_hits');
@@ -783,8 +789,8 @@ function isMenuActionValid ($mode, $action, $what, $UPDATE=false) {
$add = '';
if ((!isAdmin()) && ($mode != 'admin')) $add = " AND `locked`='N'";
- //* DEBUG: */ outputHtml(__LINE__.':'.$mode.'/'.$action.'/'.$what."*
");
- if (($mode != 'admin') && ($UPDATE === true)) {
+ //* DEBUG: */ print(__LINE__.':'.$mode.'/'.$action.'/'.$what."*
");
+ if (($mode != 'admin') && ($updateEntry === true)) {
// Update guest or member menu
$sql = SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_%s_menu` SET counter=counter+1 WHERE `action`='%s' AND `what`='%s'".$add." LIMIT 1",
array($mode, $action, $what), __FUNCTION__, __LINE__, false);
@@ -800,7 +806,7 @@ function isMenuActionValid ($mode, $action, $what, $UPDATE=false) {
// Run SQL command
$result = SQL_QUERY($sql, __FUNCTION__, __LINE__);
- if ($UPDATE === true) {
+ if ($updateEntry === true) {
// Check updated/affected rows
$ret = (SQL_AFFECTEDROWS() == 1);
} else {
@@ -939,19 +945,12 @@ function sendModeMails ($mod, $modes) {
loadTemplate('admin_settings_saved', false, $content);
}
-// Update module counter
-function countModuleHit($mod) {
- // Do count all other modules but not accesses on CSS file css.php!
- SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_mod_reg` SET `clicks`=`clicks`+1 WHERE `module`='%s' LIMIT 1",
- array($mod), __FUNCTION__, __LINE__);
-}
-
// Get action value from mode (admin/guest/member) and what-value
function getModeAction ($mode, $what) {
// Init status
$ret = '';
- //* DEBUG: */ outputHtml(__LINE__.'='.$mode.'/'.$what.'/'.getAction()."=
");
+ //* DEBUG: */ print(__LINE__.'='.$mode.'/'.$what.'/'.getAction()."=
");
if ((empty($what)) && ($mode != 'admin')) {
$what = getConfig('index_home');
} // END - if
@@ -972,7 +971,7 @@ function getModeAction ($mode, $what) {
// Get it directly from URL
return getAction();
}
- //* DEBUG: */ outputHtml(__FUNCTION__."(".__LINE__."): ret=".$ret."
");
+ //* DEBUG: */ print(__FUNCTION__."(".__LINE__."): ret=".$ret.'
');
// Does the module have a menu?
if (ifModuleHasMenu($mode)) {
@@ -995,9 +994,8 @@ function getModeAction ($mode, $what) {
} elseif ((!isExtensionInstalled('sql_patches')) && ($mode != 'admin')) {
// No sql_patches installed, but maybe we need to register an admin?
if (isAdminRegistered()) {
- // Redirect
- // @TODO Why does this lead into an endless loop but we still need it???
- // @TODO Commented out redirectToUrl('admin.php');
+ // Redirect to admin area
+ redirectToUrl('admin.php');
} // END - if
}
@@ -1011,7 +1009,7 @@ function getCategory ($cid) {
$ret = getMessage('_CATEGORY_404');
// Is the category id set?
- if ($cid == '0') {
+ if ($cid == 0) {
// No category
$ret = getMessage('_CATEGORY_NONE');
} elseif ($cid > 0) {
@@ -1123,7 +1121,7 @@ function removeReceiver (&$receivers, $key, $userid, $pool_id, $stats_id = '', $
// Calculate sum (default) or count records of given criteria
function countSumTotalData ($search, $tableName, $lookFor = 'id', $whereStatement = 'userid', $countRows = false, $add = '') {
$ret = 0;
- //* DEBUG: */ outputHtml($search.'/'.$tableName.'/'.$lookFor.'/'.$whereStatement.'/'.$add.'
');
+ //* DEBUG: */ print($search.'/'.$tableName.'/'.$lookFor.'/'.$whereStatement.'/'.$add.'
');
if ((empty($search)) && ($search != '0')) {
// Count or sum whole table?
if ($countRows === true) {
@@ -1137,12 +1135,12 @@ function countSumTotalData ($search, $tableName, $lookFor = 'id', $whereStatemen
}
} elseif (($countRows === true) || ($lookFor == 'userid')) {
// Count rows
- //* DEBUG: */ outputHtml("COUNT!
");
+ //* DEBUG: */ print("COUNT!
");
$result = SQL_QUERY_ESC("SELECT COUNT(`%s`) FROM `{?_MYSQL_PREFIX?}_%s` WHERE `%s`='%s'".$add,
array($lookFor, $tableName, $whereStatement, $search), __FUNCTION__, __LINE__);
} else {
// Add all rows
- //* DEBUG: */ outputHtml("SUM!
");
+ //* DEBUG: */ print("SUM!
");
$result = SQL_QUERY_ESC("SELECT SUM(`%s`) FROM `{?_MYSQL_PREFIX?}_%s` WHERE `%s`='%s'".$add,
array($lookFor, $tableName, $whereStatement, $search), __FUNCTION__, __LINE__);
}
@@ -1159,7 +1157,7 @@ function countSumTotalData ($search, $tableName, $lookFor = 'id', $whereStatemen
$ret = '0.00000';
} elseif (''.$ret.'' == '') {
// Fix empty result
- $ret = '0';
+ $ret = 0;
}
// Return value
@@ -1171,19 +1169,19 @@ function getReferalLevelPercents ($level) {
$per = 0;
// Do we have cache?
- if ((isset($GLOBALS['cache_array']['ref_depths']['level'])) && (isExtensionActive('cache'))) {
+ if ((isset($GLOBALS['cache_array']['refdepths']['level'])) && (isExtensionActive('cache'))) {
// First look for level
- $key = array_search($level, $GLOBALS['cache_array']['ref_depths']['level']);
+ $key = array_search($level, $GLOBALS['cache_array']['refdepths']['level']);
if ($key !== false) {
// Entry found!
- $per = $GLOBALS['cache_array']['ref_depths']['percents'][$key];
+ $per = $GLOBALS['cache_array']['refdepths']['percents'][$key];
// Count cache hit
incrementStatsEntry('cache_hits');
- }
+ } // END - if
} elseif (!isExtensionActive('cache')) {
// Get referal data
- $result_level = SQL_QUERY_ESC("SELECT percents FROM `{?_MYSQL_PREFIX?}_refdepths` WHERE level='%s' LIMIT 1",
+ $result_level = SQL_QUERY_ESC("SELECT `percents` FROM `{?_MYSQL_PREFIX?}_refdepths` WHERE `level`='%s' LIMIT 1",
array(bigintval($level)), __FUNCTION__, __LINE__);
// Entry found?
@@ -1213,13 +1211,13 @@ function getReferalLevelPercents ($level) {
* add_mode = Add points only to $userid or also refs? (WARNING! Changing 'ref' to 'direct'
* for default value will cause no referal will get points ever!!!)
*/
-function addPointsThroughReferalSystem ($subject, $userid, $points, $sendNotify = false, $rid = '0', $locked = false, $add_mode = 'ref') {
- //* DEBUG: */ outputHtml("----------------------- ".__FUNCTION__." - ENTRY ------------------------