r1771 - branches/bxe_2_0/js

[email protected] Fri, 26 Oct 2007 17:30:48 +0200 (CEST)
Newsgroups gmane.editors.bitflux.cvs
Message-ID <[email protected]>
Author: chregu
Date: Fri Oct 26 17:30:48 2007
New Revision: 1771

Log:
fix bxeb-51
Insert optional Childs


Modified:
   branches/bxe_2_0/js/bxeFunctions.js
   branches/bxe_2_0/js/widget.js

Modified: branches/bxe_2_0/js/bxeFunctions.js
==============================================================================
--- branches/bxe_2_0/js/bxeFunctions.js	(original)
+++ branches/bxe_2_0/js/bxeFunctions.js	Fri Oct 26 17:30:48 2007
@@ -1062,10 +1062,30 @@
 	} else {
 
 		var newNode =  bxe_config.xmldoc.createElementNS(e.additionalInfo.namespaceURI,e.additionalInfo.localName, 1 ) ;
-		newNode = aNode.parentNode.insertAfter(newNode,aNode._node);
 		
+		
+		if (e.additionalInfo.findFirstPosition) {
+			
+			newNode = aNode.parentNode.insertAfter(newNode,aNode._node);
+			//FIXME: we have to check it twice... WHY??
+			var _test = newNode.parentNode.isNodeValid(true,2,true);
+			var _test = newNode.parentNode.isNodeValid(true,2,true);
+			
+			if (!_test) {
+				var _nS = aNode.parentNode.firstChild;
+				newNode = aNode.parentNode.insertBefore(newNode._node,_nS._node);
+				_nS = _nS.nextSibling;
+				while (!newNode.parentNode.isNodeValid(true,2,true) && _nS && _nS._node) {
+					newNode = _nS.parentNode.insertBefore(newNode._node,_nS._node);
+					_nS = _nS.nextSibling;
+					
+				}
+			}
+			
+		} else {
+			newNode = aNode.parentNode.insertAfter(newNode,aNode._node);
+		}
 		var _id = newNode._node.setBxeId();
-		//FIXME: double validity check...
 		newNode.parentNode.isNodeValid(true,2);
 		
 		if( !newNode.makeDefaultNodes(e.additionalInfo.noPlaceholderText)) {

Modified: branches/bxe_2_0/js/widget.js
==============================================================================
--- branches/bxe_2_0/js/widget.js	(original)
+++ branches/bxe_2_0/js/widget.js	Fri Oct 26 17:30:48 2007
@@ -1043,7 +1043,7 @@
 							}
 						}
 						if (_p2) {
-							eDOMEventCall("appendNode",document,{"appendToNode": _p2.XMLNode, "localName":widget.InsertLocalName,"namespaceURI":widget.InsertNamespaceURI})
+							eDOMEventCall("appendNode",document,{"appendToNode": _p2.XMLNode, "localName":widget.InsertLocalName,"namespaceURI":widget.InsertNamespaceURI, "findFirstPosition": true})
 						}
 						
 					} 
-- 
Bx-editor-cvs mailing list
[email protected]
http://lists.bitflux.ch/cgi-bin/listinfo/bx-editor-cvs