X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fmodule-functions.php;h=f7779d051a753df268060d7f378ae2ae5d2203b7;hp=9c9fafac9dcfacfedf6df4fc7cb9def38b36384e;hb=15e0995f7a4a4b2c9b1b1a9273f785cf13605829;hpb=16f0ea892c6537f1eff6549ab9a3baf1d6756a13 diff --git a/inc/module-functions.php b/inc/module-functions.php index 9c9fafac9d..f7779d051a 100644 --- a/inc/module-functions.php +++ b/inc/module-functions.php @@ -16,7 +16,7 @@ * $Author:: $ * * -------------------------------------------------------------------- * * Copyright (c) 2003 - 2009 by Roland Haeder * - * Copyright (c) 2009 - 2012 by Mailer Developer Team * + * Copyright (c) 2009 - 2013 by Mailer Developer Team * * For more information visit: http://mxchange.org * * * * This program is free software; you can redistribute it and/or modify * @@ -59,17 +59,17 @@ function getModuleTitle ($module) { incrementStatsEntry('cache_hits'); } elseif (!isExtensionActive('cache')) { // Load from database - $result = SQL_QUERY_ESC("SELECT `title` FROM `{?_MYSQL_PREFIX?}_mod_reg` WHERE `module`='%s' LIMIT 1", + $result = sqlQueryEscaped("SELECT `title` FROM `{?_MYSQL_PREFIX?}_mod_reg` WHERE `module`='%s' LIMIT 1", array($module), __FUNCTION__, __LINE__); // Is the entry there? - if (SQL_NUMROWS($result) == 1) { + if (sqlNumRows($result) == 1) { // Get the title from database - $data = SQL_FETCHARRAY($result); + $data = sqlFetchArray($result); } // END - if // Free the result - SQL_FREERESULT($result); + sqlFreeResult($result); } } // END - if @@ -85,7 +85,7 @@ function getModuleTitle ($module) { } else { // No name found $data['title'] = '{%message,UNKNOWN_MODULE_DETECTED_TITLE=' . $module . '%}'; - if ((is_resource($result)) && (SQL_HASZERONUMS($result))) { + if ((is_resource($result)) && (ifSqlHasZeroNums($result))) { // Add module to database and ignore return value checkModulePermissions($module); } // END - if @@ -116,7 +116,7 @@ function getModuleStatus ($module) { // Is the module_status entry there? if (!isModuleStatusSet($module)) { // Abort - reportBug('Module status not set. module=' . $module); + reportBug(__FUNCTION__, __LINE__, 'Module status not set. module=' . $module); } // END - if // Return it @@ -145,11 +145,11 @@ function isModuleRegistered ($module) { } elseif (!isExtensionActive('cache')) { // Check for module in database //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Using database.'); - $result = SQL_QUERY_ESC("SELECT `locked`, `hidden`, `admin_only`, `mem_only` FROM `{?_MYSQL_PREFIX?}_mod_reg` WHERE `module`='%s' LIMIT 1", + $result = sqlQueryEscaped("SELECT `locked`, `hidden`, `admin_only`, `mem_only` FROM `{?_MYSQL_PREFIX?}_mod_reg` WHERE `module`='%s' LIMIT 1", array($module), __FUNCTION__, __LINE__); - if (SQL_NUMROWS($result) == 1) { + if (sqlNumRows($result) == 1) { // Read data - $data = SQL_FETCHARRAY($result); + $data = sqlFetchArray($result); // Set all entries foreach ($data as $key => $value) { @@ -164,7 +164,7 @@ function isModuleRegistered ($module) { } // Free result - SQL_FREERESULT($result); + sqlFreeResult($result); } // Return status @@ -241,7 +241,7 @@ function checkModulePermissions ($module = '') { setModuleStatus($module_chk, 'major'); // Check if script is installed if not return a 'done' to prevent some errors - if ((isInstallationPhase()) || (!isAdminRegistered())) { + if ((isInstaller()) || (!isAdminRegistered())) { // Not installed or no admin registered or in installation phase setModuleStatus($module_chk, 'done'); @@ -271,7 +271,7 @@ function checkModulePermissions ($module = '') { setModuleStatus($module_chk, 'admin_only'); } else { // @TODO Nothing helped??? - logDebugMessage(__FUNCTION__, __LINE__, sprintf("ret=%s,locked=%d,hidden=%d,mem=%d,admin=%d", + logDebugMessage(__FUNCTION__, __LINE__, sprintf('ret=%s,locked=%d,hidden=%d,mem=%d,admin=%d', getModuleStatus($module_chk), intval(isModuleLocked($module_chk)), intval(isModuleHidden($module_chk)), @@ -284,27 +284,27 @@ function checkModulePermissions ($module = '') { // Still no luck or not found? if (($found === FALSE) && (!isExtensionActive('cache')) && (getModuleStatus($module_chk) != 'done')) { // ----- Default module ----- ---- Module in base folder ---- --- Module with extension's name --- - if ((isIncludeReadable(sprintf("inc/modules/%s.php", $module))) || (isIncludeReadable(sprintf("%s.php", $module))) || (isIncludeReadable(sprintf("%s/%s.php", $extension, $module)))) { + if ((isIncludeReadable(sprintf('inc/modules/%s.php', $module))) || (isIncludeReadable($module . '.php')) || (isIncludeReadable(sprintf('%s/%s.php', $extension, $module)))) { // Data is missing so we add it if (isExtensionInstalledAndNewer('sql_patches', '0.3.6')) { /* - * Since 0.3.6 we have a has_menu column, this took me a half + * Since 0.3.6 there is a has_menu column, this took me a half * hour to find a loop here... *sigh* */ - SQL_QUERY_ESC("INSERT INTO `{?_MYSQL_PREFIX?}_mod_reg` + sqlQueryEscaped("INSERT INTO `{?_MYSQL_PREFIX?}_mod_reg` (`module`, `locked`, `hidden`, `mem_only`, `admin_only`, `has_menu`) VALUES ('%s','Y','N','N','N','N')", array($module_chk), __FUNCTION__, __LINE__); } else { // Wrong/missing sql_patches! - SQL_QUERY_ESC("INSERT INTO `{?_MYSQL_PREFIX?}_mod_reg` + sqlQueryEscaped("INSERT INTO `{?_MYSQL_PREFIX?}_mod_reg` (`module`, `locked`, `hidden`, `mem_only`, `admin_only`) VALUES ('%s','Y','N','N','N')", array($module_chk), __FUNCTION__, __LINE__); } // Everthing is fine? - if (SQL_HASZEROAFFECTED()) { + if (ifSqlHasZeroAffectedRows()) { // Something bad happend! setModuleStatus($module_chk, 'major'); return 'major'; @@ -328,7 +328,7 @@ VALUES rebuildCache('modules', 'modules'); } elseif ($found === FALSE) { // Problem with module detected - logDebugMessage(__FUNCTION__, __LINE__, sprintf("Problem in module %s detected. getModuleStatus()=%s,locked=%d,hidden=%d,mem=%d,admin=%d,output_mode=%s", + logDebugMessage(__FUNCTION__, __LINE__, sprintf('Problem in module %s detected. getModuleStatus()=%s,locked=%d,hidden=%d,mem=%d,admin=%d,output_mode=%s', $module_chk, getModuleStatus($module_chk), intval(isModuleLocked($module_chk)), @@ -340,7 +340,7 @@ VALUES } // Debug log - //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, sprintf("module=%s, status=%s", $module_chk, getModuleStatus($module_chk))); + //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, sprintf('module=%s, status=%s', $module_chk, getModuleStatus($module_chk))); // Return the value return getModuleStatus($module_chk); @@ -368,13 +368,13 @@ function ifModuleHasMenu ($module, $forceDb = FALSE) { } } elseif ((isExtensionInstalledAndNewer('sql_patches', '0.3.6')) && ((!isExtensionActive('cache')) || ($forceDb === TRUE))) { // Check database for entry - $result = SQL_QUERY_ESC("SELECT `has_menu` FROM `{?_MYSQL_PREFIX?}_mod_reg` WHERE `module`='%s' LIMIT 1", + $result = sqlQueryEscaped("SELECT `has_menu` FROM `{?_MYSQL_PREFIX?}_mod_reg` WHERE `module`='%s' LIMIT 1", array($module), __FUNCTION__, __LINE__); // Entry found? - if (SQL_NUMROWS($result) == 1) { + if (sqlNumRows($result) == 1) { // Load "has_menu" column - $data = SQL_FETCHARRAY($result); + $data = sqlFetchArray($result); // Fake cache... ;-) $GLOBALS['cache_array']['extension']['ext_menu'][$module] = $data['has_menu']; @@ -384,13 +384,13 @@ function ifModuleHasMenu ($module, $forceDb = FALSE) { } // END - if // Free memory - SQL_FREERESULT($result); + sqlFreeResult($result); } elseif (!isExtensionInstalled('sql_patches')) { // No ext-sql_patches installed, so maybe in admin/guest/member/sponsor area or no admin registered? $ret = in_array($module, array('admin', 'index', 'login', 'sponsor')); // Then there is a menu! - } else { - // Unsupported state! - logDebugMessage(__FUNCTION__, __LINE__, 'This should never be reached.'); + } elseif (!isInstaller()) { + // Unsupported state, but ignored in installation phase + logDebugMessage(__FUNCTION__, __LINE__, 'This should never be reached, module[' . gettype($module) . ']=' . $module . ',forceDb=' . intval($forceDb)); } // Return status @@ -405,7 +405,7 @@ function addModuleSql ($module, $title, $locked, $hidden, $adminOnly, $memOnly) addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_mod_reg` (`module`, `title`, `locked`, `hidden`, `admin_only`, `mem_only`) VALUES ('" . $module . "', '" . $title . "', '" . $locked . "', '" . $hidden . "', '" . $adminOnly . "', '" . $memOnly . "')"); } else { // Already registered - logDebugMessage(__FUNCTION__, __LINE__, sprintf("Already registered: module=%s,locked=%s,hidden=%s,admin=%s,mem=%s", + logDebugMessage(__FUNCTION__, __LINE__, sprintf('Already registered: module=%s,locked=%s,hidden=%s,admin=%s,mem=%s', $module, $locked, $hidden, @@ -421,7 +421,7 @@ function loadModule () { $isModuleValid = FALSE; // Construct module name - $GLOBALS['module_inc'] = sprintf("inc/modules/%s.php", getModule()); + $GLOBALS['module_inc'] = sprintf('inc/modules/%s.php', getModule()); // Check module permission (again) $moduleState = checkModulePermissions(); @@ -474,7 +474,7 @@ function loadModule () { default: // Unknown module status - logDebugMessage(__FUNCTION__, __LINE__, sprintf("Unknown status %s return from module check. Module=%s", $moduleState, getModule())); + logDebugMessage(__FUNCTION__, __LINE__, sprintf('Unknown status %s return from module check. Module=%s', $moduleState, getModule())); addFatalMessage(__FUNCTION__, __LINE__, '{%message,UNKNOWN_MODULE_STATUS=' . $moduleState . '%}'); break; } // END - switch @@ -501,7 +501,7 @@ function doIncludeModule () { if ((isExtensionActive('maintenance')) && (isMaintenanceEnabled()) && (!isAdmin()) && (getModule() != 'admin')) { // Maintain mode is active and you are no admin addFatalMessage(__FUNCTION__, __LINE__, '{--MAILER_DOWN_FOR_MAINTENANCE--}'); - } elseif ((SQL_IS_LINK_UP()) && (!ifFatalErrorsDetected())) { + } elseif ((isSqlLinkUp()) && (!ifFatalErrorsDetected())) { // Do the small "load module" call $isModuleValid = loadModule(); } elseif (!ifFatalErrorsDetected()) { @@ -525,5 +525,35 @@ function doIncludeModule () { loadIncludeOnce('inc/footer.php'); } +// "Getter" for menu mode from given module +function getMenuModeFromModule () { + // Is cache set? + if (!isset($GLOBALS[__FUNCTION__])) { + // Default is 'noindex' which is invalid for SQL tables but okay for meta data template + $GLOBALS[__FUNCTION__] = 'noindex'; + + // Determine it hard-coded + if (getModule() == 'login') { + // Is member area + $GLOBALS[__FUNCTION__] = 'member'; + } elseif (getModule() == 'index') { + // Is guest area + $GLOBALS[__FUNCTION__] = 'guest'; + } elseif (getModule() == 'admin') { + // Is admin area + $GLOBALS[__FUNCTION__] = 'admin'; + } elseif (isInstaller()) { + // Is installation phase + $GLOBALS[__FUNCTION__] = 'install'; + } else { + // Get it from filter + $GLOBALS[__FUNCTION__] = runFilterChain('determine_menu_mode'); + } + } // END - if + + // Return it + return $GLOBALS[__FUNCTION__]; +} + // [EOF] ?>