X-Git-Url: https://scm.cri.ensmp.fr/git/ckeditor.git/blobdiff_plain/256592bf803e851aa7fc953e08a6e9e58d970f8c..871bad8291b6dbc29d489d95d185458caab25158:/skins/ckeditor/_source/plugins/forms/dialogs/hiddenfield.js diff --git a/skins/ckeditor/_source/plugins/forms/dialogs/hiddenfield.js b/skins/ckeditor/_source/plugins/forms/dialogs/hiddenfield.js new file mode 100644 index 0000000..ce63239 --- /dev/null +++ b/skins/ckeditor/_source/plugins/forms/dialogs/hiddenfield.js @@ -0,0 +1,100 @@ +/* +Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.html or http://ckeditor.com/license +*/ +CKEDITOR.dialog.add( 'hiddenfield', function( editor ) +{ + return { + title : editor.lang.hidden.title, + hiddenField : null, + minWidth : 350, + minHeight : 110, + onShow : function() + { + delete this.hiddenField; + + var editor = this.getParentEditor(), + selection = editor.getSelection(), + element = selection.getSelectedElement(); + + if ( element && element.data( 'cke-real-element-type' ) && element.data( 'cke-real-element-type' ) == 'hiddenfield' ) + { + this.hiddenField = element; + element = editor.restoreRealElement( this.hiddenField ); + this.setupContent( element ); + selection.selectElement( this.hiddenField ); + } + }, + onOk : function() + { + var name = this.getValueOf( 'info', '_cke_saved_name' ), + value = this.getValueOf( 'info', 'value' ), + editor = this.getParentEditor(), + element = CKEDITOR.env.ie && !( CKEDITOR.document.$.documentMode >= 8 ) ? + editor.document.createElement( '' ) + : editor.document.createElement( 'input' ); + + element.setAttribute( 'type', 'hidden' ); + this.commitContent( element ); + var fakeElement = editor.createFakeElement( element, 'cke_hidden', 'hiddenfield' ); + if ( !this.hiddenField ) + editor.insertElement( fakeElement ); + else + { + fakeElement.replace( this.hiddenField ); + editor.getSelection().selectElement( fakeElement ); + } + return true; + }, + contents : [ + { + id : 'info', + label : editor.lang.hidden.title, + title : editor.lang.hidden.title, + elements : [ + { + id : '_cke_saved_name', + type : 'text', + label : editor.lang.hidden.name, + 'default' : '', + accessKey : 'N', + setup : function( element ) + { + this.setValue( + element.data( 'cke-saved-name' ) || + element.getAttribute( 'name' ) || + '' ); + }, + commit : function( element ) + { + if ( this.getValue() ) + element.setAttribute( 'name', this.getValue() ); + else + { + element.removeAttribute( 'name' ); + } + } + }, + { + id : 'value', + type : 'text', + label : editor.lang.hidden.value, + 'default' : '', + accessKey : 'V', + setup : function( element ) + { + this.setValue( element.getAttribute( 'value' ) || '' ); + }, + commit : function( element ) + { + if ( this.getValue() ) + element.setAttribute( 'value', this.getValue() ); + else + element.removeAttribute( 'value' ); + } + } + ] + } + ] + }; +});