X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Fextensions.php;h=ed6f43c50386877ce402900c253d32e7e7d4e8db;hb=6586600d8020147192e5f28ca2a3a0153f774d3c;hp=cfe82ae48efecd04076eb52701b78d3633ef19c8;hpb=f13b0c89b6dce2dc31ef3c58f0e2ad4821d7bee8;p=mailer.git
diff --git a/inc/extensions.php b/inc/extensions.php
index cfe82ae48e..ed6f43c503 100644
--- a/inc/extensions.php
+++ b/inc/extensions.php
@@ -38,17 +38,19 @@ if (!defined('__SECURITY')) {
}
//
-function EXTENSION_REGISTER ($ext_name, $id, $dry_run=false)
-{
+function EXTENSION_REGISTER ($ext_name, $id, $dry_run=false) {
global $NOTES, $_CONFIG, $INC_POOL, $cacheInstance;
+ // This shall never do a non-admin user!
+ if (!IS_ADMIN()) return false;
+
+ // Is this extension already installed?
+ if (EXT_IS_ACTIVE($ext_name)) return false;
+
// We want to register an extension and registration status is by default "failed" (= false)
$EXT_LOAD_MODE = "register"; $ret = false; $SQLs = array();
$INC_POOL = array();
- // This shall never do a non-admin user!
- if (!IS_ADMIN()) return false;
-
// By default the language prefix is the extension's name
// @TODO: Do we really need this one anymore? Can't we just take $ext_name and done?
$EXT_LANG_PREFIX = $ext_name;
@@ -56,9 +58,6 @@ function EXTENSION_REGISTER ($ext_name, $id, $dry_run=false)
// By default we have no failtures
$EXT_REPORTS_FAILURE = false;
- // Is this extension already installed?
- if (EXT_IS_ACTIVE($ext_name)) return false;
-
// Generate file name
$file = sprintf("%sinc/extensions/ext-%s.php", PATH, $ext_name);
@@ -120,7 +119,7 @@ function EXTENSION_REGISTER ($ext_name, $id, $dry_run=false)
// If versions mismatch update extension first
$ext_ver = GET_EXT_VERSION($EXT_UPDATE_DEPENDS);
- // Extension version set?
+ // Extension version set? If empty the extension is not registered
if (empty($ext_ver)) {
// Extension not registered so far so first load task's ID...
$result = SQL_QUERY_ESC("SELECT id FROM "._MYSQL_PREFIX."_task_system WHERE task_type='EXTENSION' AND subject LIKE '[%s:]%%' LIMIT 1",
@@ -201,9 +200,9 @@ function EXTENSION_REGISTER ($ext_name, $id, $dry_run=false)
if ((EXT_IS_ACTIVE("cache")) || (GET_EXT_VERSION("cache") != "")) {
//* DEBUG: */ echo __LINE__.": DESTROY!
\n";
// Remove cache files
- if ($cacheInstance->cache_file("extensions", true)) $cacheInstance->cache_destroy();
- if ($cacheInstance->cache_file("mod_reg")) $cacheInstance->cache_destroy();
- if ($cacheInstance->cache_file("config")) $cacheInstance->cache_destroy();
+ if ($cacheInstance->loadCacheFile("extensions", true)) $cacheInstance->destroyCacheFile();
+ if ($cacheInstance->loadCacheFile("mod_reg")) $cacheInstance->destroyCacheFile();
+ if ($cacheInstance->loadCacheFile("config")) $cacheInstance->destroyCacheFile();
} // END - if
// Check for added include files
@@ -338,9 +337,9 @@ function EXTENSION_RUN_SQLS($id, $EXT_LOAD_MODE) {
if (((EXT_IS_ACTIVE("cache")) || (GET_EXT_VERSION("cache") != "")) && (((SQL_AFFECTEDROWS() == 1)) || ($sqlRan === true) || ($EXT_LOAD_MODE == "activate") || ($EXT_LOAD_MODE == "deactivate"))) {
//* DEBUG: */ echo __LINE__.": DESTROY!
\n";
// Remove cache files
- if ($cacheInstance->cache_file("extensions", true)) $cacheInstance->cache_destroy();
- if ($cacheInstance->cache_file("mod_reg")) $cacheInstance->cache_destroy();
- if ($cacheInstance->cache_file("config")) $cacheInstance->cache_destroy();
+ if ($cacheInstance->loadCacheFile("extensions", true)) $cacheInstance->destroyCacheFile();
+ if ($cacheInstance->loadCacheFile("mod_reg")) $cacheInstance->destroyCacheFile();
+ if ($cacheInstance->loadCacheFile("config")) $cacheInstance->destroyCacheFile();
// @TODO This causes the whole (!) menu cache being purged
CACHE_PURGE_ADMIN_MENU();
@@ -537,9 +536,9 @@ function EXTENSION_UPDATE($file, $ext, $EXT_VER, $dry_run=false)
// Update cache
if (EXT_IS_ACTIVE("cache")) {
- if ($cacheInstance->cache_file("extensions", true)) $cacheInstance->cache_destroy();
- if ($cacheInstance->cache_file("config")) $cacheInstance->cache_destroy();
- if ($cacheInstance->cache_file("mod_reg")) $cacheInstance->cache_destroy();
+ if ($cacheInstance->loadCacheFile("extensions", true)) $cacheInstance->destroyCacheFile();
+ if ($cacheInstance->loadCacheFile("config")) $cacheInstance->destroyCacheFile();
+ if ($cacheInstance->loadCacheFile("mod_reg")) $cacheInstance->destroyCacheFile();
} // END - if
// Remove array