Fixed bug #5421: Problem ignoring extension constraints
authorJeff Segars <jsegars@alumni.rice.edu>
Thu, 10 Jan 2008 22:53:47 +0000 (22:53 +0000)
committerJeff Segars <jsegars@alumni.rice.edu>
Thu, 10 Jan 2008 22:53:47 +0000 (22:53 +0000)
git-svn-id: https://svn.typo3.org/TYPO3v4/Core/trunk@2879 709f56b5-9817-0410-a4d7-c38de5d9e867

ChangeLog
typo3/mod/tools/em/class.em_index.php

index efe493c..d07aaab 100755 (executable)
--- a/ChangeLog
+++ b/ChangeLog
@@ -4,6 +4,7 @@
 
 2008-01-10  Jeff Segars  <jeff@webempoweredchurch.org>
 
+       * Fixed bug #5421: Problem ignoring extension constraints
        * Fixed bug #7105: Default value of image_orient is invalid (Thanks to Steffen Kamper)
 
 2008-01-09  Benjamin Mack  <mack@xnos.org>
index 765ac32..d0302ce 100644 (file)
@@ -4105,6 +4105,7 @@ $EM_CONF[$_EXTKEY] = '.$this->arrayToCode($EM_CONF, 0).';
        function checkDependencies($extKey, $conf, $instExtInfo) {
                $content = '';
                $depError = false;
+               $depIgnore = false;
                $msg = array();
                $depsolver = t3lib_div::_POST('depsolver');
 
@@ -4113,6 +4114,7 @@ $EM_CONF[$_EXTKEY] = '.$this->arrayToCode($EM_CONF, 0).';
                                if($depsolver['ignore'][$depK]) {
                                        $msg[] = '<br />Dependency on '.$depK.' ignored as requested.
                                                <input type="hidden" value="1" name="depsolver[ignore]['.$depK.']" />';
+                                       $depIgnore = true;
                                        continue;
                                }
                                if($depK == 'php') {
@@ -4173,12 +4175,13 @@ $EM_CONF[$_EXTKEY] = '.$this->arrayToCode($EM_CONF, 0).';
                                }
                        }
                }
-               if($depError) {
+               if($depError || $depIgnore) {
                        $content.= $this->doc->section('Dependency Error',implode('<br />',$msg),0,1,2);
                }
 
                        // Check conflicts with other extensions:
                $conflictError = false;
+               $conflictIgnore = false;
                $msg = array();
 
                if (isset($conf['constraints']['conflicts']) && is_array($conf['constraints']['conflicts'])) {
@@ -4186,6 +4189,7 @@ $EM_CONF[$_EXTKEY] = '.$this->arrayToCode($EM_CONF, 0).';
                                if($depsolver['ignore'][$conflictK]) {
                                        $msg[] = '<br />Conflict with '.$conflictK.' ignored as requested.
                                                <input type="hidden" value="1" name="depsolver[ignore]['.$conflictK.']" />';
+                                       $conflictIgnore = true;
                                        continue;
                                }
                                if (t3lib_extMgm::isLoaded($conflictK)) {
@@ -4196,18 +4200,20 @@ $EM_CONF[$_EXTKEY] = '.$this->arrayToCode($EM_CONF, 0).';
                                }
                        }
                }
-               if($conflictError) {
+               if($conflictError || $conflictIgnore) {
                        $content.= $this->doc->section('Conflict Error',implode('<br />',$msg),0,1,2);
                }
 
                        // Check suggests on other extensions:
                if(isset($conf['constraints']['suggests']) && is_array($conf['constraints']['suggests'])) {
                        $suggestion = false;
+                       $suggestionIgnore = false;
                        $msg = array();
                        foreach($conf['constraints']['suggests'] as $suggestK => $suggestV)     {
                                if($depsolver['ignore'][$suggestK]) {
-                                       $msg[] = '<br />Suggestion of '.$suggestK.' acknowledged.
+                                       $msg[] = '<br />Suggestion of '.$suggestK.' ignored as requested.
                                <input type="hidden" value="1" name="depsolver[ignore]['.$suggestK.']" />';
+                                       $suggestionIgnore = true;
                                        continue;
                                }
                                if (!t3lib_extMgm::isLoaded($suggestK)) {
@@ -4223,7 +4229,7 @@ $EM_CONF[$_EXTKEY] = '.$this->arrayToCode($EM_CONF, 0).';
                                        $suggestion = true;
                                }
                        }
-                       if($suggestion) {
+                       if($suggestion || $suggestionIgnore) {
                                $content .= $this->doc->section('Extensions suggested by extension "'.$extKey.'"',implode('<br />',$msg),0,1,1);
                        }
                }