mirror of
				https://git.code.sf.net/p/seeddms/code
				synced 2025-10-31 05:11:27 +00:00 
			
		
		
		
	add save and reading of extension configuration
This commit is contained in:
		
							parent
							
								
									0a3811c429
								
							
						
					
					
						commit
						386b0047b4
					
				|  | @ -185,6 +185,7 @@ class Settings { /* {{{ */ | |||
| 	var $_ldapAccountDomainName = ""; | ||||
| 	var $_ldapType = 1; // 0 = ldap; 1 = AD
 | ||||
| 	var $_converters = array(); // list of commands used to convert files to text for Indexer
 | ||||
| 	var $_extensions = array(); // configuration for extensions
 | ||||
| 
 | ||||
| 	/** | ||||
| 	 * Constructor | ||||
|  | @ -473,6 +474,17 @@ class Settings { /* {{{ */ | |||
| 			$tab = $converter->attributes(); | ||||
| 			$this->_converters[trim(strval($tab['mimeType']))] = trim(strval($converter)); | ||||
| 		} | ||||
| 
 | ||||
| 		// XML Path: /configuration/extensions
 | ||||
| 		$extensions = $xml->xpath('/configuration/extensions/extension'); | ||||
| 		$this->_extensions = array(); | ||||
| 		foreach($extensions as $extension) { | ||||
| 			$extname = strval($extension->attributes()['name']); | ||||
| 			foreach($extension->children() as $parameter) { | ||||
| 				$this->_extensions[$extname][strval($parameter->attributes()['name'])] = strval($parameter); | ||||
| 			} | ||||
| 		} | ||||
| 
 | ||||
| 		return true; | ||||
| 	} /* }}} */ | ||||
| 
 | ||||
|  | @ -727,6 +739,29 @@ class Settings { /* {{{ */ | |||
|     } // foreach
 | ||||
| 
 | ||||
| 
 | ||||
|     // XML Path: /configuration/extensions
 | ||||
|     $extnodes = $xml->xpath('/configuration/extensions'); | ||||
| 		if(!$extnodes) { | ||||
| 			$nodeParent = $xml->xpath('/configuration'); | ||||
| 			$extnodes = $nodeParent[0]->addChild("extensions"); | ||||
| 		} else { | ||||
| 			unset($xml->extensions); | ||||
| 			$extnodes = $xml->addChild("extensions"); | ||||
| 		} | ||||
|     foreach($this->_extensions as $name => $extension) | ||||
|     { | ||||
|       // search XML node
 | ||||
| 			$extnode = $extnodes->addChild('extension'); | ||||
|       $this->setXMLAttributValue($extnode, 'name', $name); | ||||
| 			foreach($GLOBALS['EXT_CONF'][$name]['config'] as $fieldname=>$conf) { | ||||
| 				$parameter = $extnode->addChild('parameter'); | ||||
| 				$parameter[0] = $extension[$fieldname]; | ||||
| 				$this->setXMLAttributValue($parameter, 'name', $fieldname); | ||||
| 			} | ||||
| 
 | ||||
| 
 | ||||
|     } // foreach
 | ||||
| 
 | ||||
|     // Save
 | ||||
|     return $xml->asXML($configFilePath); | ||||
|   } /* }}} */ | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 Uwe Steinmann
						Uwe Steinmann