From 758b2944d60ddca680f4012ef4b427ed29be0227 Mon Sep 17 00:00:00 2001 From: Alexander O'Neill Date: Fri, 11 May 2018 06:49:00 -0300 Subject: [PATCH] Initial modification of Footnotes module to show citaitons in footnotes choooser. --- bibcite_footnotes.info.yml | 7 + bibcite_footnotes.module | 35 ++++ .../reference_footnotes/dialogs/footnotes.js | 59 ++++++ .../fakeobjects/lang/af.js | 11 ++ .../fakeobjects/lang/ar.js | 11 ++ .../fakeobjects/lang/bg.js | 11 ++ .../fakeobjects/lang/bn.js | 11 ++ .../fakeobjects/lang/bs.js | 11 ++ .../fakeobjects/lang/ca.js | 11 ++ .../fakeobjects/lang/cs.js | 11 ++ .../fakeobjects/lang/cy.js | 11 ++ .../fakeobjects/lang/da.js | 11 ++ .../fakeobjects/lang/de.js | 11 ++ .../fakeobjects/lang/el.js | 11 ++ .../fakeobjects/lang/en-au.js | 11 ++ .../fakeobjects/lang/en-ca.js | 11 ++ .../fakeobjects/lang/en-gb.js | 11 ++ .../fakeobjects/lang/en.js | 11 ++ .../fakeobjects/lang/eo.js | 11 ++ .../fakeobjects/lang/es.js | 11 ++ .../fakeobjects/lang/et.js | 11 ++ .../fakeobjects/lang/eu.js | 11 ++ .../fakeobjects/lang/fa.js | 11 ++ .../fakeobjects/lang/fi.js | 11 ++ .../fakeobjects/lang/fo.js | 11 ++ .../fakeobjects/lang/fr-ca.js | 11 ++ .../fakeobjects/lang/fr.js | 11 ++ .../fakeobjects/lang/gl.js | 11 ++ .../fakeobjects/lang/gu.js | 11 ++ .../fakeobjects/lang/he.js | 11 ++ .../fakeobjects/lang/hi.js | 11 ++ .../fakeobjects/lang/hr.js | 11 ++ .../fakeobjects/lang/hu.js | 11 ++ .../fakeobjects/lang/id.js | 11 ++ .../fakeobjects/lang/is.js | 11 ++ .../fakeobjects/lang/it.js | 11 ++ .../fakeobjects/lang/ja.js | 11 ++ .../fakeobjects/lang/ka.js | 11 ++ .../fakeobjects/lang/km.js | 11 ++ .../fakeobjects/lang/ko.js | 11 ++ .../fakeobjects/lang/ku.js | 11 ++ .../fakeobjects/lang/lt.js | 11 ++ .../fakeobjects/lang/lv.js | 11 ++ .../fakeobjects/lang/mk.js | 11 ++ .../fakeobjects/lang/mn.js | 11 ++ .../fakeobjects/lang/ms.js | 11 ++ .../fakeobjects/lang/nb.js | 11 ++ .../fakeobjects/lang/nl.js | 11 ++ .../fakeobjects/lang/no.js | 11 ++ .../fakeobjects/lang/pl.js | 11 ++ .../fakeobjects/lang/pt-br.js | 11 ++ .../fakeobjects/lang/pt.js | 11 ++ .../fakeobjects/lang/ro.js | 11 ++ .../fakeobjects/lang/ru.js | 11 ++ .../fakeobjects/lang/si.js | 11 ++ .../fakeobjects/lang/sk.js | 11 ++ .../fakeobjects/lang/sl.js | 11 ++ .../fakeobjects/lang/sq.js | 11 ++ .../fakeobjects/lang/sr-latn.js | 11 ++ .../fakeobjects/lang/sr.js | 11 ++ .../fakeobjects/lang/sv.js | 11 ++ .../fakeobjects/lang/th.js | 11 ++ .../fakeobjects/lang/tr.js | 11 ++ .../fakeobjects/lang/tt.js | 11 ++ .../fakeobjects/lang/ug.js | 11 ++ .../fakeobjects/lang/uk.js | 11 ++ .../fakeobjects/lang/vi.js | 11 ++ .../fakeobjects/lang/zh-cn.js | 11 ++ .../fakeobjects/lang/zh.js | 11 ++ .../reference_footnotes/fakeobjects/plugin.js | 183 ++++++++++++++++++ .../icons/reference_footnotes.png | Bin 0 -> 6204 bytes .../reference_footnotes/images/bgcolor.png | Bin 0 -> 906 bytes js/plugins/reference_footnotes/images/fn.png | Bin 0 -> 265 bytes .../reference_footnotes/images/fn_icon.png | Bin 0 -> 443 bytes .../reference_footnotes/images/fn_icon2.png | Bin 0 -> 262 bytes .../reference_footnotes/images/footnotes.png | Bin 0 -> 263 bytes .../images/hidpi/bgcolor.png | Bin 0 -> 2169 bytes .../images/hidpi/textcolor.png | Bin 0 -> 1725 bytes .../reference_footnotes/images/icon.png | Bin 0 -> 6204 bytes .../reference_footnotes/images/note_add.png | Bin 0 -> 225 bytes .../reference_footnotes/images/textcolor.png | Bin 0 -> 813 bytes js/plugins/reference_footnotes/plugin.js | 109 +++++++++++ src/Plugin/CKEditorPlugin/FakeObjects.php | 65 +++++++ .../CKEditorPlugin/ReferenceFootnotes.php | 97 ++++++++++ 84 files changed, 1281 insertions(+) create mode 100644 bibcite_footnotes.info.yml create mode 100644 bibcite_footnotes.module create mode 100644 js/plugins/reference_footnotes/dialogs/footnotes.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/af.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/ar.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/bg.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/bn.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/bs.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/ca.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/cs.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/cy.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/da.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/de.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/el.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/en-au.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/en-ca.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/en-gb.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/en.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/eo.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/es.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/et.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/eu.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/fa.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/fi.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/fo.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/fr-ca.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/fr.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/gl.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/gu.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/he.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/hi.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/hr.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/hu.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/id.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/is.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/it.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/ja.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/ka.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/km.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/ko.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/ku.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/lt.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/lv.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/mk.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/mn.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/ms.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/nb.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/nl.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/no.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/pl.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/pt-br.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/pt.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/ro.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/ru.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/si.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/sk.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/sl.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/sq.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/sr-latn.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/sr.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/sv.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/th.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/tr.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/tt.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/ug.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/uk.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/vi.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/zh-cn.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/lang/zh.js create mode 100644 js/plugins/reference_footnotes/fakeobjects/plugin.js create mode 100644 js/plugins/reference_footnotes/icons/reference_footnotes.png create mode 100644 js/plugins/reference_footnotes/images/bgcolor.png create mode 100644 js/plugins/reference_footnotes/images/fn.png create mode 100644 js/plugins/reference_footnotes/images/fn_icon.png create mode 100644 js/plugins/reference_footnotes/images/fn_icon2.png create mode 100644 js/plugins/reference_footnotes/images/footnotes.png create mode 100644 js/plugins/reference_footnotes/images/hidpi/bgcolor.png create mode 100644 js/plugins/reference_footnotes/images/hidpi/textcolor.png create mode 100644 js/plugins/reference_footnotes/images/icon.png create mode 100644 js/plugins/reference_footnotes/images/note_add.png create mode 100644 js/plugins/reference_footnotes/images/textcolor.png create mode 100644 js/plugins/reference_footnotes/plugin.js create mode 100644 src/Plugin/CKEditorPlugin/FakeObjects.php create mode 100644 src/Plugin/CKEditorPlugin/ReferenceFootnotes.php diff --git a/bibcite_footnotes.info.yml b/bibcite_footnotes.info.yml new file mode 100644 index 0000000..a980a83 --- /dev/null +++ b/bibcite_footnotes.info.yml @@ -0,0 +1,7 @@ +name: 'BibCite Footnotes' +type: module +description: 'Inline footnote links for BibCite References' +core: 8.x +package: 'Bibcite' +dependencies: + - bibcite diff --git a/bibcite_footnotes.module b/bibcite_footnotes.module new file mode 100644 index 0000000..9bd4f14 --- /dev/null +++ b/bibcite_footnotes.module @@ -0,0 +1,35 @@ +' . t('About') . ''; + $output .= '

' . t('Inline footnote links for BibCite References') . '

'; + return $output; + + default: + } +} + +/** + * Implements hook_theme(). + */ +function bibcite_footnotes_theme() { + return [ + 'bibcite_footnotes' => [ + 'render element' => 'children', + ], + ]; +} diff --git a/js/plugins/reference_footnotes/dialogs/footnotes.js b/js/plugins/reference_footnotes/dialogs/footnotes.js new file mode 100644 index 0000000..ae525da --- /dev/null +++ b/js/plugins/reference_footnotes/dialogs/footnotes.js @@ -0,0 +1,59 @@ +(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_footnote', + type: 'select', + items: editor.config.referenceFootnotes_list, + label: Drupal.t('Reference Footnote item:'), + setup: function (element) { + if (isEdit) + this.setValue(element.getText()); + } + }, + { + id: 'value', + type: 'text', + label: Drupal.t('Value :'), + labelLayout: 'horizontal', + style: 'float:left;width:100px;', + 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() { + CKEDITOR.plugins.reference_footnotes.createFootnote( editor, this.realObj, this.getValueOf('info', 'reference_footnote'), this.getValueOf('info', 'value')); + delete this.fakeObj; + delete this.realObj; + } + } + } + + CKEDITOR.dialog.add( 'createfootnotes', function( editor ) { + return referenceFootnotesDialog( editor ); + }); + CKEDITOR.dialog.add( 'editfootnotes', function( editor ) { + return referenceFootnotesDialog( editor, 1 ); + }); +})(); \ No newline at end of file diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/af.js b/js/plugins/reference_footnotes/fakeobjects/lang/af.js new file mode 100644 index 0000000..177f9a1 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/af.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'af', { + anchor: 'Anker', + flash: 'Flash animasie', + hiddenfield: 'Verborge veld', + iframe: 'IFrame', + unknown: 'Onbekende objek' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/ar.js b/js/plugins/reference_footnotes/fakeobjects/lang/ar.js new file mode 100644 index 0000000..4ae0a05 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/ar.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'ar', { + anchor: 'إرساء', + flash: 'رسم متحرك بالفلاش', + hiddenfield: 'إدراج حقل خفي', + iframe: 'iframe', + unknown: 'عنصر غير معروف' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/bg.js b/js/plugins/reference_footnotes/fakeobjects/lang/bg.js new file mode 100644 index 0000000..bef8d25 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/bg.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'bg', { + anchor: 'Кука', + flash: 'Флаш анимация', + hiddenfield: 'Скрито поле', + iframe: 'IFrame', + unknown: 'Неизвестен обект' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/bn.js b/js/plugins/reference_footnotes/fakeobjects/lang/bn.js new file mode 100644 index 0000000..1c5efac --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/bn.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'bn', { + anchor: 'Anchor', // MISSING + flash: 'Flash Animation', // MISSING + hiddenfield: 'Hidden Field', // MISSING + iframe: 'IFrame', // MISSING + unknown: 'Unknown Object' // MISSING +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/bs.js b/js/plugins/reference_footnotes/fakeobjects/lang/bs.js new file mode 100644 index 0000000..65b0642 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/bs.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'bs', { + anchor: 'Anchor', + flash: 'Flash Animation', // MISSING + hiddenfield: 'Hidden Field', // MISSING + iframe: 'IFrame', // MISSING + unknown: 'Unknown Object' // MISSING +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/ca.js b/js/plugins/reference_footnotes/fakeobjects/lang/ca.js new file mode 100644 index 0000000..dcc8832 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/ca.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'ca', { + anchor: 'Àncora', + flash: 'Animació Flash', + hiddenfield: 'Camp ocult', + iframe: 'IFrame', + unknown: 'Objecte desconegut' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/cs.js b/js/plugins/reference_footnotes/fakeobjects/lang/cs.js new file mode 100644 index 0000000..5e4e263 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/cs.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'cs', { + anchor: 'Záložka', + flash: 'Flash animace', + hiddenfield: 'Skryté pole', + iframe: 'IFrame', + unknown: 'Neznámý objekt' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/cy.js b/js/plugins/reference_footnotes/fakeobjects/lang/cy.js new file mode 100644 index 0000000..1ca6a48 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/cy.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'cy', { + anchor: 'Angor', + flash: 'Animeiddiant Flash', + hiddenfield: 'Maes Cudd', + iframe: 'IFrame', + unknown: 'Gwrthrych Anhysbys' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/da.js b/js/plugins/reference_footnotes/fakeobjects/lang/da.js new file mode 100644 index 0000000..fe906c9 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/da.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'da', { + anchor: 'Anker', + flash: 'Flashanimation', + hiddenfield: 'Skjult felt', + iframe: 'Iframe', + unknown: 'Ukendt objekt' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/de.js b/js/plugins/reference_footnotes/fakeobjects/lang/de.js new file mode 100644 index 0000000..f1296ca --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/de.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'de', { + anchor: 'Anker', + flash: 'Flash-Animation', + hiddenfield: 'Verstecktes Feld', + iframe: 'IFrame', + unknown: 'Unbekanntes Objekt' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/el.js b/js/plugins/reference_footnotes/fakeobjects/lang/el.js new file mode 100644 index 0000000..64a73c5 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/el.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'el', { + anchor: 'Άγκυρα', + flash: 'Ταινία Flash', + hiddenfield: 'Κρυφό Πεδίο', + iframe: 'IFrame', + unknown: 'Άγνωστο Αντικείμενο' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/en-au.js b/js/plugins/reference_footnotes/fakeobjects/lang/en-au.js new file mode 100644 index 0000000..82dd427 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/en-au.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'en-au', { + anchor: 'Anchor', // MISSING + flash: 'Flash Animation', // MISSING + hiddenfield: 'Hidden Field', // MISSING + iframe: 'IFrame', // MISSING + unknown: 'Unknown Object' // MISSING +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/en-ca.js b/js/plugins/reference_footnotes/fakeobjects/lang/en-ca.js new file mode 100644 index 0000000..bc388c6 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/en-ca.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'en-ca', { + anchor: 'Anchor', // MISSING + flash: 'Flash Animation', // MISSING + hiddenfield: 'Hidden Field', // MISSING + iframe: 'IFrame', // MISSING + unknown: 'Unknown Object' // MISSING +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/en-gb.js b/js/plugins/reference_footnotes/fakeobjects/lang/en-gb.js new file mode 100644 index 0000000..3ccc7d0 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/en-gb.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'en-gb', { + anchor: 'Anchor', + flash: 'Flash Animation', + hiddenfield: 'Hidden Field', + iframe: 'IFrame', + unknown: 'Unknown Object' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/en.js b/js/plugins/reference_footnotes/fakeobjects/lang/en.js new file mode 100644 index 0000000..bcf468a --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/en.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'en', { + anchor: 'Anchor', + flash: 'Flash Animation', + hiddenfield: 'Hidden Field', + iframe: 'IFrame', + unknown: 'Unknown Object' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/eo.js b/js/plugins/reference_footnotes/fakeobjects/lang/eo.js new file mode 100644 index 0000000..4f2b80f --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/eo.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'eo', { + anchor: 'Ankro', + flash: 'FlaŝAnimacio', + hiddenfield: 'Kaŝita kampo', + iframe: 'Enlinia Kadro (IFrame)', + unknown: 'Nekonata objekto' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/es.js b/js/plugins/reference_footnotes/fakeobjects/lang/es.js new file mode 100644 index 0000000..ef27d5e --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/es.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'es', { + anchor: 'Ancla', + flash: 'Animación flash', + hiddenfield: 'Campo oculto', + iframe: 'IFrame', + unknown: 'Objeto desconocido' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/et.js b/js/plugins/reference_footnotes/fakeobjects/lang/et.js new file mode 100644 index 0000000..99d6515 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/et.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'et', { + anchor: 'Ankur', + flash: 'Flashi animatsioon', + hiddenfield: 'Varjatud väli', + iframe: 'IFrame', + unknown: 'Tundmatu objekt' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/eu.js b/js/plugins/reference_footnotes/fakeobjects/lang/eu.js new file mode 100644 index 0000000..5855cc6 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/eu.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'eu', { + anchor: 'Aingura', + flash: 'Flash animazioa', + hiddenfield: 'Ezkutuko eremua', + iframe: 'IFrame-a', + unknown: 'Objektu ezezaguna' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/fa.js b/js/plugins/reference_footnotes/fakeobjects/lang/fa.js new file mode 100644 index 0000000..5dc042b --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/fa.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'fa', { + anchor: 'لنگر', + flash: 'انیمشن فلش', + hiddenfield: 'فیلد پنهان', + iframe: 'IFrame', + unknown: 'شیء ناشناخته' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/fi.js b/js/plugins/reference_footnotes/fakeobjects/lang/fi.js new file mode 100644 index 0000000..742dc6c --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/fi.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'fi', { + anchor: 'Ankkuri', + flash: 'Flash animaatio', + hiddenfield: 'Piilokenttä', + iframe: 'IFrame-kehys', + unknown: 'Tuntematon objekti' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/fo.js b/js/plugins/reference_footnotes/fakeobjects/lang/fo.js new file mode 100644 index 0000000..64c3ac4 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/fo.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'fo', { + anchor: 'Anchor', + flash: 'Flash Animation', + hiddenfield: 'Fjaldur teigur', + iframe: 'IFrame', + unknown: 'Ókent Object' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/fr-ca.js b/js/plugins/reference_footnotes/fakeobjects/lang/fr-ca.js new file mode 100644 index 0000000..f62269c --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/fr-ca.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'fr-ca', { + anchor: 'Ancre', + flash: 'Animation Flash', + hiddenfield: 'Champ caché', + iframe: 'IFrame', + unknown: 'Objet inconnu' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/fr.js b/js/plugins/reference_footnotes/fakeobjects/lang/fr.js new file mode 100644 index 0000000..4714545 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/fr.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'fr', { + anchor: 'Ancre', + flash: 'Animation Flash', + hiddenfield: 'Champ caché', + iframe: 'IFrame', + unknown: 'Objet inconnu' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/gl.js b/js/plugins/reference_footnotes/fakeobjects/lang/gl.js new file mode 100644 index 0000000..cc312ea --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/gl.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'gl', { + anchor: 'Ancoraxe', + flash: 'Animación «Flash»', + hiddenfield: 'Campo agochado', + iframe: 'IFrame', + unknown: 'Obxecto descoñecido' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/gu.js b/js/plugins/reference_footnotes/fakeobjects/lang/gu.js new file mode 100644 index 0000000..15f6648 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/gu.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'gu', { + anchor: 'અનકર', + flash: 'ફ્લેશ ', + hiddenfield: 'હિડન ', + iframe: 'IFrame', + unknown: 'અનનોન ઓબ્જેક્ટ' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/he.js b/js/plugins/reference_footnotes/fakeobjects/lang/he.js new file mode 100644 index 0000000..91ebc93 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/he.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'he', { + anchor: 'עוגן', + flash: 'סרטון פלאש', + hiddenfield: 'שדה חבוי', + iframe: 'חלון פנימי (iframe)', + unknown: 'אובייקט לא ידוע' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/hi.js b/js/plugins/reference_footnotes/fakeobjects/lang/hi.js new file mode 100644 index 0000000..8180fdb --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/hi.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'hi', { + anchor: 'ऐंकर इन्सर्ट/संपादन', + flash: 'Flash Animation', // MISSING + hiddenfield: 'गुप्त फ़ील्ड', + iframe: 'IFrame', // MISSING + unknown: 'Unknown Object' // MISSING +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/hr.js b/js/plugins/reference_footnotes/fakeobjects/lang/hr.js new file mode 100644 index 0000000..1e28c83 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/hr.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'hr', { + anchor: 'Sidro', + flash: 'Flash animacija', + hiddenfield: 'Sakriveno polje', + iframe: 'IFrame', + unknown: 'Nepoznati objekt' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/hu.js b/js/plugins/reference_footnotes/fakeobjects/lang/hu.js new file mode 100644 index 0000000..a6fe296 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/hu.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'hu', { + anchor: 'Horgony', + flash: 'Flash animáció', + hiddenfield: 'Rejtett mezõ', + iframe: 'IFrame', + unknown: 'Ismeretlen objektum' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/id.js b/js/plugins/reference_footnotes/fakeobjects/lang/id.js new file mode 100644 index 0000000..839b2ef --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/id.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'id', { + anchor: 'Anchor', // MISSING + flash: 'Animasi Flash', + hiddenfield: 'Kolom Tersembunyi', + iframe: 'IFrame', + unknown: 'Obyek Tak Dikenal' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/is.js b/js/plugins/reference_footnotes/fakeobjects/lang/is.js new file mode 100644 index 0000000..0e0ea7e --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/is.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'is', { + anchor: 'Anchor', // MISSING + flash: 'Flash Animation', // MISSING + hiddenfield: 'Hidden Field', // MISSING + iframe: 'IFrame', // MISSING + unknown: 'Unknown Object' // MISSING +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/it.js b/js/plugins/reference_footnotes/fakeobjects/lang/it.js new file mode 100644 index 0000000..b9a97dc --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/it.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'it', { + anchor: 'Ancora', + flash: 'Animazione Flash', + hiddenfield: 'Campo Nascosto', + iframe: 'IFrame', + unknown: 'Oggetto sconosciuto' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/ja.js b/js/plugins/reference_footnotes/fakeobjects/lang/ja.js new file mode 100644 index 0000000..77c756f --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/ja.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'ja', { + anchor: 'アンカー', + flash: 'Flash Animation', + hiddenfield: '不可視フィールド', + iframe: 'IFrame', + unknown: 'Unknown Object' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/ka.js b/js/plugins/reference_footnotes/fakeobjects/lang/ka.js new file mode 100644 index 0000000..c6d8550 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/ka.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'ka', { + anchor: 'ღუზა', + flash: 'Flash ანიმაცია', + hiddenfield: 'მალული ველი', + iframe: 'IFrame', + unknown: 'უცნობი ობიექტი' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/km.js b/js/plugins/reference_footnotes/fakeobjects/lang/km.js new file mode 100644 index 0000000..9b1cf85 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/km.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'km', { + anchor: 'យុថ្កា', + flash: 'Flash មាន​ចលនា', + hiddenfield: 'វាល​កំបាំង', + iframe: 'IFrame', + unknown: 'វត្ថុ​មិន​ស្គាល់' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/ko.js b/js/plugins/reference_footnotes/fakeobjects/lang/ko.js new file mode 100644 index 0000000..ba5d06c --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/ko.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'ko', { + anchor: '책갈피', + flash: '플래시 애니메이션', + hiddenfield: '숨은 입력 칸', + iframe: '아이프레임', + unknown: '알 수 없는 객체' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/ku.js b/js/plugins/reference_footnotes/fakeobjects/lang/ku.js new file mode 100644 index 0000000..d44c15a --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/ku.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'ku', { + anchor: 'لەنگەر', + flash: 'فلاش', + hiddenfield: 'شاردنەوەی خانه', + iframe: 'لەچوارچێوە', + unknown: 'بەرکارێکی نەناسراو' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/lt.js b/js/plugins/reference_footnotes/fakeobjects/lang/lt.js new file mode 100644 index 0000000..d6409cc --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/lt.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'lt', { + anchor: 'Žymė', + flash: 'Flash animacija', + hiddenfield: 'Paslėptas laukas', + iframe: 'IFrame', + unknown: 'Nežinomas objektas' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/lv.js b/js/plugins/reference_footnotes/fakeobjects/lang/lv.js new file mode 100644 index 0000000..88e0065 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/lv.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'lv', { + anchor: 'Iezīme', + flash: 'Flash animācija', + hiddenfield: 'Slēpts lauks', + iframe: 'Iframe', + unknown: 'Nezināms objekts' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/mk.js b/js/plugins/reference_footnotes/fakeobjects/lang/mk.js new file mode 100644 index 0000000..9c643cc --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/mk.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'mk', { + anchor: 'Anchor', + flash: 'Flash Animation', // MISSING + hiddenfield: 'Hidden Field', // MISSING + iframe: 'IFrame', // MISSING + unknown: 'Unknown Object' // MISSING +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/mn.js b/js/plugins/reference_footnotes/fakeobjects/lang/mn.js new file mode 100644 index 0000000..eb3894a --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/mn.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'mn', { + anchor: 'Зангуу', + flash: 'Flash Animation', // MISSING + hiddenfield: 'Нууц талбар', + iframe: 'IFrame', // MISSING + unknown: 'Unknown Object' // MISSING +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/ms.js b/js/plugins/reference_footnotes/fakeobjects/lang/ms.js new file mode 100644 index 0000000..f8415fa --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/ms.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'ms', { + anchor: 'Anchor', // MISSING + flash: 'Flash Animation', // MISSING + hiddenfield: 'Hidden Field', // MISSING + iframe: 'IFrame', // MISSING + unknown: 'Unknown Object' // MISSING +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/nb.js b/js/plugins/reference_footnotes/fakeobjects/lang/nb.js new file mode 100644 index 0000000..b97fe40 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/nb.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'nb', { + anchor: 'Anker', + flash: 'Flash-animasjon', + hiddenfield: 'Skjult felt', + iframe: 'IFrame', + unknown: 'Ukjent objekt' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/nl.js b/js/plugins/reference_footnotes/fakeobjects/lang/nl.js new file mode 100644 index 0000000..62a3283 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/nl.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'nl', { + anchor: 'Interne link', + flash: 'Flash animatie', + hiddenfield: 'Verborgen veld', + iframe: 'IFrame', + unknown: 'Onbekend object' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/no.js b/js/plugins/reference_footnotes/fakeobjects/lang/no.js new file mode 100644 index 0000000..5802ef6 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/no.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'no', { + anchor: 'Anker', + flash: 'Flash-animasjon', + hiddenfield: 'Skjult felt', + iframe: 'IFrame', + unknown: 'Ukjent objekt' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/pl.js b/js/plugins/reference_footnotes/fakeobjects/lang/pl.js new file mode 100644 index 0000000..0fcf1ec --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/pl.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'pl', { + anchor: 'Kotwica', + flash: 'Animacja Flash', + hiddenfield: 'Pole ukryte', + iframe: 'IFrame', + unknown: 'Nieznany obiekt' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/pt-br.js b/js/plugins/reference_footnotes/fakeobjects/lang/pt-br.js new file mode 100644 index 0000000..d4e60e2 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/pt-br.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'pt-br', { + anchor: 'Âncora', + flash: 'Animação em Flash', + hiddenfield: 'Campo Oculto', + iframe: 'IFrame', + unknown: 'Objeto desconhecido' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/pt.js b/js/plugins/reference_footnotes/fakeobjects/lang/pt.js new file mode 100644 index 0000000..9997f08 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/pt.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'pt', { + anchor: ' Inserir/Editar Âncora', + flash: 'Animação Flash', + hiddenfield: 'Campo oculto', + iframe: 'IFrame', + unknown: 'Objeto Desconhecido' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/ro.js b/js/plugins/reference_footnotes/fakeobjects/lang/ro.js new file mode 100644 index 0000000..ca41a83 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/ro.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'ro', { + anchor: 'Inserează/Editează ancoră', + flash: 'Flash Animation', // MISSING + hiddenfield: 'Câmp ascuns (HiddenField)', + iframe: 'IFrame', // MISSING + unknown: 'Unknown Object' // MISSING +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/ru.js b/js/plugins/reference_footnotes/fakeobjects/lang/ru.js new file mode 100644 index 0000000..2cc2ebe --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/ru.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'ru', { + anchor: 'Якорь', + flash: 'Flash анимация', + hiddenfield: 'Скрытое поле', + iframe: 'iFrame', + unknown: 'Неизвестный объект' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/si.js b/js/plugins/reference_footnotes/fakeobjects/lang/si.js new file mode 100644 index 0000000..fa2aee2 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/si.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'si', { + anchor: 'ආධාරය', + flash: 'Flash Animation', // MISSING + hiddenfield: 'සැඟවුණු ප්‍රදේශය', + iframe: 'IFrame', + unknown: 'Unknown Object' // MISSING +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/sk.js b/js/plugins/reference_footnotes/fakeobjects/lang/sk.js new file mode 100644 index 0000000..bca519a --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/sk.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'sk', { + anchor: 'Kotva', + flash: 'Flash animácia', + hiddenfield: 'Skryté pole', + iframe: 'IFrame', + unknown: 'Neznámy objekt' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/sl.js b/js/plugins/reference_footnotes/fakeobjects/lang/sl.js new file mode 100644 index 0000000..7231697 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/sl.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'sl', { + anchor: 'Sidro', + flash: 'Flash animacija', + hiddenfield: 'Skrito polje', + iframe: 'IFrame', + unknown: 'Neznan objekt' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/sq.js b/js/plugins/reference_footnotes/fakeobjects/lang/sq.js new file mode 100644 index 0000000..fdc878a --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/sq.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'sq', { + anchor: 'Spirancë', + flash: 'Objekt flash', + hiddenfield: 'Fushë e fshehur', + iframe: 'IFrame', + unknown: 'Objekt i Panjohur' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/sr-latn.js b/js/plugins/reference_footnotes/fakeobjects/lang/sr-latn.js new file mode 100644 index 0000000..c6d7746 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/sr-latn.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'sr-latn', { + anchor: 'Unesi/izmeni sidro', + flash: 'Flash Animation', // MISSING + hiddenfield: 'Skriveno polje', + iframe: 'IFrame', // MISSING + unknown: 'Unknown Object' // MISSING +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/sr.js b/js/plugins/reference_footnotes/fakeobjects/lang/sr.js new file mode 100644 index 0000000..6c3a91c --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/sr.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'sr', { + anchor: 'Anchor', // MISSING + flash: 'Flash Animation', // MISSING + hiddenfield: 'Hidden Field', // MISSING + iframe: 'IFrame', // MISSING + unknown: 'Unknown Object' // MISSING +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/sv.js b/js/plugins/reference_footnotes/fakeobjects/lang/sv.js new file mode 100644 index 0000000..e7548e7 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/sv.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'sv', { + anchor: 'Ankare', + flash: 'Flashanimation', + hiddenfield: 'Gömt fält', + iframe: 'iFrame', + unknown: 'Okänt objekt' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/th.js b/js/plugins/reference_footnotes/fakeobjects/lang/th.js new file mode 100644 index 0000000..431c6e8 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/th.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'th', { + anchor: 'แทรก/แก้ไข Anchor', + flash: 'ภาพอนิเมชั่นแฟลช', + hiddenfield: 'ฮิดเดนฟิลด์', + iframe: 'IFrame', + unknown: 'วัตถุไม่ทราบชนิด' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/tr.js b/js/plugins/reference_footnotes/fakeobjects/lang/tr.js new file mode 100644 index 0000000..7809bdb --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/tr.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'tr', { + anchor: 'Bağlantı', + flash: 'Flash Animasyonu', + hiddenfield: 'Gizli Alan', + iframe: 'IFrame', + unknown: 'Bilinmeyen Nesne' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/tt.js b/js/plugins/reference_footnotes/fakeobjects/lang/tt.js new file mode 100644 index 0000000..edce402 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/tt.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'tt', { + anchor: 'Якорь', + flash: 'Флеш анимациясы', + hiddenfield: 'Яшерен кыр', + iframe: 'IFrame', + unknown: 'Танылмаган объект' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/ug.js b/js/plugins/reference_footnotes/fakeobjects/lang/ug.js new file mode 100644 index 0000000..3b57ee9 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/ug.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'ug', { + anchor: 'لەڭگەرلىك نۇقتا', + flash: 'Flash جانلاندۇرۇم', + hiddenfield: 'يوشۇرۇن دائىرە', + iframe: 'IFrame', + unknown: 'يوچۇن نەڭ' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/uk.js b/js/plugins/reference_footnotes/fakeobjects/lang/uk.js new file mode 100644 index 0000000..c2a5b8d --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/uk.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'uk', { + anchor: 'Якір', + flash: 'Flash-анімація', + hiddenfield: 'Приховані Поля', + iframe: 'IFrame', + unknown: 'Невідомий об\'єкт' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/vi.js b/js/plugins/reference_footnotes/fakeobjects/lang/vi.js new file mode 100644 index 0000000..bf4374f --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/vi.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'vi', { + anchor: 'Điểm neo', + flash: 'Flash', + hiddenfield: 'Trường ẩn', + iframe: 'IFrame', + unknown: 'Đối tượng không rõ ràng' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/zh-cn.js b/js/plugins/reference_footnotes/fakeobjects/lang/zh-cn.js new file mode 100644 index 0000000..c25f110 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/zh-cn.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'zh-cn', { + anchor: '锚点', + flash: 'Flash 动画', + hiddenfield: '隐藏域', + iframe: 'IFrame', + unknown: '未知对象' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/lang/zh.js b/js/plugins/reference_footnotes/fakeobjects/lang/zh.js new file mode 100644 index 0000000..19bf223 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/lang/zh.js @@ -0,0 +1,11 @@ +/* +Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or http://ckeditor.com/license +*/ +CKEDITOR.plugins.setLang( 'fakeobjects', 'zh', { + anchor: '錨點', + flash: 'Flash 動畫', + hiddenfield: '隱藏欄位', + iframe: 'IFrame', + unknown: '無法辨識的物件' +} ); diff --git a/js/plugins/reference_footnotes/fakeobjects/plugin.js b/js/plugins/reference_footnotes/fakeobjects/plugin.js new file mode 100644 index 0000000..7779087 --- /dev/null +++ b/js/plugins/reference_footnotes/fakeobjects/plugin.js @@ -0,0 +1,183 @@ +/** + * @license Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved. + * For licensing, see LICENSE.md or http://ckeditor.com/license + */ + +( function() { + var cssStyle = CKEDITOR.htmlParser.cssStyle, + cssLength = CKEDITOR.tools.cssLength; + + var cssLengthRegex = /^((?:\d*(?:\.\d+))|(?:\d+))(.*)?$/i; + + // Replacing the former CSS length value with the later one, with + // adjustment to the length unit. + function replaceCssLength( length1, length2 ) { + var parts1 = cssLengthRegex.exec( length1 ), + parts2 = cssLengthRegex.exec( length2 ); + + // Omit pixel length unit when necessary, + // e.g. replaceCssLength( 10, '20px' ) -> 20 + if ( parts1 ) { + if ( !parts1[ 2 ] && parts2[ 2 ] == 'px' ) + return parts2[ 1 ]; + if ( parts1[ 2 ] == 'px' && !parts2[ 2 ] ) + return parts2[ 1 ] + 'px'; + } + + return length2; + } + + var htmlFilterRules = { + elements: { + $: function( element ) { + var attributes = element.attributes, + realHtml = attributes && attributes[ 'data-cke-realelement' ], + realFragment = realHtml && new CKEDITOR.htmlParser.fragment.fromHtml( decodeURIComponent( realHtml ) ), + realElement = realFragment && realFragment.children[ 0 ]; + + // Width/height in the fake object are subjected to clone into the real element. + if ( realElement && element.attributes[ 'data-cke-resizable' ] ) { + var styles = new cssStyle( element ).rules, + realAttrs = realElement.attributes, + width = styles.width, + height = styles.height; + + width && ( realAttrs.width = replaceCssLength( realAttrs.width, width ) ); + height && ( realAttrs.height = replaceCssLength( realAttrs.height, height ) ); + } + + return realElement; + } + } + }; + + CKEDITOR.plugins.add( 'fakeobjects', { + // jscs:disable maximumLineLength + lang: 'af,ar,bg,bn,bs,ca,cs,cy,da,de,el,en,en-au,en-ca,en-gb,eo,es,et,eu,fa,fi,fo,fr,fr-ca,gl,gu,he,hi,hr,hu,id,is,it,ja,ka,km,ko,ku,lt,lv,mk,mn,ms,nb,nl,no,pl,pt,pt-br,ro,ru,si,sk,sl,sq,sr,sr-latn,sv,th,tr,tt,ug,uk,vi,zh,zh-cn', // %REMOVE_LINE_CORE% + // jscs:enable maximumLineLength + + init: function( editor ) { + // Allow image with all styles and classes plus src, alt and title attributes. + // We need them when fakeobject is pasted. + editor.filter.allow( 'img[!data-cke-realelement,src,alt,title](*){*}', 'fakeobjects' ); + }, + + afterInit: function( editor ) { + var dataProcessor = editor.dataProcessor, + htmlFilter = dataProcessor && dataProcessor.htmlFilter; + + if ( htmlFilter ) { + htmlFilter.addRules( htmlFilterRules, { + applyToAll: true + } ); + } + } + } ); + + /** + * @member CKEDITOR.editor + * @todo + */ + CKEDITOR.editor.prototype.createFakeElement = function( realElement, className, realElementType, isResizable ) { + var lang = this.lang.fakeobjects, + label = lang[ realElementType ] || lang.unknown; + + var attributes = { + 'class': className, + 'data-cke-realelement': encodeURIComponent( realElement.getOuterHtml() ), + 'data-cke-real-node-type': realElement.type, + alt: label, + title: label, + align: realElement.getAttribute( 'align' ) || '' + }; + + // Do not set "src" on high-contrast so the alt text is displayed. (#8945) + if ( !CKEDITOR.env.hc ) + attributes.src = CKEDITOR.tools.transparentImageData; + + if ( realElementType ) + attributes[ 'data-cke-real-element-type' ] = realElementType; + + if ( isResizable ) { + attributes[ 'data-cke-resizable' ] = isResizable; + + var fakeStyle = new cssStyle(); + + var width = realElement.getAttribute( 'width' ), + height = realElement.getAttribute( 'height' ); + + width && ( fakeStyle.rules.width = cssLength( width ) ); + height && ( fakeStyle.rules.height = cssLength( height ) ); + fakeStyle.populate( attributes ); + } + + return this.document.createElement( 'img', { attributes: attributes } ); + }; + + /** + * @member CKEDITOR.editor + * @todo + */ + CKEDITOR.editor.prototype.createFakeParserElement = function( realElement, className, realElementType, isResizable ) { + var lang = this.lang.fakeobjects, + label = lang[ realElementType ] || lang.unknown, + html; + + var writer = new CKEDITOR.htmlParser.basicWriter(); + realElement.writeHtml( writer ); + html = writer.getHtml(); + + var attributes = { + 'class': className, + 'data-cke-realelement': encodeURIComponent( html ), + 'data-cke-real-node-type': realElement.type, + alt: label, + title: label, + align: realElement.attributes.align || '' + }; + + // Do not set "src" on high-contrast so the alt text is displayed. (#8945) + if ( !CKEDITOR.env.hc ) + attributes.src = CKEDITOR.tools.transparentImageData; + + if ( realElementType ) + attributes[ 'data-cke-real-element-type' ] = realElementType; + + if ( isResizable ) { + attributes[ 'data-cke-resizable' ] = isResizable; + var realAttrs = realElement.attributes, + fakeStyle = new cssStyle(); + + var width = realAttrs.width, + height = realAttrs.height; + + width !== undefined && ( fakeStyle.rules.width = cssLength( width ) ); + height !== undefined && ( fakeStyle.rules.height = cssLength( height ) ); + fakeStyle.populate( attributes ); + } + + return new CKEDITOR.htmlParser.element( 'img', attributes ); + }; + + /** + * @member CKEDITOR.editor + * @todo + */ + CKEDITOR.editor.prototype.restoreRealElement = function( fakeElement ) { + if ( fakeElement.data( 'cke-real-node-type' ) != CKEDITOR.NODE_ELEMENT ) + return null; + + var element = CKEDITOR.dom.element.createFromHtml( decodeURIComponent( fakeElement.data( 'cke-realelement' ) ), this.document ); + + if ( fakeElement.data( 'cke-resizable' ) ) { + var width = fakeElement.getStyle( 'width' ), + height = fakeElement.getStyle( 'height' ); + + width && element.setAttribute( 'width', replaceCssLength( element.getAttribute( 'width' ), width ) ); + height && element.setAttribute( 'height', replaceCssLength( element.getAttribute( 'height' ), height ) ); + } + + return element; + }; + +} )(); diff --git a/js/plugins/reference_footnotes/icons/reference_footnotes.png b/js/plugins/reference_footnotes/icons/reference_footnotes.png new file mode 100644 index 0000000000000000000000000000000000000000..d5124df3d34d7cd83031051aa0d312af42347a25 GIT binary patch literal 6204 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 D^_g?| literal 0 HcmV?d00001 diff --git a/js/plugins/reference_footnotes/images/bgcolor.png b/js/plugins/reference_footnotes/images/bgcolor.png new file mode 100644 index 0000000000000000000000000000000000000000..a313938d8bc0f72e3086129816be628c1a7aa100 GIT binary patch literal 906 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b zKpodXn9)gNb_D|i(_&8-#}JFtQzz}uj!u_ooge-^DqQH0zz6-<)9V%a%ChzR$cZY&CCQUfw-z5w41P?OUf6?UZ3iVdydBVPjsiRU)}#QODlBd+#^q zH@yG${rmj*`1t;sV-g`#1s!KCvv~f&hCi8S`t<4b@87(!5uBK*5O&pluHSRNjS)58 zE^hw>4{o?^P@9|kR-}TfhO>rmPF_yVA3@iP9ao}$cO9^7FYYt(-MMR57e7D${7w(U z`RD5&&DpF}6dqc?E<~%mXy=_B9X%X>6c28wx0_$jXLDt`>VFmyfd|KD&Ya1=`|i8n zjsiU#Mu&OVY&}wV=HS7DoEL;9_N%L_M+XN7|L-~>CU7-t>-}GU?XKN=$QUogQ*HVD zUsQa2y^fNjL|gn+ucgsSP49oNR{G=+D*toe|HiG~-X2W&(6!+Hd+Fygi4y;mm5S#* zf4hFonmb&FCj_lL^6FKV<@D3Fib~#>FJI<;F0(gIpK*eU=ZX-m{e8W?cg>Dncv&JL zFP{z!O_M3lD`R3}1Y8A=CQWo&=rC)U{oJ{8_iFdLHLG~;TNk!^YS`+pegZ5vAL<#$l zuM*Qa!hmU5wZt`|BqgyV)hf9t6-Y4{85kPt8kp-En1mRbTNxMwk+y-6m4SiplHI`c zjiezrKP5A*61N7MpUg*q8YDqB1m~xflqVLYGL)B>>t*I;7bhncr0V4trO$q6BL!5% N;OXk;vd$@?2>>a?jz9na literal 0 HcmV?d00001 diff --git a/js/plugins/reference_footnotes/images/fn.png b/js/plugins/reference_footnotes/images/fn.png new file mode 100644 index 0000000000000000000000000000000000000000..7b9b741c348accd5b70dcd086a8e72745a3fd320 GIT binary patch literal 265 zcmV+k0rvihP)Px#!%0LzR5;7slCcWHPz*&+O9ipuDuSznf6x!;l1&i0x;nXvqu}DKZccuJOPBWn z*LjQl5E*ZP`7aJaZGW3gCxzrHmDQ7)&=&!1b6@kV5v@usN$fbtq0Hn7QhwQh5o+kBzV6M zfj%$hv8b@D9x2S4Kv1RCQ79>p(YyU~dL P00000NkvXXu0mjfslaQ~ literal 0 HcmV?d00001 diff --git a/js/plugins/reference_footnotes/images/fn_icon.png b/js/plugins/reference_footnotes/images/fn_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..329accd23976bd52b4e6e376b5cdeb9695fc3206 GIT binary patch literal 443 zcmV;s0Yv_ZP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2igb+ z6bB+x*g75n00BEmL_t(I%k7X)D@0)!#edIxubDJhAuQ}8w(31k{wD3_dPc5?P9RCa8}QIo}ORtImRb-4{S6N&>kog9qo-& z_(fs*k?-AV4xFC_pND80I0f_*z~Z4$EGc^R!!B@hlAjT;75A9Axvjl@&XEgis0l0k z6Axg%P%P=NJZ1?XHhKn23ua6Kr;;`?B1D6*Iz)^2ES>C+u7D}NacLT+3&gpkMZ}I_ z9cI=g`7_`$2$;dvavgj`qfP0lYXkez=}Dw2aY~33J)> zjf+X&m!vyRreBQk9xPP$`9o}%{!Vp*`{Ji#ClQiXrHj~;xH5E~u-QL70(Y)*K0-AbW|YuPgg44t7ya)u6vGSb#!po-U3d7N?UF z76=$537eGP3p;w?z=Z=qP*t>ET-lB}Vu92@V*>*N1x>w_goFUQo!4I*>h&7f&XCcm zscAEKXe2q)to)wY)jO59%Zs1qmcDpp$kR~CeD?iqNePKH3*rvvGw^Nr`Xp}sXC59N xrWDBnpt0u+5*K+{9T4huIm&QYLqdgtVU>;H!j(JY9spg$;OXk;vd$@?2>_&fSZn|Q literal 0 HcmV?d00001 diff --git a/js/plugins/reference_footnotes/images/footnotes.png b/js/plugins/reference_footnotes/images/footnotes.png new file mode 100644 index 0000000000000000000000000000000000000000..f0e8224485cd4cac6db09bca4eec5a69ec1159c5 GIT binary patch literal 263 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|*pj^6T^Rm@ z;DWu&Cj&(|3p^r=85p>QL70(Y)*K0-AbW|YuPgga9wt!*uAd9?UIB&LJzX3_EKXky zzR1;}z+-cn1+^Dfy>NK;pltg|mbzAfMJ)nPH+sw~7w!At)3f}A z)={qWI~WQ|uIss}?sPi9ut8+gnREv2_gNEWEMDrIDd~FB_N1n^NLgU3Cd)SA=F`)z zo=yMEU+$*Sx$G(LoyGv;PqrI+f>Xug8h<`%ew)atwkfl3_9>u~7(8A5T-G@yGywo$ C=w2lN literal 0 HcmV?d00001 diff --git a/js/plugins/reference_footnotes/images/hidpi/bgcolor.png b/js/plugins/reference_footnotes/images/hidpi/bgcolor.png new file mode 100644 index 0000000000000000000000000000000000000000..54b3e18c4602dbf05cf21e897477998211c02dfa GIT binary patch literal 2169 zcmV-<2!{8GP)~)<~(1jo&N=;KW|jfjZ4>EDPUhy`bAP|zIp6Q^d%h#y z+pz-xAq0jHn5Ky#1VRWd=cTnqX^oT;r8Qb>0IXVa%QT5cBBbJRBEjJQrGS#_GGg1< zr4qiBXsxko$&;}dEzQk{zP_cva$r6XzfAeZfy2NieemGmnOu(1LIGb&EJFz5;V>=f zG@`F>AUkKy_ZRf^(9+U^VHoJom{|b6l%ZTMchkFv4&5aB`ug>|@7^P&WUN?3d@wl3 z^rj}JEna-r7Z)$y+I!t~NZ&_Qu|j{g5=50xrfFhY7JoT>m;?LveP?{np21V+&Q%}? znkIz9E4n&5aLQ#=6`#qlR7zFIq!a*#VN}R#7?X0x_kB#?r>Con1N--{44USk5TZgt zB_(sax_Zl{5=J%2WS5kZQmMqy(9j7fWf>q83K^+X>bh7gHf0e~O0*En>Fk_eE8fyt zBbB1Hr6unBK9*rjnp|s*>$;r$2!Kp zZI`Xu3xq%^g`T4Qq?8nkMcUfhj#eLyR)4M4_uLbI?bTNa1Of=lnleTp7`#vi0Hp6D zrNpQbXR_6gjE?F*?%9(9KL5^>Pr61RKu8Ey-FM&KUp@c)a4Z^a5R(X*t`^|A?!+^r zK7rO6U4LIUlu|g3!|2%9k&t2RKK8;3ZmhYPNMj>96ax5ldwctlVyRTY`Vujy#;-5V zfJ(2b`bn1-xJkq?CA`hi%*R_4ST6=7K z9MAJU9ZM;clt?KN7ek=yRPW+yJ>O?|WJGQm7)SxXO(m0vMT-Kh+3ZgnT3UV~dV584 zb2IM<8i@ex{LQXiiQ$nET-UuYUR~TvLZGX?dO_>CF1fR3KmO{X zMW;?|+<3Agp!B4hn%akkhB$NP3~jBgSC>woo~ME1{r#nAAn^9+*x1qXMP!^Bg6hQj zNm5E|+vc0M-0~67?*n$BfY$oh`gQC6w4k?l_k!Nu-5VZ$`1e}t2t+*xsxm62q+r`jOC$~gzdPRF zuiCR&QcISE0kLh{wnx+HbQ{3GPo4Vs?&ZsqfGE8Arao!g0GqGv==i~CKL2IQvM^1v z!nG;~Y7khT>HL2fK+?Y#d zGLT3ROeB_nZSi8LG8!s|#4t^Ez46A~#A176@i>3$?=Q_;z51g;rC+pmgdR3+uO4>GApGBhe8vb ze*E~Br=NM|&p+F+A?~^ERl#5| z%4N8ulm*kWK78bnM+!e&z4}YQZI0(*1_Fp<+qWYf2XAbQzI*T827K>wB%R_KIQZw!RQ{Om1MJI~)UL){w*T?RS6H!FW%WYvABz$v#8e5d zmH+?%C3HntbYx+4WjbSWWnpw>05UK!Gc7PSEiy1vF)=zYH##shD=;!TFfjJwrbz$* z03~!qSaf7zbY(hiZ)9m^c>ppnF*7YNHZ3wRR539+FgH3dG%GMNIxsMYzaI4f000?u vMObuGZ)S9NVRB^vcXxL#X>MzCV_|S*E^l&Yo9;Xs00000NkvXXu0mjf=#5-5mkSBeTQj0?3W3Mzu#bkRjO z1r^Lfd~IwK@i|Fm?##XC<>Jn?GfmpWS3PhRb1&bV-}%n}{J-zg!kIJpKZo^Cf(ZbK zu0AjZ=D!9Y0E{tk&cTR4Z2($pNTr~)-ZaQx24IXK^gMKDvj|)ljIk^4>Pdp%R#s4r zA}Fo@eE=eYZCTio%ORYcd?aw zWAHq9jsw;%&VK`d5h3(ExLsWUP`-WJHV7#prGyj$GD$G8XU~2rl?J*p8Q7N9A<%yW zKmaVxkq<*qsTAzmz59q1B3-x%A%wsk0|N}ete4Hgcil~8VRIQE0_PmQ>jJ>x((rIz zwJj{Agi;DH21CQcGueX&t(@#PGTl@N;q(qz~(8l}@VEXB2o~c)BHAo?#rNq9y zdmpA!X|Q_}V!R;$0pOe?7lxpbk^HXRyAKasFi|g+NC>mn8cY8`97EGfQZrxsT9WV zz4t*XmF{euKmUEL(SR1>O6&~*hzO2tqbHXGl}fjaj*lPGP0LM^1hrZXakJue#5fMZ zFidxE4EncjZHe(zu(}E%<(e$43&0se#`od$^Z>y0U4w&;Rti!|R4NrrPfwfvZQFQz z#p9eKo5{$NCr?&x?d$6y#$aiUJGO71qVe(5)w5?swb58prq=+pu3lFr11c72aA@cl z1CS_%IF7Nhx*E;Q%oqUcbsQ`Rg0G?|+Slrsh6{z>AHM$jiO}=jw-|#U>L}A|Ge883 zF*xbfd!$$>49e#2qbS0jefxd|Q26rYmlMr-s&1_TDY5Ih=iKK{o%-a3)2HG4J{V(g zY#S^L%Lv2w*AwHKYsiS;+BV=g0O!Yv2=ypJ6h-)Bc^Nb1^5@^p&nG;WgWa0>Ja{gL zh1Xw?5A5InjGF7Xk?`SmcG6NON)zG zY|bc-D`UmtOOi2=ZG&0X)oI&MY4!Wm^Sp({%a^gVxQL~tC0L9RfTO&5#O;o-<_L^2 zi0gHXJ@CN5i*s{KOUYF82yQPF>fg@KUr?3>YBv`m5MwYYz-JdOUVQu9*|W@bU2x99 z9mh-^KmOy&>S}t8uLnR#TkF+o6&KH)8v{_ihVQk73l~7`Wws?M#=sm0U%dKiH2Unb zA3S;J(BtiaOW%Cc^X)tDK(}nU8BYsm&VVxp&RA+7#=s~A9miLV!2SOo#af&Qq2r+Ip@$;;55qFXz(|Q#-g?XJX;rS9HHcCGAq0{}12v^!vztJW_6-_n z-U6+4+TjAgP0E1Q8bpLY0nIjpVp;yQlK=n!C3HntbYx+4WjbSWWnpw>05UK!Gc7PS zEiy1vF)=zYH##shD=;!TFfjJwrbz$*03~!qSaf7zbY(hiZ)9m^c>ppnF*7YNHZ3wR zR539+FgH3dG%GMNIxsMYzaI4f000?uMObuGZ)S9NVRB^vcXxL#X>MzCV_|S*E^l&Y To9;Xs00000NkvXXu0mjf;)5CX literal 0 HcmV?d00001 diff --git a/js/plugins/reference_footnotes/images/icon.png b/js/plugins/reference_footnotes/images/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..d5124df3d34d7cd83031051aa0d312af42347a25 GIT binary patch literal 6204 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 D^_g?| literal 0 HcmV?d00001 diff --git a/js/plugins/reference_footnotes/images/note_add.png b/js/plugins/reference_footnotes/images/note_add.png new file mode 100644 index 0000000000000000000000000000000000000000..6307bb8f851fde8209070c97a5d7a6a8d4d814cb GIT binary patch literal 225 zcmeAS@N?(olHy`uVBq!ia0vp^{2QL70(Y)*K0-AbW|YuPgg44n|%!eWrIC4g!S|JzX3_G|nd{ zNC+t`diw8wXLtEO_1g@mpE&EL*X(hf~Mp^J&nu}0!io`Dl2Gy(TC;UyB{{k&z N@O1TaS?83{1OQ&>My>z= literal 0 HcmV?d00001 diff --git a/js/plugins/reference_footnotes/images/textcolor.png b/js/plugins/reference_footnotes/images/textcolor.png new file mode 100644 index 0000000000000000000000000000000000000000..0d8e45907bca4c92dc43ced827d1896e968ec27c GIT binary patch literal 813 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b zKpodXn9)gNb_D|ilbffDV~EA+-r)1z(vBkk?#=c*<~!%C)=p0iiF~)!?Pe;jUe%vh zv3qa)687=M%KuIWCr^>9e((4pU!W_%>*PkkRROP0PSR+JE#JJ^+V+ah&4h*T&5YmI z+TW{oPESvt!K1`v?Ciy<)U;LXn8cDyuIyaB@O$ApOIxl<&3m5u-Q3(xJ>J~S3Qq?t?7)P_qjSajwTg`+=+;fuMb*(y|Ae0Q&-2msBGr@-;2X4 zChd*U>+jpWHHtS-Br!8{B~t=7!;&+*pB0vAs>WPr6`VSK`tlbGZ)>;L}!>mMkh`nGJhrwf1Vb=Qp%EP_uNXGr!ve$baXeP&^8 z?cc>$vsw>7{7{sa$H#Dw;lP(KCCi$Q&n{R0U%2^Z4DVrqzjgm3x8MFNz;dwJqHp7l z9XotoQrDJlQ?7~s9CO`u{q^6mtFQW9zjn*3Z0YX>Z?e zW@dITHa1q)J&@)6=M5V+7+ii?a_ef=S3$wGzxLfve72u!%~oKb?%2DxR%>aC;WHzi z!^!u*C$4RM|J%aG=8t5X;*_9oFJ7z=IBqyYvZS!Eapg))jim}pS&Wr^gH=46R6I8c zaw{sdoY-@`kSCdENe~x1JNvc}Ek}-tw>O=f@9uK*k9+>60F4Dep=@47muVmNe`Ig! zz2?Yj8@m>m%v4KUBT7;dOH!?pi&B9UgOP!uv95u+u7OF2p}CcTF%W4R7+Dz@_%7KE zOoB)na`RI%(<*Umu=&Y+1gJq0WJ7R%T1k0gQ7S`udAVL@UUqSEVnM22eo^}DcQ#T$ OMGT&]['buttons'][] + // in hook_wysiwyg_plugin(). + editor.ui.addButton && editor.ui.addButton( 'reference_footnotes', { + label: Drupal.t('Add a reference footnote'), + command: 'createfootnotes', + icon: 'reference_footnotes' + }); + + if (editor.addMenuItems) { + editor.addMenuGroup('reference_footnotes', 100); + editor.addMenuItems({ + footnotes: { + label: Drupal.t('Edit footnote'), + command: 'editfootnotes', + icon: 'reference_footnotes', + group: 'reference_footnotes' + } + }); + } + if (editor.contextMenu) { + editor.contextMenu.addListener( function( element, selection ) { + if ( !element || element.data('cke-real-element-type') != 'fn' ) + return null; + + return { footnotes: CKEDITOR.TRISTATE_ON }; + }); + } + + editor.on( 'doubleclick', function( evt ) { + if ( CKEDITOR.plugins.footnotes.getSelectedFootnote( editor ) ) + evt.data.dialog = 'editfootnotes'; + }); + + CKEDITOR.dialog.add( 'createfootnotes', this.path + 'dialogs/footnotes.js' ); + CKEDITOR.dialog.add( 'editfootnotes', this.path + 'dialogs/footnotes.js' ); + }, + afterInit : function( editor ) { + var dataProcessor = editor.dataProcessor, + dataFilter = dataProcessor && dataProcessor.dataFilter; + + if (dataFilter) { + dataFilter.addRules({ + elements: { + fn: function(element ) { + return editor.createFakeParserElement( element, 'cke_footnote', 'hiddenfield', false ); + } + } + }); + } + } + }); +})(); + +CKEDITOR.plugins.reference_footnotes = { + createFootnote: function( editor, origElement, text, value) { + if (!origElement) { + var realElement = CKEDITOR.dom.element.createFromHtml(''); + } + else { + realElement = origElement; + } + + if (text && text.length > 0 ) + realElement.setText(text); + if (value && value.length > 0 ) + realElement.setAttribute('value',value); + + var fakeElement = editor.createFakeElement( realElement , 'cke_footnote', 'hiddenfield', false ); + editor.insertElement(fakeElement); + }, + + getSelectedFootnote: function( editor ) { + var selection = editor.getSelection(); + var element = selection.getSelectedElement(); + var seltype = selection.getType(); + + if ( seltype == CKEDITOR.SELECTION_ELEMENT && element.data('cke-real-element-type') == 'hiddenfield') { + return element; + } + } +}; diff --git a/src/Plugin/CKEditorPlugin/FakeObjects.php b/src/Plugin/CKEditorPlugin/FakeObjects.php new file mode 100644 index 0000000..cdac432 --- /dev/null +++ b/src/Plugin/CKEditorPlugin/FakeObjects.php @@ -0,0 +1,65 @@ + [ + 'label' => t('Reference Footnotes'), + 'image' => drupal_get_path('module', 'bibcite_footnotes') . '/js/plugins/reference_footnotes/images/icon.png', + ], + ]; + } + + /** + * {@inheritdoc} + */ + public function getFile() { + // Make sure that the path to the plugin.js matches the file structure of + // the CKEditor plugin you are implementing. + return drupal_get_path('module', 'bibcite_footnotes') . '/js/plugins/reference_footnotes/plugin.js'; + } + + /** + * {@inheritdoc} + */ + public function isInternal() { + return FALSE; + } + + /** + * {@inheritdoc} + */ + public function getDependencies(Editor $editor) { + return ['fakeobjects']; + } + + /** + * {@inheritdoc} + */ + public function getLibraries(Editor $editor) { + return []; + } + + /** + * {@inheritdoc} + */ + public function getConfig(Editor $editor) { + $uid = \Drupal::currentUser()->id(); + + $query = \Drupal::service('entity.query'); + + $ref_ids = $query + ->get('bibcite_reference') + ->condition('uid', $uid) + ->execute(); + + $reference_storage = \Drupal::entityTypeManager()->getStorage('bibcite_reference')->loadMultiple($ref_ids); + $view_builder = \Drupal::entityTypeManager()->getViewBuilder('bibcite_reference'); + $options = []; + foreach($reference_storage as $ref_id => $ref_item) { + print_r($ref_id); + $build = $view_builder->view($ref_item, 'citation'); + $output = trim(strip_tags(render($build))); + $options[] = [$output, $ref_id]; + } + + return ['referenceFootnotes_list' => $options]; + } + +}