fis saving of disable flag of extensions

This commit is contained in:
Uwe Steinmann 2020-01-14 08:31:43 +01:00
parent 392a7e4a51
commit b59f906f27

View File

@ -716,10 +716,14 @@ class Settings { /* {{{ */
$extname = strval($tmp['name']);
if(isset($tmp['disable']))
$disabled = strval($tmp['disable']);
else
$disabled = 0;
$this->_extensions[$extname]['__disable__'] = $disabled=='1' || $disabled == 'true' ? true : false;
foreach($extension->children() as $parameter) {
$tmp2 = $parameter->attributes();
$this->_extensions[$extname][strval($tmp2['name'])] = strval($parameter);
/* Do not read a parameter with the same name. Just a pre caution */
if(strval($tmp2['name']) != '__disable__')
$this->_extensions[$extname][strval($tmp2['name'])] = strval($parameter);
}
}
@ -1058,7 +1062,7 @@ class Settings { /* {{{ */
* in configuration form.
*/
foreach($extension as $fieldname=>$confvalue) {
if($confvalue) {
if($fieldname != '___disable__' && $confvalue) {
$parameter = $extnode->addChild('parameter');
$parameter[0] = isset($extension[$fieldname]) ? (is_array($extension[$fieldname]) ? implode(',', $extension[$fieldname]) : $extension[$fieldname]) : '';
$this->setXMLAttributValue($parameter, 'name', $fieldname);