2 Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.
3 For licensing, see LICENSE.html or http://ckeditor.com/license
5 CKEDITOR.dialog.add( 'hiddenfield', function( editor )
8 title : editor.lang.hidden.title,
14 delete this.hiddenField;
16 var editor = this.getParentEditor(),
17 selection = editor.getSelection(),
18 element = selection.getSelectedElement();
20 if ( element && element.data( 'cke-real-element-type' ) && element.data( 'cke-real-element-type' ) == 'hiddenfield' )
22 this.hiddenField = element;
23 element = editor.restoreRealElement( this.hiddenField );
24 this.setupContent( element );
25 selection.selectElement( this.hiddenField );
30 var name = this.getValueOf( 'info', '_cke_saved_name' ),
31 value = this.getValueOf( 'info', 'value' ),
32 editor = this.getParentEditor(),
33 element = CKEDITOR.env.ie ? editor.document.createElement( '<input name="' + CKEDITOR.tools.htmlEncode( name ) + '">' ) : editor.document.createElement( 'input' );
35 element.setAttribute( 'type', 'hidden' );
36 this.commitContent( element );
37 var fakeElement = editor.createFakeElement( element, 'cke_hidden', 'hiddenfield' );
38 if ( !this.hiddenField )
39 editor.insertElement( fakeElement );
42 fakeElement.replace( this.hiddenField );
43 editor.getSelection().selectElement( fakeElement );
50 label : editor.lang.hidden.title,
51 title : editor.lang.hidden.title,
54 id : '_cke_saved_name',
56 label : editor.lang.hidden.name,
59 setup : function( element )
62 element.data( 'cke-saved-name' ) ||
63 element.getAttribute( 'name' ) ||
66 commit : function( element )
68 if ( this.getValue() )
69 element.setAttribute( 'name', this.getValue() );
72 element.removeAttribute( 'name' );
79 label : editor.lang.hidden.value,
82 setup : function( element )
84 this.setValue( element.getAttribute( 'value' ) || '' );
86 commit : function( element )
88 if ( this.getValue() )
89 element.setAttribute( 'value', this.getValue() );
91 element.removeAttribute( 'value' );