// 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
// 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`
} 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 (!isInstallationPhase()) {
+ // Unsupported state, but ignored in installation phase
+ logDebugMessage(__FUNCTION__, __LINE__, 'This should never be reached, module[' . gettype($module) . ']=' . $module . ',forceDb=' . intval($forceDb));
}
// Return status
// Is the module already registered?
if (!isModuleRegistered($module)) {
// Add it
- addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_mod_reg` (`module`, `title`, `locked`, `hidden`, `admin_only`, `mem_only`) VALUES ('" . $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",
$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();
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 (isInstallationPhase()) {
+ // 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]
?>