diff --git a/bl-languages/es.json b/bl-languages/es.json index 08375ad6..ed3dd47d 100644 --- a/bl-languages/es.json +++ b/bl-languages/es.json @@ -13,7 +13,7 @@ "manage-categories": "Administrar categorías", "general-settings": "Ajustes generales", "advanced-settings": "Ajustes avanzados", - "thanks-for-support-bludit": "Gracias por ayudar con Bludit", + "thanks-for-support-bludit": "Gracias por colaborar con Bludit.", "upgrade-to-bludit-pro": "Actualizar a Bludit PRO", "language": "Idioma", "plugin": "Complemento", @@ -152,7 +152,7 @@ "returning-page-when-the-page-doesnt-exist": "Cuando la página no existe se retorna esta página, de forma predeterminada devuelve un mensaje predefinido.", "returning-page-for-the-main-page": "Returning page for the main page, by default shows the latest content order by date or position.", "full-url-of-your-site": "Full URL of your site. Complete with the protocol HTTP or HTTPS (only if you have enabled SSL on your server).", - "with-the-locales-you-can-set-the-regional-user-interface": "With the locales, you can set the regional user interface, such as the dates in your language. The locales need to be installed on your system.", + "with-the-locales-you-can-set-the-regional-user-interface": "Con locales, puede establecer la interfaz de usuario regional, como las fechas en su idioma. Los locales deben estar instalados en su sistema.", "bludit-installer": "Bludit Instalador", "choose-your-language": "Seleccione su idioma", "next": "Siguiente", @@ -184,9 +184,9 @@ "current-status": "Current status", "upload-image": "Subir imagen", "the-changes-have-been-saved": "Los cambios fueron guardados", - "label": "Label", - "links": "Links", - "this-title-is-almost-always-used-in-the-sidebar-of-the-site": "This title is almost always used in the sidebar of the site.", + "label": "Etiqueta", + "links": "Enlaces", + "this-title-is-almost-always-used-in-the-sidebar-of-the-site": "Este titulo es usualmente utilizado en la barra lateral del sitio.", "password-must-be-at-least-6-characters-long": "La contraseña debe tener al menos 6 carácteres.", "ip-address-has-been-blocked": "La direccion IP fue bloqueada.", "try-again-in-a-few-minutes": "Vuelva a intentar en unos minutos.", @@ -194,7 +194,7 @@ "installer-page-about-content": "The about page is an important and powerful for potential clients and partners. For those who wonder who is behind the website, your About page is the first source of information.", "blog": "Blog", "complete-all-fields": "Complete all fields", - "static": "Static", + "static": "Estática", "about-your-site-or-yourself": "About your site or yourself", "homepage": "Homepage", "disabled": "Disabled", diff --git a/bl-plugins/api/languages/es.json b/bl-plugins/api/languages/es.json new file mode 100644 index 00000000..0bcb5085 --- /dev/null +++ b/bl-plugins/api/languages/es.json @@ -0,0 +1,11 @@ +{ + "plugin-data": + { + "name": "API", + "description": "Interfaz para interactuar con Bludit mediante el protocolo HTTP.
Leer más sobre este plugin en API introducción." + }, + "api-token": "API Token", + "amount-of-pages": "Cantidad de paginas", + "this-is-the-maximum-of-pages-to-return-when-you-call-to": "Este es el máximo de páginas a devolver cuando llame a /api/pages.", + "this-token-is-for-read-only-and-is-regenerated-every-time-you-install-the-plugin": "Este token es para sólo lectura y se regenera cada vez que se instala el plugin." +} \ No newline at end of file diff --git a/bl-plugins/categories/languages/es.json b/bl-plugins/categories/languages/es.json new file mode 100644 index 00000000..b210c588 --- /dev/null +++ b/bl-plugins/categories/languages/es.json @@ -0,0 +1,8 @@ +{ + "plugin-data": + { + "name": "Categorías", + "description": "Muestra todas las categorías del sistema en la barra lateral." + }, + "hide-categories-without-content": "Ocultar categorías sin contenido" +} diff --git a/bl-plugins/disqus/languages/es.json b/bl-plugins/disqus/languages/es.json index f956f048..f27f9bd5 100644 --- a/bl-plugins/disqus/languages/es.json +++ b/bl-plugins/disqus/languages/es.json @@ -1,11 +1,8 @@ { "plugin-data": { - "name": "Disqus sistema de comentarios", + "name": "Disqus", "description": "Disqus es un servicio de comentarios online. Es necesario registrarse en Disqus.com antes de utilizar este plugin." }, - "disqus-shortname": "Disqus shortname", - "enable-disqus-on-pages": "Habilitar Disqus en las páginas", - "enable-disqus-on-posts": "Habilitar Disqus en los posts", - "enable-disqus-on-default-home-page": "Habilitar Disqus en la página de inicio" + "disqus-shortname": "Disqus shortname" } \ No newline at end of file diff --git a/bl-plugins/latest-content/languages/en.json b/bl-plugins/latest-content/languages/en.json index de39e319..580bd515 100644 --- a/bl-plugins/latest-content/languages/en.json +++ b/bl-plugins/latest-content/languages/en.json @@ -2,10 +2,9 @@ "plugin-data": { "name": "Latest content", - "description": "Shows a list of pages, you can define the amount of items.
The order of the pages is taken from the settings of Bludit." + "description": "List of latest contents, you can set the number of items.
The order of the content is taken from the advanced settings of Bludit." }, - - "home-page": "Home page", - "show-home-link": "Show home link", + "home-link": "Home link", + "show-the-home-link-on-the-sidebar": "Show the home link on the sidebar.", "amount-of-items": "Amount of items" } diff --git a/bl-plugins/latest-content/languages/es.json b/bl-plugins/latest-content/languages/es.json new file mode 100644 index 00000000..6a406c88 --- /dev/null +++ b/bl-plugins/latest-content/languages/es.json @@ -0,0 +1,10 @@ +{ + "plugin-data": + { + "name": "Último contenido", + "description": "Lista los últimos contenidos, puede establecer el número de elementos.
El orden del contenido se toma de la configuración avanzada de Bludit." + }, + "home-link": "Enlace Home", + "show-the-home-link-on-the-sidebar": "Mostrar el vínculo de inicio en la barra lateral.", + "amount-of-items": "Cantidad de artículos" +} diff --git a/bl-plugins/latest-content/plugin.php b/bl-plugins/latest-content/plugin.php index ff8a57b5..4878009f 100644 --- a/bl-plugins/latest-content/plugin.php +++ b/bl-plugins/latest-content/plugin.php @@ -26,8 +26,8 @@ class pluginLatestContent extends Plugin { $html .= '
'; $html .= ''; $html .= ''; $html .= ''.$Language->get('Show the home link on the sidebar').''; $html .= '
'; diff --git a/bl-plugins/links/languages/es.json b/bl-plugins/links/languages/es.json new file mode 100644 index 00000000..0aba1a19 --- /dev/null +++ b/bl-plugins/links/languages/es.json @@ -0,0 +1,8 @@ +{ + "plugin-data": + { + "name": "Links", + "description": "Muestra una lista de enlaces en la barra lateral, puede modificar estos enlaces en la configuración del complemento." + }, + "add-a-new-link": "Nuevo enlance" +} diff --git a/bl-plugins/links/plugin.php b/bl-plugins/links/plugin.php index 0e9dc0d3..e8baa28e 100644 --- a/bl-plugins/links/plugin.php +++ b/bl-plugins/links/plugin.php @@ -71,7 +71,7 @@ class pluginLinks extends Plugin { $html .= ''; $html .= '
'; - $html .= ''; + $html .= ''; $html .= '
'; // New link, when the user click on save button this call the method post() @@ -109,7 +109,7 @@ class pluginLinks extends Plugin { $html .= ''; $html .= '
'; - $html .= ''; + $html .= ''; $html .= '
'; $html .= '
'; diff --git a/bl-plugins/menu/languages/es.json b/bl-plugins/menu/languages/es.json new file mode 100644 index 00000000..b4438664 --- /dev/null +++ b/bl-plugins/menu/languages/es.json @@ -0,0 +1,7 @@ +{ + "plugin-data": + { + "name": "Menú", + "description": "Muestra un menú en la barra lateral organizado por categorías." + } +} \ No newline at end of file diff --git a/bl-plugins/opengraph/languages/es.json b/bl-plugins/opengraph/languages/es.json index b154c459..e103d394 100644 --- a/bl-plugins/opengraph/languages/es.json +++ b/bl-plugins/opengraph/languages/es.json @@ -2,6 +2,6 @@ "plugin-data": { "name": "Open Graph", - "description": "Mejora las publicaciones en las redes sociales con este plugin." + "description": "Este complemento mejora las publicaciones en las redes sociales con este plugin." } } \ No newline at end of file diff --git a/bl-plugins/rss/languages/es.json b/bl-plugins/rss/languages/es.json new file mode 100644 index 00000000..7dc1b057 --- /dev/null +++ b/bl-plugins/rss/languages/es.json @@ -0,0 +1,8 @@ +{ + "plugin-data": + { + "name": "RSS Feed", + "description": "Este plugin genera contenido dinamico en formato RSS de tu sitio." + }, + "amount-of-items-to-show-on-the-feed": "Cantidad de artículos para mostrar." +} \ No newline at end of file diff --git a/bl-plugins/simplemde/languages/bg_BG.json b/bl-plugins/simplemde/languages/bg_BG.json deleted file mode 100644 index 66268c2a..00000000 --- a/bl-plugins/simplemde/languages/bg_BG.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "plugin-data": - { - "name": "SimpleMDE", - "description": "Един прост и красив редактор с поддръжка на JavaScript и Мarkdown от WesCossick. Адаптиран от Diego Najar за Bludit. " - }, - "toolbar": "Панел с инструменти", - "tab-size": "Размер на панела", - "autosave": "Autosave" -} \ No newline at end of file diff --git a/bl-plugins/simplemde/languages/en.json b/bl-plugins/simplemde/languages/en.json index 2bd8e75e..0b010b76 100644 --- a/bl-plugins/simplemde/languages/en.json +++ b/bl-plugins/simplemde/languages/en.json @@ -2,7 +2,7 @@ "plugin-data": { "name": "SimpleMDE", - "description": "Markdown editor, enable it to create some formatting code for your site." + "description": "Markdown editor, cleaned interface to create markup language." }, "toolbar": "Toolbar", "tab-size": "Tab size", diff --git a/bl-plugins/simplemde/languages/es.json b/bl-plugins/simplemde/languages/es.json index ebef8462..64ae7f5b 100644 --- a/bl-plugins/simplemde/languages/es.json +++ b/bl-plugins/simplemde/languages/es.json @@ -2,7 +2,7 @@ "plugin-data": { "name": "SimpleMDE", - "description": "Simple y sensillo editor Markdown desarrollado por @WesCossick. Adaptado por Diego Najar para Bludit." + "description": "Editor Markdown, interfaz limpia para crear lenguaje de marcado." }, "toolbar": "Barra de herramientas", "tab-size": "Tamaño de la tabulación", diff --git a/bl-plugins/simplemde/languages/fr_FR.json b/bl-plugins/simplemde/languages/fr_FR.json deleted file mode 100644 index 87e3a3f6..00000000 --- a/bl-plugins/simplemde/languages/fr_FR.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "plugin-data": - { - "name": "SimpleMDE", - "description": "Un éditeur Markdown en JavaScript simple, beau, et intégrable." - }, - "toolbar": "Toolbar", - "tab-size": "Tab size", - "autosave": "Autosave" -} \ No newline at end of file diff --git a/bl-plugins/simplemde/languages/ja_JP.json b/bl-plugins/simplemde/languages/ja_JP.json deleted file mode 100644 index 44c0792a..00000000 --- a/bl-plugins/simplemde/languages/ja_JP.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "plugin-data": - { - "name": "SimpleMDE", - "description": "シンプルで美しく埋め込み可能なJavaScript製Markdownエディタ(@WesCossick作)Bludit用にDiego Najarにより移植されました。" - }, - "toolbar": "ツールバー", - "tab-size": "タブのサイズ", - "autosave": "自動保存" -} \ No newline at end of file diff --git a/bl-plugins/simplemde/languages/nl_NL.json b/bl-plugins/simplemde/languages/nl_NL.json deleted file mode 100644 index 2653b6bb..00000000 --- a/bl-plugins/simplemde/languages/nl_NL.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "plugin-data": - { - "name": "SimpleMDE", - "description": "Een simpele, mooie en integreerbare JavaScript markdown editor van @WesCossick. Aangepast door Diego Najar voor Bludit." - }, - "toolbar": "Toolbar", - "tab-size": "Tab grootte", - "autosave": "Automatisch opslaan" -} diff --git a/bl-plugins/simplemde/languages/pl_PL.json b/bl-plugins/simplemde/languages/pl_PL.json deleted file mode 100644 index eb75fba9..00000000 --- a/bl-plugins/simplemde/languages/pl_PL.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "plugin-data": - { - "name": "Edytor SimpleMDE", - "description": "Prosty, piękny i osadzony w JavaScript edytor markdown stworzony przez @WesCossick. Na potrzeby Bludit dostosowany przez Diego Najar." - }, - "toolbar": "Pasek narzędzi", - "tab-size": "Rozmiar wcięcia", - "autosave": "Autosave" -} \ No newline at end of file diff --git a/bl-plugins/simplemde/languages/ru_RU.json b/bl-plugins/simplemde/languages/ru_RU.json deleted file mode 100644 index 0ed13482..00000000 --- a/bl-plugins/simplemde/languages/ru_RU.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "plugin-data": - { - "name": "SimpleMDE", - "description": "Простой, красивый, и встраиваемый JavaScript редактор markdown автора @WesCossick. Адаптировано Diego Najar для Bludit." - }, - "toolbar": "Панель инструментов", - "tab-size": "Размер панели", - "autosave": "Автосохранение", - "spell-checker": "Проверка орфографии" -} diff --git a/bl-plugins/simplemde/languages/tr_TR.json b/bl-plugins/simplemde/languages/tr_TR.json deleted file mode 100644 index b2bd5ea8..00000000 --- a/bl-plugins/simplemde/languages/tr_TR.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "plugin-data": - { - "name": "SimpleMDE", - "description": "Basit, güzel ve gömülü bir Javascript editörü ,@WesCossick tarafından yapılmıştır. Bludit için uyarlayan Diego Najar." - }, - "toolbar": "Araçlar", - "tab-size": "Boşluk boyutu", - "autosave": "Autosave" -} diff --git a/bl-plugins/simplemde/languages/uk_UA.json b/bl-plugins/simplemde/languages/uk_UA.json deleted file mode 100644 index e55aa04c..00000000 --- a/bl-plugins/simplemde/languages/uk_UA.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "plugin-data": - { - "name": "SimpleMDE", - "description": "Простий, красивий, і вбудовуваний JavaScript markdown редактор від @WesCossick. Адаптований Diego Najar для Bludit." - }, - "toolbar": "Панель інструментів", - "tab-size": "Розмір відступу", - "autosave": "Автозбереження", - "spell-checker": "Перевірка орфографії" -} diff --git a/bl-plugins/static-pages/languages/es.json b/bl-plugins/static-pages/languages/es.json new file mode 100644 index 00000000..a77b14bc --- /dev/null +++ b/bl-plugins/static-pages/languages/es.json @@ -0,0 +1,9 @@ +{ + "plugin-data": + { + "name": "Páginas estáticas", + "description": "Muestra las páginas estáticas en la barra lateral, este plugin es útil cuando quieres crear un blog con páginas." + }, + "home-link": "Enlace Home", + "show-the-home-link-on-the-sidebar": "Mostrar el vínculo de inicio en la barra lateral." +} \ No newline at end of file diff --git a/bl-plugins/tags/languages/es.json b/bl-plugins/tags/languages/es.json new file mode 100644 index 00000000..67421cbd --- /dev/null +++ b/bl-plugins/tags/languages/es.json @@ -0,0 +1,7 @@ +{ + "plugin-data": + { + "name": "Lista de etiquetas", + "description": "Muestra todas las etiquetas en la barra lateral." + } +} diff --git a/bl-plugins/tinymce-cloud/languages/en.json b/bl-plugins/tinymce-cloud/languages/en.json deleted file mode 100644 index ca13f2d3..00000000 --- a/bl-plugins/tinymce-cloud/languages/en.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "plugin-data": - { - "name": "TinyMCE Cloud", - "description": "HTML Editor for formatting content. This plugin needs a license, there are free and paid.
Read more about it on Tinymce." - } -} \ No newline at end of file diff --git a/bl-plugins/tinymce-cloud/metadata.json b/bl-plugins/tinymce-cloud/metadata.json deleted file mode 100644 index 60abbfec..00000000 --- a/bl-plugins/tinymce-cloud/metadata.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "author": "TinyMCE", - "email": "", - "website": "https://www.tinymce.com", - "version": "Latest", - "releaseDate": "", - "license": "GPL v2", - "compatible": "2.0", - "notes": "This plugin use the CDN of Tinymce to get the latest file, so is not possible to determinate the version and release date." -} \ No newline at end of file diff --git a/bl-plugins/tinymce-cloud/plugin.php b/bl-plugins/tinymce-cloud/plugin.php deleted file mode 100644 index 59f0731c..00000000 --- a/bl-plugins/tinymce-cloud/plugin.php +++ /dev/null @@ -1,57 +0,0 @@ -loadOnController)) { - return ''; - } - return false; - } - - public function adminBodyEnd() - { - global $Language; - - if (in_array($GLOBALS['ADMIN_CONTROLLER'], $this->loadOnController)) { - return ''; - } - return false; - } -} \ No newline at end of file diff --git a/bl-plugins/tinymce/plugin.php b/bl-plugins/tinymce/plugin.php index be81bb21..0b98363c 100644 --- a/bl-plugins/tinymce/plugin.php +++ b/bl-plugins/tinymce/plugin.php @@ -43,11 +43,15 @@ class pluginTinymce extends Plugin { paste_as_text: true, document_base_url: "'.DOMAIN_UPLOADS.'", plugins: [ - "advlist autolink link image", - "code fullscreen", - "table paste pagebreak autosave" + "autosave fullpage", + "searchreplace autolink directionality", + "visualblocks visualchars", + "fullscreen image link media template", + "codesample table hr pagebreak", + "advlist lists textcolor wordcount", + "contextmenu colorpicker textpattern" ], - toolbar: "restoredraft bold italic underline strikethrough | alignleft aligncenter alignright | bullist numlist | styleselect | link forecolor backcolor removeformat image | pagebreak code fullscreen" + toolbar: "restoredraft | formatselect | bold italic strikethrough forecolor backcolor | link | alignleft aligncenter alignright alignjustify | numlist bullist outdent indent | removeformat image table | pagebreak code fullscreen" }); '; diff --git a/bl-plugins/tinymce/tinymce/plugins/advlist/plugin.min.js b/bl-plugins/tinymce/tinymce/plugins/advlist/plugin.min.js new file mode 100755 index 00000000..e9bce575 --- /dev/null +++ b/bl-plugins/tinymce/tinymce/plugins/advlist/plugin.min.js @@ -0,0 +1 @@ +!function(){var a={},b=function(b){for(var c=a[b],e=c.deps,f=c.defn,g=e.length,h=new Array(g),i=0;i0&&g[0].nodeName===c)})}},g=function(a){return function(b){var c=d.getSelectedStyleType(a);b.control.items().each(function(a){a.active(a.settings.data===c)})}},h=function(a,b,d,h,i,j){a.addButton(b,{type:"splitbutton",tooltip:d,menu:e.toMenuItems(j),onPostRender:f(a,i),onshow:g(a),onselect:function(b){c.applyListFormat(a,i,b.control.settings.data)},onclick:function(){a.execCommand(h)}})},i=function(a,b,c,d,e,g){a.addButton(b,{type:"button",tooltip:c,onPostRender:f(a,e),onclick:function(){a.execCommand(d)}})},j=function(a,b,c,d,e,f){f.length>0?h(a,b,c,d,e,f):i(a,b,c,d,e,f)},k=function(a){j(a,"numlist","Numbered list","InsertOrderedList","OL",b.getNumberStyles(a)),j(a,"bullist","Bullet list","InsertUnorderedList","UL",b.getBulletStyles(a))};return{register:k}}),g("0",["1","2","3","4"],function(a,b,c,d){return a.add("advlist",function(a){var e=function(a,c){var d=a.settings.plugins?a.settings.plugins:"";return b.inArray(d.split(/[ ,]/),c)!==-1};e(a,"lists")&&(d.register(a),c.register(a))}),function(){}}),d("0")()}(); \ No newline at end of file diff --git a/bl-plugins/tinymce/tinymce/plugins/anchor/plugin.min.js b/bl-plugins/tinymce/tinymce/plugins/anchor/plugin.min.js new file mode 100755 index 00000000..ef86762a --- /dev/null +++ b/bl-plugins/tinymce/tinymce/plugins/anchor/plugin.min.js @@ -0,0 +1 @@ +!function(){var a={},b=function(b){for(var c=a[b],e=c.deps,f=c.defn,g=e.length,h=new Array(g),i=0;ic&&(b=c)}return b},i=function(a,b,c){1!==b.nodeType||b.hasChildNodes()?a.setStart(b,h(b,c)):a.setStartBefore(b)},j=function(a,b,c){1!==b.nodeType||b.hasChildNodes()?a.setEnd(b,h(b,c)):a.setEndAfter(b)},k=function(a,b,e){var f,g,h,k,l,m,n,o,p,q,r=c.getAutoLinkPattern(a),s=c.getDefaultLinkTarget(a);if("A"!==a.selection.getNode().tagName){if(f=a.selection.getRng(!0).cloneRange(),f.startOffset<5){if(o=f.endContainer.previousSibling,!o){if(!f.endContainer.firstChild||!f.endContainer.firstChild.nextSibling)return;o=f.endContainer.firstChild.nextSibling}if(p=o.length,i(f,o,p),j(f,o,p),f.endOffset<5)return;g=f.endOffset,k=o}else{if(k=f.endContainer,3!==k.nodeType&&k.firstChild){for(;3!==k.nodeType&&k.firstChild;)k=k.firstChild;3===k.nodeType&&(i(f,k,0),j(f,k,k.nodeValue.length))}g=1===f.endOffset?2:f.endOffset-1-b}h=g;do i(f,k,g>=2?g-2:0),j(f,k,g>=1?g-1:0),g-=1,q=f.toString();while(" "!==q&&""!==q&&160!==q.charCodeAt(0)&&g-2>=0&&q!==e);d(f.toString(),e)?(i(f,k,g),j(f,k,h),g+=1):0===f.startOffset?(i(f,k,0),j(f,k,h)):(i(f,k,g),j(f,k,h)),m=f.toString(),"."===m.charAt(m.length-1)&&j(f,k,h-1),m=f.toString().trim(),n=m.match(r),n&&("www."===n[1]?n[1]="http://www.":/@$/.test(n[1])&&!/^mailto:/.test(n[1])&&(n[1]="mailto:"+n[1]),l=a.selection.getBookmark(),a.selection.setRng(f),a.execCommand("createlink",!1,n[1]+n[2]),s&&a.dom.setAttrib(a.selection.getNode(),"target",s),a.selection.moveToBookmark(l),a.nodeChanged())}},l=function(b){var c;return b.on("keydown",function(a){if(13===a.keyCode)return g(b)}),a.ie?void b.on("focus",function(){if(!c){c=!0;try{b.execCommand("AutoUrlDetect",!1,!0)}catch(a){}}}):(b.on("keypress",function(a){if(41===a.keyCode)return e(b)}),void b.on("keyup",function(a){if(32===a.keyCode)return f(b)}))};return{setup:l}}),g("0",["1","2","3"],function(a,b,c){return b.add("autolink",function(a){c.setup(a)}),function(){}}),d("0")()}(); \ No newline at end of file diff --git a/bl-plugins/tinymce/tinymce/plugins/autoresize/plugin.min.js b/bl-plugins/tinymce/tinymce/plugins/autoresize/plugin.min.js new file mode 100755 index 00000000..b486f7a7 --- /dev/null +++ b/bl-plugins/tinymce/tinymce/plugins/autoresize/plugin.min.js @@ -0,0 +1 @@ +!function(){var a={},b=function(b){for(var c=a[b],e=c.deps,f=c.defn,g=e.length,h=new Array(g),i=0;ic.getAutoResizeMinHeight(b)&&(k=l);var t=c.getAutoResizeMaxHeight(b);t&&l>t?(k=t,i.style.overflowY="auto",j.style.overflowY="auto"):(i.style.overflowY="hidden",j.style.overflowY="hidden",i.scrollTop=0),k!==e.get()&&(g=k-e.get(),s.setStyle(b.iframeElement,"height",k+"px"),e.set(k),a.webKit&&g<0&&f(b))}},g=function(a,b){a.on("init",function(){var b,d,e=a.dom;b=c.getAutoResizeOverflowPadding(a),d=c.getAutoResizeBottomMargin(a),b!==!1&&e.setStyles(a.getBody(),{paddingLeft:b,paddingRight:b}),d!==!1&&e.setStyles(a.getBody(),{paddingBottom:d})}),a.on("nodechange setcontent keyup FullscreenStateChanged",function(){f(a,b)}),c.shouldAutoResizeOnInit(a)&&a.on("init",function(){e(a,b,20,100,function(){e(a,b,5,1e3)})})};return{setup:g,resize:f}}),g("3",["4"],function(a){var b=function(b,c){b.addCommand("mceAutoResize",function(){a.resize(b,c)})};return{register:b}}),g("0",["1","2","3","4"],function(a,b,c,d){return b.add("autoresize",function(b){if(!b.inline){var e=a(0);c.register(b,e),d.setup(b,e)}}),function(){}}),d("0")()}(); \ No newline at end of file diff --git a/bl-plugins/tinymce/tinymce/plugins/autosave/plugin.min.js b/bl-plugins/tinymce/tinymce/plugins/autosave/plugin.min.js new file mode 100755 index 00000000..a9e6b319 --- /dev/null +++ b/bl-plugins/tinymce/tinymce/plugins/autosave/plugin.min.js @@ -0,0 +1 @@ +!function(){var a={},b=function(b){for(var c=a[b],e=c.deps,f=c.defn,g=e.length,h=new Array(g),i=0;i]*>((\xa0| |[ \t]|]*>)+?|)|
$","i").test(b)},g=function(a){var c=parseInt(b.getItem(e.getAutoSavePrefix(a)+"time"),10)||0;return!((new Date).getTime()-c>e.getAutoSaveRetention(a))||(h(a,!1),!1)},h=function(a,c){var f=e.getAutoSavePrefix(a);b.removeItem(f+"draft"),b.removeItem(f+"time"),c!==!1&&d.fireRemoveDraft(a)},i=function(a){var c=e.getAutoSavePrefix(a);!f(a)&&a.isDirty()&&(b.setItem(c+"draft",a.getContent({format:"raw",no_events:!0})),b.setItem(c+"time",(new Date).getTime()),d.fireStoreDraft(a))},j=function(a){var c=e.getAutoSavePrefix(a);g(a)&&(a.setContent(b.getItem(c+"draft"),{format:"raw"}),d.fireRestoreDraft(a))},k=function(b,c){var d=e.getAutoSaveInterval(b);c.get()||(a(function(){b.removed||i(b)},d),c.set(!0))},l=function(a){a.undoManager.transact(function(){j(a),h(a)}),a.focus()};return{isEmpty:f,hasDraft:g,removeDraft:h,storeDraft:i,restoreDraft:j,startStoreDraft:k,restoreLastDraft:l}}),g("3",["7"],function(a){var b=function(a,b){return function(){var c=Array.prototype.slice.call(arguments);return a.apply(null,[b].concat(c))}},c=function(c){return{hasDraft:b(a.hasDraft,c),storeDraft:b(a.storeDraft,c),restoreDraft:b(a.restoreDraft,c),removeDraft:b(a.removeDraft,c),isEmpty:b(a.isEmpty,c)}};return{get:c}}),h("8",window),g("9",["6"],function(a){return a("tinymce.EditorManager")}),g("4",["8","9","a","b"],function(a,b,c,d){b._beforeUnloadHandler=function(){var a;return c.each(b.get(),function(b){b.plugins.autosave&&b.plugins.autosave.storeDraft(),!a&&b.isDirty()&&d.shouldAskBeforeUnload(b)&&(a=b.translate("You have unsaved changes are you sure you want to navigate away?"))}),a};var e=function(c){a.onbeforeunload=b._beforeUnloadHandler};return{setup:e}}),g("5",["7"],function(a){var b=function(b,c){return function(d){var e=d.control;e.disabled(!a.hasDraft(b)),b.on("StoreDraft RestoreDraft RemoveDraft",function(){e.disabled(!a.hasDraft(b))}),a.startStoreDraft(b,c)}},c=function(c,d){c.addButton("restoredraft",{title:"Restore last draft",onclick:function(){a.restoreLastDraft(c)},onPostRender:b(c,d)}),c.addMenuItem("restoredraft",{text:"Restore last draft",onclick:function(){a.restoreLastDraft(c)},onPostRender:b(c,d),context:"file"})};return{register:c}}),g("0",["1","2","3","4","5"],function(a,b,c,d,e){return b.add("autosave",function(b){var f=a(!1);return d.setup(b),e.register(b,f),c.get(b)}),function(){}}),d("0")()}(); \ No newline at end of file diff --git a/bl-plugins/tinymce/tinymce/plugins/bbcode/plugin.min.js b/bl-plugins/tinymce/tinymce/plugins/bbcode/plugin.min.js new file mode 100755 index 00000000..4f60d157 --- /dev/null +++ b/bl-plugins/tinymce/tinymce/plugins/bbcode/plugin.min.js @@ -0,0 +1 @@ +!function(){var a={},b=function(b){for(var c=a[b],e=c.deps,f=c.defn,g=e.length,h=new Array(g),i=0;i(.*?)<\/a>/gi,"[url=$1]$2[/url]"),c(/(.*?)<\/font>/gi,"[code][color=$1]$2[/color][/code]"),c(/(.*?)<\/font>/gi,"[quote][color=$1]$2[/color][/quote]"),c(/(.*?)<\/font>/gi,"[code][color=$1]$2[/color][/code]"),c(/(.*?)<\/font>/gi,"[quote][color=$1]$2[/color][/quote]"),c(/(.*?)<\/span>/gi,"[color=$1]$2[/color]"),c(/(.*?)<\/font>/gi,"[color=$1]$2[/color]"),c(/(.*?)<\/span>/gi,"[size=$1]$2[/size]"),c(/(.*?)<\/font>/gi,"$1"),c(//gi,"[img]$1[/img]"),c(/(.*?)<\/span>/gi,"[code]$1[/code]"),c(/(.*?)<\/span>/gi,"[quote]$1[/quote]"),c(/(.*?)<\/strong>/gi,"[code][b]$1[/b][/code]"),c(/(.*?)<\/strong>/gi,"[quote][b]$1[/b][/quote]"),c(/(.*?)<\/em>/gi,"[code][i]$1[/i][/code]"),c(/(.*?)<\/em>/gi,"[quote][i]$1[/i][/quote]"),c(/(.*?)<\/u>/gi,"[code][u]$1[/u][/code]"),c(/(.*?)<\/u>/gi,"[quote][u]$1[/u][/quote]"),c(/<\/(strong|b)>/gi,"[/b]"),c(/<(strong|b)>/gi,"[b]"),c(/<\/(em|i)>/gi,"[/i]"),c(/<(em|i)>/gi,"[i]"),c(/<\/u>/gi,"[/u]"),c(/(.*?)<\/span>/gi,"[u]$1[/u]"),c(//gi,"[u]"),c(/]*>/gi,"[quote]"),c(/<\/blockquote>/gi,"[/quote]"),c(/
/gi,"\n"),c(//gi,"\n"),c(/
/gi,"\n"),c(/

/gi,""),c(/<\/p>/gi,"\n"),c(/ |\u00a0/gi," "),c(/"/gi,'"'),c(/</gi,"<"),c(/>/gi,">"),c(/&/gi,"&"),b},c=function(b){b=a.trim(b);var c=function(a,c){b=b.replace(a,c)};return c(/\n/gi,"
"),c(/\[b\]/gi,""),c(/\[\/b\]/gi,""),c(/\[i\]/gi,""),c(/\[\/i\]/gi,""),c(/\[u\]/gi,""),c(/\[\/u\]/gi,""),c(/\[url=([^\]]+)\](.*?)\[\/url\]/gi,'$2'),c(/\[url\](.*?)\[\/url\]/gi,'$1'),c(/\[img\](.*?)\[\/img\]/gi,''),c(/\[color=(.*?)\](.*?)\[\/color\]/gi,'$2'),c(/\[code\](.*?)\[\/code\]/gi,'$1 '),c(/\[quote.*?\](.*?)\[\/quote\]/gi,'$1 '),b};return{html2bbcode:b,bbcode2html:c}}),g("0",["1","2"],function(a,b){return a.add("bbcode",function(){return{init:function(a){a.on("beforeSetContent",function(a){a.content=b.bbcode2html(a.content)}),a.on("postProcess",function(a){a.set&&(a.content=b.bbcode2html(a.content)),a.get&&(a.content=b.html2bbcode(a.content))})}}}),function(){}}),d("0")()}(); \ No newline at end of file diff --git a/bl-plugins/tinymce/tinymce/plugins/charmap/plugin.min.js b/bl-plugins/tinymce/tinymce/plugins/charmap/plugin.min.js new file mode 100755 index 00000000..4e790cea --- /dev/null +++ b/bl-plugins/tinymce/tinymce/plugins/charmap/plugin.min.js @@ -0,0 +1 @@ +!function(){var a={},b=function(b){for(var c=a[b],e=c.deps,f=c.defn,g=e.length,h=new Array(g),i=0;i',d=0;d",c=0;c

'+i+"
"}else b+=""}b+=""}return b+=""};return{getHtml:a}}),g("8",["6","7","c"],function(a,b,c){var d=function(a){for(;a;){if("TD"===a.nodeName)return a;a=a.parentNode}},e=function(e){var f,g={type:"container",html:c.getHtml(b.getCharMap(e)),onclick:function(b){var c=b.target;if(/^(TD|DIV)$/.test(c.nodeName)){var g=d(c).firstChild;g&&g.hasAttribute("data-chr")&&(a.insertChar(e,g.getAttribute("data-chr")),b.ctrlKey||f.close())}},onmouseover:function(a){var b=d(a.target);b&&b.firstChild?(f.find("#preview").text(b.firstChild.firstChild.data),f.find("#previewTitle").text(b.title)):(f.find("#preview").text(" "),f.find("#previewTitle").text(" "))}};f=e.windowManager.open({title:"Special character",spacing:10,padding:10,items:[g,{type:"container",layout:"flex",direction:"column",align:"center",spacing:5,minWidth:160,minHeight:160,items:[{type:"label",name:"preview",text:" ",style:"font-size: 40px; text-align: center",border:1,minWidth:140,minHeight:80},{type:"spacer",minHeight:20},{type:"label",name:"previewTitle",text:" ",style:"white-space: pre-wrap;",border:1,minWidth:140}]}],buttons:[{text:"Close",onclick:function(){f.close()}}]})};return{open:e}}),g("3",["8"],function(a){var b=function(b){b.addCommand("mceShowCharmap",function(){a.open(b)})};return{register:b}}),g("4",[],function(){var a=function(a){a.addButton("charmap",{icon:"charmap",tooltip:"Special character",cmd:"mceShowCharmap"}),a.addMenuItem("charmap",{icon:"charmap",text:"Special character",cmd:"mceShowCharmap",context:"insert"})};return{register:a}}),g("0",["1","2","3","4"],function(a,b,c,d){return a.add("charmap",function(a){return c.register(a),d.register(a),b.get(a)}),function(){}}),d("0")()}(); \ No newline at end of file diff --git a/bl-plugins/tinymce/tinymce/plugins/code/plugin.min.js b/bl-plugins/tinymce/tinymce/plugins/code/plugin.min.js new file mode 100755 index 00000000..bbc39239 --- /dev/null +++ b/bl-plugins/tinymce/tinymce/plugins/code/plugin.min.js @@ -0,0 +1 @@ +!function(){var a={},b=function(b){for(var c=a[b],e=c.deps,f=c.defn,g=e.length,h=new Array(g),i=0;i code[class*="language-"], +pre[class*="language-"] { + background: #f5f2f0; +} + +/* Inline code */ +:not(pre) > code[class*="language-"] { + padding: .1em; + border-radius: .3em; +} + +.token.comment, +.token.prolog, +.token.doctype, +.token.cdata { + color: slategray; +} + +.token.punctuation { + color: #999; +} + +.namespace { + opacity: .7; +} + +.token.property, +.token.tag, +.token.boolean, +.token.number, +.token.constant, +.token.symbol, +.token.deleted { + color: #905; +} + +.token.selector, +.token.attr-name, +.token.string, +.token.char, +.token.builtin, +.token.inserted { + color: #690; +} + +.token.operator, +.token.entity, +.token.url, +.language-css .token.string, +.style .token.string { + color: #a67f59; + background: hsla(0, 0%, 100%, .5); +} + +.token.atrule, +.token.attr-value, +.token.keyword { + color: #07a; +} + +.token.function { + color: #DD4A68; +} + +.token.regex, +.token.important, +.token.variable { + color: #e90; +} + +.token.important, +.token.bold { + font-weight: bold; +} +.token.italic { + font-style: italic; +} + +.token.entity { + cursor: help; +} + diff --git a/bl-plugins/tinymce/tinymce/plugins/codesample/plugin.min.js b/bl-plugins/tinymce/tinymce/plugins/codesample/plugin.min.js new file mode 100755 index 00000000..607f7662 --- /dev/null +++ b/bl-plugins/tinymce/tinymce/plugins/codesample/plugin.min.js @@ -0,0 +1 @@ +!function(){var a={},b=function(b){for(var c=a[b],e=c.deps,f=c.defn,g=e.length,h=new Array(g),i=0;ia.length)break a;if(!(q instanceof e)){k.lastIndex=0;var r=k.exec(q);if(r){m&&(n=r[1].length);var s=r.index-1+n,r=r[0].slice(n),t=r.length,u=s+t,v=q.slice(0,s+1),w=q.slice(u+1),x=[p,1];v&&x.push(v);var y=new e(h,l?c.tokenize(r,l):r,o);x.push(y),w&&x.push(w),Array.prototype.splice.apply(f,x)}}}}}return f},hooks:{all:{},add:function(a,b){var d=c.hooks.all;d[a]=d[a]||[],d[a].push(b)},run:function(a,b){var d=c.hooks.all[a];if(d&&d.length)for(var e,f=0;e=d[f++];)e(b)}}},d=c.Token=function(a,b,c){this.type=a,this.content=b,this.alias=c};if(d.stringify=function(a,b,e){if("string"==typeof a)return a;if("Array"===c.util.type(a))return a.map(function(c){return d.stringify(c,b,a)}).join("");var f={type:a.type,content:d.stringify(a.content,b,e),tag:"span",classes:["token",a.type],attributes:{},language:b,parent:e};if("comment"==f.type&&(f.attributes.spellcheck="true"),a.alias){var g="Array"===c.util.type(a.alias)?a.alias:[a.alias];Array.prototype.push.apply(f.classes,g)}c.hooks.run("wrap",f);var h="";for(var i in f.attributes)h+=(h?" ":"")+i+'="'+(f.attributes[i]||"")+'"';return"<"+f.tag+' class="'+f.classes.join(" ")+'" '+h+">"+f.content+""},!b.document)return b.addEventListener?(b.addEventListener("message",function(a){var d=JSON.parse(a.data),e=d.language,f=d.code,g=d.immediateClose;b.postMessage(c.highlight(f,c.languages[e],e)),g&&b.close()},!1),b.Prism):b.Prism}();return"undefined"!=typeof module&&module.exports&&(module.exports=c),"undefined"!=typeof global&&(global.Prism=c),c.languages.markup={comment://,prolog:/<\?[\w\W]+?\?>/,doctype://,cdata://i,tag:{pattern:/<\/?[^\s>\/=.]+(?:\s+[^\s>\/=]+(?:=(?:("|')(?:\\\1|\\?(?!\1)[\w\W])*\1|[^\s'">=]+))?)*\s*\/?>/i,inside:{tag:{pattern:/^<\/?[^\s>\/]+/i,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"attr-value":{pattern:/=(?:('|")[\w\W]*?(\1)|[^\s>]+)/i,inside:{punctuation:/[=>"']/}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:/&#?[\da-z]{1,8};/i},c.hooks.add("wrap",function(a){"entity"===a.type&&(a.attributes.title=a.content.replace(/&/,"&"))}),c.languages.xml=c.languages.markup,c.languages.html=c.languages.markup,c.languages.mathml=c.languages.markup,c.languages.svg=c.languages.markup,c.languages.css={comment:/\/\*[\w\W]*?\*\//,atrule:{pattern:/@[\w-]+?.*?(;|(?=\s*\{))/i,inside:{rule:/@[\w-]+/}},url:/url\((?:(["'])(\\(?:\r\n|[\w\W])|(?!\1)[^\\\r\n])*\1|.*?)\)/i,selector:/[^\{\}\s][^\{\};]*?(?=\s*\{)/,string:/("|')(\\(?:\r\n|[\w\W])|(?!\1)[^\\\r\n])*\1/,property:/(\b|\B)[\w-]+(?=\s*:)/i,important:/\B!important\b/i,"function":/[-a-z0-9]+(?=\()/i,punctuation:/[(){};:]/},c.languages.css.atrule.inside.rest=c.util.clone(c.languages.css),c.languages.markup&&(c.languages.insertBefore("markup","tag",{style:{pattern:/[\w\W]*?<\/style>/i,inside:{tag:{pattern:/|<\/style>/i,inside:c.languages.markup.tag.inside},rest:c.languages.css},alias:"language-css"}}),c.languages.insertBefore("inside","attr-value",{"style-attr":{pattern:/\s*style=("|').*?\1/i,inside:{"attr-name":{pattern:/^\s*style/i,inside:c.languages.markup.tag.inside},punctuation:/^\s*=\s*['"]|['"]\s*$/,"attr-value":{pattern:/.+/i,inside:c.languages.css}},alias:"language-css"}},c.languages.markup.tag)),c.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\w\W]*?\*\//,lookbehind:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0}],string:/(["'])(\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,"class-name":{pattern:/((?:\b(?:class|interface|extends|implements|trait|instanceof|new)\s+)|(?:catch\s+\())[a-z0-9_\.\\]+/i,lookbehind:!0,inside:{punctuation:/(\.|\\)/}},keyword:/\b(if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/,"boolean":/\b(true|false)\b/,"function":/[a-z0-9_]+(?=\()/i,number:/\b-?(?:0x[\da-f]+|\d*\.?\d+(?:e[+-]?\d+)?)\b/i,operator:/--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&?|\|\|?|\?|\*|\/|~|\^|%/,punctuation:/[{}[\];(),.:]/},c.languages.javascript=c.languages.extend("clike",{keyword:/\b(as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|false|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|true|try|typeof|var|void|while|with|yield)\b/,number:/\b-?(0x[\dA-Fa-f]+|0b[01]+|0o[0-7]+|\d*\.?\d+([Ee][+-]?\d+)?|NaN|Infinity)\b/,"function":/[_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*(?=\()/i}),c.languages.insertBefore("javascript","keyword",{regex:{pattern:/(^|[^\/])\/(?!\/)(\[.+?]|\\.|[^\/\\\r\n])+\/[gimyu]{0,5}(?=\s*($|[\r\n,.;})]))/,lookbehind:!0}}),c.languages.insertBefore("javascript","class-name",{"template-string":{pattern:/`(?:\\`|\\?[^`])*`/,inside:{interpolation:{pattern:/\$\{[^}]+\}/,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:c.languages.javascript}},string:/[\s\S]+/}}}),c.languages.markup&&c.languages.insertBefore("markup","tag",{script:{pattern:/[\w\W]*?<\/script>/i,inside:{tag:{pattern:/|<\/script>/i,inside:c.languages.markup.tag.inside},rest:c.languages.javascript},alias:"language-javascript"}}),c.languages.js=c.languages.javascript,c.languages.c=c.languages.extend("clike",{keyword:/\b(asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while)\b/,operator:/\-[>-]?|\+\+?|!=?|<>?=?|==?|&&?|\|?\||[~^%?*\/]/,number:/\b-?(?:0x[\da-f]+|\d*\.?\d+(?:e[+-]?\d+)?)[ful]*\b/i}),c.languages.insertBefore("c","string",{macro:{pattern:/(^\s*)#\s*[a-z]+([^\r\n\\]|\\.|\\(?:\r\n?|\n))*/im,lookbehind:!0,alias:"property",inside:{string:{pattern:/(#\s*include\s*)(<.+?>|("|')(\\?.)+?\3)/,lookbehind:!0}}}}),delete c.languages.c["class-name"],delete c.languages.c["boolean"],c.languages.csharp=c.languages.extend("clike",{keyword:/\b(abstract|as|async|await|base|bool|break|byte|case|catch|char|checked|class|const|continue|decimal|default|delegate|do|double|else|enum|event|explicit|extern|false|finally|fixed|float|for|foreach|goto|if|implicit|in|int|interface|internal|is|lock|long|namespace|new|null|object|operator|out|override|params|private|protected|public|readonly|ref|return|sbyte|sealed|short|sizeof|stackalloc|static|string|struct|switch|this|throw|true|try|typeof|uint|ulong|unchecked|unsafe|ushort|using|virtual|void|volatile|while|add|alias|ascending|async|await|descending|dynamic|from|get|global|group|into|join|let|orderby|partial|remove|select|set|value|var|where|yield)\b/,string:[/@("|')(\1\1|\\\1|\\?(?!\1)[\s\S])*\1/,/("|')(\\?.)*?\1/],number:/\b-?(0x[\da-f]+|\d*\.?\d+)\b/i}),c.languages.insertBefore("csharp","keyword",{preprocessor:{pattern:/(^\s*)#.*/m,lookbehind:!0}}),c.languages.cpp=c.languages.extend("c",{keyword:/\b(alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|class|compl|const|constexpr|const_cast|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|float|for|friend|goto|if|inline|int|long|mutable|namespace|new|noexcept|nullptr|operator|private|protected|public|register|reinterpret_cast|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/,"boolean":/\b(true|false)\b/,operator:/[-+]{1,2}|!=?|<{1,2}=?|>{1,2}=?|\->|:{1,2}|={1,2}|\^|~|%|&{1,2}|\|?\||\?|\*|\/|\b(and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/}),c.languages.insertBefore("cpp","keyword",{"class-name":{pattern:/(class\s+)[a-z0-9_]+/i,lookbehind:!0}}),c.languages.java=c.languages.extend("clike",{keyword:/\b(abstract|continue|for|new|switch|assert|default|goto|package|synchronized|boolean|do|if|private|this|break|double|implements|protected|throw|byte|else|import|public|throws|case|enum|instanceof|return|transient|catch|extends|int|short|try|char|final|interface|static|void|class|finally|long|strictfp|volatile|const|float|native|super|while)\b/,number:/\b0b[01]+\b|\b0x[\da-f]*\.?[\da-fp\-]+\b|\b\d*\.?\d+(?:e[+-]?\d+)?[df]?\b/i,operator:{pattern:/(^|[^.])(?:\+[+=]?|-[-=]?|!=?|<>?>?=?|==?|&[&=]?|\|[|=]?|\*=?|\/=?|%=?|\^=?|[?:~])/m,lookbehind:!0}}),c.languages.php=c.languages.extend("clike",{keyword:/\b(and|or|xor|array|as|break|case|cfunction|class|const|continue|declare|default|die|do|else|elseif|enddeclare|endfor|endforeach|endif|endswitch|endwhile|extends|for|foreach|function|include|include_once|global|if|new|return|static|switch|use|require|require_once|var|while|abstract|interface|public|implements|private|protected|parent|throw|null|echo|print|trait|namespace|final|yield|goto|instanceof|finally|try|catch)\b/i,constant:/\b[A-Z0-9_]{2,}\b/,comment:{pattern:/(^|[^\\])(?:\/\*[\w\W]*?\*\/|\/\/.*)/,lookbehind:!0}}),c.languages.insertBefore("php","class-name",{"shell-comment":{pattern:/(^|[^\\])#.*/,lookbehind:!0,alias:"comment"}}),c.languages.insertBefore("php","keyword",{delimiter:/\?>|<\?(?:php)?/i,variable:/\$\w+\b/i,"package":{pattern:/(\\|namespace\s+|use\s+)[\w\\]+/,lookbehind:!0,inside:{punctuation:/\\/}}}),c.languages.insertBefore("php","operator",{property:{pattern:/(->)[\w]+/,lookbehind:!0}}),c.languages.markup&&(c.hooks.add("before-highlight",function(a){"php"===a.language&&(a.tokenStack=[],a.backupCode=a.code,a.code=a.code.replace(/(?:<\?php|<\?)[\w\W]*?(?:\?>)/gi,function(b){return a.tokenStack.push(b),"{{{PHP"+a.tokenStack.length+"}}}"}))}),c.hooks.add("before-insert",function(a){"php"===a.language&&(a.code=a.backupCode,delete a.backupCode)}),c.hooks.add("after-highlight",function(a){if("php"===a.language){for(var b,d=0;b=a.tokenStack[d];d++)a.highlightedCode=a.highlightedCode.replace("{{{PHP"+(d+1)+"}}}",c.highlight(b,a.grammar,"php").replace(/\$/g,"$$$$"));a.element.innerHTML=a.highlightedCode}}),c.hooks.add("wrap",function(a){"php"===a.language&&"markup"===a.type&&(a.content=a.content.replace(/(\{\{\{PHP[0-9]+\}\}\})/g,'$1'))}),c.languages.insertBefore("php","comment",{markup:{pattern:/<[^?]\/?(.*?)>/,inside:c.languages.markup},php:/\{\{\{PHP[0-9]+\}\}\}/})),c.languages.python={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0},string:/"""[\s\S]+?"""|'''[\s\S]+?'''|("|')(?:\\?.)*?\1/,"function":{pattern:/((?:^|\s)def[ \t]+)[a-zA-Z_][a-zA-Z0-9_]*(?=\()/g,lookbehind:!0},"class-name":{pattern:/(\bclass\s+)[a-z0-9_]+/i,lookbehind:!0},keyword:/\b(?:as|assert|async|await|break|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|pass|print|raise|return|try|while|with|yield)\b/,"boolean":/\b(?:True|False)\b/,number:/\b-?(?:0[bo])?(?:(?:\d|0x[\da-f])[\da-f]*\.?\d*|\.\d+)(?:e[+-]?\d+)?j?\b/i,operator:/[-+%=]=?|!=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]|\b(?:or|and|not)\b/,punctuation:/[{}[\];(),.:]/},function(a){a.languages.ruby=a.languages.extend("clike",{comment:/#(?!\{[^\r\n]*?\}).*/,keyword:/\b(alias|and|BEGIN|begin|break|case|class|def|define_method|defined|do|each|else|elsif|END|end|ensure|false|for|if|in|module|new|next|nil|not|or|raise|redo|require|rescue|retry|return|self|super|then|throw|true|undef|unless|until|when|while|yield)\b/});var b={pattern:/#\{[^}]+\}/,inside:{delimiter:{pattern:/^#\{|\}$/,alias:"tag"},rest:a.util.clone(a.languages.ruby)}};a.languages.insertBefore("ruby","keyword",{regex:[{pattern:/%r([^a-zA-Z0-9\s\{\(\[<])(?:[^\\]|\\[\s\S])*?\1[gim]{0,3}/,inside:{interpolation:b}},{pattern:/%r\((?:[^()\\]|\\[\s\S])*\)[gim]{0,3}/,inside:{interpolation:b}},{pattern:/%r\{(?:[^#{}\\]|#(?:\{[^}]+\})?|\\[\s\S])*\}[gim]{0,3}/,inside:{interpolation:b}},{pattern:/%r\[(?:[^\[\]\\]|\\[\s\S])*\][gim]{0,3}/,inside:{interpolation:b}},{pattern:/%r<(?:[^<>\\]|\\[\s\S])*>[gim]{0,3}/,inside:{interpolation:b}},{pattern:/(^|[^\/])\/(?!\/)(\[.+?]|\\.|[^\/\r\n])+\/[gim]{0,3}(?=\s*($|[\r\n,.;})]))/,lookbehind:!0}],variable:/[@$]+[a-zA-Z_][a-zA-Z_0-9]*(?:[?!]|\b)/,symbol:/:[a-zA-Z_][a-zA-Z_0-9]*(?:[?!]|\b)/}),a.languages.insertBefore("ruby","number",{builtin:/\b(Array|Bignum|Binding|Class|Continuation|Dir|Exception|FalseClass|File|Stat|File|Fixnum|Fload|Hash|Integer|IO|MatchData|Method|Module|NilClass|Numeric|Object|Proc|Range|Regexp|String|Struct|TMS|Symbol|ThreadGroup|Thread|Time|TrueClass)\b/,constant:/\b[A-Z][a-zA-Z_0-9]*(?:[?!]|\b)/}),a.languages.ruby.string=[{pattern:/%[qQiIwWxs]?([^a-zA-Z0-9\s\{\(\[<])(?:[^\\]|\\[\s\S])*?\1/,inside:{interpolation:b}},{pattern:/%[qQiIwWxs]?\((?:[^()\\]|\\[\s\S])*\)/,inside:{interpolation:b}},{pattern:/%[qQiIwWxs]?\{(?:[^#{}\\]|#(?:\{[^}]+\})?|\\[\s\S])*\}/,inside:{interpolation:b}},{pattern:/%[qQiIwWxs]?\[(?:[^\[\]\\]|\\[\s\S])*\]/,inside:{interpolation:b}},{pattern:/%[qQiIwWxs]?<(?:[^<>\\]|\\[\s\S])*>/,inside:{interpolation:b}},{pattern:/("|')(#\{[^}]+\}|\\(?:\r?\n|\r)|\\?.)*?\1/,inside:{interpolation:b}}]}(c),c}),g("9",[],function(){function a(a){return a&&"PRE"===a.nodeName&&a.className.indexOf("language-")!==-1}function b(a){return function(b,c){return a(c)}}return{isCodeSample:a,trimArg:b}}),g("d",["c","a","9"],function(a,b,c){var d=function(a){var b=a.selection.getNode();return c.isCodeSample(b)?b:null},e=function(c,e,f){c.undoManager.transact(function(){var g=d(c);f=a.DOM.encode(f),g?(c.dom.setAttrib(g,"class","language-"+e),g.innerHTML=f,b.highlightElement(g),c.selection.select(g)):(c.insertContent('
'+f+"
"),c.selection.select(c.$("#__new").removeAttr("id")[0]))})},f=function(a){var b=d(a);return b?b.textContent:""};return{getSelectedCodeSample:d,insertCodeSample:e,getCurrentCode:f}}),g("e",["b","d"],function(a,b){var c=function(b){var c=[{text:"HTML/XML",value:"markup"},{text:"JavaScript",value:"javascript"},{text:"CSS",value:"css"},{text:"PHP",value:"php"},{text:"Ruby",value:"ruby"},{text:"Python",value:"python"},{text:"Java",value:"java"},{text:"C",value:"c"},{text:"C#",value:"csharp"},{text:"C++",value:"cpp"}],d=a.getLanguages(b);return d?d:c},d=function(a){var c,d=b.getSelectedCodeSample(a);return d?(c=d.className.match(/language-(\w+)/),c?c[1]:""):""};return{getLanguages:c,getCurrentLanguage:d}}),g("8",["b","d","e"],function(a,b,c){return{open:function(d){var e=a.getDialogMinWidth(d),f=a.getDialogMinHeight(d),g=c.getCurrentLanguage(d),h=c.getLanguages(d),i=b.getCurrentCode(d);d.windowManager.open({title:"Insert/Edit code sample",minWidth:e,minHeight:f,layout:"flex",direction:"column",align:"stretch",body:[{type:"listbox",name:"language",label:"Language",maxWidth:200,value:g,values:h},{type:"textbox",name:"code",multiline:!0,spellcheck:!1,ariaLabel:"Code view",flex:1,style:"direction: ltr; text-align: left",classes:"monospace",value:i,autofocus:!0}],onSubmit:function(a){b.insertCodeSample(d,a.data.language,a.data.code)}})}}}),g("3",["8","9"],function(a,b){var c=function(c){c.addCommand("codesample",function(){var d=c.selection.getNode();c.selection.isCollapsed()||b.isCodeSample(d)?a.open(c):c.formatter.toggle("code")})};return{register:c}}),g("4",["a","9"],function(a,b){var c=function(c){var d=c.$;c.on("PreProcess",function(a){d("pre[contenteditable=false]",a.node).filter(b.trimArg(b.isCodeSample)).each(function(a,b){var c=d(b),e=b.textContent;c.attr("class",d.trim(c.attr("class"))),c.removeAttr("contentEditable"),c.empty().append(d("").each(function(){this.textContent=e}))})}),c.on("SetContent",function(){var e=d("pre").filter(b.trimArg(b.isCodeSample)).filter(function(a,b){return"false"!==b.contentEditable});e.length&&c.undoManager.transact(function(){e.each(function(b,e){d(e).find("br").each(function(a,b){b.parentNode.replaceChild(c.getDoc().createTextNode("\n"),b)}),e.contentEditable=!1,e.innerHTML=c.dom.encode(e.textContent),a.highlightElement(e),e.className=d.trim(e.className)})})})};return{setup:c}}),g("5",["b"],function(a){var b=function(b,c,d,e){var f,g=a.getContentCss(b);b.inline&&d.get()||!b.inline&&e.get()||(b.inline?d.set(!0):e.set(!0),g!==!1&&(f=b.dom.create("link",{rel:"stylesheet",href:g?g:c+"/css/prism.css"}),b.getDoc().getElementsByTagName("head")[0].appendChild(f)))};return{loadCss:b}}),g("6",[],function(){var a=function(a){a.addButton("codesample",{cmd:"codesample",title:"Insert/Edit code sample"}),a.addMenuItem("codesample",{cmd:"codesample",text:"Code sample",icon:"codesample"})};return{register:a}}),g("0",["1","2","3","4","5","6"],function(a,b,c,d,e,f){var g=a(!1);return b.add("codesample",function(b,h){var i=a(!1);d.setup(b),f.register(b),c.register(b),b.on("init",function(){e.loadCss(b,h,g,i)})}),function(){}}),d("0")()}(); \ No newline at end of file diff --git a/bl-plugins/tinymce/tinymce/plugins/colorpicker/plugin.min.js b/bl-plugins/tinymce/tinymce/plugins/colorpicker/plugin.min.js new file mode 100755 index 00000000..132caaa2 --- /dev/null +++ b/bl-plugins/tinymce/tinymce/plugins/colorpicker/plugin.min.js @@ -0,0 +1 @@ +!function(){var a={},b=function(b){for(var c=a[b],e=c.deps,f=c.defn,g=e.length,h=new Array(g),i=0;i-1},h=function(a,b){return t(a,b).isSome()},i=function(a,b){for(var c=[],d=0;d=0;c--){var d=a[c];b(d,c,a)}},n=function(a,b){for(var c=[],d=[],e=0,f=a.length;e=a.left&&b<=a.right&&c>=a.top&&c<=a.bottom},c=function(c,d,e){return!e.collapsed&&a.foldl(e.getClientRects(),function(a,e){return a||b(e,c,d)},!1)};return{isXYWithinRange:c}}),g("c",["5"],function(a){return a("tinymce.ui.Factory")}),g("d",["5"],function(a){return a("tinymce.util.Tools")}),g("a",["c","d","8"],function(a,b,c){var d=function(d,e){var f,g,h=[];g=c.getContextMenu(d),b.each(g.split(/[ ,]/),function(a){var b=d.menuItems[a];"|"===a&&(b={text:a}),b&&(b.shortcut="",h.push(b))});for(var i=0;i'}),d+=""}),d+=""};return{getHtml:c}}),g("2",["4"],function(a){var b=function(a,b,c){a.insertContent(a.dom.createHTML("img",{src:b,alt:c}))},c=function(c,d){var e=a.getHtml(d);c.addButton("emoticons",{type:"panelbutton",panel:{role:"application",autohide:!0,html:e,onclick:function(a){var d=c.dom.getParent(a.target,"a");d&&(b(c,d.getAttribute("data-mce-url"),d.getAttribute("data-mce-alt")),this.hide())}},tooltip:"Emoticons"})};return{register:c}}),g("0",["1","2"],function(a,b){return a.add("emoticons",function(a,c){b.register(a,c)}),function(){}}),d("0")()}(); \ No newline at end of file diff --git a/bl-plugins/tinymce/tinymce/plugins/fullpage/plugin.min.js b/bl-plugins/tinymce/tinymce/plugins/fullpage/plugin.min.js new file mode 100755 index 00000000..87055444 --- /dev/null +++ b/bl-plugins/tinymce/tinymce/plugins/fullpage/plugin.min.js @@ -0,0 +1 @@ +!function(){var a={},b=function(b){for(var c=a[b],e=c.deps,f=c.defn,g=e.length,h=new Array(g),i=0;i")};return{shouldHideInSourceView:a,getDefaultXmlPi:b,getDefaultEncoding:c,getDefaultFontFamily:d,getDefaultFontSize:e,getDefaultTextColor:f,getDefaultTitle:g,getDefaultDocType:h}}),g("a",["c","d","e","8","9"],function(a,b,c,d,e){var f=function(b){return new a({validate:!1,root_name:"#document"}).parse(b)},g=function(a,b){function c(a,b){var c=a.attr(b);return c||""}var g,h,i=f(b),j={};return j.fontface=e.getDefaultFontFamily(a),j.fontsize=e.getDefaultFontSize(a),g=i.firstChild,7===g.type&&(j.xml_pi=!0,h=/encoding="([^"]+)"/.exec(g.value),h&&(j.docencoding=h[1])),g=i.getAll("#doctype")[0],g&&(j.doctype=""),g=i.getAll("title")[0],g&&g.firstChild&&(j.title=g.firstChild.value),d.each(i.getAll("meta"),function(a){var b,c=a.attr("name"),d=a.attr("http-equiv");c?j[c.toLowerCase()]=a.attr("content"):"Content-Type"===d&&(b=/charset\s*=\s*(.*)\s*/gi.exec(a.attr("content")),b&&(j.docencoding=b[1]))}),g=i.getAll("html")[0],g&&(j.langcode=c(g,"lang")||c(g,"xml:lang")),j.stylesheets=[],d.each(i.getAll("link"),function(a){"stylesheet"===a.attr("rel")&&j.stylesheets.push(a.attr("href"))}),g=i.getAll("body")[0],g&&(j.langdir=c(g,"dir"),j.style=c(g,"style"),j.visited_color=c(g,"vlink"),j.link_color=c(g,"link"),j.active_color=c(g,"alink")),j},h=function(a,e,g){function h(a,b,c){a.attr(b,c?c:void 0)}function i(a){k.firstChild?k.insert(a,k.firstChild):k.append(a)}var j,k,l,m,n,o=a.dom;j=f(g),k=j.getAll("head")[0],k||(m=j.getAll("html")[0],k=new b("head",1),m.firstChild?m.insert(k,m.firstChild,!0):m.append(k)),m=j.firstChild,e.xml_pi?(n='version="1.0"',e.docencoding&&(n+=' encoding="'+e.docencoding+'"'),7!==m.type&&(m=new b("xml",7),j.insert(m,j.firstChild,!0)),m.value=n):m&&7===m.type&&m.remove(),m=j.getAll("#doctype")[0],e.doctype?(m||(m=new b("#doctype",10),e.xml_pi?j.insert(m,j.firstChild):i(m)),m.value=e.doctype.substring(9,e.doctype.length-1)):m&&m.remove(),m=null,d.each(j.getAll("meta"),function(a){"Content-Type"===a.attr("http-equiv")&&(m=a)}),e.docencoding?(m||(m=new b("meta",1),m.attr("http-equiv","Content-Type"),m.shortEnded=!0,i(m)),m.attr("content","text/html; charset="+e.docencoding)):m&&m.remove(),m=j.getAll("title")[0],e.title?(m?m.empty():(m=new b("title",1),i(m)),m.append(new b("#text",3)).value=e.title):m&&m.remove(),d.each("keywords,description,author,copyright,robots".split(","),function(a){var c,d,f=j.getAll("meta"),g=e[a];for(c=0;c"))};return{parseHeader:f,htmlToData:g,dataToHtml:h}}),g("7",["8","a"],function(a,b){var c=function(c,d){var e=b.htmlToData(c,d.get());c.windowManager.open({title:"Document properties",data:e,defaults:{type:"textbox",size:40},body:[{name:"title",label:"Title"},{name:"keywords",label:"Keywords"},{name:"description",label:"Description"},{name:"robots",label:"Robots"},{name:"author",label:"Author"},{name:"docencoding",label:"Encoding"}],onSubmit:function(f){var g=b.dataToHtml(c,a.extend(e,f.data),d.get());d.set(g)}})};return{open:c}}),g("3",["7"],function(a){var b=function(b,c){b.addCommand("mceFullPageProperties",function(){a.open(b,c)})};return{register:b}}),g("b",["8"],function(a){var b=function(b,c){return a.each(b,function(a){c=c.replace(a,function(a){return""})}),c},c=function(a){return a.replace(//g,function(a,b){return unescape(b)})};return{protectHtml:b,unprotectHtml:c}}),g("4",["8","9","a","b"],function(a,b,c,d){var e=a.each,f=function(a){return a.replace(/<\/?[A-Z]+/g,function(a){return a.toLowerCase()})},g=function(g,i,j,k){var l,m,n,o,p,q="",r=g.dom;if(!(k.selection||(n=d.protectHtml(g.settings.protect,k.content),"raw"===k.format&&i.get()||k.source_view&&b.shouldHideInSourceView(g)))){0!==n.length||k.source_view||(n=a.trim(i.get())+"\n"+a.trim(n)+"\n"+a.trim(j.get())),n=n.replace(/<(\/?)BODY/gi,"<$1body"),l=n.indexOf("",l),i.set(f(n.substring(0,l+1))),m=n.indexOf("\n")),o=c.parseHeader(i.get()),e(o.getAll("style"),function(a){a.firstChild&&(q+=a.firstChild.value)}),p=o.getAll("body")[0],p&&r.setAttribs(g.getBody(),{style:p.attr("style")||"",dir:p.attr("dir")||"",vLink:p.attr("vlink")||"",link:p.attr("link")||"",aLink:p.attr("alink")||""}),r.remove("fullpage_styles");var s=g.getDoc().getElementsByTagName("head")[0];q&&(r.add(s,"style",{id:"fullpage_styles"},q),p=r.get("fullpage_styles"),p.styleSheet&&(p.styleSheet.cssText=q));var t={};a.each(s.getElementsByTagName("link"),function(a){"stylesheet"===a.rel&&a.getAttribute("data-mce-fullpage")&&(t[a.href]=a)}),a.each(o.getAll("link"),function(a){var b=a.attr("href");return!b||(t[b]||"stylesheet"!==a.attr("rel")||r.add(s,"link",{rel:"stylesheet",text:"text/css",href:b,"data-mce-fullpage":"1"}),void delete t[b])}),a.each(t,function(a){a.parentNode.removeChild(a)})}},h=function(a){var c,d="",e="";if(b.getDefaultXmlPi(a)){var f=b.getDefaultEncoding(a);d+='\n'}return d+=b.getDefaultDocType(a),d+="\n\n\n",(c=b.getDefaultTitle(a))&&(d+=""+c+"\n"),(c=b.getDefaultEncoding(a))&&(d+='\n'),(c=b.getDefaultFontFamily(a))&&(e+="font-family: "+c+";"),(c=b.getDefaultFontSize(a))&&(e+="font-size: "+c+";"),(c=b.getDefaultTextColor(a))&&(e+="color: "+c+";"),d+="\n\n"},i=function(c,e,f,g){g.selection||g.source_view&&b.shouldHideInSourceView(c)||(g.content=d.unprotectHtml(a.trim(e)+"\n"+a.trim(g.content)+"\n"+a.trim(f)))},j=function(a,b,c){a.on("BeforeSetContent",function(d){g(a,b,c,d)}),a.on("GetContent",function(d){i(a,b.get(),c.get(),d)})};return{setup:j}}),g("5",[],function(){var a=function(a){a.addButton("fullpage",{title:"Document properties",cmd:"mceFullPageProperties"}),a.addMenuItem("fullpage",{text:"Document properties",cmd:"mceFullPageProperties",context:"file"})};return{register:a}}),g("0",["1","2","3","4","5"],function(a,b,c,d,e){return b.add("fullpage",function(b){var f=a(""),g=a("");c.register(b,f),e.register(b),d.setup(b,f,g)}),function(){}}),d("0")()}(); \ No newline at end of file diff --git a/bl-plugins/tinymce/tinymce/plugins/fullscreen/plugin.min.js b/bl-plugins/tinymce/tinymce/plugins/fullscreen/plugin.min.js new file mode 100755 index 00000000..2f2aa8bf --- /dev/null +++ b/bl-plugins/tinymce/tinymce/plugins/fullscreen/plugin.min.js @@ -0,0 +1 @@ +!function(){var a={},b=function(b){for(var c=a[b],e=c.deps,f=c.defn,g=e.length,h=new Array(g),i=0;i-1},h=function(a,b){return t(a,b).isSome()},i=function(a,b){for(var c=[],d=0;d=0;c--){var d=a[c];b(d,c,a)}},n=function(a,b){for(var c=[],d=[],e=0,f=a.length;e Ctrl + Shift + P",action:"Focus to contextual toolbar"},{shortcut:b+" + K",action:"Insert link (if link plugin activated)"},{shortcut:b+" + S",action:"Save (if save plugin activated)"},{shortcut:b+" + F",action:"Find (if searchreplace plugin activated)"}];return{shortcuts:d}}),g("7",["a","b","c"],function(a,b,c){var d=function(){var d=function(a){return'aria-label="Action: '+a.action+", Shortcut: "+a.shortcut.replace(/Ctrl/g,"Control")+'"'},e=a.map(c.shortcuts,function(a){return'"+b.translate(a.action)+""+a.shortcut+""}).join("");return{title:"Handy Shortcuts",type:"container",style:"overflow-y: auto; overflow-x: hidden; max-height: 250px",items:[{type:"container",html:'
"+e+"
'+b.translate("Action")+""+b.translate("Shortcut")+"
"}]}};return{makeTab:d}}),g("e",["h","m"],function(a,b){var c=function(){var a=b.keys,c=function(a){var b=[];for(var c in a)a.hasOwnProperty(c)&&b.push(c);return b};return void 0===a?c:a}(),d=function(a,b){for(var d=c(a),e=0,f=d.length;e${name}'),i=function(b,c){return a.find(g.urls,function(a){return a.key===c}).fold(function(){var a=b.plugins[c].getMetadata;return"function"==typeof a?h(a()):c},function(a){return h({name:a.name,url:"https://www.tinymce.com/docs/plugins/"+a.key})})},j=function(d){var e=c.keys(d.plugins);return void 0===d.settings.forced_plugins?e:a.filter(e,b.not(b.curry(a.contains,d.settings.forced_plugins)))},k=function(b){var c=j(b),d=a.map(c,function(a){return"
  • "+i(b,a)+"
  • "}),e=d.length,g=d.join("");return"

    "+f.translate(["Plugins installed ({0}):",e])+"

      "+g+"
    "},l=function(a){return{type:"container",html:'
    '+k(a)+"
    ",flex:1}},m=function(){return{type:"container",html:'

    '+f.translate("Premium plugins:")+'

    • PowerPaste
    • Spell Checker Pro
    • Accessibility Checker
    • Advanced Code Editor
    • Enhanced Media Embed
    • Link Checker

    '+f.translate("Learn more...")+"

    ",flex:1}},n=function(a){return{title:"Plugins",type:"container",style:"overflow-y: auto; overflow-x: hidden;",layout:"flex",padding:10,spacing:10,items:[l(a),m()]}};return{makeTab:n}}),g("9",["6","b"],function(a,b){var c=function(a,b){return 0===a.indexOf("@")?"X.X.X":a+"."+b},d=function(){var d=c(a.majorVersion,a.minorVersion),e='TinyMCE '+d+"";return[{type:"label",html:b.translate(["You are using {0}",e])},{type:"spacer",flex:1},{text:"Close",onclick:function(){this.parent().parent().close()}}]};return{makeRow:d}}),g("4",["6","7","8","9"],function(a,b,c,d){var e=function(a,e){return function(){a.windowManager.open({title:"Help",bodyType:"tabpanel",layout:"flex",body:[b.makeTab(),c.makeTab(a,e)],buttons:d.makeRow(),onPostRender:function(){var a=this.getEl("title");a.innerHTML='TinyMCE Logo'}})}};return{open:e}}),g("2",["4"],function(a){var b=function(b,c){b.addCommand("mceHelp",a.open(b,c))};return{register:b}}),g("3",["4"],function(a){var b=function(b,c){b.addButton("help",{icon:"help",onclick:a.open(b,c)}),b.addMenuItem("Help",{text:"Help",icon:"help",context:"help",onclick:a.open(b,c)})};return{register:b}}),g("0",["1","2","3","4"],function(a,b,c,d){return a.add("help",function(a,d){c.register(a,d),b.register(a,d),a.shortcuts.add("Alt+0","Open help dialog","mceHelp")}),function(){}}),d("0")()}(); \ No newline at end of file diff --git a/bl-plugins/tinymce/tinymce/plugins/hr/plugin.min.js b/bl-plugins/tinymce/tinymce/plugins/hr/plugin.min.js new file mode 100755 index 00000000..c1dfdcad --- /dev/null +++ b/bl-plugins/tinymce/tinymce/plugins/hr/plugin.min.js @@ -0,0 +1 @@ +!function(){var a={},b=function(b){for(var c=a[b],e=c.deps,f=c.defn,g=e.length,h=new Array(g),i=0;i")})};return{register:a}}),g("3",[],function(){var a=function(a){a.addButton("hr",{icon:"hr",tooltip:"Horizontal line",cmd:"InsertHorizontalRule"}),a.addMenuItem("hr",{icon:"hr",text:"Horizontal line",cmd:"InsertHorizontalRule",context:"insert"})};return{register:a}}),g("0",["1","2","3"],function(a,b,c){return a.add("hr",function(a){b.register(a),c.register(a)}),function(){}}),d("0")()}(); \ No newline at end of file diff --git a/bl-plugins/tinymce/tinymce/plugins/image/plugin.min.js b/bl-plugins/tinymce/tinymce/plugins/image/plugin.min.js new file mode 100755 index 00000000..bd96a7ca --- /dev/null +++ b/bl-plugins/tinymce/tinymce/plugins/image/plugin.min.js @@ -0,0 +1 @@ +!function(){var a={},b=function(b){for(var c=a[b],e=c.deps,f=c.defn,g=e.length,h=new Array(g),i=0;i=300?void f("HTTP Error: "+i.status):(a=JSON.parse(i.responseText),a&&"string"==typeof a.location?void e(g(b.basePath,a.location)):void f("Invalid JSON: "+i.responseText))},j=new c.FormData,j.append("file",d.blob(),d.filename()),i.send(j)},i=function(a,b){return new d(function(c,d){try{b(a,c,d,f)}catch(a){d(a.message)}})},j=function(a){return a===h},k=function(a){return!b.url&&j(b.handler)?d.reject("Upload url missng from the settings."):i(a,b.handler)};return b=e.extend({credentials:!1,handler:h},b),{upload:k}}}),g("i",["7","a","9"],function(a,b,c){var d=function(a,d){function e(a,b){f.parentNode&&f.parentNode.removeChild(f),d({width:a,height:b})}var f=c.createElement("img");f.onload=function(){e(b.max(f.width,f.clientWidth),b.max(f.height,f.clientHeight))},f.onerror=function(){e()};var g=f.style;g.visibility="hidden",g.position="fixed",g.bottom=g.left=0,g.width=g.height="auto",c.body.appendChild(f),f.src=a},e=function(b,c,d){function e(b,d){return d=d||[],a.each(b,function(a){var b={text:a.text||a.title};a.menu?b.menu=e(a.menu):(b.value=a.value,c(b)),d.push(b)}),d}return e(b,d||[])},f=function(a){return a&&(a=a.replace(/px$/,"")),a},g=function(a){return a.length>0&&/^[0-9]+$/.test(a)&&(a+="px"),a},h=function(a){if(a.margin){var b=a.margin.split(" ");switch(b.length){case 1:a["margin-top"]=a["margin-top"]||b[0],a["margin-right"]=a["margin-right"]||b[0],a["margin-bottom"]=a["margin-bottom"]||b[0],a["margin-left"]=a["margin-left"]||b[0];break;case 2:a["margin-top"]=a["margin-top"]||b[0],a["margin-right"]=a["margin-right"]||b[1],a["margin-bottom"]=a["margin-bottom"]||b[0],a["margin-left"]=a["margin-left"]||b[1];break;case 3:a["margin-top"]=a["margin-top"]||b[0],a["margin-right"]=a["margin-right"]||b[1],a["margin-bottom"]=a["margin-bottom"]||b[2],a["margin-left"]=a["margin-left"]||b[1];break;case 4:a["margin-top"]=a["margin-top"]||b[0],a["margin-right"]=a["margin-right"]||b[1],a["margin-bottom"]=a["margin-bottom"]||b[2],a["margin-left"]=a["margin-left"]||b[3]}delete a.margin}return a};return{getImageSize:d,buildListItems:e,removePixelSuffix:f,addPixelSuffix:g,mergeMargins:h}}),g("6",["8","9","a","b","c","d","e","7","f","g","h","i"],function(a,b,c,d,e,f,g,h,i,j,k,l){return function(b){function e(a){var c=j.getImageList(b);"string"==typeof c?i.send({url:c,success:function(b){a(g.parse(b))}}):"function"==typeof c?c(a):a(c)}function m(e){function g(){var c=f.get("Throbber"),d=new c(t.getEl()),e=this.value(),g=new k({url:C.images_upload_url,basePath:C.images_upload_base_path,credentials:C.images_upload_credentials,handler:C.images_upload_handler}),h=b.editorUpload.blobCache.create({blob:e,name:e.name?e.name.replace(/\.[^\.]+$/,""):null,base64:"data:image/fake;base64,="}),i=function(){d.hide(),a.revokeObjectURL(h.blobUri())};return d.show(),g.upload(h).then(function(a){var b=t.find("#src");return b.value(a),t.find("tabpanel")[0].activateTab(0),b.fire("change"),i(),a},function(a){b.windowManager.alert(a),i()})}function i(a){return b.schema.getTextBlockElements()[a.nodeName]}function m(){var a,b,d,e;a=t.find("#width")[0],b=t.find("#height")[0],a&&b&&(d=a.value(),e=b.value(),t.find("#constrain")[0].checked()&&w&&x&&d&&e&&(w!==d?(e=c.round(d/w*e),isNaN(e)||b.value(e)):(d=c.round(e/x*d),isNaN(d)||a.value(d))),w=d,x=e)}function n(){if(j.hasAdvTab(b)){var a=t.toJSON(),c=B.parseStyle(a.style);c=l.mergeMargins(c),a.vspace&&(c["margin-top"]=c["margin-bottom"]=l.addPixelSuffix(a.vspace)),a.hspace&&(c["margin-left"]=c["margin-right"]=l.addPixelSuffix(a.hspace)),a.border&&(c["border-width"]=l.addPixelSuffix(a.border)),t.find("#style").value(B.serializeStyle(B.parseStyle(B.serializeStyle(c))))}}function o(){if(j.hasAdvTab(b)){var a=t.toJSON(),c=B.parseStyle(a.style);t.find("#vspace").value(""),t.find("#hspace").value(""),c=l.mergeMargins(c),(c["margin-top"]&&c["margin-bottom"]||c["margin-right"]&&c["margin-left"])&&(c["margin-top"]===c["margin-bottom"]?t.find("#vspace").value(l.removePixelSuffix(c["margin-top"])):t.find("#vspace").value(""),c["margin-right"]===c["margin-left"]?t.find("#hspace").value(l.removePixelSuffix(c["margin-right"])):t.find("#hspace").value("")),c["border-width"]&&t.find("#border").value(l.removePixelSuffix(c["border-width"])),t.find("#style").value(B.serializeStyle(B.parseStyle(B.serializeStyle(c))))}}function p(a){function c(){a.onload=a.onerror=null,b.selection&&(b.selection.select(a),b.nodeChanged())}a.onload=function(){A.width||A.height||!D||B.setAttribs(a,{width:a.clientWidth,height:a.clientHeight}),c()},a.onerror=c}function q(){var a,c;n(),m(),A=h.extend(A,t.toJSON()),A.alt||(A.alt=""),A.title||(A.title=""),""===A.width&&(A.width=null),""===A.height&&(A.height=null),A.style||(A.style=null),A={src:A.src,alt:A.alt,title:A.title,width:A.width,height:A.height,style:A.style,caption:A.caption,"class":A["class"]},b.undoManager.transact(function(){if(A.src){if(""===A.title&&(A.title=null),u?B.setAttribs(u,A):(A.id="__mcenew",b.focus(),b.selection.setContent(B.createHTML("img",A)),u=B.get("__mcenew"),B.setAttrib(u,"id",null)),b.editorUpload.uploadImagesAuto(),A.caption===!1&&B.is(u.parentNode,"figure.image")&&(a=u.parentNode,B.setAttrib(u,"contenteditable",null),B.insertAfter(u,a),B.remove(a),b.selection.select(u),b.nodeChanged()),A.caption!==!0)p(u);else if(!B.is(u.parentNode,"figure.image")){c=u,u=u.cloneNode(!0),u.contentEditable=!0,a=B.create("figure",{"class":"image"}),a.appendChild(u),a.appendChild(B.create("figcaption",{contentEditable:!0},"Caption")),a.contentEditable=!1;var d=B.getParent(c,i);d?B.split(d,c,a):B.replace(a,c),b.selection.select(a)}}else if(u){var e=B.is(u.parentNode,"figure.image")?u.parentNode:u;B.remove(e),b.focus(),b.nodeChanged(),B.isEmpty(b.getBody())&&(b.setContent(""),b.selection.setCursorLocation())}})}function r(a){var c,e,f,g=a.meta||{};y&&y.value(b.convertURL(this.value(),"src")),h.each(g,function(a,b){t.find("#"+b).value(a)}),g.width||g.height||(c=b.convertURL(this.value(),"src"),e=j.getPrependUrl(b),f=new d("^(?:[a-z]+:)?//","i"),e&&!f.test(c)&&c.substring(0,e.length)!==e&&(c=e+c),this.value(c),l.getImageSize(b.documentBaseURI.toAbsolute(this.value()),function(a){a.width&&a.height&&D&&(w=a.width,x=a.height,t.find("#width").value(w),t.find("#height").value(x))}))}function s(a){a.meta=t.toJSON()}var t,u,v,w,x,y,z,A={},B=b.dom,C=b.settings,D=j.hasDimensions(b);u=b.selection.getNode(),v=B.getParent(u,"figure.image"),v&&(u=B.select("img",v)[0]),u&&("IMG"!==u.nodeName||u.getAttribute("data-mce-object")||u.getAttribute("data-mce-placeholder"))&&(u=null),u&&(w=B.getAttrib(u,"width"),x=B.getAttrib(u,"height"),A={src:B.getAttrib(u,"src"),alt:B.getAttrib(u,"alt"),title:B.getAttrib(u,"title"),"class":B.getAttrib(u,"class"),width:w,height:x,caption:!!v}),e&&(y={type:"listbox",label:"Image list",values:l.buildListItems(e,function(a){a.value=b.convertURL(a.value||a.url,"src")},[{text:"None",value:""}]),value:A.src&&b.convertURL(A.src,"src"),onselect:function(a){var b=t.find("#alt");(!b.value()||a.lastControl&&b.value()===a.lastControl.text())&&b.value(a.control.text()),t.find("#src").value(a.control.value()).fire("change")},onPostRender:function(){y=this}}),j.getClassList(b)&&(z={name:"class",type:"listbox",label:"Class",values:l.buildListItems(j.getClassList(b),function(a){a.value&&(a.textStyle=function(){return b.formatter.getCssText({inline:"img",classes:[a.value]})})})});var E=[{name:"src",type:"filepicker",filetype:"image",label:"Source",autofocus:!0,onchange:r,onbeforecall:s},y];if(j.hasDescription(b)&&E.push({name:"alt",type:"textbox",label:"Image description"}),j.hasImageTitle(b)&&E.push({name:"title",type:"textbox",label:"Image Title"}),D&&E.push({type:"container",label:"Dimensions",layout:"flex",direction:"row",align:"center",spacing:5,items:[{name:"width",type:"textbox",maxLength:5,size:3,onchange:m,ariaLabel:"Width"},{type:"label",text:"x"},{name:"height",type:"textbox",maxLength:5,size:3,onchange:m,ariaLabel:"Height"},{name:"constrain",type:"checkbox",checked:!0,text:"Constrain proportions"}]}),E.push(z),j.hasImageCaption(b)&&E.push({name:"caption",type:"checkbox",label:"Caption"}),j.hasAdvTab(b)||b.settings.images_upload_url){var F=[{title:"General",type:"form",items:E}];if(j.hasAdvTab(b)&&(u&&(u.style.marginLeft&&u.style.marginRight&&u.style.marginLeft===u.style.marginRight&&(A.hspace=l.removePixelSuffix(u.style.marginLeft)),u.style.marginTop&&u.style.marginBottom&&u.style.marginTop===u.style.marginBottom&&(A.vspace=l.removePixelSuffix(u.style.marginTop)),u.style.borderWidth&&(A.border=l.removePixelSuffix(u.style.borderWidth)),A.style=b.dom.serializeStyle(b.dom.parseStyle(b.dom.getAttrib(u,"style")))),F.push({title:"Advanced",type:"form",pack:"start",items:[{label:"Style",name:"style",type:"textbox",onchange:o},{type:"form",layout:"grid",packV:"start",columns:2,padding:0,alignH:["left","right"],defaults:{type:"textbox",maxWidth:50,onchange:n},items:[{label:"Vertical space",name:"vspace"},{label:"Horizontal space",name:"hspace"},{label:"Border",name:"border"}]}]})),b.settings.images_upload_url){var G=".jpg,.jpeg,.png,.gif",H={title:"Upload",type:"form",layout:"flex",direction:"column",align:"stretch",padding:"20 20 20 20",items:[{type:"container",layout:"flex",direction:"column",align:"center",spacing:10,items:[{text:"Browse for an image",type:"browsebutton",accept:G,onchange:g},{text:"OR",type:"label"}]},{text:"Drop an image here",type:"dropzone",accept:G,height:100,onchange:g}]};F.push(H)}t=b.windowManager.open({title:"Insert/edit image",data:A,bodyType:"tabpanel",body:F,onSubmit:q})}else t=b.windowManager.open({title:"Insert/edit image",data:A,body:E,onSubmit:q})}function n(){e(m)}return{open:n}}}),g("2",["6"],function(a){var b=function(b){b.addCommand("mceImage",a(b).open)};return{register:b}}),g("3",["7"],function(a){var b=function(a){var b=a.attr("class");return b&&/\bimage\b/.test(b)},c=function(c){return function(d){for(var e,f=d.length,g=function(a){a.attr("contenteditable",c?"true":null)};f--;)e=d[f],b(e)&&(e.attr("contenteditable",c?"false":null),a.each(e.getAll("figcaption"),g),a.each(e.getAll("img"),g))}},d=function(a){a.on("preInit",function(){a.parser.addNodeFilter("figure",c(!0)),a.serializer.addNodeFilter("figure",c(!1))})};return{setup:d}}),g("4",["6"],function(a){var b=function(b){b.addButton("image",{icon:"image",tooltip:"Insert/edit image",onclick:a(b).open,stateSelector:"img:not([data-mce-object],[data-mce-placeholder]),figure.image"}),b.addMenuItem("image",{icon:"image",text:"Image",onclick:a(b).open,context:"insert",prependToContext:!0})};return{register:b}}),g("0",["1","2","3","4"],function(a,b,c,d){return a.add("image",function(a){c.setup(a),d.register(a),b.register(a)}),function(){}}),d("0")()}(); \ No newline at end of file diff --git a/bl-plugins/tinymce/tinymce/plugins/imagetools/plugin.min.js b/bl-plugins/tinymce/tinymce/plugins/imagetools/plugin.min.js new file mode 100755 index 00000000..e4626b00 --- /dev/null +++ b/bl-plugins/tinymce/tinymce/plugins/imagetools/plugin.min.js @@ -0,0 +1,2 @@ +!function(){var a={},b=function(b){for(var c=a[b],e=c.deps,f=c.defn,g=e.length,h=new Array(g),i=0;ic?a=c:a0?3*d:d),f=.3086,g=.6094,h=.082,c(b,[f*(1-e)+e,g*(1-e),h*(1-e),0,0,f*(1-e),g*(1-e)+e,h*(1-e),0,0,f*(1-e),g*(1-e),h*(1-e)+e,0,0,0,0,0,1,0,0,0,0,0,1])}function g(b,d){var e,f,g,h,i;return d=a(d,-180,180)/180*Math.PI,e=Math.cos(d),f=Math.sin(d),g=.213,h=.715,i=.072,c(b,[g+e*(1-g)+f*-g,h+e*-h+f*-h,i+e*-i+f*(1-i),0,0,g+e*-g+.143*f,h+e*(1-h)+.14*f,i+e*-i+f*-.283,0,0,g+e*-g+f*-(1-g),h+e*-h+f*h,i+e*(1-i)+f*i,0,0,0,0,0,1,0,0,0,0,0,1])}function h(b,d){return d=a(255*d,-255,255),c(b,[1,0,0,0,d,0,1,0,0,d,0,0,1,0,d,0,0,0,1,0,0,0,0,0,1])}function i(b,d,e,f){return d=a(d,0,2),e=a(e,0,2),f=a(f,0,2),c(b,[d,0,0,0,0,0,e,0,0,0,0,0,f,0,0,0,0,0,1,0,0,0,0,0,1])}function j(b,e){return e=a(e,0,1),c(b,d([.393,.769,.189,0,0,.349,.686,.168,0,0,.272,.534,.131,0,0,0,0,0,1,0,0,0,0,0,1],e))}function k(b,e){return e=a(e,0,1),c(b,d([.33,.34,.33,0,0,.33,.34,.33,0,0,.33,.34,.33,0,0,0,0,0,1,0,0,0,0,0,1],e))}var l=[0,.01,.02,.04,.05,.06,.07,.08,.1,.11,.12,.14,.15,.16,.17,.18,.2,.21,.22,.24,.25,.27,.28,.3,.32,.34,.36,.38,.4,.42,.44,.46,.48,.5,.53,.56,.59,.62,.65,.68,.71,.74,.77,.8,.83,.86,.89,.92,.95,.98,1,1.06,1.12,1.18,1.24,1.3,1.36,1.42,1.48,1.54,1.6,1.66,1.72,1.78,1.84,1.9,1.96,2,2.12,2.25,2.37,2.5,2.62,2.75,2.87,3,3.2,3.4,3.6,3.8,4,4.3,4.7,4.9,5,5.5,6,6.5,6.8,7,7.3,7.5,7.8,8,8.4,8.7,9,9.4,9.6,9.8,10];return{identity:b,adjust:d,multiply:c,adjustContrast:e,adjustBrightness:h,adjustSaturation:f,adjustHue:g,adjustColors:i,adjustSepia:j,adjustGrayscale:k}}),g("q",["12","p","15"],function(a,b,c){function d(c,d){function e(a,b){var c,d,e,f,g,h=a.data,i=b[0],j=b[1],k=b[2],l=b[3],m=b[4],n=b[5],o=b[6],p=b[7],q=b[8],r=b[9],s=b[10],t=b[11],u=b[12],v=b[13],w=b[14],x=b[15],y=b[16],z=b[17],A=b[18],B=b[19];for(g=0;gc?a=c:a2)&&(i=i<.5?.5:2,k=!0),(j<.5||j>2)&&(j=j<.5?.5:2,k=!0);var l=f(a,i,j);return k?l.then(function(a){return e(a,b,c)}):l}function f(b,e,f){return new a(function(a){var g=d.getWidth(b),h=d.getHeight(b),i=Math.floor(g*e),j=Math.floor(h*f),k=c.create(i,j),l=c.get2dContext(k);l.drawImage(b,0,0,g,h,0,0,i,j),a(k)})}return{scale:e}}),g("r",["12","p","16"],function(a,b,c){function d(c,d){var e=c.toCanvas(),f=a.create(e.width,e.height),g=a.get2dContext(f),h=0,i=0;return d=d<0?360+d:d,90!=d&&270!=d||a.resize(f,f.height,f.width),90!=d&&180!=d||(h=f.width),270!=d&&180!=d||(i=f.height),g.translate(h,i),g.rotate(d*Math.PI/180),g.drawImage(e,0,0),b.fromCanvas(f,c.getType())}function e(c,d){var e=c.toCanvas(),f=a.create(e.width,e.height),g=a.get2dContext(f);return"v"==d?(g.scale(1,-1),g.drawImage(e,0,-f.height)):(g.scale(-1,1),g.drawImage(e,-f.width,0)),b.fromCanvas(f,c.getType())}function f(c,d,e,f,g){var h=c.toCanvas(),i=a.create(f,g),j=a.get2dContext(i);return j.drawImage(h,-d,-e),b.fromCanvas(i,c.getType())}function g(a,d,e){return c.scale(a.toCanvas(),d,e).then(function(c){return b.fromCanvas(c,a.getType())})}return{rotate:d,flip:e,crop:f,resize:g}}),g("d",["q","r"],function(a,b){var c=function(b){return a.invert(b)},d=function(b){return a.sharpen(b)},e=function(b){return a.emboss(b)},f=function(b,c){return a.gamma(b,c)},g=function(b,c){return a.exposure(b,c)},h=function(b,c,d,e){return a.colorize(b,c,d,e)},i=function(b,c){return a.brightness(b,c)},j=function(b,c){return a.hue(b,c)},k=function(b,c){return a.saturate(b,c)},l=function(b,c){return a.contrast(b,c)},m=function(b,c){return a.grayscale(b,c)},n=function(b,c){return a.sepia(b,c)},o=function(a,c){return b.flip(a,c)},p=function(a,c,d,e,f){return b.crop(a,c,d,e,f)},q=function(a,c,d){return b.resize(a,c,d)},r=function(a,c){return b.rotate(a,c)};return{invert:c,sharpen:d,emboss:e,brightness:i,hue:j,saturate:k,contrast:l,grayscale:m,sepia:n,colorize:h,gamma:f,exposure:g,flip:o,crop:p,resize:q,rotate:r}}),h("e",Array),h("f",Error),g("a",["e","f"],function(a,b){var c=function(){},d=function(a,b){return function(){return a(b.apply(null,arguments))}},e=function(a){return function(){return a}},f=function(a){return a},g=function(a,b){return a===b},h=function(b){for(var c=new a(arguments.length-1),d=1;d-1},h=function(a,b){return t(a,b).isSome()},i=function(a,b){for(var c=[],d=0;d=0;c--){var d=a[c];b(d,c,a)}},n=function(a,b){for(var c=[],d=[],e=0,f=a.length;e=300?c.handleHttpError(b.status):a.resolve(b.blob)})}var f=function(a,b){var c=a.indexOf("?")===-1?"?":"&";return/[?&]apiKey=/.test(a)||!b?a:a+c+"apiKey="+encodeURIComponent(b)},g=function(b,e){return d.requestUrlAsBlob(f(b,e),{"Content-Type":"application/json;charset=UTF-8","tiny-api-key":e}).then(function(b){return b.status<200||b.status>=300?c.handleServiceErrorResponse(b.status,b.blob):a.resolve(b.blob)})},h=function(a,b){return b?g(a,b):e(a)};return{getUrl:h}}),h("v",Math),h("w",setTimeout),g("x",["7"],function(a){return a("tinymce.dom.DOMUtils")}),g("y",["7"],function(a){return a("tinymce.ui.Factory")}),g("z",[],function(){return function(){function a(a){var b;return b=f.splice(++g),f.push(a),{state:a,removed:b}}function b(){if(d())return f[--g]}function c(){if(e())return f[++g]}function d(){return g>0}function e(){return g!==-1&&g').appendTo(k),e.each(B,function(b){a("#"+D,k).append('