if ($load_mode == 'remove') {
// Delete this extension (remember to remove it from your server *before* you click on welcome!
SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{!_MYSQL_PREFIX!}_extensions` WHERE `ext_name`='%s' LIMIT 1",
- array(EXT_GET_CURR_NAME()), __FUNCTION__, __LINE__);
+ array(EXT_GET_CURR_NAME()), __FUNCTION__, __LINE__);
} // END - if
} // END - if
//* DEBUG: */ DEBUG_LOG(__FUNCTION__, __LINE__, "DB! ext_name={$ext_name}");
// Load from database
$result = SQL_QUERY_ESC("SELECT ext_active FROM `{!_MYSQL_PREFIX!}_extensions` WHERE `ext_name`='%s' LIMIT 1",
- array($ext_name), __FUNCTION__, __LINE__);
+ array($ext_name), __FUNCTION__, __LINE__);
// Entry found?
if (SQL_NUMROWS($result) == 1) {
if (SQL_NUMROWS($result) == 1) {
// Load entry
list($ext_ver) = SQL_FETCHROW($result);
- } else {
+ } elseif (isDebugModeEnabled()) {
// Not found!
DEBUG_LOG(__FUNCTION__, __LINE__, sprintf(": Cannot find extension %s in database!", $ext_name));
}
// Redirects if the provided extension is not installed
function redirectOnUninstalledExtension ($ext_name) {
// So is the extension there?
- if (!EXT_IS_ACTIVE($ext_name)) {
+ if ((!isExtensionInstalled($ext_name)) || (!EXT_IS_ACTIVE($ext_name))) {
// Redirect to index
redirectToUrl('modules.php?module=index&msg=' . getCode('EXTENSION_PROBLEM') . '&ext=' . $ext_name);
} // END - if
}
+// Determines wether the given extension is installed
+function isExtensionInstalled ($ext_name) {
+ // Default is not installed
+ $isInstalled = false;
+
+ // Check cache ext_version
+ $isInstalled = isset($GLOBALS['cache_array']['extensions']['ext_version'][$ext_name]);
+
+ // Return status
+ return $isInstalled;
+}
+
//
?>