(function() { function referenceFootnotesDialog( editor, isEdit ) { return { title : Drupal.t('Reference Footnotes Dialog'), minWidth : 500, minHeight : 50, contents : [ { id: 'info', label: Drupal.t('Add a reference footnote'), title: Drupal.t('Add a reference footnote'), elements: [ { id: 'reference', type: 'select', items: editor.config.referenceFootnotes_list, label: Drupal.t('Reference Footnote item:'), setup: function (element) { if (isEdit) this.setValue(element.getAttribute('reference')); } }, { id: 'footnote', type: 'textarea', label: Drupal.t('Or add free-form footnote text :'), setup: function (element) { if (isEdit) { var text = element.getText(); this.setValue(text); } } }, { id: 'page', type: 'text', labelLayout: 'horizontal', label: Drupal.t('Page(s):'), style: 'float:left:width:50px', setup: function (element) { if (isEdit) { this.setValue(element.getAttribute('page')); } } }, { id: 'value', type: 'text', label: Drupal.t('Value :'), labelLayout: 'horizontal', style: 'float:left;width:200px;', setup: function (element) { if (isEdit) this.setValue(element.getAttribute('value')); } } ], } ], onShow : function() { if (isEdit) { this.fakeObj = CKEDITOR.plugins.reference_footnotes.getSelectedFootnote( editor ); this.realObj = editor.restoreRealElement( this.fakeObj ); } this.setupContent( this.realObj ); }, onOk : function() { var referenceNote = this.getValueOf('info', 'reference'); var textNote = this.getValueOf('info', 'footnote'); var page = this.getValueOf('info', 'page'); CKEDITOR.plugins.reference_footnotes.createFootnote( editor, this.realObj, textNote, this.getValueOf('info', 'value'), referenceNote, page); delete this.fakeObj; delete this.realObj; } } } CKEDITOR.dialog.add( 'createreferencefootnotes', function( editor ) { return referenceFootnotesDialog( editor ); }); CKEDITOR.dialog.add( 'editreferencefootnotes', function( editor ) { return referenceFootnotesDialog( editor, 1 ); }); })();