X-Git-Url: http://git.shiar.net/minimedit.git/blobdiff_plain/8da4e3db153de18c026cc8dda79bdc0947663c8a..a7131e1013d54f0a6f0e80d05d04ff724d68466e:/edit/page.js diff --git a/edit/page.js b/edit/page.js index d1f16bf..b21a038 100644 --- a/edit/page.js +++ b/edit/page.js @@ -1,3 +1,13 @@ +var pagebody; + +function editorcontents() { + return document.getElementsByClassName('static')[0]; +} + +function editorsetup() { + +CKEDITOR.disableAutoInline = true; + CKEDITOR.plugins.add('inlinesave', { init: function(editor) { editor.addCommand( 'inlinesave', { @@ -113,16 +123,20 @@ CKEDITOR.on('instanceCreated', function (event) { config.image2_alignClasses = ['left', 'center', 'right']; config.image2_disableResizer = true; config.stylesSet = [ - { name: 'Klein', element: 'small' }, - { name: 'Zijkant', element: 'span', attributes: { 'class': 'right' } }, - { name: 'Attributie', element: 'em', attributes: { 'class': 'right' } }, - { name: 'Quote', element: 'q' }, - { name: 'Gemarkeerd', element: 'span', styles: { 'background-color': 'Yellow' } }, - - { name: 'Kadertekst', element: 'aside' }, - { name: 'Uitgelijnd', element: 'div', attributes: { 'class': 'right' } }, + { name: 'Gerelateerd', element: 'aside' }, + { name: 'Voetnoot', element: 'div', attributes: { 'class': 'right' } }, { name: 'Kolom', element: 'div', attributes: { 'class': 'col' } }, + { name: 'Navigatie', element: 'p', attributes: { 'class': 'nav' } }, { name: 'Waarschuwing', element: 'div', attributes: { 'class': 'warn' } }, + + { name: 'Klein', element: 'small' }, + { name: 'Aanhaling', element: 'q' }, + { name: 'Doorstreept', element: 's' }, + { name: 'Gemarkeerd', element: 'mark' }, + { name: 'Rechts', element: 'span', attributes: { 'class': 'right' } }, + { name: 'Attributie', element: 'em', attributes: { 'class': 'right' } }, + { name: 'Ingelogd', element: 'span', attributes: { 'class': 'login' } }, + { name: 'Uitgelogd', element: 'span', attributes: { 'class': 'logout' } }, ]; config.pasteFilter = pastefilter; config.contentsCss = document.styleSheets[0].href; @@ -153,17 +167,15 @@ CKEDITOR.on('instanceCreated', function (event) { }; }); - CKEDITOR.disableAutoInline = true; - -// add edit link to menu -var pagebody = document.getElementsByClassName('static')[0]; if (pagebody) { + // add edit link to menu var editlink = document.querySelector('a[href="#edit"]'); if (editlink) editlink.onclick = function (e) { editlink.style.fontWeight = 'bold'; editlink.href = ''; editlink.onclick = undefined; + document.body.replaceChild(pagebody, editorcontents()); pagebody.setAttribute('contenteditable', true); pagebody.querySelectorAll('[data-dyn]').forEach(function (el) { let blockname = el.getAttribute('data-dyn'); @@ -182,3 +194,12 @@ if (pagebody) { } } +} + +document.addEventListener('DOMContentLoaded', function (e) { + pagebody = editorcontents().cloneNode(true); + var editorinc = document.createElement('script'); + editorinc.addEventListener('load', editorsetup); + editorinc.src = ckesrc; + document.getElementsByTagName('head')[0].appendChild(editorinc); +});