import torrus 1.0.9
[freeside.git] / rt / share / html / NoAuth / RichText / FCKeditor / editor / _source / classes / fckdocumentfragment_ie.js
1 /*\r
2  * FCKeditor - The text editor for Internet - http://www.fckeditor.net\r
3  * Copyright (C) 2003-2009 Frederico Caldeira Knabben\r
4  *\r
5  * == BEGIN LICENSE ==\r
6  *\r
7  * Licensed under the terms of any of the following licenses at your\r
8  * choice:\r
9  *\r
10  *  - GNU General Public License Version 2 or later (the "GPL")\r
11  *    http://www.gnu.org/licenses/gpl.html\r
12  *\r
13  *  - GNU Lesser General Public License Version 2.1 or later (the "LGPL")\r
14  *    http://www.gnu.org/licenses/lgpl.html\r
15  *\r
16  *  - Mozilla Public License Version 1.1 or later (the "MPL")\r
17  *    http://www.mozilla.org/MPL/MPL-1.1.html\r
18  *\r
19  * == END LICENSE ==\r
20  *\r
21  * This is a generic Document Fragment object. It is not intended to provide\r
22  * the W3C implementation, but is a way to fix the missing of a real Document\r
23  * Fragment in IE (where document.createDocumentFragment() returns a normal\r
24  * document instead), giving a standard interface for it.\r
25  * (IE Implementation)\r
26  */\r
27 \r
28 var FCKDocumentFragment = function( parentDocument )\r
29 {\r
30         this._Document = parentDocument ;\r
31         this.RootNode = parentDocument.createElement( 'div' ) ;\r
32 }\r
33 \r
34 // Append the contents of this Document Fragment to another node.\r
35 FCKDocumentFragment.prototype =\r
36 {\r
37 \r
38         AppendTo : function( targetNode )\r
39         {\r
40                 FCKDomTools.MoveChildren( this.RootNode, targetNode ) ;\r
41         },\r
42 \r
43         AppendHtml : function( html )\r
44         {\r
45                 var eTmpDiv = this._Document.createElement( 'div' ) ;\r
46                 eTmpDiv.innerHTML = html ;\r
47                 FCKDomTools.MoveChildren( eTmpDiv, this.RootNode ) ;\r
48         },\r
49 \r
50         InsertAfterNode : function( existingNode )\r
51         {\r
52                 var eRoot = this.RootNode ;\r
53                 var eLast ;\r
54 \r
55                 while( ( eLast = eRoot.lastChild ) )\r
56                         FCKDomTools.InsertAfterNode( existingNode, eRoot.removeChild( eLast ) ) ;\r
57         }\r
58 } ;\r