]> git.mxchange.org Git - mailer.git/blobdiff - inc/extensions-functions.php
A lot texts rewritten and exclamation signs removed
[mailer.git] / inc / extensions-functions.php
index 710d154398739c4a7650de14256415e063ae11fd..f89233a146abd1604cbb8917b369c0b84e87bb73 100644 (file)
@@ -239,7 +239,7 @@ function registerExtension ($ext_name, $task_id, $dry_run = false, $logout = tru
 
                                // 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...
+                                       // Extension not registered so far so first load task's id...
                                        $task = determineExtensionTaskId($ext_update);
 
                                        // Entry found?
@@ -325,6 +325,9 @@ function registerExtension ($ext_name, $task_id, $dry_run = false, $logout = tru
                                // Remove all SQL commands
                                unsetSqls();
 
+                               // Mark it as installed
+                               $GLOBALS['ext_is_installed'][getCurrentExtensionName()] = true;
+
                                // In normal mode return a true on success
                                $ret = true;
                        } elseif (getExtensionDryRun() === true) {
@@ -434,7 +437,10 @@ function isExtensionInstalled ($ext_name) {
        $isInstalled = false;
 
        // Check if there is a cache entry
-       if (isset($GLOBALS['cache_array']['extension']['ext_id'][$ext_name])) {
+       if (isset($GLOBALS['ext_is_installed'][$ext_name])) {
+               // Use cache built from below queries
+               $isInstalled = $GLOBALS['ext_is_installed'][$ext_name];
+       } elseif (isset($GLOBALS['cache_array']['extension']['ext_id'][$ext_name])) {
                // Found!
                $isInstalled = true;
 
@@ -452,12 +458,15 @@ function isExtensionInstalled ($ext_name) {
 
                // Is it installed, then cache the entry
                if ($isInstalled === true) {
-                       // Dummy call
+                       // Dummy call (get is okay here)
                        getExtensionId($ext_name, true);
                } // END - if
 
                // Free result
                SQL_FREERESULT($result);
+
+               // Remember the status
+               $GLOBALS['ext_is_installed'][$ext_name] = $isInstalled;
        }
 
        // Return status
@@ -761,7 +770,7 @@ function getExtensionName ($ext_id) {
 
 // Get extension id from name
 function getExtensionId ($ext_name, $forceDb = false) {
-       // Init ID number
+       // Init id number
        $ret = 0;
 
        if (isset($GLOBALS['cache_array']['extension']['ext_id'][$ext_name])) {
@@ -779,13 +788,13 @@ function getExtensionId ($ext_name, $forceDb = false) {
                if (SQL_NUMROWS($result) == 1) {
                        // Get the extension's id from database
                        list($ret) = SQL_FETCHROW($result);
-
-                       // Cache it
-                       $GLOBALS['cache_array']['extension']['ext_id'][$ext_name] = $ret;
                } // END - if
 
                // Free result
                SQL_FREERESULT($result);
+
+               // Cache it
+               $GLOBALS['cache_array']['extension']['ext_id'][$ext_name] = $ret;
        }
 
        if ($ret == 0) {
@@ -1000,7 +1009,7 @@ function determineExtensionTaskId ($ext_name) {
 
        // Entry found?
        if (SQL_NUMROWS($result) == 1) {
-               // Task found so load task's ID and register extension...
+               // Task found so load task's id and register extension...
                list($task_id) = SQL_FETCHROW($result);
        } // END - if
 
@@ -1022,7 +1031,7 @@ function determineTaskIdBySubject ($subject) {
 
        // Entry found?
        if (SQL_NUMROWS($result) == 1) {
-               // Task found so load task's ID and register extension...
+               // Task found so load task's id and register extension...
                list($task_id) = SQL_FETCHROW($result);
        } // END - if