/* * FCKeditor - The text editor for Internet - http://www.fckeditor.net * Copyright (C) 2003-2010 Frederico Caldeira Knabben * * == BEGIN LICENSE == * * Licensed under the terms of any of the following licenses at your * choice: * * - GNU General Public License Version 2 or later (the "GPL") * http://www.gnu.org/licenses/gpl.html * * - GNU Lesser General Public License Version 2.1 or later (the "LGPL") * http://www.gnu.org/licenses/lgpl.html * * - Mozilla Public License Version 1.1 or later (the "MPL") * http://www.mozilla.org/MPL/MPL-1.1.html * * == END LICENSE == * * FCKXml Class: class to load and manipulate XML files. * (IE specific implementation) */ var FCKXml = function() { this.Error = false ; } FCKXml.GetAttribute = function( node, attName, defaultValue ) { var attNode = node.attributes.getNamedItem( attName ) ; return attNode ? attNode.value : defaultValue ; } /** * Transforms a XML element node in a JavaScript object. Attributes defined for * the element will be available as properties, as long as child element * nodes, but the later will generate arrays with property names prefixed with "$". * * For example, the following XML element: * * <SomeNode name="Test" key="2"> * <MyChild id="10"> * <OtherLevel name="Level 3" /> * </MyChild> * <MyChild id="25" /> * <AnotherChild price="499" /> * </SomeNode> * * ... results in the following object: * * { * name : "Test", * key : "2", * $MyChild : * [ * { * id : "10", * $OtherLevel : * { * name : "Level 3" * } * }, * { * id : "25" * } * ], * $AnotherChild : * [ * { * price : "499" * } * ] * } */ FCKXml.TransformToObject = function( element ) { if ( !element ) return null ; var obj = {} ; var attributes = element.attributes ; for ( var i = 0 ; i < attributes.length ; i++ ) { var att = attributes[i] ; obj[ att.name ] = att.value ; } var childNodes = element.childNodes ; for ( i = 0 ; i < childNodes.length ; i++ ) { var child = childNodes[i] ; if ( child.nodeType == 1 ) { var childName = '$' + child.nodeName ; var childList = obj[ childName ] ; if ( !childList ) childList = obj[ childName ] = [] ; childList.push( this.TransformToObject( child ) ) ; } } return obj ; }
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
fckcontextmenu.js | File | 6.07 KB | 0644 |
|
fckdataprocessor.js | File | 4.02 KB | 0644 |
|
fckdocumentfragment_gecko.js | File | 1.58 KB | 0644 |
|
fckdocumentfragment_ie.js | File | 1.69 KB | 0644 |
|
fckdomrange.js | File | 27.34 KB | 0644 |
|
fckdomrange_gecko.js | File | 3.16 KB | 0644 |
|
fckdomrange_ie.js | File | 5.99 KB | 0644 |
|
fckdomrangeiterator.js | File | 9.98 KB | 0644 |
|
fckeditingarea.js | File | 11.6 KB | 0644 |
|
fckelementpath.js | File | 2.2 KB | 0644 |
|
fckenterkey.js | File | 20.62 KB | 0644 |
|
fckevents.js | File | 1.88 KB | 0644 |
|
fckhtmliterator.js | File | 3.43 KB | 0644 |
|
fckicon.js | File | 2.97 KB | 0644 |
|
fckiecleanup.js | File | 1.99 KB | 0644 |
|
fckimagepreloader.js | File | 1.73 KB | 0644 |
|
fckkeystrokehandler.js | File | 4.38 KB | 0644 |
|
fckmenublock.js | File | 3.95 KB | 0644 |
|
fckmenublockpanel.js | File | 1.51 KB | 0644 |
|
fckmenuitem.js | File | 4.43 KB | 0644 |
|
fckpanel.js | File | 13.84 KB | 0644 |
|
fckplugin.js | File | 1.66 KB | 0644 |
|
fckspecialcombo.js | File | 11.36 KB | 0644 |
|
fckstyle.js | File | 45.74 KB | 0644 |
|
fcktoolbar.js | File | 2.75 KB | 0644 |
|
fcktoolbarbreak_gecko.js | File | 1.1 KB | 0644 |
|
fcktoolbarbreak_ie.js | File | 1.12 KB | 0644 |
|
fcktoolbarbutton.js | File | 2.41 KB | 0644 |
|
fcktoolbarbuttonui.js | File | 6.38 KB | 0644 |
|
fcktoolbarfontformatcombo.js | File | 3.55 KB | 0644 |
|
fcktoolbarfontscombo.js | File | 2.5 KB | 0644 |
|
fcktoolbarfontsizecombo.js | File | 2.11 KB | 0644 |
|
fcktoolbarpanelbutton.js | File | 3.43 KB | 0644 |
|
fcktoolbarspecialcombo.js | File | 4.17 KB | 0644 |
|
fcktoolbarstylecombo.js | File | 5.34 KB | 0644 |
|
fckw3crange.js | File | 13.26 KB | 0644 |
|
fckxml.js | File | 2.41 KB | 0644 |
|
fckxml_gecko.js | File | 3.03 KB | 0644 |
|
fckxml_ie.js | File | 2.46 KB | 0644 |
|