new ckeditor
New ckeditor
This commit is contained in:
145
ckeditor/plugins/forms/dialogs/form.js
Normal file
145
ckeditor/plugins/forms/dialogs/form.js
Normal file
@@ -0,0 +1,145 @@
|
||||
/**
|
||||
* @license Copyright (c) 2003-2017, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.dialog.add( 'form', function( editor ) {
|
||||
var autoAttributes = { action: 1, id: 1, method: 1, enctype: 1, target: 1 };
|
||||
|
||||
return {
|
||||
title: editor.lang.forms.form.title,
|
||||
minWidth: 350,
|
||||
minHeight: 200,
|
||||
onShow: function() {
|
||||
delete this.form;
|
||||
|
||||
var path = this.getParentEditor().elementPath(),
|
||||
form = path.contains( 'form', 1 );
|
||||
|
||||
if ( form ) {
|
||||
this.form = form;
|
||||
this.setupContent( form );
|
||||
}
|
||||
},
|
||||
onOk: function() {
|
||||
var editor,
|
||||
element = this.form,
|
||||
isInsertMode = !element;
|
||||
|
||||
if ( isInsertMode ) {
|
||||
editor = this.getParentEditor();
|
||||
element = editor.document.createElement( 'form' );
|
||||
element.appendBogus();
|
||||
}
|
||||
|
||||
if ( isInsertMode )
|
||||
editor.insertElement( element );
|
||||
this.commitContent( element );
|
||||
},
|
||||
onLoad: function() {
|
||||
function autoSetup( element ) {
|
||||
this.setValue( element.getAttribute( this.id ) || '' );
|
||||
}
|
||||
|
||||
function autoCommit( element ) {
|
||||
if ( this.getValue() )
|
||||
element.setAttribute( this.id, this.getValue() );
|
||||
else
|
||||
element.removeAttribute( this.id );
|
||||
}
|
||||
|
||||
this.foreach( function( contentObj ) {
|
||||
if ( autoAttributes[ contentObj.id ] ) {
|
||||
contentObj.setup = autoSetup;
|
||||
contentObj.commit = autoCommit;
|
||||
}
|
||||
} );
|
||||
},
|
||||
contents: [ {
|
||||
id: 'info',
|
||||
label: editor.lang.forms.form.title,
|
||||
title: editor.lang.forms.form.title,
|
||||
elements: [ {
|
||||
id: 'txtName',
|
||||
bidi: true,
|
||||
type: 'text',
|
||||
label: editor.lang.common.name,
|
||||
'default': '',
|
||||
accessKey: 'N',
|
||||
setup: function( element ) {
|
||||
this.setValue( element.data( 'cke-saved-name' ) || element.getAttribute( 'name' ) || '' );
|
||||
},
|
||||
commit: function( element ) {
|
||||
if ( this.getValue() )
|
||||
element.data( 'cke-saved-name', this.getValue() );
|
||||
else {
|
||||
element.data( 'cke-saved-name', false );
|
||||
element.removeAttribute( 'name' );
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
id: 'action',
|
||||
type: 'text',
|
||||
label: editor.lang.forms.form.action,
|
||||
'default': '',
|
||||
accessKey: 'T'
|
||||
},
|
||||
{
|
||||
type: 'hbox',
|
||||
widths: [ '45%', '55%' ],
|
||||
children: [ {
|
||||
id: 'id',
|
||||
type: 'text',
|
||||
label: editor.lang.common.id,
|
||||
'default': '',
|
||||
accessKey: 'I'
|
||||
},
|
||||
{
|
||||
id: 'enctype',
|
||||
type: 'select',
|
||||
label: editor.lang.forms.form.encoding,
|
||||
style: 'width:100%',
|
||||
accessKey: 'E',
|
||||
'default': '',
|
||||
items: [
|
||||
[ '' ],
|
||||
[ 'text/plain' ],
|
||||
[ 'multipart/form-data' ],
|
||||
[ 'application/x-www-form-urlencoded' ]
|
||||
]
|
||||
} ]
|
||||
},
|
||||
{
|
||||
type: 'hbox',
|
||||
widths: [ '45%', '55%' ],
|
||||
children: [ {
|
||||
id: 'target',
|
||||
type: 'select',
|
||||
label: editor.lang.common.target,
|
||||
style: 'width:100%',
|
||||
accessKey: 'M',
|
||||
'default': '',
|
||||
items: [
|
||||
[ editor.lang.common.notSet, '' ],
|
||||
[ editor.lang.common.targetNew, '_blank' ],
|
||||
[ editor.lang.common.targetTop, '_top' ],
|
||||
[ editor.lang.common.targetSelf, '_self' ],
|
||||
[ editor.lang.common.targetParent, '_parent' ]
|
||||
]
|
||||
},
|
||||
{
|
||||
id: 'method',
|
||||
type: 'select',
|
||||
label: editor.lang.forms.form.method,
|
||||
accessKey: 'M',
|
||||
'default': 'GET',
|
||||
items: [
|
||||
[ 'GET', 'get' ],
|
||||
[ 'POST', 'post' ]
|
||||
]
|
||||
} ]
|
||||
} ]
|
||||
} ]
|
||||
};
|
||||
} );
|
||||
Reference in New Issue
Block a user