Merged from sub repository (updated ckeditor, filters - step 3)
Release commit
|
|
@ -1,4 +1,4 @@
|
|||
CKEDITOR.dialog.add("base64imageDialog",function(c){function p(b){if("string"!=typeof b||!b)e.getElement().setHtml("");else{var f=new Image;e.getElement().setHtml("Loading...");f.onload=function(){e.getElement().setHtml("");null==i||null==h?(d.setValueOf("tab-properties","width",this.width),d.setValueOf("tab-properties","height",this.height),j=1,0<this.height&&0<this.width&&(j=this.width/this.height),0>=j&&(j=1)):h=i=null;this.id=c.id+"previewimage";this.setAttribute("style","max-width:400px;max-height:100px;");
|
||||
CKEDITOR.dialog.add("base64imageDialog",function(c){function p(b){if("string"!=typeof b||!b)e.getElement().setHtml("");else{var f=new Image;e.getElement().setHtml("Loading...");f.onload=function(){e.getElement().setHtml("");null==i||null==h?(d.setValueOf("tab-properties","width",this.width),d.setValueOf("tab-properties","height",this.height),j=1,0<this.height&&0<this.width&&(j=this.width/this.height),0>=j&&(j=1)):h=i=null;this.id=c.id+"previewimage";this.setAttribute("style","max-width:400px;max-height:100px;");
|
||||
this.setAttribute("alt","");try{var b=e.getElement().$;b&&b.appendChild(this)}catch(f){}};f.onerror=function(){e.getElement().setHtml("")};f.onabort=function(){e.getElement().setHtml("")};f.src=b}}function n(b){e.getElement().setHtml("");if("base64"==b)l&&l.setValue(!1,!0),m&&m.setValue(!1,!0);else if("url"==b)l&&l.setValue(!0,!0),m&&m.setValue(!1,!0),q&&p(q.getValue());else if(r){l&&l.setValue(!1,!0);m&&m.setValue(!0,!0);var f=d.getContentElement("tab-source","file"),b=null;try{b=f.getInputElement().$}catch(a){b=
|
||||
null}if(b&&("files"in b&&b.files&&0<b.files.length&&b.files[0])&&(!("type"in b.files[0])||b.files[0].type.match("image.*"))&&FileReader)e.getElement().setHtml("Loading..."),f=new FileReader,f.onload=function(){return function(b){e.getElement().setHtml("");p(b.target.result)}}(b.files[0]),f.onerror=function(){e.getElement().setHtml("")},f.onabort=function(){e.getElement().setHtml("")},f.readAsDataURL(b.files[0])}}function s(b){var f=d.getContentElement("tab-properties","width").getValue(),a=d.getContentElement("tab-properties",
|
||||
"height").getValue(),c="px",g="px";0<=f.indexOf("%")&&(c="%");0<=a.indexOf("%")&&(g="%");f=parseInt(f,10);a=parseInt(a,10);isNaN(f)&&(f=0);isNaN(a)&&(a=0);var e="px";"width"==b?("%"==c&&(e="%"),a=Math.round(f/j)):("%"==g&&(e="%"),f=Math.round(a*j));"%"==e&&(f+="%",a+="%");d.getContentElement("tab-properties","width").setValue(f);d.getContentElement("tab-properties","height").setValue(a)}function t(b){var a=b.getValue(),c="";0<=a.indexOf("%")&&(c="%");a=parseInt(a,10);isNaN(a)&&(a=0);b.setValue(a+
|
||||
|
|
|
|||
BIN
vendors/ckeditor/plugins/bidi/icons/bidiltr.png
vendored
Normal file
|
After Width: | Height: | Size: 769 B |
BIN
vendors/ckeditor/plugins/bidi/icons/bidirtl.png
vendored
Normal file
|
After Width: | Height: | Size: 768 B |
BIN
vendors/ckeditor/plugins/bidi/icons/hidpi/bidiltr.png
vendored
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
vendors/ckeditor/plugins/bidi/icons/hidpi/bidirtl.png
vendored
Normal file
|
After Width: | Height: | Size: 1.6 KiB |
8
vendors/ckeditor/plugins/bidi/lang/af.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'af', {
|
||||
ltr: 'Skryfrigting van links na regs',
|
||||
rtl: 'Skryfrigting van regs na links'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/ar.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'ar', {
|
||||
ltr: 'إتجاه النص من اليسار إلى اليمين',
|
||||
rtl: 'إتجاه النص من اليمين إلى اليسار'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/bg.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'bg', {
|
||||
ltr: 'Посока на текста от ляво на дясно',
|
||||
rtl: 'Посока на текста от дясно на ляво'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/bn.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'bn', {
|
||||
ltr: 'Text direction from left to right', // MISSING
|
||||
rtl: 'Text direction from right to left' // MISSING
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/bs.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'bs', {
|
||||
ltr: 'Text direction from left to right', // MISSING
|
||||
rtl: 'Text direction from right to left' // MISSING
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/ca.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'ca', {
|
||||
ltr: 'Direcció del text d\'esquerra a dreta',
|
||||
rtl: 'Direcció del text de dreta a esquerra'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/cs.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'cs', {
|
||||
ltr: 'Směr textu zleva doprava',
|
||||
rtl: 'Směr textu zprava doleva'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/cy.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'cy', {
|
||||
ltr: 'Cyfeiriad testun o\'r chwith i\'r dde',
|
||||
rtl: 'Cyfeiriad testun o\'r dde i\'r chwith'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/da.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'da', {
|
||||
ltr: 'Tekstretning fra venstre til højre',
|
||||
rtl: 'Tekstretning fra højre til venstre'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/de.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'de', {
|
||||
ltr: 'Leserichtung von Links nach Rechts',
|
||||
rtl: 'Leserichtung von Rechts nach Links'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/el.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'el', {
|
||||
ltr: 'Διεύθυνση κειμένου από αριστερά στα δεξιά',
|
||||
rtl: 'Διεύθυνση κειμένου από δεξιά στα αριστερά'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/en-au.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'en-au', {
|
||||
ltr: 'Text direction from left to right', // MISSING
|
||||
rtl: 'Text direction from right to left' // MISSING
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/en-ca.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'en-ca', {
|
||||
ltr: 'Text direction from left to right', // MISSING
|
||||
rtl: 'Text direction from right to left' // MISSING
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/en-gb.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'en-gb', {
|
||||
ltr: 'Text direction from left to right',
|
||||
rtl: 'Text direction from right to left'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/en.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'en', {
|
||||
ltr: 'Text direction from left to right',
|
||||
rtl: 'Text direction from right to left'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/eo.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'eo', {
|
||||
ltr: 'Tekstdirekto de maldekstre dekstren',
|
||||
rtl: 'Tekstdirekto de dekstre maldekstren'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/es.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'es', {
|
||||
ltr: 'Dirección del texto de izquierda a derecha',
|
||||
rtl: 'Dirección del texto de derecha a izquierda'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/et.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'et', {
|
||||
ltr: 'Teksti suund vasakult paremale',
|
||||
rtl: 'Teksti suund paremalt vasakule'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/eu.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'eu', {
|
||||
ltr: 'Testuaren norantza ezkerretik eskuinera',
|
||||
rtl: 'Testuaren norantza eskuinetik ezkerrera'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/fa.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'fa', {
|
||||
ltr: 'جهت متن از چپ به راست',
|
||||
rtl: 'جهت متن از راست به چپ'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/fi.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'fi', {
|
||||
ltr: 'Tekstin suunta vasemmalta oikealle',
|
||||
rtl: 'Tekstin suunta oikealta vasemmalle'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/fo.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'fo', {
|
||||
ltr: 'Tekstkós frá vinstru til høgru',
|
||||
rtl: 'Tekstkós frá høgru til vinstru'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/fr-ca.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'fr-ca', {
|
||||
ltr: 'Direction du texte de gauche à droite',
|
||||
rtl: 'Direction du texte de droite à gauche'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/fr.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'fr', {
|
||||
ltr: 'Direction du texte de la gauche vers la droite',
|
||||
rtl: 'Direction du texte de la droite vers la gauche'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/gl.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'gl', {
|
||||
ltr: 'Dirección do texto de esquerda a dereita',
|
||||
rtl: 'Dirección do texto de dereita a esquerda'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/gu.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'gu', {
|
||||
ltr: 'ટેક્ષ્ત્ ની દિશા ડાબે થી જમણે',
|
||||
rtl: 'ટેક્ષ્ત્ ની દિશા જમણે થી ડાબે'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/he.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'he', {
|
||||
ltr: 'כיוון טקסט משמאל לימין (LTR)',
|
||||
rtl: 'כיוון טקסט מימין לשמאל (RTL)'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/hi.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'hi', {
|
||||
ltr: 'Text direction from left to right', // MISSING
|
||||
rtl: 'Text direction from right to left' // MISSING
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/hr.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'hr', {
|
||||
ltr: 'Smjer teksta s lijeva na desno',
|
||||
rtl: 'Smjer teksta s desna na lijevo'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/hu.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'hu', {
|
||||
ltr: 'Szöveg iránya balról jobbra',
|
||||
rtl: 'Szöveg iránya jobbról balra'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/id.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'id', {
|
||||
ltr: 'Arah penulisan dari kiri ke kanan.',
|
||||
rtl: 'Arah penulisan dari kanan ke kiri.'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/is.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'is', {
|
||||
ltr: 'Text direction from left to right', // MISSING
|
||||
rtl: 'Text direction from right to left' // MISSING
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/it.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'it', {
|
||||
ltr: 'Direzione del testo da sinistra verso destra',
|
||||
rtl: 'Direzione del testo da destra verso sinistra'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/ja.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'ja', {
|
||||
ltr: 'テキストの向き : 左から右へ',
|
||||
rtl: 'テキストの向き : 右から左へ'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/ka.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'ka', {
|
||||
ltr: 'ტექსტის მიმართულება მარცხნიდან მარჯვნივ',
|
||||
rtl: 'ტექსტის მიმართულება მარჯვნიდან მარცხნივ'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/km.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'km', {
|
||||
ltr: 'ទិសដៅអក្សរពីឆ្វេងទៅស្ដាំ',
|
||||
rtl: 'ទិសដៅអក្សរពីស្ដាំទៅឆ្វេង'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/ko.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'ko', {
|
||||
ltr: '택스트 방향이 왼쪽에서 오른쪽으로 ',
|
||||
rtl: '택스트 방향이 오른쪽에서 왼쪽으로'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/ku.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'ku', {
|
||||
ltr: 'ئاراستەی نووسە لە چەپ بۆ ڕاست',
|
||||
rtl: 'ئاراستەی نووسە لە ڕاست بۆ چەپ'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/lt.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'lt', {
|
||||
ltr: 'Tekstas iš kairės į dešinę',
|
||||
rtl: 'Tekstas iš dešinės į kairę'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/lv.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'lv', {
|
||||
ltr: 'Teksta virziens no kreisās uz labo',
|
||||
rtl: 'Teksta virziens no labās uz kreiso'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/mk.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'mk', {
|
||||
ltr: 'Text direction from left to right', // MISSING
|
||||
rtl: 'Text direction from right to left' // MISSING
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/mn.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'mn', {
|
||||
ltr: 'Зүүнээс баруун тийш бичлэг',
|
||||
rtl: 'Баруунаас зүүн тийш бичлэг'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/ms.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'ms', {
|
||||
ltr: 'Text direction from left to right', // MISSING
|
||||
rtl: 'Text direction from right to left' // MISSING
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/nb.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'nb', {
|
||||
ltr: 'Tekstretning fra venstre til høyre',
|
||||
rtl: 'Tekstretning fra høyre til venstre'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/nl.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'nl', {
|
||||
ltr: 'Schrijfrichting van links naar rechts',
|
||||
rtl: 'Schrijfrichting van rechts naar links'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/no.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'no', {
|
||||
ltr: 'Tekstretning fra venstre til høyre',
|
||||
rtl: 'Tekstretning fra høyre til venstre'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/pl.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'pl', {
|
||||
ltr: 'Kierunek tekstu od lewej strony do prawej',
|
||||
rtl: 'Kierunek tekstu od prawej strony do lewej'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/pt-br.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'pt-br', {
|
||||
ltr: 'Direção do texto da esquerda para a direita',
|
||||
rtl: 'Direção do texto da direita para a esquerda'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/pt.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'pt', {
|
||||
ltr: 'Direção do texto da esquerda para a direita',
|
||||
rtl: 'Direção do texto da direita para a esquerda'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/ro.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'ro', {
|
||||
ltr: 'Text direction from left to right', // MISSING
|
||||
rtl: 'Text direction from right to left' // MISSING
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/ru.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'ru', {
|
||||
ltr: 'Направление текста слева направо',
|
||||
rtl: 'Направление текста справа налево'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/si.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'si', {
|
||||
ltr: 'වගන්ති දිශාව වමේ සිට දකුණට',
|
||||
rtl: 'වගන්ති දිශාව දකුණේ සිට වමට'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/sk.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'sk', {
|
||||
ltr: 'Smer textu zľava doprava',
|
||||
rtl: 'Smer textu sprava doľava'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/sl.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'sl', {
|
||||
ltr: 'Smer besedila od leve proti desni',
|
||||
rtl: 'Smer besedila od desne proti levi'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/sq.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'sq', {
|
||||
ltr: 'Drejtimi i tekstit nga e majta në të djathtë',
|
||||
rtl: 'Drejtimi i tekstit nga e djathta në të majtë'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/sr-latn.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'sr-latn', {
|
||||
ltr: 'Text direction from left to right', // MISSING
|
||||
rtl: 'Text direction from right to left' // MISSING
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/sr.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'sr', {
|
||||
ltr: 'Text direction from left to right', // MISSING
|
||||
rtl: 'Text direction from right to left' // MISSING
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/sv.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'sv', {
|
||||
ltr: 'Text riktning från vänster till höger',
|
||||
rtl: 'Text riktning från höger till vänster'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/th.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'th', {
|
||||
ltr: 'Text direction from left to right', // MISSING
|
||||
rtl: 'Text direction from right to left' // MISSING
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/tr.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'tr', {
|
||||
ltr: 'Metin yönü soldan sağa',
|
||||
rtl: 'Metin yönü sağdan sola'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/tt.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'tt', {
|
||||
ltr: 'Сулдан уңга язылыш',
|
||||
rtl: 'Уңнан сулга язылыш'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/ug.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'ug', {
|
||||
ltr: 'تېكىست يۆنىلىشى سولدىن ئوڭغا',
|
||||
rtl: 'تېكىست يۆنىلىشى ئوڭدىن سولغا'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/uk.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'uk', {
|
||||
ltr: 'Напрямок тексту зліва направо',
|
||||
rtl: 'Напрямок тексту справа наліво'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/vi.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'vi', {
|
||||
ltr: 'Văn bản hướng từ trái sang phải',
|
||||
rtl: 'Văn bản hướng từ phải sang trái'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/zh-cn.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'zh-cn', {
|
||||
ltr: '文字方向为从左至右',
|
||||
rtl: '文字方向为从右至左'
|
||||
} );
|
||||
8
vendors/ckeditor/plugins/bidi/lang/zh.js
vendored
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'bidi', 'zh', {
|
||||
ltr: '文字方向從左至右',
|
||||
rtl: '文字方向從右至左'
|
||||
} );
|
||||
305
vendors/ckeditor/plugins/bidi/plugin.js
vendored
Normal file
|
|
@ -0,0 +1,305 @@
|
|||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
( function() {
|
||||
var guardElements = { table: 1, ul: 1, ol: 1, blockquote: 1, div: 1 },
|
||||
directSelectionGuardElements = {},
|
||||
// All guard elements which can have a direction applied on them.
|
||||
allGuardElements = {};
|
||||
CKEDITOR.tools.extend( directSelectionGuardElements, guardElements, { tr: 1, p: 1, div: 1, li: 1 } );
|
||||
CKEDITOR.tools.extend( allGuardElements, directSelectionGuardElements, { td: 1 } );
|
||||
|
||||
function setToolbarStates( editor, path ) {
|
||||
var useComputedState = editor.config.useComputedState,
|
||||
selectedElement;
|
||||
|
||||
useComputedState = useComputedState === undefined || useComputedState;
|
||||
|
||||
// We can use computedState provided by the browser or traverse parents manually.
|
||||
if ( !useComputedState )
|
||||
selectedElement = getElementForDirection( path.lastElement, editor.editable() );
|
||||
|
||||
selectedElement = selectedElement || path.block || path.blockLimit;
|
||||
|
||||
// If we're having BODY here, user probably done CTRL+A, let's try to get the enclosed node, if any.
|
||||
if ( selectedElement.equals( editor.editable() ) ) {
|
||||
var enclosedNode = editor.getSelection().getRanges()[ 0 ].getEnclosedNode();
|
||||
enclosedNode && enclosedNode.type == CKEDITOR.NODE_ELEMENT && ( selectedElement = enclosedNode );
|
||||
}
|
||||
|
||||
if ( !selectedElement )
|
||||
return;
|
||||
|
||||
var selectionDir = useComputedState ? selectedElement.getComputedStyle( 'direction' ) : selectedElement.getStyle( 'direction' ) || selectedElement.getAttribute( 'dir' );
|
||||
|
||||
editor.getCommand( 'bidirtl' ).setState( selectionDir == 'rtl' ? CKEDITOR.TRISTATE_ON : CKEDITOR.TRISTATE_OFF );
|
||||
editor.getCommand( 'bidiltr' ).setState( selectionDir == 'ltr' ? CKEDITOR.TRISTATE_ON : CKEDITOR.TRISTATE_OFF );
|
||||
}
|
||||
|
||||
function handleMixedDirContent( editor, path ) {
|
||||
var directionNode = path.block || path.blockLimit || editor.editable();
|
||||
var pathDir = directionNode.getDirection( 1 );
|
||||
if ( pathDir != ( editor._.selDir || editor.lang.dir ) ) {
|
||||
editor._.selDir = pathDir;
|
||||
editor.fire( 'contentDirChanged', pathDir );
|
||||
}
|
||||
}
|
||||
|
||||
// Returns element with possibility of applying the direction.
|
||||
// @param node
|
||||
function getElementForDirection( node, root ) {
|
||||
while ( node && !( node.getName() in allGuardElements || node.equals( root ) ) ) {
|
||||
var parent = node.getParent();
|
||||
if ( !parent )
|
||||
break;
|
||||
|
||||
node = parent;
|
||||
}
|
||||
|
||||
return node;
|
||||
}
|
||||
|
||||
function switchDir( element, dir, editor, database ) {
|
||||
if ( element.isReadOnly() || element.equals( editor.editable() ) )
|
||||
return;
|
||||
|
||||
// Mark this element as processed by switchDir.
|
||||
CKEDITOR.dom.element.setMarker( database, element, 'bidi_processed', 1 );
|
||||
|
||||
// Check whether one of the ancestors has already been styled.
|
||||
var parent = element,
|
||||
editable = editor.editable();
|
||||
while ( ( parent = parent.getParent() ) && !parent.equals( editable ) ) {
|
||||
if ( parent.getCustomData( 'bidi_processed' ) ) {
|
||||
// Ancestor style must dominate.
|
||||
element.removeStyle( 'direction' );
|
||||
element.removeAttribute( 'dir' );
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
var useComputedState = ( 'useComputedState' in editor.config ) ? editor.config.useComputedState : 1;
|
||||
|
||||
var elementDir = useComputedState ? element.getComputedStyle( 'direction' ) : element.getStyle( 'direction' ) || element.hasAttribute( 'dir' );
|
||||
|
||||
// Stop if direction is same as present.
|
||||
if ( elementDir == dir )
|
||||
return;
|
||||
|
||||
// Clear direction on this element.
|
||||
element.removeStyle( 'direction' );
|
||||
|
||||
// Do the second check when computed state is ON, to check
|
||||
// if we need to apply explicit direction on this element.
|
||||
if ( useComputedState ) {
|
||||
element.removeAttribute( 'dir' );
|
||||
if ( dir != element.getComputedStyle( 'direction' ) )
|
||||
element.setAttribute( 'dir', dir );
|
||||
} else
|
||||
// Set new direction for this element.
|
||||
element.setAttribute( 'dir', dir );
|
||||
|
||||
editor.forceNextSelectionCheck();
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
function getFullySelected( range, elements, enterMode ) {
|
||||
var ancestor = range.getCommonAncestor( false, true );
|
||||
|
||||
range = range.clone();
|
||||
range.enlarge( enterMode == CKEDITOR.ENTER_BR ? CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS : CKEDITOR.ENLARGE_BLOCK_CONTENTS );
|
||||
|
||||
if ( range.checkBoundaryOfElement( ancestor, CKEDITOR.START ) && range.checkBoundaryOfElement( ancestor, CKEDITOR.END ) ) {
|
||||
var parent;
|
||||
while ( ancestor && ancestor.type == CKEDITOR.NODE_ELEMENT && ( parent = ancestor.getParent() ) && parent.getChildCount() == 1 && !( ancestor.getName() in elements ) )
|
||||
ancestor = parent;
|
||||
|
||||
return ancestor.type == CKEDITOR.NODE_ELEMENT && ( ancestor.getName() in elements ) && ancestor;
|
||||
}
|
||||
}
|
||||
|
||||
function bidiCommand( dir ) {
|
||||
return {
|
||||
// It applies to a "block-like" context.
|
||||
context: 'p',
|
||||
allowedContent: {
|
||||
'h1 h2 h3 h4 h5 h6 table ul ol blockquote div tr p div li td': {
|
||||
propertiesOnly: true,
|
||||
attributes: 'dir'
|
||||
}
|
||||
},
|
||||
requiredContent: 'p[dir]',
|
||||
refresh: function( editor, path ) {
|
||||
setToolbarStates( editor, path );
|
||||
handleMixedDirContent( editor, path );
|
||||
},
|
||||
exec: function( editor ) {
|
||||
var selection = editor.getSelection(),
|
||||
enterMode = editor.config.enterMode,
|
||||
ranges = selection.getRanges();
|
||||
|
||||
if ( ranges && ranges.length ) {
|
||||
var database = {};
|
||||
|
||||
// Creates bookmarks for selection, as we may split some blocks.
|
||||
var bookmarks = selection.createBookmarks();
|
||||
|
||||
var rangeIterator = ranges.createIterator(),
|
||||
range,
|
||||
i = 0;
|
||||
|
||||
while ( ( range = rangeIterator.getNextRange( 1 ) ) ) {
|
||||
// Apply do directly selected elements from guardElements.
|
||||
var selectedElement = range.getEnclosedNode();
|
||||
|
||||
// If this is not our element of interest, apply to fully selected elements from guardElements.
|
||||
if ( !selectedElement || selectedElement && !( selectedElement.type == CKEDITOR.NODE_ELEMENT && selectedElement.getName() in directSelectionGuardElements ) )
|
||||
selectedElement = getFullySelected( range, guardElements, enterMode );
|
||||
|
||||
selectedElement && switchDir( selectedElement, dir, editor, database );
|
||||
|
||||
var iterator, block;
|
||||
|
||||
// Walker searching for guardElements.
|
||||
var walker = new CKEDITOR.dom.walker( range );
|
||||
|
||||
var start = bookmarks[ i ].startNode,
|
||||
end = bookmarks[ i++ ].endNode;
|
||||
|
||||
walker.evaluator = function( node ) {
|
||||
return !!( node.type == CKEDITOR.NODE_ELEMENT && node.getName() in guardElements && !( node.getName() == ( enterMode == CKEDITOR.ENTER_P ? 'p' : 'div' ) && node.getParent().type == CKEDITOR.NODE_ELEMENT && node.getParent().getName() == 'blockquote' )
|
||||
// Element must be fully included in the range as well. (#6485).
|
||||
&& node.getPosition( start ) & CKEDITOR.POSITION_FOLLOWING && ( ( node.getPosition( end ) & CKEDITOR.POSITION_PRECEDING + CKEDITOR.POSITION_CONTAINS ) == CKEDITOR.POSITION_PRECEDING ) );
|
||||
};
|
||||
|
||||
while ( ( block = walker.next() ) )
|
||||
switchDir( block, dir, editor, database );
|
||||
|
||||
iterator = range.createIterator();
|
||||
iterator.enlargeBr = enterMode != CKEDITOR.ENTER_BR;
|
||||
|
||||
while ( ( block = iterator.getNextParagraph( enterMode == CKEDITOR.ENTER_P ? 'p' : 'div' ) ) )
|
||||
switchDir( block, dir, editor, database );
|
||||
}
|
||||
|
||||
CKEDITOR.dom.element.clearAllMarkers( database );
|
||||
|
||||
editor.forceNextSelectionCheck();
|
||||
// Restore selection position.
|
||||
selection.selectBookmarks( bookmarks );
|
||||
|
||||
editor.focus();
|
||||
}
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
CKEDITOR.plugins.add( 'bidi', {
|
||||
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%
|
||||
icons: 'bidiltr,bidirtl', // %REMOVE_LINE_CORE%
|
||||
hidpi: true, // %REMOVE_LINE_CORE%
|
||||
init: function( editor ) {
|
||||
if ( editor.blockless )
|
||||
return;
|
||||
|
||||
// All buttons use the same code to register. So, to avoid
|
||||
// duplications, let's use this tool function.
|
||||
function addButtonCommand( buttonName, buttonLabel, commandName, commandDef, order ) {
|
||||
editor.addCommand( commandName, new CKEDITOR.command( editor, commandDef ) );
|
||||
|
||||
if ( editor.ui.addButton ) {
|
||||
editor.ui.addButton( buttonName, {
|
||||
label: buttonLabel,
|
||||
command: commandName,
|
||||
toolbar: 'bidi,' + order
|
||||
} );
|
||||
}
|
||||
}
|
||||
|
||||
var lang = editor.lang.bidi;
|
||||
|
||||
addButtonCommand( 'BidiLtr', lang.ltr, 'bidiltr', bidiCommand( 'ltr' ), 10 );
|
||||
addButtonCommand( 'BidiRtl', lang.rtl, 'bidirtl', bidiCommand( 'rtl' ), 20 );
|
||||
|
||||
editor.on( 'contentDom', function() {
|
||||
editor.document.on( 'dirChanged', function( evt ) {
|
||||
editor.fire( 'dirChanged', {
|
||||
node: evt.data,
|
||||
dir: evt.data.getDirection( 1 )
|
||||
} );
|
||||
} );
|
||||
} );
|
||||
|
||||
// Indicate that the current selection is in different direction than the UI.
|
||||
editor.on( 'contentDirChanged', function( evt ) {
|
||||
var func = ( editor.lang.dir != evt.data ? 'add' : 'remove' ) + 'Class';
|
||||
var toolbar = editor.ui.space( editor.config.toolbarLocation );
|
||||
if ( toolbar )
|
||||
toolbar[ func ]( 'cke_mixed_dir_content' );
|
||||
} );
|
||||
}
|
||||
} );
|
||||
|
||||
// If the element direction changed, we need to switch the margins of
|
||||
// the element and all its children, so it will get really reflected
|
||||
// like a mirror. (#5910)
|
||||
function isOffline( el ) {
|
||||
var html = el.getDocument().getBody().getParent();
|
||||
while ( el ) {
|
||||
if ( el.equals( html ) )
|
||||
return false;
|
||||
el = el.getParent();
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
function dirChangeNotifier( org ) {
|
||||
var isAttribute = org == elementProto.setAttribute,
|
||||
isRemoveAttribute = org == elementProto.removeAttribute,
|
||||
dirStyleRegexp = /\bdirection\s*:\s*(.*?)\s*(:?$|;)/;
|
||||
|
||||
return function( name, val ) {
|
||||
if ( !this.isReadOnly() ) {
|
||||
var orgDir;
|
||||
if ( ( name == ( isAttribute || isRemoveAttribute ? 'dir' : 'direction' ) || name == 'style' && ( isRemoveAttribute || dirStyleRegexp.test( val ) ) ) && !isOffline( this ) ) {
|
||||
orgDir = this.getDirection( 1 );
|
||||
var retval = org.apply( this, arguments );
|
||||
if ( orgDir != this.getDirection( 1 ) ) {
|
||||
this.getDocument().fire( 'dirChanged', this );
|
||||
return retval;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return org.apply( this, arguments );
|
||||
};
|
||||
}
|
||||
|
||||
var elementProto = CKEDITOR.dom.element.prototype,
|
||||
methods = [ 'setStyle', 'removeStyle', 'setAttribute', 'removeAttribute' ];
|
||||
for ( var i = 0; i < methods.length; i++ )
|
||||
elementProto[ methods[ i ] ] = CKEDITOR.tools.override( elementProto[ methods[ i ] ], dirChangeNotifier );
|
||||
} )();
|
||||
|
||||
/**
|
||||
* Fired when the language direction of an element is changed.
|
||||
*
|
||||
* @event dirChanged
|
||||
* @member CKEDITOR.editor
|
||||
* @param {CKEDITOR.editor} editor This editor instance.
|
||||
* @param data
|
||||
* @param {CKEDITOR.dom.node} data.node The element that is being changed.
|
||||
* @param {String} data.dir The new direction.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Fired when the language direction in the specific cursor position is changed
|
||||
*
|
||||
* @event contentDirChanged
|
||||
* @member CKEDITOR.editor
|
||||
* @param {CKEDITOR.editor} editor This editor instance.
|
||||
* @param {String} data The direction in the current position.
|
||||
*/
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
/*
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
/*
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
|
|
|||
BIN
vendors/ckeditor/plugins/icons.png
vendored
|
Before Width: | Height: | Size: 8.9 KiB After Width: | Height: | Size: 8.6 KiB |
BIN
vendors/ckeditor/plugins/icons_hidpi.png
vendored
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 27 KiB |
|
|
@ -1,4 +1,4 @@
|
|||
/*
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
/*
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
/*
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
/*
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
|
|
|||
BIN
vendors/ckeditor/plugins/plain/icons/hidpi/plain-rtl.png
vendored
Normal file
|
After Width: | Height: | Size: 1.9 KiB |
BIN
vendors/ckeditor/plugins/plain/icons/hidpi/plain.png
vendored
Normal file
|
After Width: | Height: | Size: 2 KiB |
BIN
vendors/ckeditor/plugins/plain/icons/plain-rtl.png
vendored
Normal file
|
After Width: | Height: | Size: 762 B |
BIN
vendors/ckeditor/plugins/plain/icons/plain.png
vendored
Normal file
|
After Width: | Height: | Size: 764 B |
177
vendors/ckeditor/plugins/plain/plugin.js
vendored
Normal file
|
|
@ -0,0 +1,177 @@
|
|||
|
||||
(function() {
|
||||
|
||||
var
|
||||
simplePlainToHtml = function (sPlain) {
|
||||
return sPlain
|
||||
.replace(/&/g, '&')
|
||||
.replace(/>/g, '>').replace(/</g, '<')
|
||||
.replace(/[\-_~]{10,}/g, '<hr />')
|
||||
.replace(/\n/g, '<br />')
|
||||
.replace(/ /g, ' ')
|
||||
;
|
||||
},
|
||||
simpleHtmlToPlain = function (sHtml) {
|
||||
|
||||
var sText = sHtml
|
||||
.replace(/[\s]+/gm, ' ')
|
||||
.replace(/<br[^>]*>/gmi, '\n')
|
||||
.replace(/<\/h[\d]>/gi, '\n')
|
||||
.replace(/<\/p>/gi, '\n\n')
|
||||
.replace(/<\/li>/gi, '\n')
|
||||
.replace(/<\/td>/gi, '\n')
|
||||
.replace(/<\/tr>/gi, '\n')
|
||||
.replace(/<\/div>/gi, '\n')
|
||||
.replace(/<blockquote[^>]*>/gmi, '\n')
|
||||
.replace(/<\/blockquote>/gi, '\n')
|
||||
.replace(/<hr[^>]*>/gmi, '\n_______________________________\n\n')
|
||||
.replace(/ /gi, ' ')
|
||||
.replace(/"/gi, '"')
|
||||
.replace(/<[^>]*>/gm, '')
|
||||
;
|
||||
|
||||
sText = $('<div></div>').html(sText).text();
|
||||
|
||||
sText = sText
|
||||
.replace(/\n[ \t]+/gm, '\n')
|
||||
.replace(/[\n]{3,}/gm, '\n\n')
|
||||
.replace(/>/gi, '>')
|
||||
.replace(/</gi, '<')
|
||||
.replace(/&/gi, '&')
|
||||
;
|
||||
|
||||
return sText;
|
||||
}
|
||||
;
|
||||
|
||||
CKEDITOR.plugins.add('plain', {
|
||||
lang: '',
|
||||
icons: 'plain',
|
||||
hidpi: true,
|
||||
init: function(editor)
|
||||
{
|
||||
if (editor.elementMode === CKEDITOR.ELEMENT_MODE_INLINE)
|
||||
return;
|
||||
|
||||
var plain = CKEDITOR.plugins.plain;
|
||||
editor.addMode('plain', function(callback) {
|
||||
|
||||
var
|
||||
contentsSpace = editor.ui.space('contents'),
|
||||
textarea = contentsSpace.getDocument().createElement('textarea')
|
||||
;
|
||||
|
||||
textarea.setStyles(
|
||||
CKEDITOR.tools.extend({
|
||||
width: CKEDITOR.env.ie7Compat ? '99%' : '100%',
|
||||
height: '100%',
|
||||
resize: 'none',
|
||||
outline: 'none',
|
||||
'text-align': 'left'
|
||||
},
|
||||
CKEDITOR.tools.cssVendorPrefix('tab-size', 4)))
|
||||
;
|
||||
|
||||
textarea.setAttribute('dir', 'ltr');
|
||||
textarea.addClass('cke_plain');
|
||||
|
||||
contentsSpace.append(textarea);
|
||||
|
||||
var editable = editor.editable(new plainEditable(editor, textarea));
|
||||
|
||||
editable.setData(editor.getData(1));
|
||||
editor.__plain = editable;
|
||||
|
||||
// Having to make <textarea> fixed sized to conquer the following bugs:
|
||||
// 1. The textarea height/width='100%' doesn't constraint to the 'td' in IE6/7.
|
||||
// 2. Unexpected vertical-scrolling behavior happens whenever focus is moving out of editor
|
||||
// if text content within it has overflowed. (#4762)
|
||||
if (CKEDITOR.env.ie) {
|
||||
editable.attachListener(editor, 'resize', onResize, editable);
|
||||
editable.attachListener(CKEDITOR.document.getWindow(), 'resize', onResize, editable);
|
||||
CKEDITOR.tools.setTimeout(onResize, 0, editable);
|
||||
}
|
||||
|
||||
editor.fire('ariaWidget', this);
|
||||
callback();
|
||||
});
|
||||
|
||||
editor.addCommand('plain', plain.commands.plain);
|
||||
|
||||
if (editor.ui.addButton) {
|
||||
editor.ui.addButton('plain', {
|
||||
label: '',
|
||||
command: 'plain',
|
||||
toolbar: 'spec,10'
|
||||
});
|
||||
}
|
||||
|
||||
editor.on('mode', function() {
|
||||
editor.getCommand('plain').setState(editor.mode === 'plain' ? CKEDITOR.TRISTATE_ON : CKEDITOR.TRISTATE_OFF);
|
||||
editor.editable().addClass('cke_enable_context_menu');
|
||||
});
|
||||
|
||||
function onResize() {
|
||||
this.hide();
|
||||
this.setStyle('height', this.getParent().$.clientHeight + 'px');
|
||||
this.setStyle('width', this.getParent().$.clientWidth + 'px');
|
||||
this.show();
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
var plainEditable = CKEDITOR.tools.createClass({
|
||||
base: CKEDITOR.editable,
|
||||
proto: {
|
||||
setData: function(data) {
|
||||
this.setValue(window.rainloop_Utils_htmlToPlain ?
|
||||
window.rainloop_Utils_htmlToPlain(data) : simpleHtmlToPlain(data));
|
||||
|
||||
this.editor.fire('dataReady');
|
||||
},
|
||||
setRawData: function(data) {
|
||||
this.setValue(data);
|
||||
this.editor.fire('dataReady');
|
||||
},
|
||||
getData: function() {
|
||||
return window.rainloop_Utils_plainToHtml ?
|
||||
window.rainloop_Utils_plainToHtml(this.getValue(), true) : simplePlainToHtml(this.getValue());
|
||||
},
|
||||
getRawData: function() {
|
||||
return this.getValue();
|
||||
},
|
||||
insertHtml: function() {},
|
||||
insertElement: function() {},
|
||||
insertText: function() {},
|
||||
setReadOnly: function( isReadOnly ) {
|
||||
this[(isReadOnly ? 'set' : 'remove') + 'Attribute' ]('readOnly', 'readonly');
|
||||
},
|
||||
detach: function() {
|
||||
plainEditable.baseProto.detach.call( this );
|
||||
this.clearCustomData();
|
||||
this.remove();
|
||||
}
|
||||
}
|
||||
});
|
||||
})();
|
||||
|
||||
CKEDITOR.plugins.plain = {
|
||||
commands: {
|
||||
plain: {
|
||||
modes: {
|
||||
wysiwyg: 1, plain: 1
|
||||
},
|
||||
editorFocus: false,
|
||||
readOnly: 1,
|
||||
exec: function(editor) {
|
||||
if (editor.mode === 'wysiwyg') {
|
||||
editor.fire('saveSnapshot');
|
||||
}
|
||||
|
||||
editor.getCommand('plain').setState(CKEDITOR.TRISTATE_DISABLED);
|
||||
editor.setMode(editor.mode === 'plain' ? 'wysiwyg' : 'plain');
|
||||
},
|
||||
canUndo: false
|
||||
}
|
||||
}
|
||||
};
|
||||