r1588 - branches/bxe_2_0/js

[email protected] Fri, 27 Oct 2006 14:49:13 +0200 (CEST)
Newsgroups gmane.editors.bitflux.cvs
Message-ID <[email protected]>
Author: chregu
Date: Fri Oct 27 14:49:12 2006
New Revision: 1588

Modified:
   branches/bxe_2_0/js/bxeXMLDocument.js
Log:
try again, if document wasn't loaded

Modified: branches/bxe_2_0/js/bxeXMLDocument.js
==============================================================================
--- branches/bxe_2_0/js/bxeXMLDocument.js	(original)
+++ branches/bxe_2_0/js/bxeXMLDocument.js	Fri Oct 27 14:49:12 2006
@@ -135,15 +135,21 @@
 		bxe_about_box.addText("XSLT loaded...");
 		xsldoc = e.currentTarget;
 		var xsltransformdoc = document.implementation.createDocument("", "", null);
-		xsltransformdoc.addEventListener("load", onload_xsltransform, false);
+		xsltransformdoc.addEventListener("load", this.onload_xsltransform, false);
 		xsltransformdoc.xsldoc = xsldoc;
 		xsltransformdoc.load(mozile_root_dir + "xsl/transformxsl.xsl");
 	}
 	
-	function onload_xsltransform (e) {
+	
+}
+XMLDocument.prototype.onload_xsltransform = function(e) {
 		var processor = new XSLTProcessor();
-		xsltransformdoc = e.currentTarget;
-		
+		if (bxe_config.xmldoc._originalXslTransformDoc) {
+			xsltransformdoc = bxe_config.xmldoc._originalXslTransformDoc;
+			bxe_config.xmldoc._originalXslTransformDoc = null;
+		} else {
+			xsltransformdoc = e.currentTarget;
+		}
 		processor.importStylesheet(xsltransformdoc);
 		try {
 			var newDocument = processor.transformToDocument(xsltransformdoc.xsldoc);
@@ -152,12 +158,12 @@
 			newDocument = newDocument.saveXML(newDocument);
 			var parser = new DOMParser();
 			newDocument = parser.parseFromString(newDocument,"text/xml");
-			
-			//dump(newDocument.saveXML(newDocument));
-			
-		}
-		catch (e) {
-			alert ( e + "\n\n "+bxe_i18n.getText("xsltransformdoc.xsldoc is : ") + xsltransformdoc.xsldoc);
+		} catch (f) {
+			bxe_config.xmldoc._originalXslTransformDoc = xsltransformdoc;
+			// try again later, if an error happens in transformations
+			window.setTimeout("bxe_config.xmldoc.onload_xsltransform(bxe_config.xmldoc._originalXslTransformEvent)",200);
+			return;
+			//alert ( f + "\n\n "+bxe_i18n.getText("xsltransformdoc.xsldoc is : ") + xsltransformdoc.xsldoc);
 		}
 		processor = new XSLTProcessor();
 		try {
@@ -187,8 +193,6 @@
 		xml_loaded(xsltransformdoc.xsldoc.xmldoc);
 	}
 	
-}
-
 
 XMLDocument.prototype.importXHTMLDocument = function(xhtmlfile) {
 	
-- 
Bx-editor-cvs mailing list
[email protected]
http://lists.bitflux.ch/cgi-bin/listinfo/bx-editor-cvs