Numerous ext-sponsor fixes and HTML rewrites (sorry for lame description)
[mailer.git] / inc / modules / admin / what-extensions.php
index b3cc40546d28d3bd1f15a9472b7b37eda6fdeeb1..3188fea46e789f9b31ba557dc5632f0cad0b5b02 100644 (file)
@@ -56,22 +56,26 @@ if (isGetRequestParameterSet('reg_ext')) {
        // The id comes from task management and it is - of course - *not* the extension's name!
 } elseif ((isFormSent('change')) && (ifPostContainsSelections()) && (!isDemoModeActive())) {
        // De-/activate extensions
-       foreach (postRequestParameter('sel') as $taskId => $active) {
+       foreach (postRequestParameter('sel') as $taskId => $ext_active) {
                // Shall we keep the extension always active?
-               if ((isset($GLOBALS['cache_array']['always_active'][getExtensionName($taskId)])) && ($GLOBALS['cache_array']['always_active'][getExtensionName($taskId)] == 'Y') && ($active == 'Y')) {
+               if ((isset($GLOBALS['cache_array']['always_active'][getExtensionName($taskId)])) && ($GLOBALS['cache_array']['always_active'][getExtensionName($taskId)] == 'Y') && ($ext_active == 'Y')) {
                        // Keep this extension active!
                        loadTemplate('admin_settings_saved', false, getMaskedMessage('ADMIN_EXTENSION_ALWAYS_ACTIVE', getExtensionName($taskId)));
                } else {
-                       // De/activate extension
-                       $active = 'N'; setExtensionMode('deactivate');
-                       if ($active != 'Y') {
+                       // Deactivation is default
+                       $active = 'N';
+                       setExtensionMode('deactivate');
+
+                       // Is the extension deactivated?
+                       if ($ext_active != 'Y') {
+                               // Then we can activate it
                                $active = 'Y';
                                setExtensionMode('activate');
                        } // END - if
 
                        // Update database
                        SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_extensions` SET `ext_active`='%s' WHERE `id`=%s AND `ext_active`='%s' LIMIT 1",
-                               array($active, bigintval($taskId), $active), __FILE__, __LINE__);
+                               array($active, bigintval($taskId), $ext_active), __FILE__, __LINE__);
 
                        // Run embeded SQL commands
                        doExtensionSqls($taskId, getExtensionMode());