New plugin loader, page features, API0.2b, Bugfixes
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<?php
|
||||
|
||||
addHead('<script src="/plugins/ckeditor/ckeditor.js"></script>', 'ckeditor');
|
||||
addHead('<script src="/plugins/ckeditor/adapters/jquery.js"></script>', 'ckeditor-adapter');
|
||||
<?php
|
||||
|
||||
addHead('<script src="/plugins/ckeditor/ckeditor.js"></script>', 'ckeditor');
|
||||
addHead('<script src="/plugins/ckeditor/adapters/jquery.js"></script>', 'ckeditor-adapter');
|
||||
addHead('<script>$(document).ready(function() { $("#content textarea").ckeditor(); });</script>');
|
||||
Vendored
+9
-9
@@ -1,10 +1,10 @@
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
(function(a){CKEDITOR.config.jqueryOverrideVal="undefined"==typeof CKEDITOR.config.jqueryOverrideVal?!0:CKEDITOR.config.jqueryOverrideVal;"undefined"!=typeof a&&(a.extend(a.fn,{ckeditorGet:function(){var a=this.eq(0).data("ckeditorInstance");if(!a)throw"CKEditor is not initialized yet, use ckeditor() with a callback.";return a},ckeditor:function(g,d){if(!CKEDITOR.env.isCompatible)throw Error("The environment is incompatible.");if(!a.isFunction(g))var k=d,d=g,g=k;var i=[],d=d||{};this.each(function(){var b=
|
||||
a(this),c=b.data("ckeditorInstance"),f=b.data("_ckeditorInstanceLock"),h=this,j=new a.Deferred;i.push(j.promise());if(c&&!f)g&&g.apply(c,[this]),j.resolve();else if(f)c.once("instanceReady",function(){setTimeout(function(){c.element?(c.element.$==h&&g&&g.apply(c,[h]),j.resolve()):setTimeout(arguments.callee,100)},0)},null,null,9999);else{if(d.autoUpdateElement||"undefined"==typeof d.autoUpdateElement&&CKEDITOR.config.autoUpdateElement)d.autoUpdateElementJquery=!0;d.autoUpdateElement=!1;b.data("_ckeditorInstanceLock",
|
||||
!0);c=a(this).is("textarea")?CKEDITOR.replace(h,d):CKEDITOR.inline(h,d);b.data("ckeditorInstance",c);c.on("instanceReady",function(d){var e=d.editor;setTimeout(function(){if(e.element){d.removeListener();e.on("dataReady",function(){b.trigger("dataReady.ckeditor",[e])});e.on("setData",function(a){b.trigger("setData.ckeditor",[e,a.data])});e.on("getData",function(a){b.trigger("getData.ckeditor",[e,a.data])},999);e.on("destroy",function(){b.trigger("destroy.ckeditor",[e])});e.on("save",function(){a(h.form).submit();
|
||||
return!1},null,null,20);if(e.config.autoUpdateElementJquery&&b.is("textarea")&&a(h.form).length){var c=function(){b.ckeditor(function(){e.updateElement()})};a(h.form).submit(c);a(h.form).bind("form-pre-serialize",c);b.bind("destroy.ckeditor",function(){a(h.form).unbind("submit",c);a(h.form).unbind("form-pre-serialize",c)})}e.on("destroy",function(){b.removeData("ckeditorInstance")});b.removeData("_ckeditorInstanceLock");b.trigger("instanceReady.ckeditor",[e]);g&&g.apply(e,[h]);j.resolve()}else setTimeout(arguments.callee,
|
||||
100)},0)},null,null,9999)}});var f=new a.Deferred;this.promise=f.promise();a.when.apply(this,i).then(function(){f.resolve()});this.editor=this.eq(0).data("ckeditorInstance");return this}}),CKEDITOR.config.jqueryOverrideVal&&(a.fn.val=CKEDITOR.tools.override(a.fn.val,function(g){return function(d){if(arguments.length){var k=this,i=[],f=this.each(function(){var b=a(this),c=b.data("ckeditorInstance");if(b.is("textarea")&&c){var f=new a.Deferred;c.setData(d,function(){f.resolve()});i.push(f.promise());
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
(function(a){CKEDITOR.config.jqueryOverrideVal="undefined"==typeof CKEDITOR.config.jqueryOverrideVal?!0:CKEDITOR.config.jqueryOverrideVal;"undefined"!=typeof a&&(a.extend(a.fn,{ckeditorGet:function(){var a=this.eq(0).data("ckeditorInstance");if(!a)throw"CKEditor is not initialized yet, use ckeditor() with a callback.";return a},ckeditor:function(g,d){if(!CKEDITOR.env.isCompatible)throw Error("The environment is incompatible.");if(!a.isFunction(g))var k=d,d=g,g=k;var i=[],d=d||{};this.each(function(){var b=
|
||||
a(this),c=b.data("ckeditorInstance"),f=b.data("_ckeditorInstanceLock"),h=this,j=new a.Deferred;i.push(j.promise());if(c&&!f)g&&g.apply(c,[this]),j.resolve();else if(f)c.once("instanceReady",function(){setTimeout(function(){c.element?(c.element.$==h&&g&&g.apply(c,[h]),j.resolve()):setTimeout(arguments.callee,100)},0)},null,null,9999);else{if(d.autoUpdateElement||"undefined"==typeof d.autoUpdateElement&&CKEDITOR.config.autoUpdateElement)d.autoUpdateElementJquery=!0;d.autoUpdateElement=!1;b.data("_ckeditorInstanceLock",
|
||||
!0);c=a(this).is("textarea")?CKEDITOR.replace(h,d):CKEDITOR.inline(h,d);b.data("ckeditorInstance",c);c.on("instanceReady",function(d){var e=d.editor;setTimeout(function(){if(e.element){d.removeListener();e.on("dataReady",function(){b.trigger("dataReady.ckeditor",[e])});e.on("setData",function(a){b.trigger("setData.ckeditor",[e,a.data])});e.on("getData",function(a){b.trigger("getData.ckeditor",[e,a.data])},999);e.on("destroy",function(){b.trigger("destroy.ckeditor",[e])});e.on("save",function(){a(h.form).submit();
|
||||
return!1},null,null,20);if(e.config.autoUpdateElementJquery&&b.is("textarea")&&a(h.form).length){var c=function(){b.ckeditor(function(){e.updateElement()})};a(h.form).submit(c);a(h.form).bind("form-pre-serialize",c);b.bind("destroy.ckeditor",function(){a(h.form).unbind("submit",c);a(h.form).unbind("form-pre-serialize",c)})}e.on("destroy",function(){b.removeData("ckeditorInstance")});b.removeData("_ckeditorInstanceLock");b.trigger("instanceReady.ckeditor",[e]);g&&g.apply(e,[h]);j.resolve()}else setTimeout(arguments.callee,
|
||||
100)},0)},null,null,9999)}});var f=new a.Deferred;this.promise=f.promise();a.when.apply(this,i).then(function(){f.resolve()});this.editor=this.eq(0).data("ckeditorInstance");return this}}),CKEDITOR.config.jqueryOverrideVal&&(a.fn.val=CKEDITOR.tools.override(a.fn.val,function(g){return function(d){if(arguments.length){var k=this,i=[],f=this.each(function(){var b=a(this),c=b.data("ckeditorInstance");if(b.is("textarea")&&c){var f=new a.Deferred;c.setData(d,function(){f.resolve()});i.push(f.promise());
|
||||
return!0}return g.call(b,d)});if(i.length){var b=new a.Deferred;a.when.apply(this,i).done(function(){b.resolveWith(k)});return b.promise()}return f}var f=a(this).eq(0),c=f.data("ckeditorInstance");return f.is("textarea")&&c?c.getData():g.call(f)}})))})(window.jQuery);
|
||||
@@ -1,59 +1,59 @@
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
/**
|
||||
* This file was added automatically by CKEditor builder.
|
||||
* You may re-use it at any time to build CKEditor again.
|
||||
*
|
||||
* If you would like to build CKEditor online again
|
||||
* (for example to upgrade), visit one the following links:
|
||||
*
|
||||
* (1) http://ckeditor.com/builder
|
||||
* Visit online builder to build CKEditor from scratch.
|
||||
*
|
||||
* (2) http://ckeditor.com/builder/0bef89aa099a8362a6a7ff84270ff668
|
||||
* Visit online builder to build CKEditor, starting with the same setup as before.
|
||||
*
|
||||
* (3) http://ckeditor.com/builder/download/0bef89aa099a8362a6a7ff84270ff668
|
||||
* Straight download link to the latest version of CKEditor (Optimized) with the same setup as before.
|
||||
*
|
||||
* NOTE:
|
||||
* This file is not used by CKEditor, you may remove it.
|
||||
* Changing this file will not change your CKEditor configuration.
|
||||
*/
|
||||
|
||||
var CKBUILDER_CONFIG = {
|
||||
skin: 'moono',
|
||||
preset: 'basic',
|
||||
ignore: [
|
||||
'dev',
|
||||
'.gitignore',
|
||||
'.gitattributes',
|
||||
'README.md',
|
||||
'.mailmap'
|
||||
],
|
||||
plugins : {
|
||||
'autogrow' : 1,
|
||||
'autosave' : 1,
|
||||
'basicstyles' : 1,
|
||||
'blockquote' : 1,
|
||||
'clipboard' : 1,
|
||||
'enterkey' : 1,
|
||||
'floatingspace' : 1,
|
||||
'imagebrowser' : 1,
|
||||
'indentlist' : 1,
|
||||
'link' : 1,
|
||||
'list' : 1,
|
||||
'pastetext' : 1,
|
||||
'removeformat' : 1,
|
||||
'toolbar' : 1,
|
||||
'undo' : 1,
|
||||
'wysiwygarea' : 1
|
||||
},
|
||||
languages : {
|
||||
'en' : 1,
|
||||
'hu' : 1
|
||||
}
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
/**
|
||||
* This file was added automatically by CKEditor builder.
|
||||
* You may re-use it at any time to build CKEditor again.
|
||||
*
|
||||
* If you would like to build CKEditor online again
|
||||
* (for example to upgrade), visit one the following links:
|
||||
*
|
||||
* (1) http://ckeditor.com/builder
|
||||
* Visit online builder to build CKEditor from scratch.
|
||||
*
|
||||
* (2) http://ckeditor.com/builder/0bef89aa099a8362a6a7ff84270ff668
|
||||
* Visit online builder to build CKEditor, starting with the same setup as before.
|
||||
*
|
||||
* (3) http://ckeditor.com/builder/download/0bef89aa099a8362a6a7ff84270ff668
|
||||
* Straight download link to the latest version of CKEditor (Optimized) with the same setup as before.
|
||||
*
|
||||
* NOTE:
|
||||
* This file is not used by CKEditor, you may remove it.
|
||||
* Changing this file will not change your CKEditor configuration.
|
||||
*/
|
||||
|
||||
var CKBUILDER_CONFIG = {
|
||||
skin: 'moono',
|
||||
preset: 'basic',
|
||||
ignore: [
|
||||
'dev',
|
||||
'.gitignore',
|
||||
'.gitattributes',
|
||||
'README.md',
|
||||
'.mailmap'
|
||||
],
|
||||
plugins : {
|
||||
'autogrow' : 1,
|
||||
'autosave' : 1,
|
||||
'basicstyles' : 1,
|
||||
'blockquote' : 1,
|
||||
'clipboard' : 1,
|
||||
'enterkey' : 1,
|
||||
'floatingspace' : 1,
|
||||
'imagebrowser' : 1,
|
||||
'indentlist' : 1,
|
||||
'link' : 1,
|
||||
'list' : 1,
|
||||
'pastetext' : 1,
|
||||
'removeformat' : 1,
|
||||
'toolbar' : 1,
|
||||
'undo' : 1,
|
||||
'wysiwygarea' : 1
|
||||
},
|
||||
languages : {
|
||||
'en' : 1,
|
||||
'hu' : 1
|
||||
}
|
||||
};
|
||||
Vendored
+732
-732
File diff suppressed because it is too large
Load Diff
+44
-44
@@ -1,44 +1,44 @@
|
||||
/**
|
||||
* @license Copyright (c) 2003-2013, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.html or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.editorConfig = function( config ) {
|
||||
// Define changes to default configuration here.
|
||||
// For complete reference see:
|
||||
// http://docs.ckeditor.com/#!/api/CKEDITOR.config
|
||||
|
||||
// The toolbar groups arrangement, optimized for a single toolbar row.
|
||||
config.toolbarGroups = [
|
||||
{ name: 'document', groups: [ 'mode', 'document', 'doctools' ] },
|
||||
{ name: 'clipboard', groups: [ 'clipboard', 'undo' ] },
|
||||
{ name: 'editing', groups: [ 'find', 'selection', 'spellchecker' ] },
|
||||
{ name: 'forms' },
|
||||
{ name: 'basicstyles', groups: [ 'basicstyles', 'cleanup' ] },
|
||||
{ name: 'paragraph', groups: [ 'list', 'indent', 'blocks', 'align', 'bidi' ] },
|
||||
{ name: 'links' },
|
||||
{ name: 'insert' },
|
||||
{ name: 'styles' },
|
||||
{ name: 'colors' },
|
||||
{ name: 'tools' },
|
||||
{ name: 'others' },
|
||||
{ name: 'about' }
|
||||
];
|
||||
|
||||
// The default plugins included in the basic setup define some buttons that
|
||||
// are not needed in a basic editor. They are removed here.
|
||||
//config.removeButtons = 'Cut,Copy,Paste,Undo,Redo,Anchor,Underline,Strike,Subscript,Superscript';
|
||||
config.removeButtons = 'Anchor,Subscript,Superscript';
|
||||
|
||||
// Dialog windows are also simplified.
|
||||
config.removeDialogTabs = 'link:advanced';
|
||||
|
||||
config.skin = 'office2013';
|
||||
config.autoGrow_onStartup = true;
|
||||
//config.extraPlugins = 'justify,autosave,imagebrowser,image,filebrowser,popup,readmorebtn,table';
|
||||
config.extraPlugins = 'sourcedialog,panel,button,listblock,floatpanel,richcombo,format,justify,imagebrowser,image,filebrowser,popup,readmorebtn,table';
|
||||
config.imageBrowser_listUrl = '/data/imglist.json.php';
|
||||
config.filebrowserBrowseUrl = '/data/uploads';
|
||||
config.filebrowserUploadUrl = '/admin/upload';
|
||||
config.format_tags = 'p;h2;h3;h4;pre';
|
||||
};
|
||||
/**
|
||||
* @license Copyright (c) 2003-2013, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.html or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.editorConfig = function( config ) {
|
||||
// Define changes to default configuration here.
|
||||
// For complete reference see:
|
||||
// http://docs.ckeditor.com/#!/api/CKEDITOR.config
|
||||
|
||||
// The toolbar groups arrangement, optimized for a single toolbar row.
|
||||
config.toolbarGroups = [
|
||||
{ name: 'document', groups: [ 'mode', 'document', 'doctools' ] },
|
||||
{ name: 'clipboard', groups: [ 'clipboard', 'undo' ] },
|
||||
{ name: 'editing', groups: [ 'find', 'selection', 'spellchecker' ] },
|
||||
{ name: 'forms' },
|
||||
{ name: 'basicstyles', groups: [ 'basicstyles', 'cleanup' ] },
|
||||
{ name: 'paragraph', groups: [ 'list', 'indent', 'blocks', 'align', 'bidi' ] },
|
||||
{ name: 'links' },
|
||||
{ name: 'insert' },
|
||||
{ name: 'styles' },
|
||||
{ name: 'colors' },
|
||||
{ name: 'tools' },
|
||||
{ name: 'others' },
|
||||
{ name: 'about' }
|
||||
];
|
||||
|
||||
// The default plugins included in the basic setup define some buttons that
|
||||
// are not needed in a basic editor. They are removed here.
|
||||
//config.removeButtons = 'Cut,Copy,Paste,Undo,Redo,Anchor,Underline,Strike,Subscript,Superscript';
|
||||
config.removeButtons = 'Anchor,Subscript,Superscript';
|
||||
|
||||
// Dialog windows are also simplified.
|
||||
config.removeDialogTabs = 'link:advanced';
|
||||
|
||||
config.skin = 'office2013';
|
||||
config.autoGrow_onStartup = true;
|
||||
//config.extraPlugins = 'justify,autosave,imagebrowser,image,filebrowser,popup,readmorebtn,table';
|
||||
config.extraPlugins = 'sourcedialog,panel,button,listblock,floatpanel,richcombo,format,justify,imagebrowser,image,filebrowser,popup,readmorebtn,table';
|
||||
config.imageBrowser_listUrl = '/data/imglist.json.php';
|
||||
config.filebrowserBrowseUrl = '/data/uploads';
|
||||
config.filebrowserUploadUrl = '/admin/upload';
|
||||
config.format_tags = 'p;h2;h3;h4;pre';
|
||||
};
|
||||
|
||||
@@ -1,38 +1,38 @@
|
||||
/**
|
||||
* @license Copyright (c) 2003-2013, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.html or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.editorConfig = function( config ) {
|
||||
// Define changes to default configuration here.
|
||||
// For complete reference see:
|
||||
// http://docs.ckeditor.com/#!/api/CKEDITOR.config
|
||||
|
||||
// The toolbar groups arrangement, optimized for a single toolbar row.
|
||||
config.toolbarGroups = [
|
||||
{ name: 'document', groups: [ 'mode', 'document', 'doctools' ] },
|
||||
{ name: 'clipboard', groups: [ 'clipboard', 'undo' ] },
|
||||
{ name: 'editing', groups: [ 'find', 'selection', 'spellchecker' ] },
|
||||
{ name: 'forms' },
|
||||
{ name: 'basicstyles', groups: [ 'basicstyles', 'cleanup' ] },
|
||||
{ name: 'paragraph', groups: [ 'list', 'indent', 'blocks', 'align', 'bidi' ] },
|
||||
{ name: 'links' },
|
||||
{ name: 'insert' },
|
||||
{ name: 'styles' },
|
||||
{ name: 'colors' },
|
||||
{ name: 'tools' },
|
||||
{ name: 'others' },
|
||||
{ name: 'about' }
|
||||
];
|
||||
|
||||
// The default plugins included in the basic setup define some buttons that
|
||||
// are not needed in a basic editor. They are removed here.
|
||||
config.removeButtons = 'Cut,Copy,Paste,Undo,Redo,Anchor,Underline,Strike,Subscript,Superscript';
|
||||
|
||||
// Dialog windows are also simplified.
|
||||
config.removeDialogTabs = 'link:advanced';
|
||||
|
||||
config.autoGrow_onStartup = true;
|
||||
config.extraPlugins = 'autosave,imagebrowser,imageresize';
|
||||
config.imageBrowser_listUrl = '/data/imglist.json.php';
|
||||
};
|
||||
/**
|
||||
* @license Copyright (c) 2003-2013, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.html or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.editorConfig = function( config ) {
|
||||
// Define changes to default configuration here.
|
||||
// For complete reference see:
|
||||
// http://docs.ckeditor.com/#!/api/CKEDITOR.config
|
||||
|
||||
// The toolbar groups arrangement, optimized for a single toolbar row.
|
||||
config.toolbarGroups = [
|
||||
{ name: 'document', groups: [ 'mode', 'document', 'doctools' ] },
|
||||
{ name: 'clipboard', groups: [ 'clipboard', 'undo' ] },
|
||||
{ name: 'editing', groups: [ 'find', 'selection', 'spellchecker' ] },
|
||||
{ name: 'forms' },
|
||||
{ name: 'basicstyles', groups: [ 'basicstyles', 'cleanup' ] },
|
||||
{ name: 'paragraph', groups: [ 'list', 'indent', 'blocks', 'align', 'bidi' ] },
|
||||
{ name: 'links' },
|
||||
{ name: 'insert' },
|
||||
{ name: 'styles' },
|
||||
{ name: 'colors' },
|
||||
{ name: 'tools' },
|
||||
{ name: 'others' },
|
||||
{ name: 'about' }
|
||||
];
|
||||
|
||||
// The default plugins included in the basic setup define some buttons that
|
||||
// are not needed in a basic editor. They are removed here.
|
||||
config.removeButtons = 'Cut,Copy,Paste,Undo,Redo,Anchor,Underline,Strike,Subscript,Superscript';
|
||||
|
||||
// Dialog windows are also simplified.
|
||||
config.removeDialogTabs = 'link:advanced';
|
||||
|
||||
config.autoGrow_onStartup = true;
|
||||
config.extraPlugins = 'autosave,imagebrowser,imageresize';
|
||||
config.imageBrowser_listUrl = '/data/imglist.json.php';
|
||||
};
|
||||
|
||||
+134
-134
@@ -1,134 +1,134 @@
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
body
|
||||
{
|
||||
/* Font */
|
||||
font-family: sans-serif, Arial, Verdana, "Trebuchet MS";
|
||||
font-size: 12px;
|
||||
|
||||
/* Text color */
|
||||
color: #333;
|
||||
|
||||
/* Remove the background color to make it transparent */
|
||||
background-color: #fff;
|
||||
|
||||
margin: 20px;
|
||||
}
|
||||
|
||||
.cke_editable
|
||||
{
|
||||
font-size: 13px;
|
||||
line-height: 1.6;
|
||||
}
|
||||
|
||||
blockquote
|
||||
{
|
||||
font-style: italic;
|
||||
font-family: Georgia, Times, "Times New Roman", serif;
|
||||
padding: 2px 0;
|
||||
border-style: solid;
|
||||
border-color: #ccc;
|
||||
border-width: 0;
|
||||
}
|
||||
|
||||
.cke_contents_ltr blockquote
|
||||
{
|
||||
padding-left: 20px;
|
||||
padding-right: 8px;
|
||||
border-left-width: 5px;
|
||||
}
|
||||
|
||||
.cke_contents_rtl blockquote
|
||||
{
|
||||
padding-left: 8px;
|
||||
padding-right: 20px;
|
||||
border-right-width: 5px;
|
||||
}
|
||||
|
||||
a
|
||||
{
|
||||
color: #0782C1;
|
||||
}
|
||||
|
||||
ol,ul,dl
|
||||
{
|
||||
/* IE7: reset rtl list margin. (#7334) */
|
||||
*margin-right: 0px;
|
||||
/* preserved spaces for list items with text direction other than the list. (#6249,#8049)*/
|
||||
padding: 0 40px;
|
||||
}
|
||||
|
||||
h1,h2,h3,h4,h5,h6
|
||||
{
|
||||
font-weight: normal;
|
||||
line-height: 1.2;
|
||||
}
|
||||
|
||||
hr
|
||||
{
|
||||
border: 0px;
|
||||
border-top: 1px solid #ccc;
|
||||
}
|
||||
|
||||
img.right
|
||||
{
|
||||
border: 1px solid #ccc;
|
||||
float: right;
|
||||
margin-left: 15px;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
img.left
|
||||
{
|
||||
border: 1px solid #ccc;
|
||||
float: left;
|
||||
margin-right: 15px;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
pre
|
||||
{
|
||||
white-space: pre-wrap; /* CSS 2.1 */
|
||||
word-wrap: break-word; /* IE7 */
|
||||
-moz-tab-size: 4;
|
||||
-o-tab-size: 4;
|
||||
-webkit-tab-size: 4;
|
||||
tab-size: 4;
|
||||
}
|
||||
|
||||
.marker
|
||||
{
|
||||
background-color: Yellow;
|
||||
}
|
||||
|
||||
span[lang]
|
||||
{
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
figure
|
||||
{
|
||||
text-align: center;
|
||||
border: solid 1px #ccc;
|
||||
border-radius: 2px;
|
||||
background: rgba(0,0,0,0.05);
|
||||
padding: 10px;
|
||||
margin: 10px 20px;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
figure > figcaption
|
||||
{
|
||||
text-align: center;
|
||||
display: block; /* For IE8 */
|
||||
}
|
||||
|
||||
a > img {
|
||||
padding: 1px;
|
||||
margin: 1px;
|
||||
border: none;
|
||||
outline: 1px solid #0782C1;
|
||||
}
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
body
|
||||
{
|
||||
/* Font */
|
||||
font-family: sans-serif, Arial, Verdana, "Trebuchet MS";
|
||||
font-size: 12px;
|
||||
|
||||
/* Text color */
|
||||
color: #333;
|
||||
|
||||
/* Remove the background color to make it transparent */
|
||||
background-color: #fff;
|
||||
|
||||
margin: 20px;
|
||||
}
|
||||
|
||||
.cke_editable
|
||||
{
|
||||
font-size: 13px;
|
||||
line-height: 1.6;
|
||||
}
|
||||
|
||||
blockquote
|
||||
{
|
||||
font-style: italic;
|
||||
font-family: Georgia, Times, "Times New Roman", serif;
|
||||
padding: 2px 0;
|
||||
border-style: solid;
|
||||
border-color: #ccc;
|
||||
border-width: 0;
|
||||
}
|
||||
|
||||
.cke_contents_ltr blockquote
|
||||
{
|
||||
padding-left: 20px;
|
||||
padding-right: 8px;
|
||||
border-left-width: 5px;
|
||||
}
|
||||
|
||||
.cke_contents_rtl blockquote
|
||||
{
|
||||
padding-left: 8px;
|
||||
padding-right: 20px;
|
||||
border-right-width: 5px;
|
||||
}
|
||||
|
||||
a
|
||||
{
|
||||
color: #0782C1;
|
||||
}
|
||||
|
||||
ol,ul,dl
|
||||
{
|
||||
/* IE7: reset rtl list margin. (#7334) */
|
||||
*margin-right: 0px;
|
||||
/* preserved spaces for list items with text direction other than the list. (#6249,#8049)*/
|
||||
padding: 0 40px;
|
||||
}
|
||||
|
||||
h1,h2,h3,h4,h5,h6
|
||||
{
|
||||
font-weight: normal;
|
||||
line-height: 1.2;
|
||||
}
|
||||
|
||||
hr
|
||||
{
|
||||
border: 0px;
|
||||
border-top: 1px solid #ccc;
|
||||
}
|
||||
|
||||
img.right
|
||||
{
|
||||
border: 1px solid #ccc;
|
||||
float: right;
|
||||
margin-left: 15px;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
img.left
|
||||
{
|
||||
border: 1px solid #ccc;
|
||||
float: left;
|
||||
margin-right: 15px;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
pre
|
||||
{
|
||||
white-space: pre-wrap; /* CSS 2.1 */
|
||||
word-wrap: break-word; /* IE7 */
|
||||
-moz-tab-size: 4;
|
||||
-o-tab-size: 4;
|
||||
-webkit-tab-size: 4;
|
||||
tab-size: 4;
|
||||
}
|
||||
|
||||
.marker
|
||||
{
|
||||
background-color: Yellow;
|
||||
}
|
||||
|
||||
span[lang]
|
||||
{
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
figure
|
||||
{
|
||||
text-align: center;
|
||||
border: solid 1px #ccc;
|
||||
border-radius: 2px;
|
||||
background: rgba(0,0,0,0.05);
|
||||
padding: 10px;
|
||||
margin: 10px 20px;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
figure > figcaption
|
||||
{
|
||||
text-align: center;
|
||||
display: block; /* For IE8 */
|
||||
}
|
||||
|
||||
a > img {
|
||||
padding: 1px;
|
||||
margin: 1px;
|
||||
border: none;
|
||||
outline: 1px solid #0782C1;
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"name": "CKeditor",
|
||||
"description": "A really good text editor.",
|
||||
"paths": "/admin/entry,/admin/page"
|
||||
"paths": "/admin/entry*,/admin/page*"
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1
-1
@@ -1 +1 @@
|
||||
.diffContent{height:300px;overflow:auto}.diff *{white-space:pre-wrap !important}table.diff{border-collapse:collapse;border:1px solid darkgray}table.diff tbody{font-family:Courier,monospace}table.diff tbody th{font-family:verdana,arial,'Bitstream Vera Sans',helvetica,sans-serif;background:#EED;font-size:11px;font-weight:normal;border:1px solid #BBC;color:#886;padding:.3em .5em .1em 2em;text-align:right;vertical-align:top}table.diff thead{border-bottom:1px solid #BBC;background:#efefef;font-family:Verdana}table.diff thead th.texttitle{text-align:left}table.diff tbody td{padding:0 .4em;vertical-align:top}table.diff .empty{background-color:#DDD}table.diff .replace{background-color:#FFC}table.diff .delete{background-color:#FCC}table.diff .skip{background-color:#efefef;border:1px solid #AAA;border-right:1px solid #BBC}table.diff .insert{background-color:#CFC}table.diff th.author{text-align:right;border-top:1px solid #BBC;background:#efefef}del{background-color:#e99 !important;text-decoration:underline !important}ins{background-color:#9e9 !important;text-decoration:underline !important}div.autoSaveMessage div{left:42%;position:absolute;padding:2px;top:4px;font-weight:bold}.hidden{opacity:0;visibility:hidden}.show{opacity:1;visibility:visible;-webkit-transition:visibility .2s linear,opacity .2s linear;-moz-transition:visibility .2s linear,opacity .2s linear;-o-transition:visibility .2s linear,opacity .2s linear;transition:visibility .2s linear,opacity .2s linear}
|
||||
.diffContent{height:300px;overflow:auto}.diff *{white-space:pre-wrap !important}table.diff{border-collapse:collapse;border:1px solid darkgray}table.diff tbody{font-family:Courier,monospace}table.diff tbody th{font-family:verdana,arial,'Bitstream Vera Sans',helvetica,sans-serif;background:#EED;font-size:11px;font-weight:normal;border:1px solid #BBC;color:#886;padding:.3em .5em .1em 2em;text-align:right;vertical-align:top}table.diff thead{border-bottom:1px solid #BBC;background:#efefef;font-family:Verdana}table.diff thead th.texttitle{text-align:left}table.diff tbody td{padding:0 .4em;vertical-align:top}table.diff .empty{background-color:#DDD}table.diff .replace{background-color:#FFC}table.diff .delete{background-color:#FCC}table.diff .skip{background-color:#efefef;border:1px solid #AAA;border-right:1px solid #BBC}table.diff .insert{background-color:#CFC}table.diff th.author{text-align:right;border-top:1px solid #BBC;background:#efefef}del{background-color:#e99 !important;text-decoration:underline !important}ins{background-color:#9e9 !important;text-decoration:underline !important}div.autoSaveMessage div{left:42%;position:absolute;padding:2px;top:4px;font-weight:bold}.hidden{opacity:0;visibility:hidden}.show{opacity:1;visibility:visible;-webkit-transition:visibility .2s linear,opacity .2s linear;-moz-transition:visibility .2s linear,opacity .2s linear;-o-transition:visibility .2s linear,opacity .2s linear;transition:visibility .2s linear,opacity .2s linear}
|
||||
|
||||
+212
-212
@@ -1,213 +1,213 @@
|
||||
__whitespace={" ":!0,"\t":!0,"\n":!0,"":!0,"\r":!0};
|
||||
difflib={defaultJunkFunction:function(e){return e in __whitespace},stripLinebreaks:function(e){return e.replace(/^[\n\r]*|[\n\r]*$/g,"")},stringAsLines:function(e){for(var b=e.indexOf("\n"),d=e.indexOf("\r"),e=e.split(-1<b&&-1<d||0>d?"\n":"\r"),b=0;b<e.length;b++)e[b]=difflib.stripLinebreaks(e[b]);return e},__reduce:function(e,b,d){if(null!=d)var h=0;else if(b)d=b[0],h=1;else return null;for(;h<b.length;h++)d=e(d,b[h]);return d},__ntuplecomp:function(e,b){for(var d=Math.max(e.length,b.length),h=0;h<
|
||||
d;h++){if(e[h]<b[h])return-1;if(e[h]>b[h])return 1}return e.length==b.length?0:e.length<b.length?-1:1},__calculate_ratio:function(e,b){return b?2*e/b:1},__isindict:function(e){return function(b){return b in e}},__dictget:function(e,b,d){return b in e?e[b]:d},SequenceMatcher:function(e,b,d){this.set_seqs=function(b,f){this.set_seq1(b);this.set_seq2(f)};this.set_seq1=function(b){b!=this.a&&(this.a=b,this.matching_blocks=this.opcodes=null)};this.set_seq2=function(b){b!=this.b&&(this.b=b,this.matching_blocks=
|
||||
this.opcodes=this.fullbcount=null,this.__chain_b())};this.__chain_b=function(){for(var b=this.b,f=b.length,d=this.b2j={},l={},e=0;e<b.length;e++){var j=b[e];if(j in d){var s=d[j];200<=f&&100*s.length>f?(l[j]=1,delete d[j]):s.push(e)}else d[j]=[e]}for(j in l)delete d[j];b=this.isjunk;f={};if(b){for(j in l)b(j)&&(f[j]=1,delete l[j]);for(j in d)b(j)&&(f[j]=1,delete d[j])}this.isbjunk=difflib.__isindict(f);this.isbpopular=difflib.__isindict(l)};this.find_longest_match=function(b,f,d,e){for(var p=this.a,
|
||||
j=this.b,s=this.b2j,o=this.isbjunk,q=b,n=d,m=0,t=null,u={},z=[],v=b;v<f;v++){var y={},A=difflib.__dictget(s,p[v],z),B;for(B in A)if(t=A[B],!(t<d)){if(t>=e)break;y[t]=k=difflib.__dictget(u,t-1,0)+1;k>m&&(q=v-k+1,n=t-k+1,m=k)}u=y}for(;q>b&&n>d&&!o(j[n-1])&&p[q-1]==j[n-1];)q--,n--,m++;for(;q+m<f&&n+m<e&&!o(j[n+m])&&p[q+m]==j[n+m];)m++;for(;q>b&&n>d&&o(j[n-1])&&p[q-1]==j[n-1];)q--,n--,m++;for(;q+m<f&&n+m<e&&o(j[n+m])&&p[q+m]==j[n+m];)m++;return[q,n,m]};this.get_matching_blocks=function(){if(null!=this.matching_blocks)return this.matching_blocks;
|
||||
for(var b=this.a.length,f=this.b.length,d=[[0,b,0,f]],e=[],p,j,s,o,q,n,m,t;d.length;)if(o=d.pop(),p=o[0],j=o[1],s=o[2],o=o[3],t=this.find_longest_match(p,j,s,o),q=t[0],n=t[1],m=t[2])e.push(t),p<q&&s<n&&d.push([p,q,s,n]),q+m<j&&n+m<o&&d.push([q+m,j,n+m,o]);e.sort(difflib.__ntuplecomp);d=j1=k1=block=0;p=[];for(var u in e)block=e[u],i2=block[0],j2=block[1],k2=block[2],d+k1==i2&&j1+k1==j2?k1+=k2:(k1&&p.push([d,j1,k1]),d=i2,j1=j2,k1=k2);k1&&p.push([d,j1,k1]);p.push([b,f,0]);return this.matching_blocks=
|
||||
p};this.get_opcodes=function(){if(null!=this.opcodes)return this.opcodes;var b=0,f=0,d=[];this.opcodes=d;var e,p,j,s,o=this.get_matching_blocks(),q;for(q in o)e=o[q],p=e[0],j=e[1],e=e[2],s="",b<p&&f<j?s="replace":b<p?s="delete":f<j&&(s="insert"),s&&d.push([s,b,p,f,j]),b=p+e,f=j+e,e&&d.push(["equal",p,b,j,f]);return d};this.get_grouped_opcodes=function(b){b||(b=3);var f=this.get_opcodes();f||(f=[["equal",0,1,0,1]]);var d,e,p,j,s;"equal"==f[0][0]&&(d=f[0],e=d[0],p=d[1],j=d[2],s=d[3],d=d[4],f[0]=[e,
|
||||
Math.max(p,j-b),j,Math.max(s,d-b),d]);"equal"==f[f.length-1][0]&&(d=f[f.length-1],e=d[0],p=d[1],j=d[2],s=d[3],d=d[4],f[f.length-1]=[e,p,Math.min(j,p+b),s,Math.min(d,s+b)]);var o=b+b,q=[],n;for(n in f)d=f[n],e=d[0],p=d[1],j=d[2],s=d[3],d=d[4],"equal"==e&&j-p>o&&(q.push([e,p,Math.min(j,p+b),s,Math.min(d,s+b)]),p=Math.max(p,j-b),s=Math.max(s,d-b)),q.push([e,p,j,s,d]);q&&"equal"==q[q.length-1][0]&&q.pop();return q};this.ratio=function(){matches=difflib.__reduce(function(b,d){return b+d[d.length-1]},this.get_matching_blocks(),
|
||||
0);return difflib.__calculate_ratio(matches,this.a.length+this.b.length)};this.quick_ratio=function(){var b,d;if(null==this.fullbcount){this.fullbcount=b={};for(var e=0;e<this.b.length;e++)d=this.b[e],b[d]=difflib.__dictget(b,d,0)+1}b=this.fullbcount;for(var l={},p=difflib.__isindict(l),j=numb=0,e=0;e<this.a.length;e++)d=this.a[e],numb=p(d)?l[d]:difflib.__dictget(b,d,0),l[d]=numb-1,0<numb&&j++;return difflib.__calculate_ratio(j,this.a.length+this.b.length)};this.real_quick_ratio=function(){var b=
|
||||
this.a.length,d=this.b.length;return _calculate_ratio(Math.min(b,d),b+d)};this.isjunk=d?d:difflib.defaultJunkFunction;this.a=this.b=null;this.set_seqs(e,b)}};
|
||||
diffview={buildView:function(e){function b(b,d){var e=document.createElement(b);e.className=d;return e}function d(b,d){var e=document.createElement(b);e.appendChild(document.createTextNode(d));return e}function h(b,d,e){b=document.createElement(b);b.className=d;b.innerHTML=e;return b}function f(e,f,j,i,l){if(f<j)return e.appendChild(d("th",(f+1).toString())),e.appendChild(h("td",l,i[f].replace(/\t/g," "))),f+1;e.appendChild(document.createElement("th"));e.appendChild(b("td","empty"));return f}
|
||||
function r(b,e,f,i,j){b.appendChild(d("th",null==e?"":(e+1).toString()));b.appendChild(d("th",null==f?"":(f+1).toString()));b.appendChild(h("td",j,i[null!=e?e:f].replace(/\t/g," ")))}var l=e.baseTextLines,p=e.newTextLines,j=e.opcodes,s=e.baseTextName?e.baseTextName:"Base Text",o=e.newTextName?e.newTextName:"New Text",q=e.contextSize,e=0==e.viewType||1==e.viewType?e.viewType:0;if(null==l)throw"Cannot build diff view; baseTextLines is not defined.";if(null==p)throw"Cannot build diff view; newTextLines is not defined.";
|
||||
if(!j)throw"Canno build diff view; opcodes is not defined.";var n=document.createElement("thead"),m=document.createElement("tr");n.appendChild(m);e?(m.appendChild(document.createElement("th")),m.appendChild(document.createElement("th")),m.appendChild(h("th","texttitle",s+" vs. "+o))):(m.appendChild(document.createElement("th")),m.appendChild(h("th","texttitle",s)),m.appendChild(document.createElement("th")),m.appendChild(h("th","texttitle",o)));for(var n=[n],s=[],t,o=0;o<j.length;o++){code=j[o];change=
|
||||
code[0];for(var u=code[1],z=code[2],v=code[3],y=code[4],A=Math.max(z-u,y-v),B=[],D=[],x=0;x<A;x++){if(q&&1<j.length&&(0<o&&x==q||0==o&&0==x)&&"equal"==change)if(t=A-(0==o?1:2)*q,1<t)if(B.push(m=document.createElement("tr")),u+=t,v+=t,x+=t-1,m.appendChild(d("th","...")),e||m.appendChild(h("td","skip","")),m.appendChild(d("th","...")),m.appendChild(h("td","skip","")),o+1==j.length)break;else continue;B.push(m=document.createElement("tr"));e?"insert"==change?r(m,null,v++,p,change):"replace"==change?
|
||||
(D.push(t=document.createElement("tr")),u<z&&r(m,u++,null,l,"delete"),v<y&&r(t,null,v++,p,"insert")):"delete"==change?r(m,u++,null,l,change):r(m,u++,v++,l,change):(t=diffString2(u<z?l[u]:"",v<y?p[v]:""),u<z&&(l[u]=t.o),v<y&&(p[v]=t.n),u=f(m,u,z,l,"replace"==change?"delete":change),v=f(m,v,y,p,"replace"==change?"insert":change))}for(x=0;x<B.length;x++)s.push(B[x]);for(x=0;x<D.length;x++)s.push(D[x])}s.push(m=h("th","author","combined <a href='http://snowtide.com/jsdifflib'>jsdifflib</a> and John Resig's <a href='http://ejohn.org/projects/javascript-diff-algorithm/'>diff</a> by <a href='http://richardbondi.net'>Richard Bondi</a>"));
|
||||
m.setAttribute("colspan",e?3:4);n.push(m=document.createElement("tbody"));for(o=0;o<s.length;o++)m.appendChild(s[o]);m=b("table","diff"+(e?" inlinediff":""));for(o=0;o<n.length;o++)m.appendChild(n[o]);return m}};function escape(e){e=e.replace(/&/g,"&");e=e.replace(/</g,"<");e=e.replace(/>/g,">");return e=e.replace(/"/g,""")}
|
||||
function diffString(e,b){var e=e.replace(/\s+$/,""),b=b.replace(/\s+$/,""),d=diff(""==e?[]:e.split(/\s+/),""==b?[]:b.split(/\s+/)),h="",f=e.match(/\s+/g);null==f?f=["\n"]:f.push("\n");var r=b.match(/\s+/g);null==r?r=["\n"]:r.push("\n");if(0==d.n.length)for(var l=0;l<d.o.length;l++)h+="<del>"+escape(d.o[l])+f[l]+"</del>";else{if(null==d.n[0].text)for(b=0;b<d.o.length&&null==d.o[b].text;b++)h+="<del>"+escape(d.o[b])+f[b]+"</del>";for(l=0;l<d.n.length;l++)if(null==d.n[l].text)h+="<ins>"+escape(d.n[l])+
|
||||
r[l]+"</ins>";else{for(var p="",b=d.n[l].row+1;b<d.o.length&&null==d.o[b].text;b++)p+="<del>"+escape(d.o[b])+f[b]+"</del>";h+=" "+d.n[l].text+r[l]+p}}return h}function randomColor(){return"rgb("+100*Math.random()+"%, "+100*Math.random()+"%, "+100*Math.random()+"%)"}
|
||||
function diffString2(e,b){var e=e.replace(/\s+$/,""),b=b.replace(/\s+$/,""),d=diff(""==e?[]:e.split(/\s+/),""==b?[]:b.split(/\s+/)),h=e.match(/\s+/g);null==h?h=["\n"]:h.push("\n");var f=b.match(/\s+/g);null==f?f=["\n"]:f.push("\n");for(var r="",l=0;l<d.o.length;l++)randomColor(),r=null!=d.o[l].text?r+(escape(d.o[l].text)+h[l]):r+("<del>"+escape(d.o[l])+h[l]+"</del>");h="";for(l=0;l<d.n.length;l++)h=null!=d.n[l].text?h+(escape(d.n[l].text)+f[l]):h+("<ins>"+escape(d.n[l])+f[l]+"</ins>");return{o:r,
|
||||
n:h}}
|
||||
function diff(e,b){for(var d={},h={},f=0;f<b.length;f++)null==d[b[f]]&&(d[b[f]]={rows:[],o:null}),d[b[f]].rows.push(f);for(f=0;f<e.length;f++)null==h[e[f]]&&(h[e[f]]={rows:[],n:null}),h[e[f]].rows.push(f);for(f in d)1==d[f].rows.length&&("undefined"!=typeof h[f]&&1==h[f].rows.length)&&(b[d[f].rows[0]]={text:b[d[f].rows[0]],row:h[f].rows[0]},e[h[f].rows[0]]={text:e[h[f].rows[0]],row:d[f].rows[0]});for(f=0;f<b.length-1;f++)null!=b[f].text&&(null==b[f+1].text&&b[f].row+1<e.length&&null==e[b[f].row+1].text&&
|
||||
b[f+1]==e[b[f].row+1])&&(b[f+1]={text:b[f+1],row:b[f].row+1},e[b[f].row+1]={text:e[b[f].row+1],row:f+1});for(f=b.length-1;0<f;f--)null!=b[f].text&&(null==b[f-1].text&&0<b[f].row&&null==e[b[f].row-1].text&&b[f-1]==e[b[f].row-1])&&(b[f-1]={text:b[f-1],row:b[f].row-1},e[b[f].row-1]={text:e[b[f].row-1],row:f-1});return{o:e,n:b}}
|
||||
(function(e){function b(a,c){return function(g){return j(a.call(this,g),c)}}function d(a,c){return function(g){return this.lang().ordinal(a.call(this,g),c)}}function h(){}function f(a){l(this,a)}function r(a){var c=a.years||a.year||a.y||0,g=a.months||a.month||a.M||0,b=a.weeks||a.week||a.w||0,d=a.days||a.day||a.d||0,e=a.hours||a.hour||a.h||0,f=a.minutes||a.minute||a.m||0,h=a.seconds||a.second||a.s||0,i=a.milliseconds||a.millisecond||a.ms||0;this._input=a;this._milliseconds=+i+1E3*h+6E4*f+36E5*e;this._days=
|
||||
+d+7*b;this._months=+g+12*c;this._data={};this._bubble()}function l(a,c){for(var g in c)c.hasOwnProperty(g)&&(a[g]=c[g]);return a}function p(a){return 0>a?Math.ceil(a):Math.floor(a)}function j(a,c){for(var g=a+"";g.length<c;)g="0"+g;return g}function s(a,c,g,b){var d=c._milliseconds,e=c._days,c=c._months,f,h;d&&a._d.setTime(+a._d+d*g);if(e||c)f=a.minute(),h=a.hour();e&&a.date(a.date()+e*g);c&&a.month(a.month()+c*g);d&&!b&&i.updateOffset(a);if(e||c)a.minute(f),a.hour(h)}function o(a,c){var g=Math.min(a.length,
|
||||
c.length),b=Math.abs(a.length-c.length),d=0,e;for(e=0;e<g;e++)~~a[e]!==~~c[e]&&d++;return d+b}function q(a){return a?T[a]||a.toLowerCase().replace(/(.)s$/,"$1"):a}function n(a){if(!a)return i.fn._lang;if(!F[a]&&N)try{require("./lang/"+a)}catch(c){return i.fn._lang}return F[a]||i.fn._lang}function m(a){var c=a.match(O),g,b;g=0;for(b=c.length;g<b;g++)c[g]=C[c[g]]?C[c[g]]:c[g].match(/\[.*\]/)?c[g].replace(/^\[|\]$/g,""):c[g].replace(/\\/g,"");return function(d){var e="";for(g=0;g<b;g++)e+=c[g]instanceof
|
||||
Function?c[g].call(d,a):c[g];return e}}function t(a,c){c=u(c,a.lang());G[c]||(G[c]=m(c));return G[c](a)}function u(a,c){function g(a){return c.longDateFormat(a)||a}for(var b=5;b--&&(H.lastIndex=0,H.test(a));)a=a.replace(H,g);return a}function z(a,c){switch(a){case "DDDD":return U;case "YYYY":return V;case "YYYYY":return W;case "S":case "SS":case "SSS":case "DDD":return X;case "MMM":case "MMMM":case "dd":case "ddd":case "dddd":return Y;case "a":case "A":return n(c._l)._meridiemParse;case "X":return Z;
|
||||
case "Z":case "ZZ":return I;case "T":return $;case "MM":case "DD":case "YY":case "HH":case "hh":case "mm":case "ss":case "M":case "D":case "d":case "H":case "h":case "m":case "s":return aa;default:return RegExp(a.replace("\\",""))}}function v(a){var a=((I.exec(a)||[])[0]+"").match(ba)||["-",0,0],c=+(60*a[1])+~~a[2];return"+"===a[0]?-c:c}function y(a){var c,g=[],b;if(!a._d){c=new Date;b=a._useUTC?[c.getUTCFullYear(),c.getUTCMonth(),c.getUTCDate()]:[c.getFullYear(),c.getMonth(),c.getDate()];for(c=0;3>
|
||||
c&&null==a._a[c];++c)a._a[c]=g[c]=b[c];for(;7>c;c++)a._a[c]=g[c]=null==a._a[c]?2===c?1:0:a._a[c];g[3]+=~~((a._tzm||0)/60);g[4]+=~~((a._tzm||0)%60);c=new Date(0);a._useUTC?(c.setUTCFullYear(g[0],g[1],g[2]),c.setUTCHours(g[3],g[4],g[5],g[6])):(c.setFullYear(g[0],g[1],g[2]),c.setHours(g[3],g[4],g[5],g[6]));a._d=c}}function A(a){var c=n(a._l),g=""+a._i,b,d;d=u(a._f,c).match(O);a._a=[];for(c=0;c<d.length;c++)if((b=(z(d[c],a).exec(g)||[])[0])&&(g=g.slice(g.indexOf(b)+b.length)),C[d[c]]){var e=a,f=void 0,
|
||||
h=e._a;switch(d[c]){case "M":case "MM":null!=b&&(h[1]=~~b-1);break;case "MMM":case "MMMM":f=n(e._l).monthsParse(b);null!=f?h[1]=f:e._isValid=!1;break;case "D":case "DD":null!=b&&(h[2]=~~b);break;case "DDD":case "DDDD":null!=b&&(h[1]=0,h[2]=~~b);break;case "YY":h[0]=~~b+(68<~~b?1900:2E3);break;case "YYYY":case "YYYYY":h[0]=~~b;break;case "a":case "A":e._isPm=n(e._l).isPM(b);break;case "H":case "HH":case "h":case "hh":h[3]=~~b;break;case "m":case "mm":h[4]=~~b;break;case "s":case "ss":h[5]=~~b;break;
|
||||
case "S":case "SS":case "SSS":h[6]=~~(1E3*("0."+b));break;case "X":e._d=new Date(1E3*parseFloat(b));break;case "Z":case "ZZ":e._useUTC=!0,e._tzm=v(b)}null==b&&(e._isValid=!1)}g&&(a._il=g);a._isPm&&12>a._a[3]&&(a._a[3]+=12);!1===a._isPm&&12===a._a[3]&&(a._a[3]=0);y(a)}function B(a,c,g,b,d){return d.relativeTime(c||1,!!g,a,b)}function D(a,c,g){c=g-c;g-=a.day();g>c&&(g-=7);g<c-7&&(g+=7);a=i(a).add("d",g);return{week:Math.ceil(a.dayOfYear()/7),year:a.year()}}function x(a){var c=a._i,g=a._f;if(null===
|
||||
c||""===c)return null;"string"===typeof c&&(a._i=c=n().preparse(c));if(i.isMoment(c))a=l({},c),a._d=new Date(+c._d);else if(g)if("[object Array]"===Object.prototype.toString.call(g)){var c=a,b,d,h=99,j;for(j=0;j<c._f.length;j++)b=l({},c),b._f=c._f[j],A(b),g=new f(b),b=o(b._a,g.toArray()),g._il&&(b+=g._il.length),b<h&&(h=b,d=g);l(c,d)}else A(a);else if(d=a,c=d._i,g=ca.exec(c),c===e)d._d=new Date;else if(g)d._d=new Date(+g[1]);else if("string"===typeof c)if(c=d._i,g=da.exec(c)){d._f="YYYY-MM-DD"+(g[2]||
|
||||
" ");for(g=0;4>g;g++)if(P[g][1].exec(c)){d._f+=P[g][0];break}I.exec(c)&&(d._f+=" Z");A(d)}else d._d=new Date(c);else"[object Array]"===Object.prototype.toString.call(c)?(d._a=c.slice(0),y(d)):c instanceof Date?d._d=new Date(+c):"object"===typeof c?(c=d._i,d._d||(d._a=[c.years||c.year||c.y,c.months||c.month||c.M,c.days||c.day||c.d,c.hours||c.hour||c.h,c.minutes||c.minute||c.m,c.seconds||c.second||c.s,c.milliseconds||c.millisecond||c.ms],y(d))):d._d=new Date(c);return new f(a)}function L(a,c){i.fn[a]=
|
||||
i.fn[a+"s"]=function(a){var b=this._isUTC?"UTC":"";return null!=a?(this._d["set"+b+c](a),i.updateOffset(this),this):this._d["get"+b+c]()}}function S(a){i.duration.fn[a]=function(){return this._data[a]}}function M(a,c){i.duration.fn["as"+a]=function(){return+this/c}}for(var i,E=Math.round,w,F={},N="undefined"!==typeof module&&module.exports,ca=/^\/?Date\((\-?\d+)/i,ea=/(\-)?(?:(\d*)\.)?(\d+)\:(\d+)\:(\d+)\.?(\d{3})?/,O=/(\[[^\[]*\])|(\\)?(Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|SS?S?|X|zz?|ZZ?|.)/g,
|
||||
H=/(\[[^\[]*\])|(\\)?(LT|LL?L?L?|l{1,4})/g,aa=/\d\d?/,X=/\d{1,3}/,U=/\d{3}/,V=/\d{1,4}/,W=/[+\-]?\d{1,6}/,Y=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,I=/Z|[\+\-]\d\d:?\d\d/i,$=/T/i,Z=/[\+\-]?\d+(\.\d{1,3})?/,da=/^\s*\d{4}-\d\d-\d\d((T| )(\d\d(:\d\d(:\d\d(\.\d\d?\d?)?)?)?)?([\+\-]\d\d:?\d\d)?)?/,P=[["HH:mm:ss.S",/(T| )\d\d:\d\d:\d\d\.\d{1,3}/],["HH:mm:ss",/(T| )\d\d:\d\d:\d\d/],["HH:mm",/(T| )\d\d:\d\d/],["HH",/(T| )\d\d/]],ba=
|
||||
/([\+\-]|\d\d)/gi,J=["Date","Hours","Minutes","Seconds","Milliseconds"],K={Milliseconds:1,Seconds:1E3,Minutes:6E4,Hours:36E5,Days:864E5,Months:2592E6,Years:31536E6},T={ms:"millisecond",s:"second",m:"minute",h:"hour",d:"day",w:"week",W:"isoweek",M:"month",y:"year"},G={},Q="DDD w W M D d".split(" "),R="MDHhmswW".split(""),C={M:function(){return this.month()+1},MMM:function(a){return this.lang().monthsShort(this,a)},MMMM:function(a){return this.lang().months(this,a)},D:function(){return this.date()},
|
||||
DDD:function(){return this.dayOfYear()},d:function(){return this.day()},dd:function(a){return this.lang().weekdaysMin(this,a)},ddd:function(a){return this.lang().weekdaysShort(this,a)},dddd:function(a){return this.lang().weekdays(this,a)},w:function(){return this.week()},W:function(){return this.isoWeek()},YY:function(){return j(this.year()%100,2)},YYYY:function(){return j(this.year(),4)},YYYYY:function(){return j(this.year(),5)},gg:function(){return j(this.weekYear()%100,2)},gggg:function(){return this.weekYear()},
|
||||
ggggg:function(){return j(this.weekYear(),5)},GG:function(){return j(this.isoWeekYear()%100,2)},GGGG:function(){return this.isoWeekYear()},GGGGG:function(){return j(this.isoWeekYear(),5)},e:function(){return this.weekday()},E:function(){return this.isoWeekday()},a:function(){return this.lang().meridiem(this.hours(),this.minutes(),!0)},A:function(){return this.lang().meridiem(this.hours(),this.minutes(),!1)},H:function(){return this.hours()},h:function(){return this.hours()%12||12},m:function(){return this.minutes()},
|
||||
s:function(){return this.seconds()},S:function(){return~~(this.milliseconds()/100)},SS:function(){return j(~~(this.milliseconds()/10),2)},SSS:function(){return j(this.milliseconds(),3)},Z:function(){var a=-this.zone(),c="+";0>a&&(a=-a,c="-");return c+j(~~(a/60),2)+":"+j(~~a%60,2)},ZZ:function(){var a=-this.zone(),c="+";0>a&&(a=-a,c="-");return c+j(~~(10*a/6),4)},z:function(){return this.zoneAbbr()},zz:function(){return this.zoneName()},X:function(){return this.unix()}};Q.length;)w=Q.pop(),C[w+"o"]=
|
||||
d(C[w],w);for(;R.length;)w=R.pop(),C[w+w]=b(C[w],2);C.DDDD=b(C.DDD,3);l(h.prototype,{set:function(a){var c,g;for(g in a)c=a[g],"function"===typeof c?this[g]=c:this["_"+g]=c},_months:"January February March April May June July August September October November December".split(" "),months:function(a){return this._months[a.month()]},_monthsShort:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),monthsShort:function(a){return this._monthsShort[a.month()]},monthsParse:function(a){var c,g;this._monthsParse||
|
||||
(this._monthsParse=[]);for(c=0;12>c;c++)if(this._monthsParse[c]||(g=i.utc([2E3,c]),g="^"+this.months(g,"")+"|^"+this.monthsShort(g,""),this._monthsParse[c]=RegExp(g.replace(".",""),"i")),this._monthsParse[c].test(a))return c},_weekdays:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),weekdays:function(a){return this._weekdays[a.day()]},_weekdaysShort:"Sun Mon Tue Wed Thu Fri Sat".split(" "),weekdaysShort:function(a){return this._weekdaysShort[a.day()]},_weekdaysMin:"Su Mo Tu We Th Fr Sa".split(" "),
|
||||
weekdaysMin:function(a){return this._weekdaysMin[a.day()]},weekdaysParse:function(a){var c,g;this._weekdaysParse||(this._weekdaysParse=[]);for(c=0;7>c;c++)if(this._weekdaysParse[c]||(g=i([2E3,1]).day(c),g="^"+this.weekdays(g,"")+"|^"+this.weekdaysShort(g,"")+"|^"+this.weekdaysMin(g,""),this._weekdaysParse[c]=RegExp(g.replace(".",""),"i")),this._weekdaysParse[c].test(a))return c},_longDateFormat:{LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D YYYY",LLL:"MMMM D YYYY LT",LLLL:"dddd, MMMM D YYYY LT"},longDateFormat:function(a){var c=
|
||||
this._longDateFormat[a];!c&&this._longDateFormat[a.toUpperCase()]&&(c=this._longDateFormat[a.toUpperCase()].replace(/MMMM|MM|DD|dddd/g,function(a){return a.slice(1)}),this._longDateFormat[a]=c);return c},isPM:function(a){return"p"===(a+"").toLowerCase().charAt(0)},_meridiemParse:/[ap]\.?m?\.?/i,meridiem:function(a,c,g){return 11<a?g?"pm":"PM":g?"am":"AM"},_calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",
|
||||
sameElse:"L"},calendar:function(a,c){var g=this._calendar[a];return"function"===typeof g?g.apply(c):g},_relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},relativeTime:function(a,c,g,b){var d=this._relativeTime[g];return"function"===typeof d?d(a,c,g,b):d.replace(/%d/i,a)},pastFuture:function(a,c){var g=this._relativeTime[0<a?"future":"past"];return"function"===
|
||||
typeof g?g(c):g.replace(/%s/i,c)},ordinal:function(a){return this._ordinal.replace("%d",a)},_ordinal:"%d",preparse:function(a){return a},postformat:function(a){return a},week:function(a){return D(a,this._week.dow,this._week.doy).week},_week:{dow:0,doy:6}});i=function(a,c,g){return x({_i:a,_f:c,_l:g,_isUTC:!1})};i.utc=function(a,c,g){return x({_useUTC:!0,_isUTC:!0,_l:g,_i:a,_f:c}).utc()};i.unix=function(a){return i(1E3*a)};i.duration=function(a,c){var g=i.isDuration(a),b="number"===typeof a,d=g?a._input:
|
||||
b?{}:a,e=ea.exec(a);b?c?d[c]=a:d.milliseconds=a:e&&(b="-"===e[1]?-1:1,d={y:0,d:~~e[2]*b,h:~~e[3]*b,m:~~e[4]*b,s:~~e[5]*b,ms:~~e[6]*b});e=new r(d);g&&a.hasOwnProperty("_lang")&&(e._lang=a._lang);return e};i.version="2.2.1";i.defaultFormat="YYYY-MM-DDTHH:mm:ssZ";i.updateOffset=function(){};i.lang=function(a,c){if(!a)return i.fn._lang._abbr;a=a.toLowerCase();a=a.replace("_","-");if(c){var g=a;c.abbr=g;F[g]||(F[g]=new h);F[g].set(c)}else null===c?(delete F[a],a="en"):F[a]||n(a);i.duration.fn._lang=i.fn._lang=
|
||||
n(a)};i.langData=function(a){a&&(a._lang&&a._lang._abbr)&&(a=a._lang._abbr);return n(a)};i.isMoment=function(a){return a instanceof f};i.isDuration=function(a){return a instanceof r};l(i.fn=f.prototype,{clone:function(){return i(this)},valueOf:function(){return+this._d+6E4*(this._offset||0)},unix:function(){return Math.floor(+this/1E3)},toString:function(){return this.format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},toDate:function(){return this._offset?new Date(+this):this._d},toISOString:function(){return t(i(this).utc(),
|
||||
"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]")},toArray:function(){return[this.year(),this.month(),this.date(),this.hours(),this.minutes(),this.seconds(),this.milliseconds()]},isValid:function(){null==this._isValid&&(this._isValid=this._a?!o(this._a,(this._isUTC?i.utc(this._a):i(this._a)).toArray()):!isNaN(this._d.getTime()));return!!this._isValid},invalidAt:function(){var a,c=this._a,g=(this._isUTC?i.utc(this._a):i(this._a)).toArray();for(a=6;0<=a&&c[a]===g[a];--a);return a},utc:function(){return this.zone(0)},
|
||||
local:function(){this.zone(0);this._isUTC=!1;return this},format:function(a){a=t(this,a||i.defaultFormat);return this.lang().postformat(a)},add:function(a,c){var g;g="string"===typeof a?i.duration(+c,a):i.duration(a,c);s(this,g,1);return this},subtract:function(a,c){var g;g="string"===typeof a?i.duration(+c,a):i.duration(a,c);s(this,g,-1);return this},diff:function(a,c,g){var a=this._isUTC?i(a).zone(this._offset||0):i(a).local(),b=6E4*(this.zone()-a.zone()),d,c=q(c);"year"===c||"month"===c?(d=432E5*
|
||||
(this.daysInMonth()+a.daysInMonth()),b=12*(this.year()-a.year())+(this.month()-a.month()),b+=(this-i(this).startOf("month")-(a-i(a).startOf("month")))/d,b-=6E4*(this.zone()-i(this).startOf("month").zone()-(a.zone()-i(a).startOf("month").zone()))/d,"year"===c&&(b/=12)):(d=this-a,b="second"===c?d/1E3:"minute"===c?d/6E4:"hour"===c?d/36E5:"day"===c?(d-b)/864E5:"week"===c?(d-b)/6048E5:d);return g?b:p(b)},from:function(a,c){return i.duration(this.diff(a)).lang(this.lang()._abbr).humanize(!c)},fromNow:function(a){return this.from(i(),
|
||||
a)},calendar:function(){var a=this.diff(i().zone(this.zone()).startOf("day"),"days",!0);return this.format(this.lang().calendar(-6>a?"sameElse":-1>a?"lastWeek":0>a?"lastDay":1>a?"sameDay":2>a?"nextDay":7>a?"nextWeek":"sameElse",this))},isLeapYear:function(){var a=this.year();return 0===a%4&&0!==a%100||0===a%400},isDST:function(){return this.zone()<this.clone().month(0).zone()||this.zone()<this.clone().month(5).zone()},day:function(a){var c=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=
|
||||
a?"string"===typeof a&&(a=this.lang().weekdaysParse(a),"number"!==typeof a)?this:this.add({d:a-c}):c},month:function(a){var c=this._isUTC?"UTC":"",g;if(null!=a){if("string"===typeof a&&(a=this.lang().monthsParse(a),"number"!==typeof a))return this;g=this.date();this.date(1);this._d["set"+c+"Month"](a);this.date(Math.min(g,this.daysInMonth()));i.updateOffset(this);return this}return this._d["get"+c+"Month"]()},startOf:function(a){a=q(a);switch(a){case "year":this.month(0);case "month":this.date(1);
|
||||
case "week":case "isoweek":case "day":this.hours(0);case "hour":this.minutes(0);case "minute":this.seconds(0);case "second":this.milliseconds(0)}"week"===a?this.weekday(0):"isoweek"===a&&this.isoWeekday(1);return this},endOf:function(a){a=q(a);return this.startOf(a).add("isoweek"===a?"week":a,1).subtract("ms",1)},isAfter:function(a,c){c="undefined"!==typeof c?c:"millisecond";return+this.clone().startOf(c)>+i(a).startOf(c)},isBefore:function(a,c){c="undefined"!==typeof c?c:"millisecond";return+this.clone().startOf(c)<
|
||||
+i(a).startOf(c)},isSame:function(a,c){c="undefined"!==typeof c?c:"millisecond";return+this.clone().startOf(c)===+i(a).startOf(c)},min:function(a){a=i.apply(null,arguments);return a<this?this:a},max:function(a){a=i.apply(null,arguments);return a>this?this:a},zone:function(a){var c=this._offset||0;if(null!=a)"string"===typeof a&&(a=v(a)),16>Math.abs(a)&&(a*=60),this._offset=a,this._isUTC=!0,c!==a&&s(this,i.duration(c-a,"m"),1,!0);else return this._isUTC?c:this._d.getTimezoneOffset();return this},zoneAbbr:function(){return this._isUTC?
|
||||
"UTC":""},zoneName:function(){return this._isUTC?"Coordinated Universal Time":""},hasAlignedHourOffset:function(a){a=a?i(a).zone():0;return 0===(this.zone()-a)%60},daysInMonth:function(){return i.utc([this.year(),this.month()+1,0]).date()},dayOfYear:function(a){var c=E((i(this).startOf("day")-i(this).startOf("year"))/864E5)+1;return null==a?c:this.add("d",a-c)},weekYear:function(a){var c=D(this,this.lang()._week.dow,this.lang()._week.doy).year;return null==a?c:this.add("y",a-c)},isoWeekYear:function(a){var c=
|
||||
D(this,1,4).year;return null==a?c:this.add("y",a-c)},week:function(a){var c=this.lang().week(this);return null==a?c:this.add("d",7*(a-c))},isoWeek:function(a){var c=D(this,1,4).week;return null==a?c:this.add("d",7*(a-c))},weekday:function(a){var c=(this._d.getDay()+7-this.lang()._week.dow)%7;return null==a?c:this.add("d",a-c)},isoWeekday:function(a){return null==a?this.day()||7:this.day(this.day()%7?a:a-7)},get:function(a){a=q(a);return this[a.toLowerCase()]()},set:function(a,c){a=q(a);this[a.toLowerCase()](c)},
|
||||
lang:function(a){if(a===e)return this._lang;this._lang=n(a);return this}});for(w=0;w<J.length;w++)L(J[w].toLowerCase().replace(/s$/,""),J[w]);L("year","FullYear");i.fn.days=i.fn.day;i.fn.months=i.fn.month;i.fn.weeks=i.fn.week;i.fn.isoWeeks=i.fn.isoWeek;i.fn.toJSON=i.fn.toISOString;l(i.duration.fn=r.prototype,{_bubble:function(){var a=this._milliseconds,c=this._days,g=this._months,b=this._data;b.milliseconds=a%1E3;a=p(a/1E3);b.seconds=a%60;a=p(a/60);b.minutes=a%60;a=p(a/60);b.hours=a%24;c+=p(a/24);
|
||||
b.days=c%30;g+=p(c/30);b.months=g%12;c=p(g/12);b.years=c},weeks:function(){return p(this.days()/7)},valueOf:function(){return this._milliseconds+864E5*this._days+2592E6*(this._months%12)+31536E6*~~(this._months/12)},humanize:function(a){var c=+this,b;b=!a;var d=this.lang(),e=E(Math.abs(c)/1E3),f=E(e/60),h=E(f/60),i=E(h/24),j=E(i/365),e=45>e&&["s",e]||1===f&&["m"]||45>f&&["mm",f]||1===h&&["h"]||22>h&&["hh",h]||1===i&&["d"]||25>=i&&["dd",i]||45>=i&&["M"]||345>i&&["MM",E(i/30)]||1===j&&["y"]||["yy",
|
||||
j];e[2]=b;e[3]=0<c;e[4]=d;b=B.apply({},e);a&&(b=this.lang().pastFuture(c,b));return this.lang().postformat(b)},add:function(a,c){var b=i.duration(a,c);this._milliseconds+=b._milliseconds;this._days+=b._days;this._months+=b._months;this._bubble();return this},subtract:function(a,c){var b=i.duration(a,c);this._milliseconds-=b._milliseconds;this._days-=b._days;this._months-=b._months;this._bubble();return this},get:function(a){a=q(a);return this[a.toLowerCase()+"s"]()},as:function(a){a=q(a);return this["as"+
|
||||
a.charAt(0).toUpperCase()+a.slice(1)+"s"]()},lang:i.fn.lang});for(w in K)K.hasOwnProperty(w)&&(M(w,K[w]),S(w.toLowerCase()));M("Weeks",6048E5);i.duration.fn.asMonths=function(){return(+this-31536E6*this.years())/2592E6+12*this.years()};i.lang("en",{ordinal:function(a){var c=a%10;return a+(1===~~(a%100/10)?"th":1===c?"st":2===c?"nd":3===c?"rd":"th")}});(function(a){a(i)})(function(a){a.lang("ar-ma",{months:"يناير ÙØ¨Ø±Ø§ÙŠØ± مارس أبريل ماي يونيو يوليوز غشت شتنبر أكتوبر نونبر دجنبر".split(" "),
|
||||
monthsShort:"يناير ÙØ¨Ø±Ø§ÙŠØ± مارس أبريل ماي يونيو يوليوز غشت شتنبر أكتوبر نونبر دجنبر".split(" "),weekdays:"Ø§Ù„Ø£ØØ¯ الإتنين الثلاثاء الأربعاء الخميس الجمعة السبت".split(" "),weekdaysShort:"Ø§ØØ¯ اتنين ثلاثاء اربعاء خميس جمعة سبت".split(" "),weekdaysMin:"Ø Ù† Ø« ر Ø® ج س".split(" "),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},
|
||||
calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"ÙÙŠ %s",past:"منذ %s",s:"ثوان",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:6,doy:12}})});(function(a){a(i)})(function(a){a.lang("ar",
|
||||
{months:"يناير/ كانون الثاني;ÙØ¨Ø±Ø§ÙŠØ±/ شباط;مارس/ آذار;أبريل/ نيسان;مايو/ أيار;يونيو/ ØØ²ÙŠØ±Ø§Ù†;يوليو/ تموز;أغسطس/ آب;سبتمبر/ أيلول;أكتوبر/ تشرين الأول;نوÙمبر/ تشرين الثاني;ديسمبر/ كانون الأول".split(";"),monthsShort:"يناير/ كانون الثاني;ÙØ¨Ø±Ø§ÙŠØ±/ شباط;مارس/ آذار;أبريل/ نيسان;مايو/ أيار;يونيو/ ØØ²ÙŠØ±Ø§Ù†;يوليو/ تموز;أغسطس/ آب;سبتمبر/ أيلول;أكتوبر/ تشرين الأول;نوÙمبر/ تشرين الثاني;ديسمبر/ كانون الأول".split(";"),
|
||||
weekdays:"Ø§Ù„Ø£ØØ¯ الإثنين الثلاثاء الأربعاء الخميس الجمعة السبت".split(" "),weekdaysShort:"Ø§Ù„Ø£ØØ¯ الإثنين الثلاثاء الأربعاء الخميس الجمعة السبت".split(" "),weekdaysMin:"Ø Ù† Ø« ر Ø® ج س".split(" "),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",
|
||||
lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"ÙÙŠ %s",past:"منذ %s",s:"ثوان",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:6,doy:12}})});(function(a){a(i)})(function(a){a.lang("bg",{months:"Ñнуари февруари март април май юни юли авгуÑÑ‚ Ñептември октомври ноември декември".split(" "),
|
||||
monthsShort:"Ñнр фев мар апр май юни юли авг Ñеп окт ное дек".split(" "),weekdays:"Ð½ÐµÐ´ÐµÐ»Ñ Ð¿Ð¾Ð½ÐµÐ´ÐµÐ»Ð½Ð¸Ðº вторник ÑÑ€Ñда четвъртък петък Ñъбота".split(" "),weekdaysShort:"нед пон вто ÑÑ€Ñ Ñ‡ÐµÑ‚ пет Ñъб".split(" "),weekdaysMin:"нд пн вт ÑÑ€ чт пт Ñб".split(" "),longDateFormat:{LT:"h:mm",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Ð”Ð½ÐµÑ Ð²] LT",
|
||||
nextDay:"[Утре в] LT",nextWeek:"dddd [в] LT",lastDay:"[Вчера в] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[Ð’ изминалата] dddd [в] LT";case 1:case 2:case 4:case 5:return"[Ð’ изминалиÑ] dddd [в] LT"}},sameElse:"L"},relativeTime:{future:"Ñлед %s",past:"преди %s",s:"нÑколко Ñекунди",m:"минута",mm:"%d минути",h:"чаÑ",hh:"%d чаÑа",d:"ден",dd:"%d дни",M:"меÑец",MM:"%d меÑеца",y:"година",
|
||||
yy:"%d години"},ordinal:function(a){var b=a%10,d=a%100;return 0===a?a+"-ев":0===d?a+"-ен":10<d&&20>d?a+"-ти":1===b?a+"-ви":2===b?a+"-ри":7===b||8===b?a+"-ми":a+"-ти"},week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){function c(a,c,b){c=a+" ";b={mm:"munutenn",MM:"miz",dd:"devezh"}[b];2===a?(a={m:"v",b:"v",d:"z"},a=a[b.charAt(0)]===e?b:a[b.charAt(0)]+b.substring(1)):a=b;return c+a}function b(a){return 9<a?b(a%10):a}a.lang("br",{months:"Genver C'hwevrer Meurzh Ebrel Mae Mezheven Gouere Eost Gwengolo Here Du Kerzu".split(" "),
|
||||
monthsShort:"Gen C'hwe Meu Ebr Mae Eve Gou Eos Gwe Her Du Ker".split(" "),weekdays:"Sul Lun Meurzh Merc'her Yaou Gwener Sadorn".split(" "),weekdaysShort:"Sul Lun Meu Mer Yao Gwe Sad".split(" "),weekdaysMin:"Su Lu Me Mer Ya Gw Sa".split(" "),longDateFormat:{LT:"h[e]mm A",L:"DD/MM/YYYY",LL:"D [a viz] MMMM YYYY",LLL:"D [a viz] MMMM YYYY LT",LLLL:"dddd, D [a viz] MMMM YYYY LT"},calendar:{sameDay:"[Hiziv da] LT",nextDay:"[Warc'hoazh da] LT",nextWeek:"dddd [da] LT",lastDay:"[Dec'h da] LT",lastWeek:"dddd [paset da] LT",
|
||||
sameElse:"L"},relativeTime:{future:"a-benn %s",past:"%s 'zo",s:"un nebeud segondennoù",m:"ur vunutenn",mm:c,h:"un eur",hh:"%d eur",d:"un devezh",dd:c,M:"ur miz",MM:c,y:"ur bloaz",yy:function(a){switch(b(a)){case 1:case 3:case 4:case 5:case 9:return a+" bloaz";default:return a+" vloaz"}}},ordinal:function(a){return a+(1===a?"añ":"vet")},week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("ca",{months:"Gener Febrer Març Abril Maig Juny Juliol Agost Setembre Octubre Novembre Desembre".split(" "),
|
||||
monthsShort:"Gen. Febr. Mar. Abr. Mai. Jun. Jul. Ag. Set. Oct. Nov. Des.".split(" "),weekdays:"Diumenge Dilluns Dimarts Dimecres Dijous Divendres Dissabte".split(" "),weekdaysShort:"Dg. Dl. Dt. Dc. Dj. Dv. Ds.".split(" "),weekdaysMin:"Dg Dl Dt Dc Dj Dv Ds".split(" "),longDateFormat:{LT:"H:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:function(){return"[avui a "+(1!==this.hours()?"les":"la")+"] LT"},nextDay:function(){return"[demà a "+(1!==
|
||||
this.hours()?"les":"la")+"] LT"},nextWeek:function(){return"dddd [a "+(1!==this.hours()?"les":"la")+"] LT"},lastDay:function(){return"[ahir a "+(1!==this.hours()?"les":"la")+"] LT"},lastWeek:function(){return"[el] dddd [passat a "+(1!==this.hours()?"les":"la")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"fa %s",s:"uns segons",m:"un minut",mm:"%d minuts",h:"una hora",hh:"%d hores",d:"un dia",dd:"%d dies",M:"un mes",MM:"%d mesos",y:"un any",yy:"%d anys"},ordinal:"%dº",week:{dow:1,doy:4}})});
|
||||
(function(a){a(i)})(function(a){function c(a){return 1<a&&5>a&&1!==~~(a/10)}function b(a,g,d,e){var f=a+" ";switch(d){case "s":return g||e?"pár vteÅ™in":"pár vteÅ™inami";case "m":return g?"minuta":e?"minutu":"minutou";case "mm":return g||e?f+(c(a)?"minuty":"minut"):f+"minutami";case "h":return g?"hodina":e?"hodinu":"hodinou";case "hh":return g||e?f+(c(a)?"hodiny":"hodin"):f+"hodinami";case "d":return g||e?"den":"dnem";case "dd":return g||e?f+(c(a)?"dny":"dnÃ"):f+"dny";case "M":return g||e?"mÄ›sÃc":
|
||||
"mÄ›sÃcem";case "MM":return g||e?f+(c(a)?"mÄ›sÃce":"mÄ›sÃců"):f+"mÄ›sÃci";case "y":return g||e?"rok":"rokem";case "yy":return g||e?f+(c(a)?"roky":"let"):f+"lety"}}var d="leden únor bÅ™ezen duben kvÄ›ten Äerven Äervenec srpen zářà řÃjen listopad prosinec".split(" "),e="led úno bÅ™e dub kvÄ› Ävn Ävc srp zář Å™Ãj lis pro".split(" ");a.lang("cs",{months:d,monthsShort:e,monthsParse:function(a,c){var b,g=[];for(b=0;12>b;b++)g[b]=RegExp("^"+a[b]+"$|^"+c[b]+"$","i");return g}(d,e),weekdays:"nedÄ›le pondÄ›là úterý stÅ™eda Ätvrtek pátek sobota".split(" "),
|
||||
weekdaysShort:"ne po út st Ät pá so".split(" "),weekdaysMin:"ne po út st Ät pá so".split(" "),longDateFormat:{LT:"H:mm",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd D. MMMM YYYY LT"},calendar:{sameDay:"[dnes v] LT",nextDay:"[zÃtra v] LT",nextWeek:function(){switch(this.day()){case 0:return"[v nedÄ›li v] LT";case 1:case 2:return"[v] dddd [v] LT";case 3:return"[ve stÅ™edu v] LT";case 4:return"[ve Ätvrtek v] LT";case 5:return"[v pátek v] LT";case 6:return"[v sobotu v] LT"}},
|
||||
lastDay:"[vÄera v] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulou nedÄ›li v] LT";case 1:case 2:return"[minulé] dddd [v] LT";case 3:return"[minulou stÅ™edu v] LT";case 4:case 5:return"[minulý] dddd [v] LT";case 6:return"[minulou sobotu v] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"pÅ™ed %s",s:b,m:b,mm:b,h:b,hh:b,d:b,dd:b,M:b,MM:b,y:b,yy:b},ordinal:"%d.",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("cv",{months:"кăрлач Ð½Ð°Ñ€ÄƒÑ Ð¿ÑƒÑˆ ака май çĕртме утă çурла авăн юпа чӳк раштав".split(" "),
|
||||
monthsShort:"кăр нар пуш ака май çĕр утă çур ав юпа чӳк раш".split(" "),weekdays:"вырÑарникун тунтикун ытларикун юнкун кĕçнерникун Ñрнекун шăматкун".split(" "),weekdaysShort:"выр тун ытл юн кĕç Ñрн шăм".split(" "),weekdaysMin:"вр тн ыт юн кç ÑÑ€ шм".split(" "),longDateFormat:{LT:"HH:mm",L:"DD-MM-YYYY",LL:"YYYY [çулхи] MMMM [уйăхĕн] D[-мĕшĕ]",LLL:"YYYY [çулхи] MMMM [уйăхĕн] D[-мĕшĕ], LT",
|
||||
LLLL:"dddd, YYYY [çулхи] MMMM [уйăхĕн] D[-мĕшĕ], LT"},calendar:{sameDay:"[ПаÑн] LT [Ñехетре]",nextDay:"[Ыран] LT [Ñехетре]",lastDay:"[Ĕнер] LT [Ñехетре]",nextWeek:"[ÇитеÑ] dddd LT [Ñехетре]",lastWeek:"[Иртнĕ] dddd LT [Ñехетре]",sameElse:"L"},relativeTime:{future:function(a){var b=/Ñехет$/i.exec(a)?"рен":/çул$/i.exec(a)?"тан":"ран";return a+b},past:"%s каÑлла",s:"пĕр-ик çеккунт",m:"пĕр минут",
|
||||
mm:"%d минут",h:"пĕр Ñехет",hh:"%d Ñехет",d:"пĕр кун",dd:"%d кун",M:"пĕр уйăх",MM:"%d уйăх",y:"пĕр çул",yy:"%d çул"},ordinal:"%d-мĕш",week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){a.lang("da",{months:"januar februar marts april maj juni juli august september oktober november december".split(" "),monthsShort:"jan feb mar apr maj jun jul aug sep okt nov dec".split(" "),weekdays:"søndag mandag tirsdag onsdag torsdag fredag lørdag".split(" "),
|
||||
weekdaysShort:"søn man tir ons tor fre lør".split(" "),weekdaysMin:"sø ma ti on to fr lø".split(" "),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D. MMMM, YYYY LT"},calendar:{sameDay:"[I dag kl.] LT",nextDay:"[I morgen kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[I går kl.] LT",lastWeek:"[sidste] dddd [kl] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"få sekunder",m:"et minut",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",
|
||||
dd:"%d dage",M:"en måned",MM:"%d måneder",y:"et år",yy:"%d år"},ordinal:"%d.",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){function c(a,c,b){a={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[a+" Tage",a+" Tagen"],M:["ein Monat","einem Monat"],MM:[a+" Monate",a+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[a+" Jahre",a+" Jahren"]};return c?a[b][0]:a[b][1]}a.lang("de",{months:"Januar Februar März April Mai Juni Juli August September Oktober November Dezember".split(" "),
|
||||
monthsShort:"Jan. Febr. Mrz. Apr. Mai Jun. Jul. Aug. Sept. Okt. Nov. Dez.".split(" "),weekdays:"Sonntag Montag Dienstag Mittwoch Donnerstag Freitag Samstag".split(" "),weekdaysShort:"So. Mo. Di. Mi. Do. Fr. Sa.".split(" "),weekdaysMin:"So Mo Di Mi Do Fr Sa".split(" "),longDateFormat:{LT:"H:mm [Uhr]",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[Heute um] LT",sameElse:"L",nextDay:"[Morgen um] LT",nextWeek:"dddd [um] LT",lastDay:"[Gestern um] LT",
|
||||
lastWeek:"[letzten] dddd [um] LT"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",m:c,mm:"%d Minuten",h:c,hh:"%d Stunden",d:c,dd:c,M:c,MM:c,y:c,yy:c},ordinal:"%d.",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("el",{monthsNominativeEl:"ΙανουάÏιος ΦεβÏουάÏιος ΜάÏτιος ΑπÏίλιος Μάιος ΙοÏνιος ΙοÏλιος ΑÏγουστος ΣεπτÎμβÏιος ΟκτώβÏιος ÎοÎμβÏιος ΔεκÎμβÏιος".split(" "),monthsGenitiveEl:"ΙανουαÏίου ΦεβÏουαÏίου ΜαÏτίου ΑπÏιλίου ΜαÎου Ιουνίου Ιουλίου ΑυγοÏστου ΣεπτεμβÏίου ΟκτωβÏίου ÎοεμβÏίου ΔεκεμβÏίου".split(" "),
|
||||
months:function(a,b){return/D/.test(b.substring(0,b.indexOf("MMMM")))?this._monthsGenitiveEl[a.month()]:this._monthsNominativeEl[a.month()]},monthsShort:"Ιαν Φεβ ÎœÎ±Ï Î‘Ï€Ï ÎœÎ±ÏŠ Ιουν Ιουλ Αυγ Σεπ Οκτ Îοε Δεκ".split(" "),weekdays:"ΚυÏιακή;ΔευτÎÏα;ΤÏίτη;ΤετάÏτη;Î Îμπτη;ΠαÏασκευή;Σάββατο".split(";"),weekdaysShort:"ΚυÏ;Δευ;ΤÏι;Τετ;Πεμ;ΠαÏ;Σαβ".split(";"),weekdaysMin:"Κυ;Δε;ΤÏ;Τε;Πε;Πα;Σα".split(";"),
|
||||
meridiem:function(a,b,d){return 11<a?d?"μμ":"ΜΜ":d?"πμ":"ΠΜ"},longDateFormat:{LT:"h:mm A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendarEl:{sameDay:"[ΣήμεÏα {}] LT",nextDay:"[ΑÏÏιο {}] LT",nextWeek:"dddd [{}] LT",lastDay:"[Χθες {}] LT",lastWeek:"[την Ï€ÏοηγοÏμενη] dddd [{}] LT",sameElse:"L"},calendar:function(a,b){var d=this._calendarEl[a],e=b&&b.hours();return d.replace("{}",1===e%12?"στη":"στις")},relativeTime:{future:"σε %s",
|
||||
past:"%s Ï€Ïιν",s:"δευτεÏόλεπτα",m:"Îνα λεπτό",mm:"%d λεπτά",h:"μία ÏŽÏα",hh:"%d ÏŽÏες",d:"μία μÎÏα",dd:"%d μÎÏες",M:"Îνας μήνας",MM:"%d μήνες",y:"Îνας χÏόνος",yy:"%d χÏόνια"},ordinal:function(a){return a+"η"},week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("en-ca",{months:"January February March April May June July August September October November December".split(" "),monthsShort:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),
|
||||
weekdays:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),weekdaysShort:"Sun Mon Tue Wed Thu Fri Sat".split(" "),weekdaysMin:"Su Mo Tu We Th Fr Sa".split(" "),longDateFormat:{LT:"h:mm A",L:"YYYY-MM-DD",LL:"D MMMM, YYYY",LLL:"D MMMM, YYYY LT",LLLL:"dddd, D MMMM, YYYY LT"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",
|
||||
m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ordinal:function(a){var b=a%10;return a+(1===~~(a%100/10)?"th":1===b?"st":2===b?"nd":3===b?"rd":"th")}})});(function(a){a(i)})(function(a){a.lang("en-gb",{months:"January February March April May June July August September October November December".split(" "),monthsShort:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),weekdays:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),
|
||||
weekdaysShort:"Sun Mon Tue Wed Thu Fri Sat".split(" "),weekdaysMin:"Su Mo Tu We Th Fr Sa".split(" "),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",
|
||||
M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ordinal:function(a){var b=a%10;return a+(1===~~(a%100/10)?"th":1===b?"st":2===b?"nd":3===b?"rd":"th")},week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("eo",{months:"januaro februaro marto aprilo majo junio julio aÅgusto septembro oktobro novembro decembro".split(" "),monthsShort:"jan feb mar apr maj jun jul aÅg sep okt nov dec".split(" "),weekdays:"Dimanĉo Lundo Mardo Merkredo Ä´aÅdo Vendredo Sabato".split(" "),weekdaysShort:"Dim Lun Mard Merk Ä´aÅ Ven Sab".split(" "),
|
||||
weekdaysMin:"Di Lu Ma Me Ä´a Ve Sa".split(" "),longDateFormat:{LT:"HH:mm",L:"YYYY-MM-DD",LL:"D[-an de] MMMM, YYYY",LLL:"D[-an de] MMMM, YYYY LT",LLLL:"dddd, [la] D[-an de] MMMM, YYYY LT"},meridiem:function(a,b,d){return 11<a?d?"p.t.m.":"P.T.M.":d?"a.t.m.":"A.T.M."},calendar:{sameDay:"[HodiaÅ je] LT",nextDay:"[MorgaÅ je] LT",nextWeek:"dddd [je] LT",lastDay:"[HieraÅ je] LT",lastWeek:"[pasinta] dddd [je] LT",sameElse:"L"},relativeTime:{future:"je %s",past:"antaÅ %s",s:"sekundoj",m:"minuto",mm:"%d minutoj",
|
||||
h:"horo",hh:"%d horoj",d:"tago",dd:"%d tagoj",M:"monato",MM:"%d monatoj",y:"jaro",yy:"%d jaroj"},ordinal:"%da",week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){a.lang("es",{months:"enero febrero marzo abril mayo junio julio agosto septiembre octubre noviembre diciembre".split(" "),monthsShort:"ene. feb. mar. abr. may. jun. jul. ago. sep. oct. nov. dic.".split(" "),weekdays:"domingo lunes martes miércoles jueves viernes sábado".split(" "),weekdaysShort:"dom. lun. mar. mié. jue. vie. sáb.".split(" "),
|
||||
weekdaysMin:"Do Lu Ma Mi Ju Vi Sá".split(" "),longDateFormat:{LT:"H:mm",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY LT",LLLL:"dddd, D [de] MMMM [de] YYYY LT"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[mañana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+
|
||||
(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un dÃa",dd:"%d dÃas",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},ordinal:"%dº",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("et",{months:"jaanuar veebruar märts aprill mai juuni juuli august september oktoober november detsember".split(" "),monthsShort:"jaan veebr märts apr mai juuni juuli aug sept okt nov dets".split(" "),
|
||||
weekdays:"pühapäev esmaspäev teisipäev kolmapäev neljapäev reede laupäev".split(" "),weekdaysShort:"PETKNRL".split(""),weekdaysMin:"PETKNRL".split(""),longDateFormat:{LT:"H:mm",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[Täna,] LT",nextDay:"[Homme,] LT",nextWeek:"[Järgmine] dddd LT",lastDay:"[Eile,] LT",lastWeek:"[Eelmine] dddd LT",sameElse:"L"},relativeTime:{future:"%s pärast",past:"%s tagasi",s:function(a,b,d,e){return e||b?
|
||||
"paari sekundi":"paar sekundit"},m:"minut",mm:"%d minutit",h:"tund",hh:"%d tundi",d:"päev",dd:"%d päeva",M:"kuu",MM:"%d kuud",y:"aasta",yy:"%d aastat"},ordinal:"%d.",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("eu",{months:"urtarrila otsaila martxoa apirila maiatza ekaina uztaila abuztua iraila urria azaroa abendua".split(" "),monthsShort:"urt. ots. mar. api. mai. eka. uzt. abu. ira. urr. aza. abe.".split(" "),weekdays:"igandea astelehena asteartea asteazkena osteguna ostirala larunbata".split(" "),
|
||||
weekdaysShort:"ig. al. ar. az. og. ol. lr.".split(" "),weekdaysMin:"ig al ar az og ol lr".split(" "),longDateFormat:{LT:"HH:mm",L:"YYYY-MM-DD",LL:"YYYY[ko] MMMM[ren] D[a]",LLL:"YYYY[ko] MMMM[ren] D[a] LT",LLLL:"dddd, YYYY[ko] MMMM[ren] D[a] LT",l:"YYYY-M-D",ll:"YYYY[ko] MMM D[a]",lll:"YYYY[ko] MMM D[a] LT",llll:"ddd, YYYY[ko] MMM D[a] LT"},calendar:{sameDay:"[gaur] LT[etan]",nextDay:"[bihar] LT[etan]",nextWeek:"dddd LT[etan]",lastDay:"[atzo] LT[etan]",lastWeek:"[aurreko] dddd LT[etan]",sameElse:"L"},
|
||||
relativeTime:{future:"%s barru",past:"duela %s",s:"segundo batzuk",m:"minutu bat",mm:"%d minutu",h:"ordu bat",hh:"%d ordu",d:"egun bat",dd:"%d egun",M:"hilabete bat",MM:"%d hilabete",y:"urte bat",yy:"%d urte"},ordinal:"%d.",week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){var c={1:"Û±",2:"Û²",3:"Û³",4:"Û´",5:"Ûµ",6:"Û¶",7:"Û·",8:"Û¸",9:"Û¹","0":"Û°"},b={"Û±":"1","Û²":"2","Û³":"3","Û´":"4","Ûµ":"5","Û¶":"6","Û·":"7","Û¸":"8","Û¹":"9","Û°":"0"};a.lang("fa",{months:"ژانویه Ùوریه مارس آوریل مه ژوئن ژوئیه اوت سپتامبر اکتبر نوامبر دسامبر".split(" "),
|
||||
monthsShort:"ژانویه Ùوریه مارس آوریل مه ژوئن ژوئیه اوت سپتامبر اکتبر نوامبر دسامبر".split(" "),weekdays:"یکشنبه دوشنبه سهشنبه چهارشنبه پنجشنبه جمعه شنبه".split(" "),weekdaysShort:"یکشنبه دوشنبه سهشنبه چهارشنبه پنجشنبه جمعه شنبه".split(" "),weekdaysMin:"ÛŒ د س Ú† Ù¾ ج Ø´".split(" "),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",
|
||||
LLLL:"dddd, D MMMM YYYY LT"},meridiem:function(a){return 12>a?"قبل از ظهر":"بعد از ظهر"},calendar:{sameDay:"[امروز ساعت] LT",nextDay:"[ÙØ±Ø¯Ø§ ساعت] LT",nextWeek:"dddd [ساعت] LT",lastDay:"[دیروز ساعت] LT",lastWeek:"dddd [پیش] [ساعت] LT",sameElse:"L"},relativeTime:{future:"در %s",past:"%s پیش",s:"چندین ثانیه",m:"یک دقیقه",mm:"%d دقیقه",h:"یک ساعت",hh:"%d ساعت",d:"یک روز",dd:"%d روز",M:"یک ماه",MM:"%d ماه",
|
||||
y:"یک سال",yy:"%d سال"},preparse:function(a){return a.replace(/[۰-۹]/g,function(a){return b[a]}).replace(/،/g,",")},postformat:function(a){return a.replace(/\d/g,function(a){return c[a]}).replace(/,/g,"،")},ordinal:"%dم",week:{dow:6,doy:12}})});(function(a){a(i)})(function(a){function c(a,c,e,f){c="";switch(e){case "s":return f?"muutaman sekunnin":"muutama sekunti";case "m":return f?"minuutin":"minuutti";case "mm":c=f?"minuutin":"minuuttia";break;case "h":return f?"tunnin":"tunti";case "hh":c=
|
||||
f?"tunnin":"tuntia";break;case "d":return f?"päivän":"päivä";case "dd":c=f?"päivän":"päivää";break;case "M":return f?"kuukauden":"kuukausi";case "MM":c=f?"kuukauden":"kuukautta";break;case "y":return f?"vuoden":"vuosi";case "yy":c=f?"vuoden":"vuotta"}return c=(10>a?f?d[a]:b[a]:a)+" "+c}var b="nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän".split(" "),d=["nolla","yhden","kahden","kolmen","neljän","viiden","kuuden",b[7],b[8],b[9]];a.lang("fi",{months:"tammikuu helmikuu maaliskuu huhtikuu toukokuu kesäkuu heinäkuu elokuu syyskuu lokakuu marraskuu joulukuu".split(" "),
|
||||
monthsShort:"tammi helmi maalis huhti touko kesä heinä elo syys loka marras joulu".split(" "),weekdays:"sunnuntai maanantai tiistai keskiviikko torstai perjantai lauantai".split(" "),weekdaysShort:"su ma ti ke to pe la".split(" "),weekdaysMin:"su ma ti ke to pe la".split(" "),longDateFormat:{LT:"HH.mm",L:"DD.MM.YYYY",LL:"Do MMMM[ta] YYYY",LLL:"Do MMMM[ta] YYYY, [klo] LT",LLLL:"dddd, Do MMMM[ta] YYYY, [klo] LT",l:"D.M.YYYY",ll:"Do MMM YYYY",lll:"Do MMM YYYY, [klo] LT",llll:"ddd, Do MMM YYYY, [klo] LT"},
|
||||
calendar:{sameDay:"[tänään] [klo] LT",nextDay:"[huomenna] [klo] LT",nextWeek:"dddd [klo] LT",lastDay:"[eilen] [klo] LT",lastWeek:"[viime] dddd[na] [klo] LT",sameElse:"L"},relativeTime:{future:"%s päästä",past:"%s sitten",s:c,m:c,mm:c,h:c,hh:c,d:c,dd:c,M:c,MM:c,y:c,yy:c},ordinal:"%d.",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("fr-ca",{months:"janvier février mars avril mai juin juillet août septembre octobre novembre décembre".split(" "),monthsShort:"janv. févr. mars avr. mai juin juil. août sept. oct. nov. déc.".split(" "),
|
||||
weekdays:"dimanche lundi mardi mercredi jeudi vendredi samedi".split(" "),weekdaysShort:"dim. lun. mar. mer. jeu. ven. sam.".split(" "),weekdaysMin:"Di Lu Ma Me Je Ve Sa".split(" "),longDateFormat:{LT:"HH:mm",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[Aujourd'hui à ] LT",nextDay:"[Demain à ] LT",nextWeek:"dddd [à ] LT",lastDay:"[Hier à ] LT",lastWeek:"dddd [dernier à ] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",
|
||||
m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},ordinal:function(a){return a+(1===a?"er":"")}})});(function(a){a(i)})(function(a){a.lang("fr",{months:"janvier février mars avril mai juin juillet août septembre octobre novembre décembre".split(" "),monthsShort:"janv. févr. mars avr. mai juin juil. août sept. oct. nov. déc.".split(" "),weekdays:"dimanche lundi mardi mercredi jeudi vendredi samedi".split(" "),
|
||||
weekdaysShort:"dim. lun. mar. mer. jeu. ven. sam.".split(" "),weekdaysMin:"Di Lu Ma Me Je Ve Sa".split(" "),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[Aujourd'hui à ] LT",nextDay:"[Demain à ] LT",nextWeek:"dddd [à ] LT",lastDay:"[Hier à ] LT",lastWeek:"dddd [dernier à ] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",
|
||||
d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},ordinal:function(a){return a+(1===a?"er":"")},week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("gl",{months:"Xaneiro Febreiro Marzo Abril Maio Xuño Xullo Agosto Setembro Outubro Novembro Decembro".split(" "),monthsShort:"Xan. Feb. Mar. Abr. Mai. Xuñ. Xul. Ago. Set. Out. Nov. Dec.".split(" "),weekdays:"Domingo Luns Martes Mércores Xoves Venres Sábado".split(" "),weekdaysShort:"Dom. Lun. Mar. Mér. Xov. Ven. Sáb.".split(" "),
|
||||
weekdaysMin:"Do Lu Ma Mé Xo Ve Sá".split(" "),longDateFormat:{LT:"H:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:function(){return"[hoxe "+(1!==this.hours()?"ás":"á")+"] LT"},nextDay:function(){return"[mañá "+(1!==this.hours()?"ás":"á")+"] LT"},nextWeek:function(){return"dddd ["+(1!==this.hours()?"ás":"a")+"] LT"},lastDay:function(){return"[onte "+(1!==this.hours()?"á":"a")+"] LT"},lastWeek:function(){return"[o] dddd [pasado "+(1!==
|
||||
this.hours()?"ás":"a")+"] LT"},sameElse:"L"},relativeTime:{future:function(a){return"uns segundos"===a?"nuns segundos":"en "+a},past:"hai %s",s:"uns segundos",m:"un minuto",mm:"%d minutos",h:"unha hora",hh:"%d horas",d:"un dÃa",dd:"%d dÃas",M:"un mes",MM:"%d meses",y:"un ano",yy:"%d anos"},ordinal:"%dº",week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){a.lang("he",{months:"×™× ×•×ר;פברו×ר;מרץ;×פריל;מ××™;×™×•× ×™;יולי;×וגוסט;ספטמבר;×וקטובר;× ×•×‘×ž×‘×¨;דצמבר".split(";"),
|
||||
monthsShort:"×™× ×•×³;פבר׳;מרץ;×פר׳;מ××™;×™×•× ×™;יולי;×וג׳;ספט׳;×וק׳;× ×•×‘×³;דצמ׳".split(";"),weekdays:"ר×שון;×©× ×™;שלישי;רביעי;חמישי;שישי;שבת".split(";"),weekdaysShort:"×׳ ב׳ ג׳ ד׳ ה׳ ו׳ ש׳".split(" "),weekdaysMin:"× ×‘ ×’ ד ×” ו ש".split(" "),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D [ב]MMMM YYYY",LLL:"D [ב]MMMM YYYY LT",LLLL:"dddd, D [ב]MMMM YYYY LT",l:"D/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY LT",llll:"ddd, D MMM YYYY LT"},
|
||||
calendar:{sameDay:"[×”×™×•× ×‘Ö¾]LT",nextDay:"[מחר ב־]LT",nextWeek:"dddd [בשעה] LT",lastDay:"[×תמול ב־]LT",lastWeek:"[ביו×] dddd [×”×חרון בשעה] LT",sameElse:"L"},relativeTime:{future:"בעוד %s",past:"×œ×¤× ×™ %s",s:"מספר ×©× ×™×•×ª",m:"דקה",mm:"%d דקות",h:"שעה",hh:function(a){return 2===a?"שעתיי×":a+" שעות"},d:"יו×",dd:function(a){return 2===a?"יומיי×":a+" ימי×"},M:"חודש",MM:function(a){return 2===a?"חודשיי×":a+" חודשי×"},
|
||||
y:"×©× ×”",yy:function(a){return 2===a?"×©× ×ª×™×™×":a+" ×©× ×™×"}}})});(function(a){a(i)})(function(a){var c={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"à¥",8:"८",9:"९","0":"०"},b={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","à¥":"7","८":"8","९":"9","०":"0"};a.lang("hi",{months:"जनवरी फ़रवरी मारà¥à¤š अपà¥à¤°à¥ˆà¤² मई जून जà¥à¤²à¤¾à¤ˆ अगसà¥à¤¤ सितमà¥à¤¬à¤° अकà¥à¤Ÿà¥‚बर नवमà¥à¤¬à¤° दिसमà¥à¤¬à¤°".split(" "),
|
||||
monthsShort:"जन. फ़र. मारà¥à¤š अपà¥à¤°à¥ˆ. मई जून जà¥à¤². अग. सित. अकà¥à¤Ÿà¥‚. नव. दिस.".split(" "),weekdays:"रविवार सोमवार मंगलवार बà¥à¤§à¤µà¤¾à¤° गà¥à¤°à¥‚वार शà¥à¤•à¥à¤°à¤µà¤¾à¤° शनिवार".split(" "),weekdaysShort:"रवि सोम मंगल बà¥à¤§ गà¥à¤°à¥‚ शà¥à¤•à¥à¤° शनि".split(" "),weekdaysMin:"र सो मं बॠगॠशॠश".split(" "),
|
||||
longDateFormat:{LT:"A h:mm बजे",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[आज] LT",nextDay:"[कल] LT",nextWeek:"dddd, LT",lastDay:"[कल] LT",lastWeek:"[पिछले] dddd, LT",sameElse:"L"},relativeTime:{future:"%s में",past:"%s पहले",s:"कà¥à¤› ही कà¥à¤·à¤£",m:"à¤à¤• मिनट",mm:"%d मिनट",h:"à¤à¤• घंटा",hh:"%d घंटे",d:"à¤à¤• दिन",dd:"%d दिन",M:"à¤à¤• महीने",
|
||||
MM:"%d महीने",y:"à¤à¤• वरà¥à¤·",yy:"%d वरà¥à¤·"},preparse:function(a){return a.replace(/[१२३४५६à¥à¥®à¥¯à¥¦]/g,function(a){return b[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return c[a]})},meridiem:function(a){return 4>a?"रात":10>a?"सà¥à¤¬à¤¹":17>a?"दोपहर":20>a?"शाम":"रात"},week:{dow:0,doy:6}})});(function(a){a(i)})(function(a){function c(a,c,b){var d=a+" ";switch(b){case "m":return c?"jedna minuta":"jedne minute";
|
||||
case "mm":return 1===a?d+"minuta":2===a||3===a||4===a?d+"minute":d+"minuta";case "h":return c?"jedan sat":"jednog sata";case "hh":return 1===a?d+"sat":2===a||3===a||4===a?d+"sata":d+"sati";case "dd":return 1===a?d+"dan":d+"dana";case "MM":return 1===a?d+"mjesec":2===a||3===a||4===a?d+"mjeseca":d+"mjeseci";case "yy":return 1===a?d+"godina":2===a||3===a||4===a?d+"godine":d+"godina"}}a.lang("hr",{months:"sjeÄanj veljaÄa ožujak travanj svibanj lipanj srpanj kolovoz rujan listopad studeni prosinac".split(" "),
|
||||
monthsShort:"sje. vel. ožu. tra. svi. lip. srp. kol. ruj. lis. stu. pro.".split(" "),weekdays:"nedjelja ponedjeljak utorak srijeda Äetvrtak petak subota".split(" "),weekdaysShort:"ned. pon. uto. sri. Äet. pet. sub.".split(" "),weekdaysMin:"ne po ut sr Äe pe su".split(" "),longDateFormat:{LT:"H:mm",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";
|
||||
case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[juÄer u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[proÅ¡lu] dddd [u] LT";case 6:return"[proÅ¡le] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[proÅ¡li] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",m:c,mm:c,h:c,hh:c,d:"dan",dd:c,M:"mjesec",MM:c,y:"godinu",yy:c},ordinal:"%d.",week:{dow:1,doy:7}})});
|
||||
(function(a){a(i)})(function(a){function c(a,c,b,d){switch(b){case "s":return d||c?"néhány másodperc":"néhány másodperce";case "m":return"egy"+(d||c?" perc":" perce");case "mm":return a+(d||c?" perc":" perce");case "h":return"egy"+(d||c?" óra":" órája");case "hh":return a+(d||c?" óra":" órája");case "d":return"egy"+(d||c?" nap":" napja");case "dd":return a+(d||c?" nap":" napja");case "M":return"egy"+(d||c?" hónap":" hónapja");case "MM":return a+(d||c?" hónap":" hónapja");case "y":return"egy"+
|
||||
(d||c?" év":" éve");case "yy":return a+(d||c?" év":" éve")}return""}function b(a){return(a?"":"[múlt] ")+"["+d[this.day()]+"] LT[-kor]"}var d="vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton".split(" ");a.lang("hu",{months:"január február március április május június július augusztus szeptember október november december".split(" "),monthsShort:"jan feb márc ápr máj jún júl aug szept okt nov dec".split(" "),weekdays:"vasárnap hétfő kedd szerda csütörtök péntek szombat".split(" "),
|
||||
weekdaysShort:"v h k sze cs p szo".split(" "),longDateFormat:{LT:"H:mm",L:"YYYY.MM.DD.",LL:"YYYY. MMMM D.",LLL:"YYYY. MMMM D., LT",LLLL:"YYYY. MMMM D., dddd LT"},calendar:{sameDay:"[ma] LT[-kor]",nextDay:"[holnap] LT[-kor]",nextWeek:function(){return b.call(this,!0)},lastDay:"[tegnap] LT[-kor]",lastWeek:function(){return b.call(this,!1)},sameElse:"L"},relativeTime:{future:"%s múlva",past:"%s",s:c,m:c,mm:c,h:c,hh:c,d:c,dd:c,M:c,MM:c,y:c,yy:c},ordinal:"%d.",week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){a.lang("id",
|
||||
{months:"Januari Februari Maret April Mei Juni Juli Agustus September Oktober November Desember".split(" "),monthsShort:"Jan Feb Mar Apr Mei Jun Jul Ags Sep Okt Nov Des".split(" "),weekdays:"Minggu Senin Selasa Rabu Kamis Jumat Sabtu".split(" "),weekdaysShort:"Min Sen Sel Rab Kam Jum Sab".split(" "),weekdaysMin:"Mg Sn Sl Rb Km Jm Sb".split(" "),longDateFormat:{LT:"HH.mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] LT",LLLL:"dddd, D MMMM YYYY [pukul] LT"},meridiem:function(a){return 11>
|
||||
a?"pagi":15>a?"siang":19>a?"sore":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Besok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kemarin pukul] LT",lastWeek:"dddd [lalu pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lalu",s:"beberapa detik",m:"semenit",mm:"%d menit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){function c(a){return 11!==a%100&&1===a%
|
||||
10?!1:!0}function b(a,d,g,e){var f=a+" ";switch(g){case "s":return d||e?"nokkrar sekúndur":"nokkrum sekúndum";case "m":return d?"mÃnúta":"mÃnútu";case "mm":return c(a)?f+(d||e?"mÃnútur":"mÃnútum"):d?f+"mÃnúta":f+"mÃnútu";case "hh":return c(a)?f+(d||e?"klukkustundir":"klukkustundum"):f+"klukkustund";case "d":return d?"dagur":e?"dag":"degi";case "dd":return c(a)?d?f+"dagar":f+(e?"daga":"dögum"):d?f+"dagur":f+(e?"dag":"degi");case "M":return d?"mánuður":e?"mánuð":"mánuði";case "MM":return c(a)?
|
||||
d?f+"mánuðir":f+(e?"mánuði":"mánuðum"):d?f+"mánuður":f+(e?"mánuð":"mánuði");case "y":return d||e?"ár":"ári";case "yy":return c(a)?f+(d||e?"ár":"árum"):f+(d||e?"ár":"ári")}}a.lang("is",{months:"janúar febrúar mars aprÃl maà júnà júlà ágúst september október nóvember desember".split(" "),monthsShort:"jan feb mar apr maà jún júl ágú sep okt nóv des".split(" "),weekdays:"sunnudagur mánudagur þriðjudagur miðvikudagur fimmtudagur föstudagur laugardagur".split(" "),weekdaysShort:"sun mán þri mið fim fös lau".split(" "),
|
||||
weekdaysMin:"Su Má Þr Mi Fi Fö La".split(" "),longDateFormat:{LT:"H:mm",L:"DD/MM/YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] LT",LLLL:"dddd, D. MMMM YYYY [kl.] LT"},calendar:{sameDay:"[à dag kl.] LT",nextDay:"[á morgun kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[à gær kl.] LT",lastWeek:"[sÃðasta] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"eftir %s",past:"fyrir %s sÃðan",s:b,m:b,mm:b,h:"klukkustund",hh:b,d:b,dd:b,M:b,MM:b,y:b,yy:b},ordinal:"%d.",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("it",
|
||||
{months:"Gennaio Febbraio Marzo Aprile Maggio Giugno Luglio Agosto Settembre Ottobre Novembre Dicembre".split(" "),monthsShort:"Gen Feb Mar Apr Mag Giu Lug Ago Set Ott Nov Dic".split(" "),weekdays:"Domenica Lunedì Martedì Mercoledì Giovedì Venerdì Sabato".split(" "),weekdaysShort:"Dom Lun Mar Mer Gio Ven Sab".split(" "),weekdaysMin:"D L Ma Me G V S".split(" "),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Oggi alle] LT",
|
||||
nextDay:"[Domani alle] LT",nextWeek:"dddd [alle] LT",lastDay:"[Ieri alle] LT",lastWeek:"[lo scorso] dddd [alle] LT",sameElse:"L"},relativeTime:{future:function(a){return(/^[0-9].+$/.test(a)?"tra":"in")+" "+a},past:"%s fa",s:"secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},ordinal:"%dº",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("ja",{months:"1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月".split(" "),
|
||||
monthsShort:"1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月".split(" "),weekdays:"日曜日 月曜日 ç«æ›œæ—¥ 水曜日 木曜日 金曜日 土曜日".split(" "),weekdaysShort:"æ—¥ 月 ç« æ°´ 木 金 土".split(" "),weekdaysMin:"æ—¥ 月 ç« æ°´ 木 金 土".split(" "),longDateFormat:{LT:"Ah時m分",L:"YYYY/MM/DD",LL:"YYYYå¹´M月Dæ—¥",LLL:"YYYYå¹´M月Dæ—¥LT",LLLL:"YYYYå¹´M月Dæ—¥LT dddd"},meridiem:function(a){return 12>a?"åˆå‰":"åˆå¾Œ"},calendar:{sameDay:"[今日] LT",nextDay:"[明日] LT",
|
||||
nextWeek:"[æ¥é€±]dddd LT",lastDay:"[昨日] LT",lastWeek:"[å‰é€±]dddd LT",sameElse:"L"},relativeTime:{future:"%s後",past:"%så‰",s:"æ•°ç§’",m:"1分",mm:"%d分",h:"1時間",hh:"%d時間",d:"1æ—¥",dd:"%dæ—¥",M:"1ヶ月",MM:"%dヶ月",y:"1å¹´",yy:"%då¹´"}})});(function(a){a(i)})(function(a){a.lang("ka",{months:function(a,b){return{nominative:"იáƒáƒœáƒ•áƒáƒ ი;თებერვáƒáƒšáƒ˜;მáƒáƒ ტი;áƒáƒžáƒ ილი;მáƒáƒ˜áƒ¡áƒ˜;ივნისი;ივლისი;áƒáƒ’ვისტáƒ;სექტემბერი;áƒáƒ¥áƒ¢áƒáƒ›áƒ‘ერი;ნáƒáƒ”მბერი;დეკემბერი".split(";"),
|
||||
accusative:"იáƒáƒœáƒ•áƒáƒ ს;თებერვáƒáƒšáƒ¡;მáƒáƒ ტს;áƒáƒžáƒ ილის;მáƒáƒ˜áƒ¡áƒ¡;ივნისს;ივლისს;áƒáƒ’ვისტს;სექტემბერს;áƒáƒ¥áƒ¢áƒáƒ›áƒ‘ერს;ნáƒáƒ”მბერს;დეკემბერს".split(";")}[/D[oD] *MMMM?/.test(b)?"accusative":"nominative"][a.month()]},monthsShort:"იáƒáƒœ;თებ;მáƒáƒ ;áƒáƒžáƒ ;მáƒáƒ˜;ივნ;ივლ;áƒáƒ’ვ;სექ;áƒáƒ¥áƒ¢;ნáƒáƒ”;დეკ".split(";"),
|
||||
weekdays:function(a,b){return{nominative:"კვირáƒ;áƒáƒ შáƒáƒ‘áƒáƒ—ი;სáƒáƒ›áƒ¨áƒáƒ‘áƒáƒ—ი;áƒáƒ—ხშáƒáƒ‘áƒáƒ—ი;ხუთშáƒáƒ‘áƒáƒ—ი;პáƒáƒ áƒáƒ¡áƒ™áƒ”ვი;შáƒáƒ‘áƒáƒ—ი".split(";"),accusative:"კვირáƒáƒ¡;áƒáƒ შáƒáƒ‘áƒáƒ—ს;სáƒáƒ›áƒ¨áƒáƒ‘áƒáƒ—ს;áƒáƒ—ხშáƒáƒ‘áƒáƒ—ს;ხუთშáƒáƒ‘áƒáƒ—ს;პáƒáƒ áƒáƒ¡áƒ™áƒ”ვს;შáƒáƒ‘áƒáƒ—ს".split(";")}[/(წინáƒ|შემდეგ)/.test(b)?"accusative":"nominative"][a.day()]},
|
||||
weekdaysShort:"კვი;áƒáƒ შ;სáƒáƒ›;áƒáƒ—ხ;ხუთ;პáƒáƒ ;შáƒáƒ‘".split(";"),weekdaysMin:"კვ;áƒáƒ ;სáƒ;áƒáƒ—;ხუ;პáƒ;შáƒ".split(";"),longDateFormat:{LT:"h:mm A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[დღეს] LT[-ზე]",nextDay:"[ხვáƒáƒš] LT[-ზე]",lastDay:"[გუშინ] LT[-ზე]",nextWeek:"[შემდეგ] dddd LT[-ზე]",lastWeek:"[წინáƒ] dddd LT-ზე",sameElse:"L"},
|
||||
relativeTime:{future:function(a){return/(წáƒáƒ›áƒ˜|წუთი|სáƒáƒáƒ—ი|წელი)/.test(a)?a.replace(/ი$/,"ში"):a+"ში"},past:function(a){if(/(წáƒáƒ›áƒ˜|წუთი|სáƒáƒáƒ—ი|დღე|თვე)/.test(a))return a.replace(/(ი|ე)$/,"ის წინ");if(/წელი/.test(a))return a.replace(/წელი$/,"წლის წინ")},s:"რáƒáƒ›áƒ“ენიმე წáƒáƒ›áƒ˜",m:"წუთი",mm:"%d წუთი",h:"სáƒáƒáƒ—ი",hh:"%d სáƒáƒáƒ—ი",
|
||||
d:"დღე",dd:"%d დღე",M:"თვე",MM:"%d თვე",y:"წელი",yy:"%d წელი"},ordinal:function(a){return 0===a?a:1===a?a+"-ლი":20>a||100>=a&&0===a%20||0===a%100?"მე-"+a:a+"-ე"},week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){a.lang("ko",{months:"1ì›” 2ì›” 3ì›” 4ì›” 5ì›” 6ì›” 7ì›” 8ì›” 9ì›” 10ì›” 11ì›” 12ì›”".split(" "),monthsShort:"1ì›” 2ì›” 3ì›” 4ì›” 5ì›” 6ì›” 7ì›” 8ì›” 9ì›” 10ì›” 11ì›” 12ì›”".split(" "),weekdays:"ì¼ìš”ì¼;월요ì¼;화요ì¼;수요ì¼;목요ì¼;금요ì¼;í† ìš”ì¼".split(";"),
|
||||
weekdaysShort:"ì¼;ì›”;í™”;수;목;금;í† ".split(";"),weekdaysMin:"ì¼;ì›”;í™”;수;목;금;í† ".split(";"),longDateFormat:{LT:"A h시 mmë¶„",L:"YYYY.MM.DD",LL:"YYYYë…„ MMMM Dì¼",LLL:"YYYYë…„ MMMM Dì¼ LT",LLLL:"YYYYë…„ MMMM Dì¼ dddd LT"},meridiem:function(a){return 12>a?"ì˜¤ì „":"오후"},calendar:{sameDay:"오늘 LT",nextDay:"ë‚´ì¼ LT",nextWeek:"dddd LT",lastDay:"ì–´ì œ LT",lastWeek:"지난주 dddd LT",sameElse:"L"},relativeTime:{future:"%s 후",past:"%s ì „",s:"몇초",ss:"%dì´ˆ",m:"ì¼ë¶„",
|
||||
mm:"%dë¶„",h:"한시간",hh:"%d시간",d:"하루",dd:"%dì¼",M:"한달",MM:"%d달",y:"ì¼ë…„",yy:"%dë…„"},ordinal:"%dì¼"})});(function(a){a(i)})(function(a){function c(a,c,d){var e=a+" ";d=b[d].split("_");a=c?1===a%10&&11!==a?d[2]:d[3]:1===a%10&&11!==a?d[0]:d[1];return e+a}var b={mm:"minÅ«ti_minÅ«tes_minÅ«te_minÅ«tes",hh:"stundu_stundas_stunda_stundas",dd:"dienu_dienas_diena_dienas",MM:"mÄ“nesi_mÄ“neÅ¡us_mÄ“nesis_mÄ“neÅ¡i",yy:"gadu_gadus_gads_gadi"};a.lang("lv",{months:"janvÄris februÄris marts aprÄ«lis maijs jÅ«nijs jÅ«lijs augusts septembris oktobris novembris decembris".split(" "),
|
||||
monthsShort:"jan feb mar apr mai jūn jūl aug sep okt nov dec".split(" "),weekdays:"svētdiena pirmdiena otrdiena trešdiena ceturtdiena piektdiena sestdiena".split(" "),weekdaysShort:"Sv P O T C Pk S".split(" "),weekdaysMin:"Sv P O T C Pk S".split(" "),longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"YYYY. [gada] D. MMMM",LLL:"YYYY. [gada] D. MMMM, LT",LLLL:"YYYY. [gada] D. MMMM, dddd, LT"},calendar:{sameDay:"[Šodien pulksten] LT",nextDay:"[Rīt pulksten] LT",nextWeek:"dddd [pulksten] LT",lastDay:"[Vakar pulksten] LT",
|
||||
lastWeek:"[PagÄjuÅ¡Ä] dddd [pulksten] LT",sameElse:"L"},relativeTime:{future:"%s vÄ“lÄk",past:"%s agrÄk",s:"dažas sekundes",m:"minÅ«ti",mm:c,h:"stundu",hh:c,d:"dienu",dd:c,M:"mÄ“nesi",MM:c,y:"gadu",yy:c},ordinal:"%d.",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("ml",{months:"ജനàµà´µà´°à´¿ ഫെബàµà´°àµà´µà´°à´¿ മാർചàµà´šàµ à´à´ªàµà´°à´¿àµ½ മേയൠജൂൺ ജൂലൈ à´“à´—à´¸àµà´±àµà´±àµ സെപàµà´±àµà´±à´‚ബർ à´’à´•àµà´Ÿàµ‹à´¬àµ¼ നവംബർ ഡിസംബർ".split(" "),
|
||||
monthsShort:"ജനàµ. ഫെബàµà´°àµ. മാർ. à´à´ªàµà´°à´¿. മേയൠജൂൺ ജൂലൈ. à´“à´—. സെപàµà´±àµà´±. à´’à´•àµà´Ÿàµ‹. നവം. ഡിസം.".split(" "),weekdays:"ഞായറാഴàµà´š തിങàµà´•ളാഴàµà´š ചൊവàµà´µà´¾à´´àµà´š à´¬àµà´§à´¨à´¾à´´àµà´š à´µàµà´¯à´¾à´´à´¾à´´àµà´š വെളàµà´³à´¿à´¯à´¾à´´àµà´š ശനിയാഴàµà´š".split(" "),weekdaysShort:"ഞായർ തിങàµà´•ൾ ചൊവàµà´µ à´¬àµà´§àµ» à´µàµà´¯à´¾à´´à´‚ വെളàµà´³à´¿ ശനി".split(" "),
|
||||
weekdaysMin:"à´žà´¾ തി ചൊ ബൠവàµà´¯à´¾ വെ à´¶".split(" "),longDateFormat:{LT:"A h:mm -à´¨àµ",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[ഇനàµà´¨àµ] LT",nextDay:"[നാളെ] LT",nextWeek:"dddd, LT",lastDay:"[ഇനàµà´¨à´²àµ†] LT",lastWeek:"[à´•à´´à´¿à´žàµà´ž] dddd, LT",sameElse:"L"},relativeTime:{future:"%s à´•à´´à´¿à´žàµà´žàµ",past:"%s à´®àµàµ»à´ªàµ",s:"അൽപ നിമിഷങàµà´™àµ¾",m:"ഒരൠമിനിറàµà´±àµ",
|
||||
mm:"%d മിനിറàµà´±àµ",h:"ഒരൠമണികàµà´•ൂർ",hh:"%d മണികàµà´•ൂർ",d:"ഒരൠദിവസം",dd:"%d ദിവസം",M:"ഒരൠമാസം",MM:"%d മാസം",y:"ഒരൠവർഷം",yy:"%d വർഷം"},meridiem:function(a){return 4>a?"രാതàµà´°à´¿":12>a?"രാവിലെ":17>a?"ഉചàµà´š à´•à´´à´¿à´žàµà´žàµ":20>a?"വൈകàµà´¨àµà´¨àµ‡à´°à´‚":"രാതàµà´°à´¿"}})});(function(a){a(i)})(function(a){var c={1:"१",2:"२",3:"३",
|
||||
4:"४",5:"५",6:"६",7:"à¥",8:"८",9:"९","0":"०"},b={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","à¥":"7","८":"8","९":"9","०":"0"};a.lang("mr",{months:"जानेवारी फेबà¥à¤°à¥à¤µà¤¾à¤°à¥€ मारà¥à¤š à¤à¤ªà¥à¤°à¤¿à¤² मे जून जà¥à¤²à¥ˆ ऑगसà¥à¤Ÿ सपà¥à¤Ÿà¥‡à¤‚बर ऑकà¥à¤Ÿà¥‹à¤¬à¤° नोवà¥à¤¹à¥‡à¤‚बर डिसेंबर".split(" "),monthsShort:"जाने. फेबà¥à¤°à¥. मारà¥à¤š. à¤à¤ªà¥à¤°à¤¿. मे. जून. जà¥à¤²à¥ˆ. ऑग. सपà¥à¤Ÿà¥‡à¤‚. ऑकà¥à¤Ÿà¥‹. नोवà¥à¤¹à¥‡à¤‚. डिसें.".split(" "),
|
||||
weekdays:"रविवार सोमवार मंगळवार बà¥à¤§à¤µà¤¾à¤° गà¥à¤°à¥‚वार शà¥à¤•à¥à¤°à¤µà¤¾à¤° शनिवार".split(" "),weekdaysShort:"रवि सोम मंगळ बà¥à¤§ गà¥à¤°à¥‚ शà¥à¤•à¥à¤° शनि".split(" "),weekdaysMin:"र सो मं बॠगॠशॠश".split(" "),longDateFormat:{LT:"A h:mm वाजता",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[आज] LT",
|
||||
nextDay:"[उदà¥à¤¯à¤¾] LT",nextWeek:"dddd, LT",lastDay:"[काल] LT",lastWeek:"[मागील] dddd, LT",sameElse:"L"},relativeTime:{future:"%s नंतर",past:"%s पूरà¥à¤µà¥€",s:"सेकंद",m:"à¤à¤• मिनिट",mm:"%d मिनिटे",h:"à¤à¤• तास",hh:"%d तास",d:"à¤à¤• दिवस",dd:"%d दिवस",M:"à¤à¤• महिना",MM:"%d महिने",y:"à¤à¤• वरà¥à¤·",yy:"%d वरà¥à¤·à¥‡"},preparse:function(a){return a.replace(/[१२३४५६à¥à¥®à¥¯à¥¦]/g,
|
||||
function(a){return b[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return c[a]})},meridiem:function(a){return 4>a?"रातà¥à¤°à¥€":10>a?"सकाळी":17>a?"दà¥à¤ªà¤¾à¤°à¥€":20>a?"सायंकाळी":"रातà¥à¤°à¥€"},week:{dow:0,doy:6}})});(function(a){a(i)})(function(a){a.lang("ms-my",{months:"Januari Februari Mac April Mei Jun Julai Ogos September Oktober November Disember".split(" "),monthsShort:"Jan Feb Mac Apr Mei Jun Jul Ogs Sep Okt Nov Dis".split(" "),
|
||||
weekdays:"Ahad Isnin Selasa Rabu Khamis Jumaat Sabtu".split(" "),weekdaysShort:"Ahd Isn Sel Rab Kha Jum Sab".split(" "),weekdaysMin:"Ah Is Sl Rb Km Jm Sb".split(" "),longDateFormat:{LT:"HH.mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] LT",LLLL:"dddd, D MMMM YYYY [pukul] LT"},meridiem:function(a){return 11>a?"pagi":15>a?"tengahari":19>a?"petang":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Esok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kelmarin pukul] LT",lastWeek:"dddd [lepas pukul] LT",
|
||||
sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lepas",s:"beberapa saat",m:"seminit",mm:"%d minit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){a.lang("nb",{months:"januar februar mars april mai juni juli august september oktober november desember".split(" "),monthsShort:"jan. feb. mars april mai juni juli aug. sep. okt. nov. des.".split(" "),weekdays:"søndag mandag tirsdag onsdag torsdag fredag lørdag".split(" "),
|
||||
weekdaysShort:"sø. ma. ti. on. to. fr. lø.".split(" "),weekdaysMin:"sø ma ti on to fr lø".split(" "),longDateFormat:{LT:"H.mm",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] LT",LLLL:"dddd D. MMMM YYYY [kl.] LT"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[i går kl.] LT",lastWeek:"[forrige] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"for %s siden",s:"noen sekunder",m:"ett minutt",mm:"%d minutter",h:"en time",
|
||||
hh:"%d timer",d:"en dag",dd:"%d dager",M:"en mÃ¥ned",MM:"%d mÃ¥neder",y:"ett Ã¥r",yy:"%d Ã¥r"},ordinal:"%d.",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){var b={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"à¥",8:"८",9:"९","0":"०"},d={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","à¥":"7","८":"8","९":"9","०":"0"};a.lang("ne",{months:"जनवरी फेबà¥à¤°à¥à¤µà¤°à¥€ मारà¥à¤š अपà¥à¤°à¤¿à¤² मई जà¥à¤¨ जà¥à¤²à¤¾à¤ˆ अगषà¥à¤Ÿ सेपà¥à¤Ÿà¥‡à¤®à¥à¤¬à¤° अकà¥à¤Ÿà¥‹à¤¬à¤° नोà¤à¥‡à¤®à¥à¤¬à¤° डिसेमà¥à¤¬à¤°".split(" "),
|
||||
monthsShort:"जन. फेबà¥à¤°à¥. मारà¥à¤š अपà¥à¤°à¤¿. मई जà¥à¤¨ जà¥à¤²à¤¾à¤ˆ. अग. सेपà¥à¤Ÿ. अकà¥à¤Ÿà¥‹. नोà¤à¥‡. डिसे.".split(" "),weekdays:"आइतबार सोमबार मङà¥à¤—लबार बà¥à¤§à¤¬à¤¾à¤° बिहिबार शà¥à¤•à¥à¤°à¤¬à¤¾à¤° शनिबार".split(" "),weekdaysShort:"आइत. सोम. मङà¥à¤—ल. बà¥à¤§. बिहि. शà¥à¤•à¥à¤°. शनि.".split(" "),weekdaysMin:"आइ. सो. मङॠबà¥. बि. शà¥. श.".split(" "),
|
||||
longDateFormat:{LT:"Aको h:mm बजे",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},preparse:function(a){return a.replace(/[१२३४५६à¥à¥®à¥¯à¥¦]/g,function(a){return d[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]})},meridiem:function(a){return 3>a?"राती":10>a?"बिहान":15>a?"दिउà¤à¤¸à¥‹":18>a?"बेलà¥à¤•ा":20>a?"साà¤à¤":"राती"},calendar:{sameDay:"[आज] LT",nextDay:"[à¤à¥‹à¤²à¥€] LT",
|
||||
nextWeek:"[आउà¤à¤¦à¥‹] dddd[,] LT",lastDay:"[हिजो] LT",lastWeek:"[गà¤à¤•ो] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%sमा",past:"%s अगाडी",s:"केही समय",m:"à¤à¤• मिनेट",mm:"%d मिनेट",h:"à¤à¤• घणà¥à¤Ÿà¤¾",hh:"%d घणà¥à¤Ÿà¤¾",d:"à¤à¤• दिन",dd:"%d दिन",M:"à¤à¤• महिना",MM:"%d महिना",y:"à¤à¤• बरà¥à¤·",yy:"%d बरà¥à¤·"},week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){var b=
|
||||
"jan. feb. mrt. apr. mei jun. jul. aug. sep. okt. nov. dec.".split(" "),d="jan feb mrt apr mei jun jul aug sep okt nov dec".split(" ");a.lang("nl",{months:"januari februari maart april mei juni juli augustus september oktober november december".split(" "),monthsShort:function(a,e){return/-MMM-/.test(e)?d[a.month()]:b[a.month()]},weekdays:"zondag maandag dinsdag woensdag donderdag vrijdag zaterdag".split(" "),weekdaysShort:"zo. ma. di. wo. do. vr. za.".split(" "),weekdaysMin:"Zo Ma Di Wo Do Vr Za".split(" "),
|
||||
longDateFormat:{LT:"HH:mm",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[Vandaag om] LT",nextDay:"[Morgen om] LT",nextWeek:"dddd [om] LT",lastDay:"[Gisteren om] LT",lastWeek:"[afgelopen] dddd [om] LT",sameElse:"L"},relativeTime:{future:"over %s",past:"%s geleden",s:"een paar seconden",m:"één minuut",mm:"%d minuten",h:"één uur",hh:"%d uur",d:"één dag",dd:"%d dagen",M:"één maand",MM:"%d maanden",y:"één jaar",yy:"%d jaar"},ordinal:function(a){return a+
|
||||
(1===a||8===a||20<=a?"ste":"de")},week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("nn",{months:"januar februar mars april mai juni juli august september oktober november desember".split(" "),monthsShort:"jan feb mar apr mai jun jul aug sep okt nov des".split(" "),weekdays:"sundag måndag tysdag onsdag torsdag fredag laurdag".split(" "),weekdaysShort:"sun mån tys ons tor fre lau".split(" "),weekdaysMin:"su må ty on to fr lø".split(" "),longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY",
|
||||
LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[I dag klokka] LT",nextDay:"[I morgon klokka] LT",nextWeek:"dddd [klokka] LT",lastDay:"[I går klokka] LT",lastWeek:"[Føregående] dddd [klokka] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"for %s siden",s:"noen sekund",m:"ett minutt",mm:"%d minutt",h:"en time",hh:"%d timar",d:"en dag",dd:"%d dagar",M:"en månad",MM:"%d månader",y:"ett år",yy:"%d år"},ordinal:"%d.",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){function b(a){return 5>
|
||||
a%10&&1<a%10&&1!==~~(a/10)}function d(a,e,g){var f=a+" ";switch(g){case "m":return e?"minuta":"minutę";case "mm":return f+(b(a)?"minuty":"minut");case "h":return e?"godzina":"godzinę";case "hh":return f+(b(a)?"godziny":"godzin");case "MM":return f+(b(a)?"miesiące":"miesięcy");case "yy":return f+(b(a)?"lata":"lat")}}var e="styczeń luty marzec kwiecień maj czerwiec lipiec sierpień wrzesień październik listopad grudzień".split(" "),f="stycznia lutego marca kwietnia maja czerwca lipca sierpnia września października listopada grudnia".split(" ");
|
||||
a.lang("pl",{months:function(a,b){return/D MMMM/.test(b)?f[a.month()]:e[a.month()]},monthsShort:"sty lut mar kwi maj cze lip sie wrz paź lis gru".split(" "),weekdays:"niedziela poniedziałek wtorek środa czwartek piątek sobota".split(" "),weekdaysShort:"nie pon wt śr czw pt sb".split(" "),weekdaysMin:"N Pn Wt Śr Cz Pt So".split(" "),longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Dziś o] LT",nextDay:"[Jutro o] LT",
|
||||
nextWeek:"[W] dddd [o] LT",lastDay:"[Wczoraj o] LT",lastWeek:function(){switch(this.day()){case 0:return"[W zeszłą niedzielę o] LT";case 3:return"[W zeszłą środę o] LT";case 6:return"[W zeszłą sobotę o] LT";default:return"[W zeszły] dddd [o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"%s temu",s:"kilka sekund",m:d,mm:d,h:d,hh:d,d:"1 dzień",dd:"%d dni",M:"miesiąc",MM:d,y:"rok",yy:d},ordinal:"%d.",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("pt-br",{months:"Janeiro Fevereiro Março Abril Maio Junho Julho Agosto Setembro Outubro Novembro Dezembro".split(" "),
|
||||
monthsShort:"Jan Fev Mar Abr Mai Jun Jul Ago Set Out Nov Dez".split(" "),weekdays:"Domingo Segunda-feira Terça-feira Quarta-feira Quinta-feira Sexta-feira Sábado".split(" "),weekdaysShort:"Dom Seg Ter Qua Qui Sex Sáb".split(" "),weekdaysMin:"Dom 2ª 3ª 4ª 5ª 6ª Sáb".split(" "),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY LT",LLLL:"dddd, D [de] MMMM [de] YYYY LT"},calendar:{sameDay:"[Hoje à s] LT",nextDay:"[Amanhã à s] LT",nextWeek:"dddd [à s] LT",
|
||||
lastDay:"[Ontem à s] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[Último] dddd [à s] LT":"[Última] dddd [à s] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"%s atrás",s:"segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um mês",MM:"%d meses",y:"um ano",yy:"%d anos"},ordinal:"%dº"})});(function(a){a(i)})(function(a){a.lang("pt",{months:"Janeiro Fevereiro Março Abril Maio Junho Julho Agosto Setembro Outubro Novembro Dezembro".split(" "),
|
||||
monthsShort:"Jan Fev Mar Abr Mai Jun Jul Ago Set Out Nov Dez".split(" "),weekdays:"Domingo Segunda-feira Terça-feira Quarta-feira Quinta-feira Sexta-feira Sábado".split(" "),weekdaysShort:"Dom Seg Ter Qua Qui Sex Sáb".split(" "),weekdaysMin:"Dom 2ª 3ª 4ª 5ª 6ª Sáb".split(" "),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY LT",LLLL:"dddd, D [de] MMMM [de] YYYY LT"},calendar:{sameDay:"[Hoje à s] LT",nextDay:"[Amanhã à s] LT",nextWeek:"dddd [à s] LT",
|
||||
lastDay:"[Ontem à s] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[Último] dddd [à s] LT":"[Última] dddd [à s] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"%s atrás",s:"segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um mês",MM:"%d meses",y:"um ano",yy:"%d anos"},ordinal:"%dº",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("ro",{months:"Ianuarie Februarie Martie Aprilie Mai Iunie Iulie August Septembrie Octombrie Noiembrie Decembrie".split(" "),
|
||||
monthsShort:"Ian Feb Mar Apr Mai Iun Iul Aug Sep Oct Noi Dec".split(" "),weekdays:"Duminică Luni Marţi Miercuri Joi Vineri Sâmbătă".split(" "),weekdaysShort:"Dum Lun Mar Mie Joi Vin Sâm".split(" "),weekdaysMin:"Du Lu Ma Mi Jo Vi Sâ".split(" "),longDateFormat:{LT:"H:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[azi la] LT",nextDay:"[mâine la] LT",nextWeek:"dddd [la] LT",lastDay:"[ieri la] LT",lastWeek:"[fosta] dddd [la] LT",sameElse:"L"},
|
||||
relativeTime:{future:"peste %s",past:"%s în urmă",s:"câteva secunde",m:"un minut",mm:"%d minute",h:"o oră",hh:"%d ore",d:"o zi",dd:"%d zile",M:"o lună",MM:"%d luni",y:"un an",yy:"%d ani"},week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){function b(a,c,d){if("m"===d)return c?"минута":"минуту";c=a+" ";a=+a;d={mm:"минута_минуты_минут",hh:"чаÑ_чаÑа_чаÑов",dd:"день_днÑ_дней",MM:"меÑÑц_меÑÑца_меÑÑцев",yy:"год_года_лет"}[d].split("_");
|
||||
return c+(1===a%10&&11!==a%100?d[0]:2<=a%10&&4>=a%10&&(10>a%100||20<=a%100)?d[1]:d[2])}a.lang("ru",{months:function(a,b){return{nominative:"Ñнварь февраль март апрель май июнь июль авгуÑÑ‚ ÑентÑбрь октÑбрь ноÑбрь декабрь".split(" "),accusative:"ÑÐ½Ð²Ð°Ñ€Ñ Ñ„ÐµÐ²Ñ€Ð°Ð»Ñ Ð¼Ð°Ñ€Ñ‚Ð° Ð°Ð¿Ñ€ÐµÐ»Ñ Ð¼Ð°Ñ Ð¸ÑŽÐ½Ñ Ð¸ÑŽÐ»Ñ Ð°Ð²Ð³ÑƒÑта ÑентÑÐ±Ñ€Ñ Ð¾ÐºÑ‚ÑÐ±Ñ€Ñ Ð½Ð¾ÑÐ±Ñ€Ñ Ð´ÐµÐºÐ°Ð±Ñ€Ñ".split(" ")}[/D[oD]? *MMMM?/.test(b)?
|
||||
"accusative":"nominative"][a.month()]},monthsShort:function(a,b){return{nominative:"Ñнв фев мар апр май июнь июль авг Ñен окт Ð½Ð¾Ñ Ð´ÐµÐº".split(" "),accusative:"Ñнв фев мар апр Ð¼Ð°Ñ Ð¸ÑŽÐ½Ñ Ð¸ÑŽÐ»Ñ Ð°Ð²Ð³ Ñен окт Ð½Ð¾Ñ Ð´ÐµÐº".split(" ")}[/D[oD]? *MMMM?/.test(b)?"accusative":"nominative"][a.month()]},weekdays:function(a,b){return{nominative:"воÑкреÑенье понедельник вторник Ñреда четверг пÑтница Ñуббота".split(" "),
|
||||
accusative:"воÑкреÑенье понедельник вторник Ñреду четверг пÑтницу Ñубботу".split(" ")}[/\[ ?[Вв] ?(?:прошлую|Ñледующую)? ?\] ?dddd/.test(b)?"accusative":"nominative"][a.day()]},weekdaysShort:"вÑк пнд втр Ñрд чтв птн Ñбт".split(" "),weekdaysMin:"Ð²Ñ Ð¿Ð½ вт ÑÑ€ чт пт Ñб".split(" "),longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY г.",LLL:"D MMMM YYYY г., LT",LLLL:"dddd, D MMMM YYYY г., LT"},
|
||||
calendar:{sameDay:"[Ð¡ÐµÐ³Ð¾Ð´Ð½Ñ Ð²] LT",nextDay:"[Завтра в] LT",lastDay:"[Вчера в] LT",nextWeek:function(){return 2===this.day()?"[Во] dddd [в] LT":"[Ð’] dddd [в] LT"},lastWeek:function(){switch(this.day()){case 0:return"[Ð’ прошлое] dddd [в] LT";case 1:case 2:case 4:return"[Ð’ прошлый] dddd [в] LT";case 3:case 5:case 6:return"[Ð’ прошлую] dddd [в] LT"}},sameElse:"L"},relativeTime:{future:"через %s",past:"%s назад",s:"неÑколько Ñекунд",
|
||||
m:b,mm:b,h:"чаÑ",hh:b,d:"день",dd:b,M:"меÑÑц",MM:b,y:"год",yy:b},ordinal:function(a,b){switch(b){case "M":case "d":case "DDD":return a+"-й";case "D":return a+"-го";case "w":case "W":return a+"-Ñ";default:return a}},week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){function b(a,c,d,e){var f=a+" ";switch(d){case "s":return c||e?"pár sekúnd":"pár sekundami";case "m":return c?"minúta":e?"minútu":"minútou";case "mm":return c||e?f+(1<a&&5>a?"minúty":"minút"):f+"minútami";
|
||||
case "h":return c?"hodina":e?"hodinu":"hodinou";case "hh":return c||e?f+(1<a&&5>a?"hodiny":"hodÃn"):f+"hodinami";case "d":return c||e?"deň":"dňom";case "dd":return c||e?f+(1<a&&5>a?"dni":"dnÃ"):f+"dňami";case "M":return c||e?"mesiac":"mesiacom";case "MM":return c||e?f+(1<a&&5>a?"mesiace":"mesiacov"):f+"mesiacmi";case "y":return c||e?"rok":"rokom";case "yy":return c||e?f+(1<a&&5>a?"roky":"rokov"):f+"rokmi"}}var d="január február marec aprÃl máj jún júl august september október november december".split(" "),
|
||||
e="jan feb mar apr máj jún júl aug sep okt nov dec".split(" ");a.lang("sk",{months:d,monthsShort:e,monthsParse:function(a,b){var c,d=[];for(c=0;12>c;c++)d[c]=RegExp("^"+a[c]+"$|^"+b[c]+"$","i");return d}(d,e),weekdays:"nedeľa pondelok utorok streda štvrtok piatok sobota".split(" "),weekdaysShort:"ne po ut st št pi so".split(" "),weekdaysMin:"ne po ut st št pi so".split(" "),longDateFormat:{LT:"H:mm",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd D. MMMM YYYY LT"},calendar:{sameDay:"[dnes o] LT",
|
||||
nextDay:"[zajtra o] LT",nextWeek:function(){switch(this.day()){case 0:return"[v nedeľu o] LT";case 1:case 2:return"[v] dddd [o] LT";case 3:return"[v stredu o] LT";case 4:return"[vo Å¡tvrtok o] LT";case 5:return"[v piatok o] LT";case 6:return"[v sobotu o] LT"}},lastDay:"[vÄera o] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulú nedeľu o] LT";case 1:case 2:return"[minulý] dddd [o] LT";case 3:return"[minulú stredu o] LT";case 4:case 5:return"[minulý] dddd [o] LT";case 6:return"[minulú sobotu o] LT"}},
|
||||
sameElse:"L"},relativeTime:{future:"za %s",past:"pred %s",s:b,m:b,mm:b,h:b,hh:b,d:b,dd:b,M:b,MM:b,y:b,yy:b},ordinal:"%d.",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){function b(a,c,d){var e=a+" ";switch(d){case "m":return c?"ena minuta":"eno minuto";case "mm":return 1===a?e+"minuta":2===a?e+"minuti":3===a||4===a?e+"minute":e+"minut";case "h":return c?"ena ura":"eno uro";case "hh":return 1===a?e+"ura":2===a?e+"uri":3===a||4===a?e+"ure":e+"ur";case "dd":return 1===a?e+"dan":e+"dni";case "MM":return 1===
|
||||
a?e+"mesec":2===a?e+"meseca":3===a||4===a?e+"mesece":e+"mesecev";case "yy":return 1===a?e+"leto":2===a?e+"leti":3===a||4===a?e+"leta":e+"let"}}a.lang("sl",{months:"januar februar marec april maj junij julij avgust september oktober november december".split(" "),monthsShort:"jan. feb. mar. apr. maj. jun. jul. avg. sep. okt. nov. dec.".split(" "),weekdays:"nedelja ponedeljek torek sreda Äetrtek petek sobota".split(" "),weekdaysShort:"ned. pon. tor. sre. Äet. pet. sob.".split(" "),weekdaysMin:"ne po to sr Äe pe so".split(" "),
|
||||
longDateFormat:{LT:"H:mm",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[danes ob] LT",nextDay:"[jutri ob] LT",nextWeek:function(){switch(this.day()){case 0:return"[v] [nedeljo] [ob] LT";case 3:return"[v] [sredo] [ob] LT";case 6:return"[v] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[v] dddd [ob] LT"}},lastDay:"[vÄeraj ob] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[prejÅ¡nja] dddd [ob] LT";case 1:case 2:case 4:case 5:return"[prejÅ¡nji] dddd [ob] LT"}},
|
||||
sameElse:"L"},relativeTime:{future:"Äez %s",past:"%s nazaj",s:"nekaj sekund",m:b,mm:b,h:b,hh:b,d:"en dan",dd:b,M:"en mesec",MM:b,y:"eno leto",yy:b},ordinal:"%d.",week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){a.lang("sq",{months:"Janar Shkurt Mars Prill Maj Qershor Korrik Gusht Shtator Tetor Nëntor Dhjetor".split(" "),monthsShort:"Jan Shk Mar Pri Maj Qer Kor Gus Sht Tet Nën Dhj".split(" "),weekdays:"E Diel;E Hënë;E Marte;E Mërkure;E Enjte;E Premte;E Shtunë".split(";"),weekdaysShort:"Die Hën Mar Mër Enj Pre Sht".split(" "),
|
||||
weekdaysMin:"D H Ma Më E P Sh".split(" "),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Sot në] LT",nextDay:"[Neser në] LT",nextWeek:"dddd [në] LT",lastDay:"[Dje në] LT",lastWeek:"dddd [e kaluar në] LT",sameElse:"L"},relativeTime:{future:"në %s",past:"%s me parë",s:"disa seconda",m:"një minut",mm:"%d minutea",h:"një orë",hh:"%d orë",d:"një ditë",dd:"%d ditë",M:"një muaj",MM:"%d muaj",y:"një vit",yy:"%d vite"},
|
||||
ordinal:"%d.",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("sv",{months:"januari februari mars april maj juni juli augusti september oktober november december".split(" "),monthsShort:"jan feb mar apr maj jun jul aug sep okt nov dec".split(" "),weekdays:"söndag måndag tisdag onsdag torsdag fredag lördag".split(" "),weekdaysShort:"sön mån tis ons tor fre lör".split(" "),weekdaysMin:"sö må ti on to fr lö".split(" "),longDateFormat:{LT:"HH:mm",L:"YYYY-MM-DD",LL:"D MMMM YYYY",
|
||||
LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[Idag] LT",nextDay:"[Imorgon] LT",lastDay:"[Igår] LT",nextWeek:"dddd LT",lastWeek:"[Förra] dddd[en] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"för %s sedan",s:"några sekunder",m:"en minut",mm:"%d minuter",h:"en timme",hh:"%d timmar",d:"en dag",dd:"%d dagar",M:"en månad",MM:"%d månader",y:"ett år",yy:"%d år"},ordinal:function(a){var b=a%10;return a+(1===~~(a%100/10)?"e":1===b?"a":2===b?"a":"e")},week:{dow:1,doy:4}})});
|
||||
(function(a){a(i)})(function(a){a.lang("th",{months:"มà¸à¸£à¸²à¸„ม;à¸à¸¸à¸¡à¸ าพันธ์;มีนาคม;เมษายน;พฤษภาคม;มิถุนายน;à¸à¸£à¸à¸Žà¸²à¸„ม;สิงหาคม;à¸à¸±à¸™à¸¢à¸²à¸¢à¸™;ตุลาคม;พฤศจิà¸à¸²à¸¢à¸™;ธันวาคม".split(";"),monthsShort:"มà¸à¸£à¸²;à¸à¸¸à¸¡à¸ า;มีนา;เมษา;พฤษภา;มิถุนา;à¸à¸£à¸à¸Žà¸²;สิงหา;à¸à¸±à¸™à¸¢à¸²;ตุลา;พฤศจิà¸à¸²;ธันวา".split(";"),
|
||||
weekdays:"à¸à¸²à¸—ิตย์ จันทร์ à¸à¸±à¸‡à¸„าร พุธ พฤหัสบดี ศุà¸à¸£à¹Œ เสาร์".split(" "),weekdaysShort:"à¸à¸²à¸—ิตย์ จันทร์ à¸à¸±à¸‡à¸„าร พุธ พฤหัส ศุà¸à¸£à¹Œ เสาร์".split(" "),weekdaysMin:"à¸à¸². จ. à¸. พ. พฤ. ศ. ส.".split(" "),longDateFormat:{LT:"H นาฬิà¸à¸² m นาที",L:"YYYY/MM/DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY เวลา LT",LLLL:"วันddddที่ D MMMM YYYY เวลา LT"},
|
||||
meridiem:function(a){return 12>a?"à¸à¹ˆà¸à¸™à¹€à¸—ี่ยง":"หลังเที่ยง"},calendar:{sameDay:"[วันนี้ เวลา] LT",nextDay:"[พรุ่งนี้ เวลา] LT",nextWeek:"dddd[หน้า เวลา] LT",lastDay:"[เมื่à¸à¸§à¸²à¸™à¸™à¸µà¹‰ เวลา] LT",lastWeek:"[วัน]dddd[ที่à¹à¸¥à¹‰à¸§ เวลา] LT",sameElse:"L"},relativeTime:{future:"à¸à¸µà¸ %s",past:"%sที่à¹à¸¥à¹‰à¸§",s:"ไม่à¸à¸µà¹ˆà¸§à¸´à¸™à¸²à¸—ี",
|
||||
m:"1 นาที",mm:"%d นาที",h:"1 ชั่วโมง",hh:"%d ชั่วโมง",d:"1 วัน",dd:"%d วัน",M:"1 เดืà¸à¸™",MM:"%d เดืà¸à¸™",y:"1 ปี",yy:"%d ปี"}})});(function(a){a(i)})(function(a){var b={1:"'inci",5:"'inci",8:"'inci",70:"'inci",80:"'inci",2:"'nci",7:"'nci",20:"'nci",50:"'nci",3:"'üncü",4:"'üncü",100:"'üncü",6:"'ncı",9:"'uncu",10:"'uncu",30:"'uncu",60:"'ıncı",90:"'ıncı"};a.lang("tr",{months:"Ocak Åžubat Mart Nisan Mayıs Haziran Temmuz AÄŸustos Eylül Ekim Kasım Aralık".split(" "),
|
||||
monthsShort:"Oca Şub Mar Nis May Haz Tem Ağu Eyl Eki Kas Ara".split(" "),weekdays:"Pazar Pazartesi Salı Çarşamba Perşembe Cuma Cumartesi".split(" "),weekdaysShort:"Paz Pts Sal Çar Per Cum Cts".split(" "),weekdaysMin:"Pz Pt Sa Ça Pe Cu Ct".split(" "),longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[bugün saat] LT",nextDay:"[yarın saat] LT",nextWeek:"[haftaya] dddd [saat] LT",lastDay:"[dün] LT",lastWeek:"[geçen hafta] dddd [saat] LT",
|
||||
sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s önce",s:"birkaç saniye",m:"bir dakika",mm:"%d dakika",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir yıl",yy:"%d yıl"},ordinal:function(a){if(0===a)return a+"'ıncı";var d=a%10;return a+(b[d]||b[a%100-d]||b[100<=a?100:null])},week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){a.lang("tzm-la",{months:"innayr brˤayrˤ marˤsˤ ibrir mayyw ywnyw ywlywz ɣwšt šwtanbir ktˤwbrˤ nwwanbir dwjnbir".split(" "),
|
||||
monthsShort:"innayr brˤayrˤ marˤsˤ ibrir mayyw ywnyw ywlywz É£wÅ¡t Å¡wtanbir ktˤwbrˤ nwwanbir dwjnbir".split(" "),weekdays:"asamas aynas asinas akras akwas asimwas asiá¸yas".split(" "),weekdaysShort:"asamas aynas asinas akras akwas asimwas asiá¸yas".split(" "),weekdaysMin:"asamas aynas asinas akras akwas asimwas asiá¸yas".split(" "),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[asdkh g] LT",nextDay:"[aska g] LT",
|
||||
nextWeek:"dddd [g] LT",lastDay:"[assant g] LT",lastWeek:"dddd [g] LT",sameElse:"L"},relativeTime:{future:"dadkh s yan %s",past:"yan %s",s:"imik",m:"minuá¸",mm:"%d minuá¸",h:"saÉ›a",hh:"%d tassaÉ›in",d:"ass",dd:"%d ossan",M:"ayowr",MM:"%d iyyirn",y:"asgas",yy:"%d isgasn"},week:{dow:6,doy:12}})});(function(a){a(i)})(function(a){a.lang("tzm",{months:"ⵉâµâµâ´°âµ¢âµ” ⴱⵕⴰⵢⵕ ⵎⴰⵕⵚ ⵉⴱⵔⵉⵔ ⵎⴰⵢⵢⵓ ⵢⵓâµâµ¢âµ“ ⵢⵓâµâµ¢âµ“âµ£ ⵖⵓⵛⵜ ⵛⵓⵜⴰâµâ´±âµ‰âµ” ⴽⵟⵓⴱⵕ âµâµ“ⵡⴰâµâ´±âµ‰âµ” ⴷⵓⵊâµâ´±âµ‰âµ”".split(" "),
|
||||
monthsShort:"ⵉâµâµâ´°âµ¢âµ” ⴱⵕⴰⵢⵕ ⵎⴰⵕⵚ ⵉⴱⵔⵉⵔ ⵎⴰⵢⵢⵓ ⵢⵓâµâµ¢âµ“ ⵢⵓâµâµ¢âµ“âµ£ ⵖⵓⵛⵜ ⵛⵓⵜⴰâµâ´±âµ‰âµ” ⴽⵟⵓⴱⵕ âµâµ“ⵡⴰâµâ´±âµ‰âµ” ⴷⵓⵊâµâ´±âµ‰âµ”".split(" "),weekdays:"ⴰⵙⴰⵎⴰⵙ â´°âµ¢âµâ´°âµ™ ⴰⵙⵉâµâ´°âµ™ ⴰⴽⵔⴰⵙ ⴰⴽⵡⴰⵙ ⴰⵙⵉⵎⵡⴰⵙ ⴰⵙⵉⴹⵢⴰⵙ".split(" "),weekdaysShort:"ⴰⵙⴰⵎⴰⵙ â´°âµ¢âµâ´°âµ™ ⴰⵙⵉâµâ´°âµ™ ⴰⴽⵔⴰⵙ ⴰⴽⵡⴰⵙ ⴰⵙⵉⵎⵡⴰⵙ ⴰⵙⵉⴹⵢⴰⵙ".split(" "),
|
||||
weekdaysMin:"ⴰⵙⴰⵎⴰⵙ â´°âµ¢âµâ´°âµ™ ⴰⵙⵉâµâ´°âµ™ ⴰⴽⵔⴰⵙ ⴰⴽⵡⴰⵙ ⴰⵙⵉⵎⵡⴰⵙ ⴰⵙⵉⴹⵢⴰⵙ".split(" "),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[ⴰⵙⴷⵅ â´´] LT",nextDay:"[ⴰⵙⴽⴰ â´´] LT",nextWeek:"dddd [â´´] LT",lastDay:"[ⴰⵚⴰâµâµœ â´´] LT",lastWeek:"dddd [â´´] LT",sameElse:"L"},relativeTime:{future:"â´·â´°â´·âµ… âµ™ ⵢⴰⵠ%s",past:"ⵢⴰⵠ%s",
|
||||
s:"ⵉⵎⵉⴽ",m:"ⵎⵉâµâµ“â´º",mm:"%d ⵎⵉâµâµ“â´º",h:"ⵙⴰⵄⴰ",hh:"%d ⵜⴰⵙⵙⴰⵄⵉâµ",d:"ⴰⵙⵙ",dd:"%d oⵙⵙⴰâµ",M:"â´°âµ¢oⵓⵔ",MM:"%d ⵉⵢⵢⵉⵔâµ",y:"ⴰⵙⴳⴰⵙ",yy:"%d ⵉⵙⴳⴰⵙâµ"},week:{dow:6,doy:12}})});(function(a){a(i)})(function(a){function b(a,c,d){if("m"===d)return c?"хвилина":"хвилину";if("h"===d)return c?"година":"годину";c=a+" ";a=+a;d={mm:"хвилина_хвилини_хвилин",hh:"година_години_годин",
|
||||
dd:"день_дні_днів",MM:"міÑÑць_міÑÑці_міÑÑців",yy:"рік_роки_років"}[d].split("_");return c+(1===a%10&&11!==a%100?d[0]:2<=a%10&&4>=a%10&&(10>a%100||20<=a%100)?d[1]:d[2])}function d(a){return function(){return a+"о"+(11===this.hours()?"б":"")+"] LT"}}a.lang("uk",{months:function(a,b){return{nominative:"Ñічень лютий березень квітень травень червень липень Ñерпень вереÑень жовтень лиÑтопад грудень".split(" "),
|
||||
accusative:"ÑÑ–Ñ‡Ð½Ñ Ð»ÑŽÑ‚Ð¾Ð³Ð¾ Ð±ÐµÑ€ÐµÐ·Ð½Ñ ÐºÐ²Ñ–Ñ‚Ð½Ñ Ñ‚Ñ€Ð°Ð²Ð½Ñ Ñ‡ÐµÑ€Ð²Ð½Ñ Ð»Ð¸Ð¿Ð½Ñ ÑÐµÑ€Ð¿Ð½Ñ Ð²ÐµÑ€ÐµÑÐ½Ñ Ð¶Ð¾Ð²Ñ‚Ð½Ñ Ð»Ð¸Ñтопада груднÑ".split(" ")}[/D[oD]? *MMMM?/.test(b)?"accusative":"nominative"][a.month()]},monthsShort:"Ñіч лют бер квіт трав черв лип Ñерп вер жовт лиÑÑ‚ груд".split(" "),weekdays:function(a,b){return{nominative:"Ð½ÐµÐ´Ñ–Ð»Ñ Ð¿Ð¾Ð½ÐµÐ´Ñ–Ð»Ð¾Ðº вівторок Ñереда четвер п’ÑÑ‚Ð½Ð¸Ñ†Ñ Ñубота".split(" "),
|
||||
accusative:"неділю понеділок вівторок Ñереду четвер п’Ñтницю Ñуботу".split(" "),genitive:"неділі понеділка вівторка Ñереди четверга п’Ñтниці Ñуботи".split(" ")}[/(\[[ВвУу]\]) ?dddd/.test(b)?"accusative":/\[?(?:минулої|наÑтупної)? ?\] ?dddd/.test(b)?"genitive":"nominative"][a.day()]},weekdaysShort:"нед пон вів Ñер чет п’ÑÑ‚ Ñуб".split(" "),weekdaysMin:"нд пн вт ÑÑ€ чт пт Ñб".split(" "),
|
||||
longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY Ñ€.",LLL:"D MMMM YYYY Ñ€., LT",LLLL:"dddd, D MMMM YYYY Ñ€., LT"},calendar:{sameDay:d("[Сьогодні "),nextDay:d("[Завтра "),lastDay:d("[Вчора "),nextWeek:d("[У] dddd ["),lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return d("[Минулої] dddd [").call(this);case 1:case 2:case 4:return d("[Минулого] dddd [").call(this)}},sameElse:"L"},relativeTime:{future:"за %s",past:"%s тому",s:"декілька Ñекунд",
|
||||
m:b,mm:b,h:"годину",hh:b,d:"день",dd:b,M:"міÑÑць",MM:b,y:"рік",yy:b},ordinal:function(a,b){switch(b){case "M":case "d":case "DDD":case "w":case "W":return a+"-й";case "D":return a+"-го";default:return a}},week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){a.lang("zh-cn",{months:"一月 二月 三月 四月 五月 å…æœˆ 七月 八月 乿œˆ åæœˆ å一月 å二月".split(" "),monthsShort:"1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月".split(" "),weekdays:"星期日 星期一 星期二 星期三 星期四 星期五 星期å…".split(" "),
|
||||
weekdaysShort:"周日 周一 周二 周三 周四 周五 周å…".split(" "),weekdaysMin:"æ—¥ 一 二 三 å›› 五 å…".split(" "),longDateFormat:{LT:"Ah点mm",L:"YYYYå¹´MMMDæ—¥",LL:"YYYYå¹´MMMDæ—¥",LLL:"YYYYå¹´MMMDæ—¥LT",LLLL:"YYYYå¹´MMMDæ—¥ddddLT",l:"YYYYå¹´MMMDæ—¥",ll:"YYYYå¹´MMMDæ—¥",lll:"YYYYå¹´MMMDæ—¥LT",llll:"YYYYå¹´MMMDæ—¥ddddLT"},meridiem:function(a,b){return 9>a?"早上":11>a&&30>b?"上åˆ":13>a&&30>b?"ä¸åˆ":18>a?"下åˆ":"晚上"},calendar:{sameDay:"[今天]LT",nextDay:"[明天]LT",nextWeek:"[下]ddddLT",
|
||||
lastDay:"[昨天]LT",lastWeek:"[上]ddddLT",sameElse:"L"},ordinal:function(a,b){switch(b){case "d":case "D":case "DDD":return a+"æ—¥";case "M":return a+"月";case "w":case "W":return a+"周";default:return a}},relativeTime:{future:"%s内",past:"%så‰",s:"å‡ ç§’",m:"1分钟",mm:"%d分钟",h:"1å°æ—¶",hh:"%då°æ—¶",d:"1天",dd:"%d天",M:"1个月",MM:"%d个月",y:"1å¹´",yy:"%då¹´"}})});(function(a){a(i)})(function(a){a.lang("zh-tw",{months:"一月 二月 三月 四月 五月 å…æœˆ 七月 八月 乿œˆ åæœˆ å一月 å二月".split(" "),
|
||||
monthsShort:"1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月".split(" "),weekdays:"星期日 星期一 星期二 星期三 星期四 星期五 星期å…".split(" "),weekdaysShort:"週日 週一 週二 週三 週四 週五 週å…".split(" "),weekdaysMin:"æ—¥ 一 二 三 å›› 五 å…".split(" "),longDateFormat:{LT:"Ah點mm",L:"YYYYå¹´MMMDæ—¥",LL:"YYYYå¹´MMMDæ—¥",LLL:"YYYYå¹´MMMDæ—¥LT",LLLL:"YYYYå¹´MMMDæ—¥ddddLT",l:"YYYYå¹´MMMDæ—¥",ll:"YYYYå¹´MMMDæ—¥",lll:"YYYYå¹´MMMDæ—¥LT",llll:"YYYYå¹´MMMDæ—¥ddddLT"},
|
||||
meridiem:function(a,b){return 9>a?"早上":11>a&&30>b?"上åˆ":13>a&&30>b?"ä¸åˆ":18>a?"下åˆ":"晚上"},calendar:{sameDay:"[今天]LT",nextDay:"[明天]LT",nextWeek:"[下]ddddLT",lastDay:"[昨天]LT",lastWeek:"[上]ddddLT",sameElse:"L"},ordinal:function(a,b){switch(b){case "d":case "D":case "DDD":return a+"æ—¥";case "M":return a+"月";case "w":case "W":return a+"週";default:return a}},relativeTime:{future:"%så…§",past:"%så‰",s:"幾秒",m:"一分é˜",mm:"%d分é˜",h:"䏀尿™‚",hh:"%då°æ™‚",d:"一天",
|
||||
dd:"%d天",M:"一個月",MM:"%d個月",y:"一年",yy:"%d年"}})});i.lang("en");N&&(module.exports=i);"undefined"===typeof ender&&(this.moment=i);"function"===typeof define&&define.amd&&define("moment",[],function(){return i})}).call(this);
|
||||
var LZString={_keyStr:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",_f:String.fromCharCode,compressToBase64:function(e){if(null==e)return"";for(var b="",d,h,f,r,l,p,j=0,e=this.compress(e);j<2*e.length;)0==j%2?(d=e.charCodeAt(j/2)>>8,h=e.charCodeAt(j/2)&255,f=j/2+1<e.length?e.charCodeAt(j/2+1)>>8:NaN):(d=e.charCodeAt((j-1)/2)&255,(j+1)/2<e.length?(h=e.charCodeAt((j+1)/2)>>8,f=e.charCodeAt((j+1)/2)&255):h=f=NaN),j+=3,r=d>>2,d=(d&3)<<4|h>>4,l=(h&15)<<2|f>>6,p=f&63,isNaN(h)?l=p=
|
||||
64:isNaN(f)&&(p=64),b=b+this._keyStr.charAt(r)+this._keyStr.charAt(d)+this._keyStr.charAt(l)+this._keyStr.charAt(p);return b},decompressFromBase64:function(e){if(null==e)return"";for(var b="",d=0,h,f,r,l,p,j,s=0,o=this._f,e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");s<e.length;)f=this._keyStr.indexOf(e.charAt(s++)),r=this._keyStr.indexOf(e.charAt(s++)),p=this._keyStr.indexOf(e.charAt(s++)),j=this._keyStr.indexOf(e.charAt(s++)),f=f<<2|r>>4,r=(r&15)<<4|p>>2,l=(p&3)<<6|j,0==d%2?(h=f<<8,64!=p&&(b+=o(h|r)),64!=
|
||||
j&&(h=l<<8)):(b+=o(h|f),64!=p&&(h=r<<8),64!=j&&(b+=o(h|l))),d+=3;return this.decompress(b)},compressToUTF16:function(e){if(null==e)return"";var b="",d,h,f,r=0,l=this._f,e=this.compress(e);for(d=0;d<e.length;d++)switch(h=e.charCodeAt(d),r++){case 0:b+=l((h>>1)+32);f=(h&1)<<14;break;case 1:b+=l(f+(h>>2)+32);f=(h&3)<<13;break;case 2:b+=l(f+(h>>3)+32);f=(h&7)<<12;break;case 3:b+=l(f+(h>>4)+32);f=(h&15)<<11;break;case 4:b+=l(f+(h>>5)+32);f=(h&31)<<10;break;case 5:b+=l(f+(h>>6)+32);f=(h&63)<<9;break;case 6:b+=
|
||||
l(f+(h>>7)+32);f=(h&127)<<8;break;case 7:b+=l(f+(h>>8)+32);f=(h&255)<<7;break;case 8:b+=l(f+(h>>9)+32);f=(h&511)<<6;break;case 9:b+=l(f+(h>>10)+32);f=(h&1023)<<5;break;case 10:b+=l(f+(h>>11)+32);f=(h&2047)<<4;break;case 11:b+=l(f+(h>>12)+32);f=(h&4095)<<3;break;case 12:b+=l(f+(h>>13)+32);f=(h&8191)<<2;break;case 13:b+=l(f+(h>>14)+32);f=(h&16383)<<1;break;case 14:b+=l(f+(h>>15)+32,(h&32767)+32),r=0}return b+l(f+32)},decompressFromUTF16:function(e){if(null==e)return"";for(var b="",d,h,f=0,r=0,l=this._f;r<
|
||||
e.length;){h=e.charCodeAt(r)-32;switch(f++){case 0:d=h<<1;break;case 1:b+=l(d|h>>14);d=(h&16383)<<2;break;case 2:b+=l(d|h>>13);d=(h&8191)<<3;break;case 3:b+=l(d|h>>12);d=(h&4095)<<4;break;case 4:b+=l(d|h>>11);d=(h&2047)<<5;break;case 5:b+=l(d|h>>10);d=(h&1023)<<6;break;case 6:b+=l(d|h>>9);d=(h&511)<<7;break;case 7:b+=l(d|h>>8);d=(h&255)<<8;break;case 8:b+=l(d|h>>7);d=(h&127)<<9;break;case 9:b+=l(d|h>>6);d=(h&63)<<10;break;case 10:b+=l(d|h>>5);d=(h&31)<<11;break;case 11:b+=l(d|h>>4);d=(h&15)<<12;break;
|
||||
case 12:b+=l(d|h>>3);d=(h&7)<<13;break;case 13:b+=l(d|h>>2);d=(h&3)<<14;break;case 14:b+=l(d|h>>1);d=(h&1)<<15;break;case 15:b+=l(d|h),f=0}r++}return this.decompress(b)},compress:function(e){if(null==e)return"";var b,d,h={},f={},r="",l="",p="",j=2,s=3,o=2,q="",n=0,m=0,t,u=this._f;for(t=0;t<e.length;t+=1)if(r=e.charAt(t),Object.prototype.hasOwnProperty.call(h,r)||(h[r]=s++,f[r]=!0),l=p+r,Object.prototype.hasOwnProperty.call(h,l))p=l;else{if(Object.prototype.hasOwnProperty.call(f,p)){if(256>p.charCodeAt(0)){for(b=
|
||||
0;b<o;b++)n<<=1,15==m?(m=0,q+=u(n),n=0):m++;d=p.charCodeAt(0);for(b=0;8>b;b++)n=n<<1|d&1,15==m?(m=0,q+=u(n),n=0):m++,d>>=1}else{d=1;for(b=0;b<o;b++)n=n<<1|d,15==m?(m=0,q+=u(n),n=0):m++,d=0;d=p.charCodeAt(0);for(b=0;16>b;b++)n=n<<1|d&1,15==m?(m=0,q+=u(n),n=0):m++,d>>=1}j--;0==j&&(j=Math.pow(2,o),o++);delete f[p]}else{d=h[p];for(b=0;b<o;b++)n=n<<1|d&1,15==m?(m=0,q+=u(n),n=0):m++,d>>=1}j--;0==j&&(j=Math.pow(2,o),o++);h[l]=s++;p=""+r}if(""!==p){if(Object.prototype.hasOwnProperty.call(f,p)){if(256>p.charCodeAt(0)){for(b=
|
||||
0;b<o;b++)n<<=1,15==m?(m=0,q+=u(n),n=0):m++;d=p.charCodeAt(0);for(b=0;8>b;b++)n=n<<1|d&1,15==m?(m=0,q+=u(n),n=0):m++,d>>=1}else{d=1;for(b=0;b<o;b++)n=n<<1|d,15==m?(m=0,q+=u(n),n=0):m++,d=0;d=p.charCodeAt(0);for(b=0;16>b;b++)n=n<<1|d&1,15==m?(m=0,q+=u(n),n=0):m++,d>>=1}j--;0==j&&(j=Math.pow(2,o),o++);delete f[p]}else{d=h[p];for(b=0;b<o;b++)n=n<<1|d&1,15==m?(m=0,q+=u(n),n=0):m++,d>>=1}j--;0==j&&(Math.pow(2,o),o++)}d=2;for(b=0;b<o;b++)n=n<<1|d&1,15==m?(m=0,q+=u(n),n=0):m++,d>>=1;for(;;)if(n<<=1,15==
|
||||
m){q+=u(n);break}else m++;return q},decompress:function(e){if(null==e)return"";for(var b=[],d=4,h=4,f=3,r="",l="",p,j,s,o,q,n=this._f,m=e.charCodeAt(0),t=32768,u=1,l=0;3>l;l+=1)b[l]=l;r=0;s=Math.pow(2,2);for(o=1;o!=s;)j=m&t,t>>=1,0==t&&(t=32768,m=e.charCodeAt(u++)),r|=(0<j?1:0)*o,o<<=1;switch(r){case 0:r=0;s=Math.pow(2,8);for(o=1;o!=s;)j=m&t,t>>=1,0==t&&(t=32768,m=e.charCodeAt(u++)),r|=(0<j?1:0)*o,o<<=1;q=n(r);break;case 1:r=0;s=Math.pow(2,16);for(o=1;o!=s;)j=m&t,t>>=1,0==t&&(t=32768,m=e.charCodeAt(u++)),
|
||||
r|=(0<j?1:0)*o,o<<=1;q=n(r);break;case 2:return""}for(p=l=b[3]=q;;){r=0;s=Math.pow(2,f);for(o=1;o!=s;)j=m&t,t>>=1,0==t&&(t=32768,m=e.charCodeAt(u++)),r|=(0<j?1:0)*o,o<<=1;switch(q=r){case 0:r=0;s=Math.pow(2,8);for(o=1;o!=s;)j=m&t,t>>=1,0==t&&(t=32768,m=e.charCodeAt(u++)),r|=(0<j?1:0)*o,o<<=1;b[h++]=n(r);q=h-1;d--;break;case 1:r=0;s=Math.pow(2,16);for(o=1;o!=s;)j=m&t,t>>=1,0==t&&(t=32768,m=e.charCodeAt(u++)),r|=(0<j?1:0)*o,o<<=1;b[h++]=n(r);q=h-1;d--;break;case 2:return l}0==d&&(d=Math.pow(2,f),f++);
|
||||
__whitespace={" ":!0,"\t":!0,"\n":!0,"":!0,"\r":!0};
|
||||
difflib={defaultJunkFunction:function(e){return e in __whitespace},stripLinebreaks:function(e){return e.replace(/^[\n\r]*|[\n\r]*$/g,"")},stringAsLines:function(e){for(var b=e.indexOf("\n"),d=e.indexOf("\r"),e=e.split(-1<b&&-1<d||0>d?"\n":"\r"),b=0;b<e.length;b++)e[b]=difflib.stripLinebreaks(e[b]);return e},__reduce:function(e,b,d){if(null!=d)var h=0;else if(b)d=b[0],h=1;else return null;for(;h<b.length;h++)d=e(d,b[h]);return d},__ntuplecomp:function(e,b){for(var d=Math.max(e.length,b.length),h=0;h<
|
||||
d;h++){if(e[h]<b[h])return-1;if(e[h]>b[h])return 1}return e.length==b.length?0:e.length<b.length?-1:1},__calculate_ratio:function(e,b){return b?2*e/b:1},__isindict:function(e){return function(b){return b in e}},__dictget:function(e,b,d){return b in e?e[b]:d},SequenceMatcher:function(e,b,d){this.set_seqs=function(b,f){this.set_seq1(b);this.set_seq2(f)};this.set_seq1=function(b){b!=this.a&&(this.a=b,this.matching_blocks=this.opcodes=null)};this.set_seq2=function(b){b!=this.b&&(this.b=b,this.matching_blocks=
|
||||
this.opcodes=this.fullbcount=null,this.__chain_b())};this.__chain_b=function(){for(var b=this.b,f=b.length,d=this.b2j={},l={},e=0;e<b.length;e++){var j=b[e];if(j in d){var s=d[j];200<=f&&100*s.length>f?(l[j]=1,delete d[j]):s.push(e)}else d[j]=[e]}for(j in l)delete d[j];b=this.isjunk;f={};if(b){for(j in l)b(j)&&(f[j]=1,delete l[j]);for(j in d)b(j)&&(f[j]=1,delete d[j])}this.isbjunk=difflib.__isindict(f);this.isbpopular=difflib.__isindict(l)};this.find_longest_match=function(b,f,d,e){for(var p=this.a,
|
||||
j=this.b,s=this.b2j,o=this.isbjunk,q=b,n=d,m=0,t=null,u={},z=[],v=b;v<f;v++){var y={},A=difflib.__dictget(s,p[v],z),B;for(B in A)if(t=A[B],!(t<d)){if(t>=e)break;y[t]=k=difflib.__dictget(u,t-1,0)+1;k>m&&(q=v-k+1,n=t-k+1,m=k)}u=y}for(;q>b&&n>d&&!o(j[n-1])&&p[q-1]==j[n-1];)q--,n--,m++;for(;q+m<f&&n+m<e&&!o(j[n+m])&&p[q+m]==j[n+m];)m++;for(;q>b&&n>d&&o(j[n-1])&&p[q-1]==j[n-1];)q--,n--,m++;for(;q+m<f&&n+m<e&&o(j[n+m])&&p[q+m]==j[n+m];)m++;return[q,n,m]};this.get_matching_blocks=function(){if(null!=this.matching_blocks)return this.matching_blocks;
|
||||
for(var b=this.a.length,f=this.b.length,d=[[0,b,0,f]],e=[],p,j,s,o,q,n,m,t;d.length;)if(o=d.pop(),p=o[0],j=o[1],s=o[2],o=o[3],t=this.find_longest_match(p,j,s,o),q=t[0],n=t[1],m=t[2])e.push(t),p<q&&s<n&&d.push([p,q,s,n]),q+m<j&&n+m<o&&d.push([q+m,j,n+m,o]);e.sort(difflib.__ntuplecomp);d=j1=k1=block=0;p=[];for(var u in e)block=e[u],i2=block[0],j2=block[1],k2=block[2],d+k1==i2&&j1+k1==j2?k1+=k2:(k1&&p.push([d,j1,k1]),d=i2,j1=j2,k1=k2);k1&&p.push([d,j1,k1]);p.push([b,f,0]);return this.matching_blocks=
|
||||
p};this.get_opcodes=function(){if(null!=this.opcodes)return this.opcodes;var b=0,f=0,d=[];this.opcodes=d;var e,p,j,s,o=this.get_matching_blocks(),q;for(q in o)e=o[q],p=e[0],j=e[1],e=e[2],s="",b<p&&f<j?s="replace":b<p?s="delete":f<j&&(s="insert"),s&&d.push([s,b,p,f,j]),b=p+e,f=j+e,e&&d.push(["equal",p,b,j,f]);return d};this.get_grouped_opcodes=function(b){b||(b=3);var f=this.get_opcodes();f||(f=[["equal",0,1,0,1]]);var d,e,p,j,s;"equal"==f[0][0]&&(d=f[0],e=d[0],p=d[1],j=d[2],s=d[3],d=d[4],f[0]=[e,
|
||||
Math.max(p,j-b),j,Math.max(s,d-b),d]);"equal"==f[f.length-1][0]&&(d=f[f.length-1],e=d[0],p=d[1],j=d[2],s=d[3],d=d[4],f[f.length-1]=[e,p,Math.min(j,p+b),s,Math.min(d,s+b)]);var o=b+b,q=[],n;for(n in f)d=f[n],e=d[0],p=d[1],j=d[2],s=d[3],d=d[4],"equal"==e&&j-p>o&&(q.push([e,p,Math.min(j,p+b),s,Math.min(d,s+b)]),p=Math.max(p,j-b),s=Math.max(s,d-b)),q.push([e,p,j,s,d]);q&&"equal"==q[q.length-1][0]&&q.pop();return q};this.ratio=function(){matches=difflib.__reduce(function(b,d){return b+d[d.length-1]},this.get_matching_blocks(),
|
||||
0);return difflib.__calculate_ratio(matches,this.a.length+this.b.length)};this.quick_ratio=function(){var b,d;if(null==this.fullbcount){this.fullbcount=b={};for(var e=0;e<this.b.length;e++)d=this.b[e],b[d]=difflib.__dictget(b,d,0)+1}b=this.fullbcount;for(var l={},p=difflib.__isindict(l),j=numb=0,e=0;e<this.a.length;e++)d=this.a[e],numb=p(d)?l[d]:difflib.__dictget(b,d,0),l[d]=numb-1,0<numb&&j++;return difflib.__calculate_ratio(j,this.a.length+this.b.length)};this.real_quick_ratio=function(){var b=
|
||||
this.a.length,d=this.b.length;return _calculate_ratio(Math.min(b,d),b+d)};this.isjunk=d?d:difflib.defaultJunkFunction;this.a=this.b=null;this.set_seqs(e,b)}};
|
||||
diffview={buildView:function(e){function b(b,d){var e=document.createElement(b);e.className=d;return e}function d(b,d){var e=document.createElement(b);e.appendChild(document.createTextNode(d));return e}function h(b,d,e){b=document.createElement(b);b.className=d;b.innerHTML=e;return b}function f(e,f,j,i,l){if(f<j)return e.appendChild(d("th",(f+1).toString())),e.appendChild(h("td",l,i[f].replace(/\t/g," "))),f+1;e.appendChild(document.createElement("th"));e.appendChild(b("td","empty"));return f}
|
||||
function r(b,e,f,i,j){b.appendChild(d("th",null==e?"":(e+1).toString()));b.appendChild(d("th",null==f?"":(f+1).toString()));b.appendChild(h("td",j,i[null!=e?e:f].replace(/\t/g," ")))}var l=e.baseTextLines,p=e.newTextLines,j=e.opcodes,s=e.baseTextName?e.baseTextName:"Base Text",o=e.newTextName?e.newTextName:"New Text",q=e.contextSize,e=0==e.viewType||1==e.viewType?e.viewType:0;if(null==l)throw"Cannot build diff view; baseTextLines is not defined.";if(null==p)throw"Cannot build diff view; newTextLines is not defined.";
|
||||
if(!j)throw"Canno build diff view; opcodes is not defined.";var n=document.createElement("thead"),m=document.createElement("tr");n.appendChild(m);e?(m.appendChild(document.createElement("th")),m.appendChild(document.createElement("th")),m.appendChild(h("th","texttitle",s+" vs. "+o))):(m.appendChild(document.createElement("th")),m.appendChild(h("th","texttitle",s)),m.appendChild(document.createElement("th")),m.appendChild(h("th","texttitle",o)));for(var n=[n],s=[],t,o=0;o<j.length;o++){code=j[o];change=
|
||||
code[0];for(var u=code[1],z=code[2],v=code[3],y=code[4],A=Math.max(z-u,y-v),B=[],D=[],x=0;x<A;x++){if(q&&1<j.length&&(0<o&&x==q||0==o&&0==x)&&"equal"==change)if(t=A-(0==o?1:2)*q,1<t)if(B.push(m=document.createElement("tr")),u+=t,v+=t,x+=t-1,m.appendChild(d("th","...")),e||m.appendChild(h("td","skip","")),m.appendChild(d("th","...")),m.appendChild(h("td","skip","")),o+1==j.length)break;else continue;B.push(m=document.createElement("tr"));e?"insert"==change?r(m,null,v++,p,change):"replace"==change?
|
||||
(D.push(t=document.createElement("tr")),u<z&&r(m,u++,null,l,"delete"),v<y&&r(t,null,v++,p,"insert")):"delete"==change?r(m,u++,null,l,change):r(m,u++,v++,l,change):(t=diffString2(u<z?l[u]:"",v<y?p[v]:""),u<z&&(l[u]=t.o),v<y&&(p[v]=t.n),u=f(m,u,z,l,"replace"==change?"delete":change),v=f(m,v,y,p,"replace"==change?"insert":change))}for(x=0;x<B.length;x++)s.push(B[x]);for(x=0;x<D.length;x++)s.push(D[x])}s.push(m=h("th","author","combined <a href='http://snowtide.com/jsdifflib'>jsdifflib</a> and John Resig's <a href='http://ejohn.org/projects/javascript-diff-algorithm/'>diff</a> by <a href='http://richardbondi.net'>Richard Bondi</a>"));
|
||||
m.setAttribute("colspan",e?3:4);n.push(m=document.createElement("tbody"));for(o=0;o<s.length;o++)m.appendChild(s[o]);m=b("table","diff"+(e?" inlinediff":""));for(o=0;o<n.length;o++)m.appendChild(n[o]);return m}};function escape(e){e=e.replace(/&/g,"&");e=e.replace(/</g,"<");e=e.replace(/>/g,">");return e=e.replace(/"/g,""")}
|
||||
function diffString(e,b){var e=e.replace(/\s+$/,""),b=b.replace(/\s+$/,""),d=diff(""==e?[]:e.split(/\s+/),""==b?[]:b.split(/\s+/)),h="",f=e.match(/\s+/g);null==f?f=["\n"]:f.push("\n");var r=b.match(/\s+/g);null==r?r=["\n"]:r.push("\n");if(0==d.n.length)for(var l=0;l<d.o.length;l++)h+="<del>"+escape(d.o[l])+f[l]+"</del>";else{if(null==d.n[0].text)for(b=0;b<d.o.length&&null==d.o[b].text;b++)h+="<del>"+escape(d.o[b])+f[b]+"</del>";for(l=0;l<d.n.length;l++)if(null==d.n[l].text)h+="<ins>"+escape(d.n[l])+
|
||||
r[l]+"</ins>";else{for(var p="",b=d.n[l].row+1;b<d.o.length&&null==d.o[b].text;b++)p+="<del>"+escape(d.o[b])+f[b]+"</del>";h+=" "+d.n[l].text+r[l]+p}}return h}function randomColor(){return"rgb("+100*Math.random()+"%, "+100*Math.random()+"%, "+100*Math.random()+"%)"}
|
||||
function diffString2(e,b){var e=e.replace(/\s+$/,""),b=b.replace(/\s+$/,""),d=diff(""==e?[]:e.split(/\s+/),""==b?[]:b.split(/\s+/)),h=e.match(/\s+/g);null==h?h=["\n"]:h.push("\n");var f=b.match(/\s+/g);null==f?f=["\n"]:f.push("\n");for(var r="",l=0;l<d.o.length;l++)randomColor(),r=null!=d.o[l].text?r+(escape(d.o[l].text)+h[l]):r+("<del>"+escape(d.o[l])+h[l]+"</del>");h="";for(l=0;l<d.n.length;l++)h=null!=d.n[l].text?h+(escape(d.n[l].text)+f[l]):h+("<ins>"+escape(d.n[l])+f[l]+"</ins>");return{o:r,
|
||||
n:h}}
|
||||
function diff(e,b){for(var d={},h={},f=0;f<b.length;f++)null==d[b[f]]&&(d[b[f]]={rows:[],o:null}),d[b[f]].rows.push(f);for(f=0;f<e.length;f++)null==h[e[f]]&&(h[e[f]]={rows:[],n:null}),h[e[f]].rows.push(f);for(f in d)1==d[f].rows.length&&("undefined"!=typeof h[f]&&1==h[f].rows.length)&&(b[d[f].rows[0]]={text:b[d[f].rows[0]],row:h[f].rows[0]},e[h[f].rows[0]]={text:e[h[f].rows[0]],row:d[f].rows[0]});for(f=0;f<b.length-1;f++)null!=b[f].text&&(null==b[f+1].text&&b[f].row+1<e.length&&null==e[b[f].row+1].text&&
|
||||
b[f+1]==e[b[f].row+1])&&(b[f+1]={text:b[f+1],row:b[f].row+1},e[b[f].row+1]={text:e[b[f].row+1],row:f+1});for(f=b.length-1;0<f;f--)null!=b[f].text&&(null==b[f-1].text&&0<b[f].row&&null==e[b[f].row-1].text&&b[f-1]==e[b[f].row-1])&&(b[f-1]={text:b[f-1],row:b[f].row-1},e[b[f].row-1]={text:e[b[f].row-1],row:f-1});return{o:e,n:b}}
|
||||
(function(e){function b(a,c){return function(g){return j(a.call(this,g),c)}}function d(a,c){return function(g){return this.lang().ordinal(a.call(this,g),c)}}function h(){}function f(a){l(this,a)}function r(a){var c=a.years||a.year||a.y||0,g=a.months||a.month||a.M||0,b=a.weeks||a.week||a.w||0,d=a.days||a.day||a.d||0,e=a.hours||a.hour||a.h||0,f=a.minutes||a.minute||a.m||0,h=a.seconds||a.second||a.s||0,i=a.milliseconds||a.millisecond||a.ms||0;this._input=a;this._milliseconds=+i+1E3*h+6E4*f+36E5*e;this._days=
|
||||
+d+7*b;this._months=+g+12*c;this._data={};this._bubble()}function l(a,c){for(var g in c)c.hasOwnProperty(g)&&(a[g]=c[g]);return a}function p(a){return 0>a?Math.ceil(a):Math.floor(a)}function j(a,c){for(var g=a+"";g.length<c;)g="0"+g;return g}function s(a,c,g,b){var d=c._milliseconds,e=c._days,c=c._months,f,h;d&&a._d.setTime(+a._d+d*g);if(e||c)f=a.minute(),h=a.hour();e&&a.date(a.date()+e*g);c&&a.month(a.month()+c*g);d&&!b&&i.updateOffset(a);if(e||c)a.minute(f),a.hour(h)}function o(a,c){var g=Math.min(a.length,
|
||||
c.length),b=Math.abs(a.length-c.length),d=0,e;for(e=0;e<g;e++)~~a[e]!==~~c[e]&&d++;return d+b}function q(a){return a?T[a]||a.toLowerCase().replace(/(.)s$/,"$1"):a}function n(a){if(!a)return i.fn._lang;if(!F[a]&&N)try{require("./lang/"+a)}catch(c){return i.fn._lang}return F[a]||i.fn._lang}function m(a){var c=a.match(O),g,b;g=0;for(b=c.length;g<b;g++)c[g]=C[c[g]]?C[c[g]]:c[g].match(/\[.*\]/)?c[g].replace(/^\[|\]$/g,""):c[g].replace(/\\/g,"");return function(d){var e="";for(g=0;g<b;g++)e+=c[g]instanceof
|
||||
Function?c[g].call(d,a):c[g];return e}}function t(a,c){c=u(c,a.lang());G[c]||(G[c]=m(c));return G[c](a)}function u(a,c){function g(a){return c.longDateFormat(a)||a}for(var b=5;b--&&(H.lastIndex=0,H.test(a));)a=a.replace(H,g);return a}function z(a,c){switch(a){case "DDDD":return U;case "YYYY":return V;case "YYYYY":return W;case "S":case "SS":case "SSS":case "DDD":return X;case "MMM":case "MMMM":case "dd":case "ddd":case "dddd":return Y;case "a":case "A":return n(c._l)._meridiemParse;case "X":return Z;
|
||||
case "Z":case "ZZ":return I;case "T":return $;case "MM":case "DD":case "YY":case "HH":case "hh":case "mm":case "ss":case "M":case "D":case "d":case "H":case "h":case "m":case "s":return aa;default:return RegExp(a.replace("\\",""))}}function v(a){var a=((I.exec(a)||[])[0]+"").match(ba)||["-",0,0],c=+(60*a[1])+~~a[2];return"+"===a[0]?-c:c}function y(a){var c,g=[],b;if(!a._d){c=new Date;b=a._useUTC?[c.getUTCFullYear(),c.getUTCMonth(),c.getUTCDate()]:[c.getFullYear(),c.getMonth(),c.getDate()];for(c=0;3>
|
||||
c&&null==a._a[c];++c)a._a[c]=g[c]=b[c];for(;7>c;c++)a._a[c]=g[c]=null==a._a[c]?2===c?1:0:a._a[c];g[3]+=~~((a._tzm||0)/60);g[4]+=~~((a._tzm||0)%60);c=new Date(0);a._useUTC?(c.setUTCFullYear(g[0],g[1],g[2]),c.setUTCHours(g[3],g[4],g[5],g[6])):(c.setFullYear(g[0],g[1],g[2]),c.setHours(g[3],g[4],g[5],g[6]));a._d=c}}function A(a){var c=n(a._l),g=""+a._i,b,d;d=u(a._f,c).match(O);a._a=[];for(c=0;c<d.length;c++)if((b=(z(d[c],a).exec(g)||[])[0])&&(g=g.slice(g.indexOf(b)+b.length)),C[d[c]]){var e=a,f=void 0,
|
||||
h=e._a;switch(d[c]){case "M":case "MM":null!=b&&(h[1]=~~b-1);break;case "MMM":case "MMMM":f=n(e._l).monthsParse(b);null!=f?h[1]=f:e._isValid=!1;break;case "D":case "DD":null!=b&&(h[2]=~~b);break;case "DDD":case "DDDD":null!=b&&(h[1]=0,h[2]=~~b);break;case "YY":h[0]=~~b+(68<~~b?1900:2E3);break;case "YYYY":case "YYYYY":h[0]=~~b;break;case "a":case "A":e._isPm=n(e._l).isPM(b);break;case "H":case "HH":case "h":case "hh":h[3]=~~b;break;case "m":case "mm":h[4]=~~b;break;case "s":case "ss":h[5]=~~b;break;
|
||||
case "S":case "SS":case "SSS":h[6]=~~(1E3*("0."+b));break;case "X":e._d=new Date(1E3*parseFloat(b));break;case "Z":case "ZZ":e._useUTC=!0,e._tzm=v(b)}null==b&&(e._isValid=!1)}g&&(a._il=g);a._isPm&&12>a._a[3]&&(a._a[3]+=12);!1===a._isPm&&12===a._a[3]&&(a._a[3]=0);y(a)}function B(a,c,g,b,d){return d.relativeTime(c||1,!!g,a,b)}function D(a,c,g){c=g-c;g-=a.day();g>c&&(g-=7);g<c-7&&(g+=7);a=i(a).add("d",g);return{week:Math.ceil(a.dayOfYear()/7),year:a.year()}}function x(a){var c=a._i,g=a._f;if(null===
|
||||
c||""===c)return null;"string"===typeof c&&(a._i=c=n().preparse(c));if(i.isMoment(c))a=l({},c),a._d=new Date(+c._d);else if(g)if("[object Array]"===Object.prototype.toString.call(g)){var c=a,b,d,h=99,j;for(j=0;j<c._f.length;j++)b=l({},c),b._f=c._f[j],A(b),g=new f(b),b=o(b._a,g.toArray()),g._il&&(b+=g._il.length),b<h&&(h=b,d=g);l(c,d)}else A(a);else if(d=a,c=d._i,g=ca.exec(c),c===e)d._d=new Date;else if(g)d._d=new Date(+g[1]);else if("string"===typeof c)if(c=d._i,g=da.exec(c)){d._f="YYYY-MM-DD"+(g[2]||
|
||||
" ");for(g=0;4>g;g++)if(P[g][1].exec(c)){d._f+=P[g][0];break}I.exec(c)&&(d._f+=" Z");A(d)}else d._d=new Date(c);else"[object Array]"===Object.prototype.toString.call(c)?(d._a=c.slice(0),y(d)):c instanceof Date?d._d=new Date(+c):"object"===typeof c?(c=d._i,d._d||(d._a=[c.years||c.year||c.y,c.months||c.month||c.M,c.days||c.day||c.d,c.hours||c.hour||c.h,c.minutes||c.minute||c.m,c.seconds||c.second||c.s,c.milliseconds||c.millisecond||c.ms],y(d))):d._d=new Date(c);return new f(a)}function L(a,c){i.fn[a]=
|
||||
i.fn[a+"s"]=function(a){var b=this._isUTC?"UTC":"";return null!=a?(this._d["set"+b+c](a),i.updateOffset(this),this):this._d["get"+b+c]()}}function S(a){i.duration.fn[a]=function(){return this._data[a]}}function M(a,c){i.duration.fn["as"+a]=function(){return+this/c}}for(var i,E=Math.round,w,F={},N="undefined"!==typeof module&&module.exports,ca=/^\/?Date\((\-?\d+)/i,ea=/(\-)?(?:(\d*)\.)?(\d+)\:(\d+)\:(\d+)\.?(\d{3})?/,O=/(\[[^\[]*\])|(\\)?(Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|SS?S?|X|zz?|ZZ?|.)/g,
|
||||
H=/(\[[^\[]*\])|(\\)?(LT|LL?L?L?|l{1,4})/g,aa=/\d\d?/,X=/\d{1,3}/,U=/\d{3}/,V=/\d{1,4}/,W=/[+\-]?\d{1,6}/,Y=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,I=/Z|[\+\-]\d\d:?\d\d/i,$=/T/i,Z=/[\+\-]?\d+(\.\d{1,3})?/,da=/^\s*\d{4}-\d\d-\d\d((T| )(\d\d(:\d\d(:\d\d(\.\d\d?\d?)?)?)?)?([\+\-]\d\d:?\d\d)?)?/,P=[["HH:mm:ss.S",/(T| )\d\d:\d\d:\d\d\.\d{1,3}/],["HH:mm:ss",/(T| )\d\d:\d\d:\d\d/],["HH:mm",/(T| )\d\d:\d\d/],["HH",/(T| )\d\d/]],ba=
|
||||
/([\+\-]|\d\d)/gi,J=["Date","Hours","Minutes","Seconds","Milliseconds"],K={Milliseconds:1,Seconds:1E3,Minutes:6E4,Hours:36E5,Days:864E5,Months:2592E6,Years:31536E6},T={ms:"millisecond",s:"second",m:"minute",h:"hour",d:"day",w:"week",W:"isoweek",M:"month",y:"year"},G={},Q="DDD w W M D d".split(" "),R="MDHhmswW".split(""),C={M:function(){return this.month()+1},MMM:function(a){return this.lang().monthsShort(this,a)},MMMM:function(a){return this.lang().months(this,a)},D:function(){return this.date()},
|
||||
DDD:function(){return this.dayOfYear()},d:function(){return this.day()},dd:function(a){return this.lang().weekdaysMin(this,a)},ddd:function(a){return this.lang().weekdaysShort(this,a)},dddd:function(a){return this.lang().weekdays(this,a)},w:function(){return this.week()},W:function(){return this.isoWeek()},YY:function(){return j(this.year()%100,2)},YYYY:function(){return j(this.year(),4)},YYYYY:function(){return j(this.year(),5)},gg:function(){return j(this.weekYear()%100,2)},gggg:function(){return this.weekYear()},
|
||||
ggggg:function(){return j(this.weekYear(),5)},GG:function(){return j(this.isoWeekYear()%100,2)},GGGG:function(){return this.isoWeekYear()},GGGGG:function(){return j(this.isoWeekYear(),5)},e:function(){return this.weekday()},E:function(){return this.isoWeekday()},a:function(){return this.lang().meridiem(this.hours(),this.minutes(),!0)},A:function(){return this.lang().meridiem(this.hours(),this.minutes(),!1)},H:function(){return this.hours()},h:function(){return this.hours()%12||12},m:function(){return this.minutes()},
|
||||
s:function(){return this.seconds()},S:function(){return~~(this.milliseconds()/100)},SS:function(){return j(~~(this.milliseconds()/10),2)},SSS:function(){return j(this.milliseconds(),3)},Z:function(){var a=-this.zone(),c="+";0>a&&(a=-a,c="-");return c+j(~~(a/60),2)+":"+j(~~a%60,2)},ZZ:function(){var a=-this.zone(),c="+";0>a&&(a=-a,c="-");return c+j(~~(10*a/6),4)},z:function(){return this.zoneAbbr()},zz:function(){return this.zoneName()},X:function(){return this.unix()}};Q.length;)w=Q.pop(),C[w+"o"]=
|
||||
d(C[w],w);for(;R.length;)w=R.pop(),C[w+w]=b(C[w],2);C.DDDD=b(C.DDD,3);l(h.prototype,{set:function(a){var c,g;for(g in a)c=a[g],"function"===typeof c?this[g]=c:this["_"+g]=c},_months:"January February March April May June July August September October November December".split(" "),months:function(a){return this._months[a.month()]},_monthsShort:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),monthsShort:function(a){return this._monthsShort[a.month()]},monthsParse:function(a){var c,g;this._monthsParse||
|
||||
(this._monthsParse=[]);for(c=0;12>c;c++)if(this._monthsParse[c]||(g=i.utc([2E3,c]),g="^"+this.months(g,"")+"|^"+this.monthsShort(g,""),this._monthsParse[c]=RegExp(g.replace(".",""),"i")),this._monthsParse[c].test(a))return c},_weekdays:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),weekdays:function(a){return this._weekdays[a.day()]},_weekdaysShort:"Sun Mon Tue Wed Thu Fri Sat".split(" "),weekdaysShort:function(a){return this._weekdaysShort[a.day()]},_weekdaysMin:"Su Mo Tu We Th Fr Sa".split(" "),
|
||||
weekdaysMin:function(a){return this._weekdaysMin[a.day()]},weekdaysParse:function(a){var c,g;this._weekdaysParse||(this._weekdaysParse=[]);for(c=0;7>c;c++)if(this._weekdaysParse[c]||(g=i([2E3,1]).day(c),g="^"+this.weekdays(g,"")+"|^"+this.weekdaysShort(g,"")+"|^"+this.weekdaysMin(g,""),this._weekdaysParse[c]=RegExp(g.replace(".",""),"i")),this._weekdaysParse[c].test(a))return c},_longDateFormat:{LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D YYYY",LLL:"MMMM D YYYY LT",LLLL:"dddd, MMMM D YYYY LT"},longDateFormat:function(a){var c=
|
||||
this._longDateFormat[a];!c&&this._longDateFormat[a.toUpperCase()]&&(c=this._longDateFormat[a.toUpperCase()].replace(/MMMM|MM|DD|dddd/g,function(a){return a.slice(1)}),this._longDateFormat[a]=c);return c},isPM:function(a){return"p"===(a+"").toLowerCase().charAt(0)},_meridiemParse:/[ap]\.?m?\.?/i,meridiem:function(a,c,g){return 11<a?g?"pm":"PM":g?"am":"AM"},_calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",
|
||||
sameElse:"L"},calendar:function(a,c){var g=this._calendar[a];return"function"===typeof g?g.apply(c):g},_relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},relativeTime:function(a,c,g,b){var d=this._relativeTime[g];return"function"===typeof d?d(a,c,g,b):d.replace(/%d/i,a)},pastFuture:function(a,c){var g=this._relativeTime[0<a?"future":"past"];return"function"===
|
||||
typeof g?g(c):g.replace(/%s/i,c)},ordinal:function(a){return this._ordinal.replace("%d",a)},_ordinal:"%d",preparse:function(a){return a},postformat:function(a){return a},week:function(a){return D(a,this._week.dow,this._week.doy).week},_week:{dow:0,doy:6}});i=function(a,c,g){return x({_i:a,_f:c,_l:g,_isUTC:!1})};i.utc=function(a,c,g){return x({_useUTC:!0,_isUTC:!0,_l:g,_i:a,_f:c}).utc()};i.unix=function(a){return i(1E3*a)};i.duration=function(a,c){var g=i.isDuration(a),b="number"===typeof a,d=g?a._input:
|
||||
b?{}:a,e=ea.exec(a);b?c?d[c]=a:d.milliseconds=a:e&&(b="-"===e[1]?-1:1,d={y:0,d:~~e[2]*b,h:~~e[3]*b,m:~~e[4]*b,s:~~e[5]*b,ms:~~e[6]*b});e=new r(d);g&&a.hasOwnProperty("_lang")&&(e._lang=a._lang);return e};i.version="2.2.1";i.defaultFormat="YYYY-MM-DDTHH:mm:ssZ";i.updateOffset=function(){};i.lang=function(a,c){if(!a)return i.fn._lang._abbr;a=a.toLowerCase();a=a.replace("_","-");if(c){var g=a;c.abbr=g;F[g]||(F[g]=new h);F[g].set(c)}else null===c?(delete F[a],a="en"):F[a]||n(a);i.duration.fn._lang=i.fn._lang=
|
||||
n(a)};i.langData=function(a){a&&(a._lang&&a._lang._abbr)&&(a=a._lang._abbr);return n(a)};i.isMoment=function(a){return a instanceof f};i.isDuration=function(a){return a instanceof r};l(i.fn=f.prototype,{clone:function(){return i(this)},valueOf:function(){return+this._d+6E4*(this._offset||0)},unix:function(){return Math.floor(+this/1E3)},toString:function(){return this.format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},toDate:function(){return this._offset?new Date(+this):this._d},toISOString:function(){return t(i(this).utc(),
|
||||
"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]")},toArray:function(){return[this.year(),this.month(),this.date(),this.hours(),this.minutes(),this.seconds(),this.milliseconds()]},isValid:function(){null==this._isValid&&(this._isValid=this._a?!o(this._a,(this._isUTC?i.utc(this._a):i(this._a)).toArray()):!isNaN(this._d.getTime()));return!!this._isValid},invalidAt:function(){var a,c=this._a,g=(this._isUTC?i.utc(this._a):i(this._a)).toArray();for(a=6;0<=a&&c[a]===g[a];--a);return a},utc:function(){return this.zone(0)},
|
||||
local:function(){this.zone(0);this._isUTC=!1;return this},format:function(a){a=t(this,a||i.defaultFormat);return this.lang().postformat(a)},add:function(a,c){var g;g="string"===typeof a?i.duration(+c,a):i.duration(a,c);s(this,g,1);return this},subtract:function(a,c){var g;g="string"===typeof a?i.duration(+c,a):i.duration(a,c);s(this,g,-1);return this},diff:function(a,c,g){var a=this._isUTC?i(a).zone(this._offset||0):i(a).local(),b=6E4*(this.zone()-a.zone()),d,c=q(c);"year"===c||"month"===c?(d=432E5*
|
||||
(this.daysInMonth()+a.daysInMonth()),b=12*(this.year()-a.year())+(this.month()-a.month()),b+=(this-i(this).startOf("month")-(a-i(a).startOf("month")))/d,b-=6E4*(this.zone()-i(this).startOf("month").zone()-(a.zone()-i(a).startOf("month").zone()))/d,"year"===c&&(b/=12)):(d=this-a,b="second"===c?d/1E3:"minute"===c?d/6E4:"hour"===c?d/36E5:"day"===c?(d-b)/864E5:"week"===c?(d-b)/6048E5:d);return g?b:p(b)},from:function(a,c){return i.duration(this.diff(a)).lang(this.lang()._abbr).humanize(!c)},fromNow:function(a){return this.from(i(),
|
||||
a)},calendar:function(){var a=this.diff(i().zone(this.zone()).startOf("day"),"days",!0);return this.format(this.lang().calendar(-6>a?"sameElse":-1>a?"lastWeek":0>a?"lastDay":1>a?"sameDay":2>a?"nextDay":7>a?"nextWeek":"sameElse",this))},isLeapYear:function(){var a=this.year();return 0===a%4&&0!==a%100||0===a%400},isDST:function(){return this.zone()<this.clone().month(0).zone()||this.zone()<this.clone().month(5).zone()},day:function(a){var c=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=
|
||||
a?"string"===typeof a&&(a=this.lang().weekdaysParse(a),"number"!==typeof a)?this:this.add({d:a-c}):c},month:function(a){var c=this._isUTC?"UTC":"",g;if(null!=a){if("string"===typeof a&&(a=this.lang().monthsParse(a),"number"!==typeof a))return this;g=this.date();this.date(1);this._d["set"+c+"Month"](a);this.date(Math.min(g,this.daysInMonth()));i.updateOffset(this);return this}return this._d["get"+c+"Month"]()},startOf:function(a){a=q(a);switch(a){case "year":this.month(0);case "month":this.date(1);
|
||||
case "week":case "isoweek":case "day":this.hours(0);case "hour":this.minutes(0);case "minute":this.seconds(0);case "second":this.milliseconds(0)}"week"===a?this.weekday(0):"isoweek"===a&&this.isoWeekday(1);return this},endOf:function(a){a=q(a);return this.startOf(a).add("isoweek"===a?"week":a,1).subtract("ms",1)},isAfter:function(a,c){c="undefined"!==typeof c?c:"millisecond";return+this.clone().startOf(c)>+i(a).startOf(c)},isBefore:function(a,c){c="undefined"!==typeof c?c:"millisecond";return+this.clone().startOf(c)<
|
||||
+i(a).startOf(c)},isSame:function(a,c){c="undefined"!==typeof c?c:"millisecond";return+this.clone().startOf(c)===+i(a).startOf(c)},min:function(a){a=i.apply(null,arguments);return a<this?this:a},max:function(a){a=i.apply(null,arguments);return a>this?this:a},zone:function(a){var c=this._offset||0;if(null!=a)"string"===typeof a&&(a=v(a)),16>Math.abs(a)&&(a*=60),this._offset=a,this._isUTC=!0,c!==a&&s(this,i.duration(c-a,"m"),1,!0);else return this._isUTC?c:this._d.getTimezoneOffset();return this},zoneAbbr:function(){return this._isUTC?
|
||||
"UTC":""},zoneName:function(){return this._isUTC?"Coordinated Universal Time":""},hasAlignedHourOffset:function(a){a=a?i(a).zone():0;return 0===(this.zone()-a)%60},daysInMonth:function(){return i.utc([this.year(),this.month()+1,0]).date()},dayOfYear:function(a){var c=E((i(this).startOf("day")-i(this).startOf("year"))/864E5)+1;return null==a?c:this.add("d",a-c)},weekYear:function(a){var c=D(this,this.lang()._week.dow,this.lang()._week.doy).year;return null==a?c:this.add("y",a-c)},isoWeekYear:function(a){var c=
|
||||
D(this,1,4).year;return null==a?c:this.add("y",a-c)},week:function(a){var c=this.lang().week(this);return null==a?c:this.add("d",7*(a-c))},isoWeek:function(a){var c=D(this,1,4).week;return null==a?c:this.add("d",7*(a-c))},weekday:function(a){var c=(this._d.getDay()+7-this.lang()._week.dow)%7;return null==a?c:this.add("d",a-c)},isoWeekday:function(a){return null==a?this.day()||7:this.day(this.day()%7?a:a-7)},get:function(a){a=q(a);return this[a.toLowerCase()]()},set:function(a,c){a=q(a);this[a.toLowerCase()](c)},
|
||||
lang:function(a){if(a===e)return this._lang;this._lang=n(a);return this}});for(w=0;w<J.length;w++)L(J[w].toLowerCase().replace(/s$/,""),J[w]);L("year","FullYear");i.fn.days=i.fn.day;i.fn.months=i.fn.month;i.fn.weeks=i.fn.week;i.fn.isoWeeks=i.fn.isoWeek;i.fn.toJSON=i.fn.toISOString;l(i.duration.fn=r.prototype,{_bubble:function(){var a=this._milliseconds,c=this._days,g=this._months,b=this._data;b.milliseconds=a%1E3;a=p(a/1E3);b.seconds=a%60;a=p(a/60);b.minutes=a%60;a=p(a/60);b.hours=a%24;c+=p(a/24);
|
||||
b.days=c%30;g+=p(c/30);b.months=g%12;c=p(g/12);b.years=c},weeks:function(){return p(this.days()/7)},valueOf:function(){return this._milliseconds+864E5*this._days+2592E6*(this._months%12)+31536E6*~~(this._months/12)},humanize:function(a){var c=+this,b;b=!a;var d=this.lang(),e=E(Math.abs(c)/1E3),f=E(e/60),h=E(f/60),i=E(h/24),j=E(i/365),e=45>e&&["s",e]||1===f&&["m"]||45>f&&["mm",f]||1===h&&["h"]||22>h&&["hh",h]||1===i&&["d"]||25>=i&&["dd",i]||45>=i&&["M"]||345>i&&["MM",E(i/30)]||1===j&&["y"]||["yy",
|
||||
j];e[2]=b;e[3]=0<c;e[4]=d;b=B.apply({},e);a&&(b=this.lang().pastFuture(c,b));return this.lang().postformat(b)},add:function(a,c){var b=i.duration(a,c);this._milliseconds+=b._milliseconds;this._days+=b._days;this._months+=b._months;this._bubble();return this},subtract:function(a,c){var b=i.duration(a,c);this._milliseconds-=b._milliseconds;this._days-=b._days;this._months-=b._months;this._bubble();return this},get:function(a){a=q(a);return this[a.toLowerCase()+"s"]()},as:function(a){a=q(a);return this["as"+
|
||||
a.charAt(0).toUpperCase()+a.slice(1)+"s"]()},lang:i.fn.lang});for(w in K)K.hasOwnProperty(w)&&(M(w,K[w]),S(w.toLowerCase()));M("Weeks",6048E5);i.duration.fn.asMonths=function(){return(+this-31536E6*this.years())/2592E6+12*this.years()};i.lang("en",{ordinal:function(a){var c=a%10;return a+(1===~~(a%100/10)?"th":1===c?"st":2===c?"nd":3===c?"rd":"th")}});(function(a){a(i)})(function(a){a.lang("ar-ma",{months:"يناير ÙØ¨Ø±Ø§ÙŠØ± مارس أبريل ماي يونيو يوليوز غشت شتنبر أكتوبر نونبر دجنبر".split(" "),
|
||||
monthsShort:"يناير ÙØ¨Ø±Ø§ÙŠØ± مارس أبريل ماي يونيو يوليوز غشت شتنبر أكتوبر نونبر دجنبر".split(" "),weekdays:"Ø§Ù„Ø£ØØ¯ الإتنين الثلاثاء الأربعاء الخميس الجمعة السبت".split(" "),weekdaysShort:"Ø§ØØ¯ اتنين ثلاثاء اربعاء خميس جمعة سبت".split(" "),weekdaysMin:"Ø Ù† Ø« ر Ø® ج س".split(" "),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},
|
||||
calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"ÙÙŠ %s",past:"منذ %s",s:"ثوان",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:6,doy:12}})});(function(a){a(i)})(function(a){a.lang("ar",
|
||||
{months:"يناير/ كانون الثاني;ÙØ¨Ø±Ø§ÙŠØ±/ شباط;مارس/ آذار;أبريل/ نيسان;مايو/ أيار;يونيو/ ØØ²ÙŠØ±Ø§Ù†;يوليو/ تموز;أغسطس/ آب;سبتمبر/ أيلول;أكتوبر/ تشرين الأول;نوÙمبر/ تشرين الثاني;ديسمبر/ كانون الأول".split(";"),monthsShort:"يناير/ كانون الثاني;ÙØ¨Ø±Ø§ÙŠØ±/ شباط;مارس/ آذار;أبريل/ نيسان;مايو/ أيار;يونيو/ ØØ²ÙŠØ±Ø§Ù†;يوليو/ تموز;أغسطس/ آب;سبتمبر/ أيلول;أكتوبر/ تشرين الأول;نوÙمبر/ تشرين الثاني;ديسمبر/ كانون الأول".split(";"),
|
||||
weekdays:"Ø§Ù„Ø£ØØ¯ الإثنين الثلاثاء الأربعاء الخميس الجمعة السبت".split(" "),weekdaysShort:"Ø§Ù„Ø£ØØ¯ الإثنين الثلاثاء الأربعاء الخميس الجمعة السبت".split(" "),weekdaysMin:"Ø Ù† Ø« ر Ø® ج س".split(" "),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",
|
||||
lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"ÙÙŠ %s",past:"منذ %s",s:"ثوان",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:6,doy:12}})});(function(a){a(i)})(function(a){a.lang("bg",{months:"Ñнуари февруари март април май юни юли авгуÑÑ‚ Ñептември октомври ноември декември".split(" "),
|
||||
monthsShort:"Ñнр фев мар апр май юни юли авг Ñеп окт ное дек".split(" "),weekdays:"Ð½ÐµÐ´ÐµÐ»Ñ Ð¿Ð¾Ð½ÐµÐ´ÐµÐ»Ð½Ð¸Ðº вторник ÑÑ€Ñда четвъртък петък Ñъбота".split(" "),weekdaysShort:"нед пон вто ÑÑ€Ñ Ñ‡ÐµÑ‚ пет Ñъб".split(" "),weekdaysMin:"нд пн вт ÑÑ€ чт пт Ñб".split(" "),longDateFormat:{LT:"h:mm",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Ð”Ð½ÐµÑ Ð²] LT",
|
||||
nextDay:"[Утре в] LT",nextWeek:"dddd [в] LT",lastDay:"[Вчера в] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[Ð’ изминалата] dddd [в] LT";case 1:case 2:case 4:case 5:return"[Ð’ изминалиÑ] dddd [в] LT"}},sameElse:"L"},relativeTime:{future:"Ñлед %s",past:"преди %s",s:"нÑколко Ñекунди",m:"минута",mm:"%d минути",h:"чаÑ",hh:"%d чаÑа",d:"ден",dd:"%d дни",M:"меÑец",MM:"%d меÑеца",y:"година",
|
||||
yy:"%d години"},ordinal:function(a){var b=a%10,d=a%100;return 0===a?a+"-ев":0===d?a+"-ен":10<d&&20>d?a+"-ти":1===b?a+"-ви":2===b?a+"-ри":7===b||8===b?a+"-ми":a+"-ти"},week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){function c(a,c,b){c=a+" ";b={mm:"munutenn",MM:"miz",dd:"devezh"}[b];2===a?(a={m:"v",b:"v",d:"z"},a=a[b.charAt(0)]===e?b:a[b.charAt(0)]+b.substring(1)):a=b;return c+a}function b(a){return 9<a?b(a%10):a}a.lang("br",{months:"Genver C'hwevrer Meurzh Ebrel Mae Mezheven Gouere Eost Gwengolo Here Du Kerzu".split(" "),
|
||||
monthsShort:"Gen C'hwe Meu Ebr Mae Eve Gou Eos Gwe Her Du Ker".split(" "),weekdays:"Sul Lun Meurzh Merc'her Yaou Gwener Sadorn".split(" "),weekdaysShort:"Sul Lun Meu Mer Yao Gwe Sad".split(" "),weekdaysMin:"Su Lu Me Mer Ya Gw Sa".split(" "),longDateFormat:{LT:"h[e]mm A",L:"DD/MM/YYYY",LL:"D [a viz] MMMM YYYY",LLL:"D [a viz] MMMM YYYY LT",LLLL:"dddd, D [a viz] MMMM YYYY LT"},calendar:{sameDay:"[Hiziv da] LT",nextDay:"[Warc'hoazh da] LT",nextWeek:"dddd [da] LT",lastDay:"[Dec'h da] LT",lastWeek:"dddd [paset da] LT",
|
||||
sameElse:"L"},relativeTime:{future:"a-benn %s",past:"%s 'zo",s:"un nebeud segondennoù",m:"ur vunutenn",mm:c,h:"un eur",hh:"%d eur",d:"un devezh",dd:c,M:"ur miz",MM:c,y:"ur bloaz",yy:function(a){switch(b(a)){case 1:case 3:case 4:case 5:case 9:return a+" bloaz";default:return a+" vloaz"}}},ordinal:function(a){return a+(1===a?"añ":"vet")},week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("ca",{months:"Gener Febrer Març Abril Maig Juny Juliol Agost Setembre Octubre Novembre Desembre".split(" "),
|
||||
monthsShort:"Gen. Febr. Mar. Abr. Mai. Jun. Jul. Ag. Set. Oct. Nov. Des.".split(" "),weekdays:"Diumenge Dilluns Dimarts Dimecres Dijous Divendres Dissabte".split(" "),weekdaysShort:"Dg. Dl. Dt. Dc. Dj. Dv. Ds.".split(" "),weekdaysMin:"Dg Dl Dt Dc Dj Dv Ds".split(" "),longDateFormat:{LT:"H:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:function(){return"[avui a "+(1!==this.hours()?"les":"la")+"] LT"},nextDay:function(){return"[demà a "+(1!==
|
||||
this.hours()?"les":"la")+"] LT"},nextWeek:function(){return"dddd [a "+(1!==this.hours()?"les":"la")+"] LT"},lastDay:function(){return"[ahir a "+(1!==this.hours()?"les":"la")+"] LT"},lastWeek:function(){return"[el] dddd [passat a "+(1!==this.hours()?"les":"la")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"fa %s",s:"uns segons",m:"un minut",mm:"%d minuts",h:"una hora",hh:"%d hores",d:"un dia",dd:"%d dies",M:"un mes",MM:"%d mesos",y:"un any",yy:"%d anys"},ordinal:"%dº",week:{dow:1,doy:4}})});
|
||||
(function(a){a(i)})(function(a){function c(a){return 1<a&&5>a&&1!==~~(a/10)}function b(a,g,d,e){var f=a+" ";switch(d){case "s":return g||e?"pár vteÅ™in":"pár vteÅ™inami";case "m":return g?"minuta":e?"minutu":"minutou";case "mm":return g||e?f+(c(a)?"minuty":"minut"):f+"minutami";case "h":return g?"hodina":e?"hodinu":"hodinou";case "hh":return g||e?f+(c(a)?"hodiny":"hodin"):f+"hodinami";case "d":return g||e?"den":"dnem";case "dd":return g||e?f+(c(a)?"dny":"dnÃ"):f+"dny";case "M":return g||e?"mÄ›sÃc":
|
||||
"mÄ›sÃcem";case "MM":return g||e?f+(c(a)?"mÄ›sÃce":"mÄ›sÃců"):f+"mÄ›sÃci";case "y":return g||e?"rok":"rokem";case "yy":return g||e?f+(c(a)?"roky":"let"):f+"lety"}}var d="leden únor bÅ™ezen duben kvÄ›ten Äerven Äervenec srpen zářà řÃjen listopad prosinec".split(" "),e="led úno bÅ™e dub kvÄ› Ävn Ävc srp zář Å™Ãj lis pro".split(" ");a.lang("cs",{months:d,monthsShort:e,monthsParse:function(a,c){var b,g=[];for(b=0;12>b;b++)g[b]=RegExp("^"+a[b]+"$|^"+c[b]+"$","i");return g}(d,e),weekdays:"nedÄ›le pondÄ›là úterý stÅ™eda Ätvrtek pátek sobota".split(" "),
|
||||
weekdaysShort:"ne po út st Ät pá so".split(" "),weekdaysMin:"ne po út st Ät pá so".split(" "),longDateFormat:{LT:"H:mm",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd D. MMMM YYYY LT"},calendar:{sameDay:"[dnes v] LT",nextDay:"[zÃtra v] LT",nextWeek:function(){switch(this.day()){case 0:return"[v nedÄ›li v] LT";case 1:case 2:return"[v] dddd [v] LT";case 3:return"[ve stÅ™edu v] LT";case 4:return"[ve Ätvrtek v] LT";case 5:return"[v pátek v] LT";case 6:return"[v sobotu v] LT"}},
|
||||
lastDay:"[vÄera v] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulou nedÄ›li v] LT";case 1:case 2:return"[minulé] dddd [v] LT";case 3:return"[minulou stÅ™edu v] LT";case 4:case 5:return"[minulý] dddd [v] LT";case 6:return"[minulou sobotu v] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"pÅ™ed %s",s:b,m:b,mm:b,h:b,hh:b,d:b,dd:b,M:b,MM:b,y:b,yy:b},ordinal:"%d.",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("cv",{months:"кăрлач Ð½Ð°Ñ€ÄƒÑ Ð¿ÑƒÑˆ ака май çĕртме утă çурла авăн юпа чӳк раштав".split(" "),
|
||||
monthsShort:"кăр нар пуш ака май çĕр утă çур ав юпа чӳк раш".split(" "),weekdays:"вырÑарникун тунтикун ытларикун юнкун кĕçнерникун Ñрнекун шăматкун".split(" "),weekdaysShort:"выр тун ытл юн кĕç Ñрн шăм".split(" "),weekdaysMin:"вр тн ыт юн кç ÑÑ€ шм".split(" "),longDateFormat:{LT:"HH:mm",L:"DD-MM-YYYY",LL:"YYYY [çулхи] MMMM [уйăхĕн] D[-мĕшĕ]",LLL:"YYYY [çулхи] MMMM [уйăхĕн] D[-мĕшĕ], LT",
|
||||
LLLL:"dddd, YYYY [çулхи] MMMM [уйăхĕн] D[-мĕшĕ], LT"},calendar:{sameDay:"[ПаÑн] LT [Ñехетре]",nextDay:"[Ыран] LT [Ñехетре]",lastDay:"[Ĕнер] LT [Ñехетре]",nextWeek:"[ÇитеÑ] dddd LT [Ñехетре]",lastWeek:"[Иртнĕ] dddd LT [Ñехетре]",sameElse:"L"},relativeTime:{future:function(a){var b=/Ñехет$/i.exec(a)?"рен":/çул$/i.exec(a)?"тан":"ран";return a+b},past:"%s каÑлла",s:"пĕр-ик çеккунт",m:"пĕр минут",
|
||||
mm:"%d минут",h:"пĕр Ñехет",hh:"%d Ñехет",d:"пĕр кун",dd:"%d кун",M:"пĕр уйăх",MM:"%d уйăх",y:"пĕр çул",yy:"%d çул"},ordinal:"%d-мĕш",week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){a.lang("da",{months:"januar februar marts april maj juni juli august september oktober november december".split(" "),monthsShort:"jan feb mar apr maj jun jul aug sep okt nov dec".split(" "),weekdays:"søndag mandag tirsdag onsdag torsdag fredag lørdag".split(" "),
|
||||
weekdaysShort:"søn man tir ons tor fre lør".split(" "),weekdaysMin:"sø ma ti on to fr lø".split(" "),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D. MMMM, YYYY LT"},calendar:{sameDay:"[I dag kl.] LT",nextDay:"[I morgen kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[I går kl.] LT",lastWeek:"[sidste] dddd [kl] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"få sekunder",m:"et minut",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",
|
||||
dd:"%d dage",M:"en måned",MM:"%d måneder",y:"et år",yy:"%d år"},ordinal:"%d.",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){function c(a,c,b){a={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[a+" Tage",a+" Tagen"],M:["ein Monat","einem Monat"],MM:[a+" Monate",a+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[a+" Jahre",a+" Jahren"]};return c?a[b][0]:a[b][1]}a.lang("de",{months:"Januar Februar März April Mai Juni Juli August September Oktober November Dezember".split(" "),
|
||||
monthsShort:"Jan. Febr. Mrz. Apr. Mai Jun. Jul. Aug. Sept. Okt. Nov. Dez.".split(" "),weekdays:"Sonntag Montag Dienstag Mittwoch Donnerstag Freitag Samstag".split(" "),weekdaysShort:"So. Mo. Di. Mi. Do. Fr. Sa.".split(" "),weekdaysMin:"So Mo Di Mi Do Fr Sa".split(" "),longDateFormat:{LT:"H:mm [Uhr]",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[Heute um] LT",sameElse:"L",nextDay:"[Morgen um] LT",nextWeek:"dddd [um] LT",lastDay:"[Gestern um] LT",
|
||||
lastWeek:"[letzten] dddd [um] LT"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",m:c,mm:"%d Minuten",h:c,hh:"%d Stunden",d:c,dd:c,M:c,MM:c,y:c,yy:c},ordinal:"%d.",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("el",{monthsNominativeEl:"ΙανουάÏιος ΦεβÏουάÏιος ΜάÏτιος ΑπÏίλιος Μάιος ΙοÏνιος ΙοÏλιος ΑÏγουστος ΣεπτÎμβÏιος ΟκτώβÏιος ÎοÎμβÏιος ΔεκÎμβÏιος".split(" "),monthsGenitiveEl:"ΙανουαÏίου ΦεβÏουαÏίου ΜαÏτίου ΑπÏιλίου ΜαÎου Ιουνίου Ιουλίου ΑυγοÏστου ΣεπτεμβÏίου ΟκτωβÏίου ÎοεμβÏίου ΔεκεμβÏίου".split(" "),
|
||||
months:function(a,b){return/D/.test(b.substring(0,b.indexOf("MMMM")))?this._monthsGenitiveEl[a.month()]:this._monthsNominativeEl[a.month()]},monthsShort:"Ιαν Φεβ ÎœÎ±Ï Î‘Ï€Ï ÎœÎ±ÏŠ Ιουν Ιουλ Αυγ Σεπ Οκτ Îοε Δεκ".split(" "),weekdays:"ΚυÏιακή;ΔευτÎÏα;ΤÏίτη;ΤετάÏτη;Î Îμπτη;ΠαÏασκευή;Σάββατο".split(";"),weekdaysShort:"ΚυÏ;Δευ;ΤÏι;Τετ;Πεμ;ΠαÏ;Σαβ".split(";"),weekdaysMin:"Κυ;Δε;ΤÏ;Τε;Πε;Πα;Σα".split(";"),
|
||||
meridiem:function(a,b,d){return 11<a?d?"μμ":"ΜΜ":d?"πμ":"ΠΜ"},longDateFormat:{LT:"h:mm A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendarEl:{sameDay:"[ΣήμεÏα {}] LT",nextDay:"[ΑÏÏιο {}] LT",nextWeek:"dddd [{}] LT",lastDay:"[Χθες {}] LT",lastWeek:"[την Ï€ÏοηγοÏμενη] dddd [{}] LT",sameElse:"L"},calendar:function(a,b){var d=this._calendarEl[a],e=b&&b.hours();return d.replace("{}",1===e%12?"στη":"στις")},relativeTime:{future:"σε %s",
|
||||
past:"%s Ï€Ïιν",s:"δευτεÏόλεπτα",m:"Îνα λεπτό",mm:"%d λεπτά",h:"μία ÏŽÏα",hh:"%d ÏŽÏες",d:"μία μÎÏα",dd:"%d μÎÏες",M:"Îνας μήνας",MM:"%d μήνες",y:"Îνας χÏόνος",yy:"%d χÏόνια"},ordinal:function(a){return a+"η"},week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("en-ca",{months:"January February March April May June July August September October November December".split(" "),monthsShort:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),
|
||||
weekdays:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),weekdaysShort:"Sun Mon Tue Wed Thu Fri Sat".split(" "),weekdaysMin:"Su Mo Tu We Th Fr Sa".split(" "),longDateFormat:{LT:"h:mm A",L:"YYYY-MM-DD",LL:"D MMMM, YYYY",LLL:"D MMMM, YYYY LT",LLLL:"dddd, D MMMM, YYYY LT"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",
|
||||
m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ordinal:function(a){var b=a%10;return a+(1===~~(a%100/10)?"th":1===b?"st":2===b?"nd":3===b?"rd":"th")}})});(function(a){a(i)})(function(a){a.lang("en-gb",{months:"January February March April May June July August September October November December".split(" "),monthsShort:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),weekdays:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),
|
||||
weekdaysShort:"Sun Mon Tue Wed Thu Fri Sat".split(" "),weekdaysMin:"Su Mo Tu We Th Fr Sa".split(" "),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",
|
||||
M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ordinal:function(a){var b=a%10;return a+(1===~~(a%100/10)?"th":1===b?"st":2===b?"nd":3===b?"rd":"th")},week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("eo",{months:"januaro februaro marto aprilo majo junio julio aÅgusto septembro oktobro novembro decembro".split(" "),monthsShort:"jan feb mar apr maj jun jul aÅg sep okt nov dec".split(" "),weekdays:"Dimanĉo Lundo Mardo Merkredo Ä´aÅdo Vendredo Sabato".split(" "),weekdaysShort:"Dim Lun Mard Merk Ä´aÅ Ven Sab".split(" "),
|
||||
weekdaysMin:"Di Lu Ma Me Ä´a Ve Sa".split(" "),longDateFormat:{LT:"HH:mm",L:"YYYY-MM-DD",LL:"D[-an de] MMMM, YYYY",LLL:"D[-an de] MMMM, YYYY LT",LLLL:"dddd, [la] D[-an de] MMMM, YYYY LT"},meridiem:function(a,b,d){return 11<a?d?"p.t.m.":"P.T.M.":d?"a.t.m.":"A.T.M."},calendar:{sameDay:"[HodiaÅ je] LT",nextDay:"[MorgaÅ je] LT",nextWeek:"dddd [je] LT",lastDay:"[HieraÅ je] LT",lastWeek:"[pasinta] dddd [je] LT",sameElse:"L"},relativeTime:{future:"je %s",past:"antaÅ %s",s:"sekundoj",m:"minuto",mm:"%d minutoj",
|
||||
h:"horo",hh:"%d horoj",d:"tago",dd:"%d tagoj",M:"monato",MM:"%d monatoj",y:"jaro",yy:"%d jaroj"},ordinal:"%da",week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){a.lang("es",{months:"enero febrero marzo abril mayo junio julio agosto septiembre octubre noviembre diciembre".split(" "),monthsShort:"ene. feb. mar. abr. may. jun. jul. ago. sep. oct. nov. dic.".split(" "),weekdays:"domingo lunes martes miércoles jueves viernes sábado".split(" "),weekdaysShort:"dom. lun. mar. mié. jue. vie. sáb.".split(" "),
|
||||
weekdaysMin:"Do Lu Ma Mi Ju Vi Sá".split(" "),longDateFormat:{LT:"H:mm",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY LT",LLLL:"dddd, D [de] MMMM [de] YYYY LT"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[mañana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+
|
||||
(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un dÃa",dd:"%d dÃas",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},ordinal:"%dº",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("et",{months:"jaanuar veebruar märts aprill mai juuni juuli august september oktoober november detsember".split(" "),monthsShort:"jaan veebr märts apr mai juuni juuli aug sept okt nov dets".split(" "),
|
||||
weekdays:"pühapäev esmaspäev teisipäev kolmapäev neljapäev reede laupäev".split(" "),weekdaysShort:"PETKNRL".split(""),weekdaysMin:"PETKNRL".split(""),longDateFormat:{LT:"H:mm",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[Täna,] LT",nextDay:"[Homme,] LT",nextWeek:"[Järgmine] dddd LT",lastDay:"[Eile,] LT",lastWeek:"[Eelmine] dddd LT",sameElse:"L"},relativeTime:{future:"%s pärast",past:"%s tagasi",s:function(a,b,d,e){return e||b?
|
||||
"paari sekundi":"paar sekundit"},m:"minut",mm:"%d minutit",h:"tund",hh:"%d tundi",d:"päev",dd:"%d päeva",M:"kuu",MM:"%d kuud",y:"aasta",yy:"%d aastat"},ordinal:"%d.",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("eu",{months:"urtarrila otsaila martxoa apirila maiatza ekaina uztaila abuztua iraila urria azaroa abendua".split(" "),monthsShort:"urt. ots. mar. api. mai. eka. uzt. abu. ira. urr. aza. abe.".split(" "),weekdays:"igandea astelehena asteartea asteazkena osteguna ostirala larunbata".split(" "),
|
||||
weekdaysShort:"ig. al. ar. az. og. ol. lr.".split(" "),weekdaysMin:"ig al ar az og ol lr".split(" "),longDateFormat:{LT:"HH:mm",L:"YYYY-MM-DD",LL:"YYYY[ko] MMMM[ren] D[a]",LLL:"YYYY[ko] MMMM[ren] D[a] LT",LLLL:"dddd, YYYY[ko] MMMM[ren] D[a] LT",l:"YYYY-M-D",ll:"YYYY[ko] MMM D[a]",lll:"YYYY[ko] MMM D[a] LT",llll:"ddd, YYYY[ko] MMM D[a] LT"},calendar:{sameDay:"[gaur] LT[etan]",nextDay:"[bihar] LT[etan]",nextWeek:"dddd LT[etan]",lastDay:"[atzo] LT[etan]",lastWeek:"[aurreko] dddd LT[etan]",sameElse:"L"},
|
||||
relativeTime:{future:"%s barru",past:"duela %s",s:"segundo batzuk",m:"minutu bat",mm:"%d minutu",h:"ordu bat",hh:"%d ordu",d:"egun bat",dd:"%d egun",M:"hilabete bat",MM:"%d hilabete",y:"urte bat",yy:"%d urte"},ordinal:"%d.",week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){var c={1:"Û±",2:"Û²",3:"Û³",4:"Û´",5:"Ûµ",6:"Û¶",7:"Û·",8:"Û¸",9:"Û¹","0":"Û°"},b={"Û±":"1","Û²":"2","Û³":"3","Û´":"4","Ûµ":"5","Û¶":"6","Û·":"7","Û¸":"8","Û¹":"9","Û°":"0"};a.lang("fa",{months:"ژانویه Ùوریه مارس آوریل مه ژوئن ژوئیه اوت سپتامبر اکتبر نوامبر دسامبر".split(" "),
|
||||
monthsShort:"ژانویه Ùوریه مارس آوریل مه ژوئن ژوئیه اوت سپتامبر اکتبر نوامبر دسامبر".split(" "),weekdays:"یکشنبه دوشنبه سهشنبه چهارشنبه پنجشنبه جمعه شنبه".split(" "),weekdaysShort:"یکشنبه دوشنبه سهشنبه چهارشنبه پنجشنبه جمعه شنبه".split(" "),weekdaysMin:"ÛŒ د س Ú† Ù¾ ج Ø´".split(" "),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",
|
||||
LLLL:"dddd, D MMMM YYYY LT"},meridiem:function(a){return 12>a?"قبل از ظهر":"بعد از ظهر"},calendar:{sameDay:"[امروز ساعت] LT",nextDay:"[ÙØ±Ø¯Ø§ ساعت] LT",nextWeek:"dddd [ساعت] LT",lastDay:"[دیروز ساعت] LT",lastWeek:"dddd [پیش] [ساعت] LT",sameElse:"L"},relativeTime:{future:"در %s",past:"%s پیش",s:"چندین ثانیه",m:"یک دقیقه",mm:"%d دقیقه",h:"یک ساعت",hh:"%d ساعت",d:"یک روز",dd:"%d روز",M:"یک ماه",MM:"%d ماه",
|
||||
y:"یک سال",yy:"%d سال"},preparse:function(a){return a.replace(/[۰-۹]/g,function(a){return b[a]}).replace(/،/g,",")},postformat:function(a){return a.replace(/\d/g,function(a){return c[a]}).replace(/,/g,"،")},ordinal:"%dم",week:{dow:6,doy:12}})});(function(a){a(i)})(function(a){function c(a,c,e,f){c="";switch(e){case "s":return f?"muutaman sekunnin":"muutama sekunti";case "m":return f?"minuutin":"minuutti";case "mm":c=f?"minuutin":"minuuttia";break;case "h":return f?"tunnin":"tunti";case "hh":c=
|
||||
f?"tunnin":"tuntia";break;case "d":return f?"päivän":"päivä";case "dd":c=f?"päivän":"päivää";break;case "M":return f?"kuukauden":"kuukausi";case "MM":c=f?"kuukauden":"kuukautta";break;case "y":return f?"vuoden":"vuosi";case "yy":c=f?"vuoden":"vuotta"}return c=(10>a?f?d[a]:b[a]:a)+" "+c}var b="nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän".split(" "),d=["nolla","yhden","kahden","kolmen","neljän","viiden","kuuden",b[7],b[8],b[9]];a.lang("fi",{months:"tammikuu helmikuu maaliskuu huhtikuu toukokuu kesäkuu heinäkuu elokuu syyskuu lokakuu marraskuu joulukuu".split(" "),
|
||||
monthsShort:"tammi helmi maalis huhti touko kesä heinä elo syys loka marras joulu".split(" "),weekdays:"sunnuntai maanantai tiistai keskiviikko torstai perjantai lauantai".split(" "),weekdaysShort:"su ma ti ke to pe la".split(" "),weekdaysMin:"su ma ti ke to pe la".split(" "),longDateFormat:{LT:"HH.mm",L:"DD.MM.YYYY",LL:"Do MMMM[ta] YYYY",LLL:"Do MMMM[ta] YYYY, [klo] LT",LLLL:"dddd, Do MMMM[ta] YYYY, [klo] LT",l:"D.M.YYYY",ll:"Do MMM YYYY",lll:"Do MMM YYYY, [klo] LT",llll:"ddd, Do MMM YYYY, [klo] LT"},
|
||||
calendar:{sameDay:"[tänään] [klo] LT",nextDay:"[huomenna] [klo] LT",nextWeek:"dddd [klo] LT",lastDay:"[eilen] [klo] LT",lastWeek:"[viime] dddd[na] [klo] LT",sameElse:"L"},relativeTime:{future:"%s päästä",past:"%s sitten",s:c,m:c,mm:c,h:c,hh:c,d:c,dd:c,M:c,MM:c,y:c,yy:c},ordinal:"%d.",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("fr-ca",{months:"janvier février mars avril mai juin juillet août septembre octobre novembre décembre".split(" "),monthsShort:"janv. févr. mars avr. mai juin juil. août sept. oct. nov. déc.".split(" "),
|
||||
weekdays:"dimanche lundi mardi mercredi jeudi vendredi samedi".split(" "),weekdaysShort:"dim. lun. mar. mer. jeu. ven. sam.".split(" "),weekdaysMin:"Di Lu Ma Me Je Ve Sa".split(" "),longDateFormat:{LT:"HH:mm",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[Aujourd'hui à ] LT",nextDay:"[Demain à ] LT",nextWeek:"dddd [à ] LT",lastDay:"[Hier à ] LT",lastWeek:"dddd [dernier à ] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",
|
||||
m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},ordinal:function(a){return a+(1===a?"er":"")}})});(function(a){a(i)})(function(a){a.lang("fr",{months:"janvier février mars avril mai juin juillet août septembre octobre novembre décembre".split(" "),monthsShort:"janv. févr. mars avr. mai juin juil. août sept. oct. nov. déc.".split(" "),weekdays:"dimanche lundi mardi mercredi jeudi vendredi samedi".split(" "),
|
||||
weekdaysShort:"dim. lun. mar. mer. jeu. ven. sam.".split(" "),weekdaysMin:"Di Lu Ma Me Je Ve Sa".split(" "),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[Aujourd'hui à ] LT",nextDay:"[Demain à ] LT",nextWeek:"dddd [à ] LT",lastDay:"[Hier à ] LT",lastWeek:"dddd [dernier à ] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",
|
||||
d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},ordinal:function(a){return a+(1===a?"er":"")},week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("gl",{months:"Xaneiro Febreiro Marzo Abril Maio Xuño Xullo Agosto Setembro Outubro Novembro Decembro".split(" "),monthsShort:"Xan. Feb. Mar. Abr. Mai. Xuñ. Xul. Ago. Set. Out. Nov. Dec.".split(" "),weekdays:"Domingo Luns Martes Mércores Xoves Venres Sábado".split(" "),weekdaysShort:"Dom. Lun. Mar. Mér. Xov. Ven. Sáb.".split(" "),
|
||||
weekdaysMin:"Do Lu Ma Mé Xo Ve Sá".split(" "),longDateFormat:{LT:"H:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:function(){return"[hoxe "+(1!==this.hours()?"ás":"á")+"] LT"},nextDay:function(){return"[mañá "+(1!==this.hours()?"ás":"á")+"] LT"},nextWeek:function(){return"dddd ["+(1!==this.hours()?"ás":"a")+"] LT"},lastDay:function(){return"[onte "+(1!==this.hours()?"á":"a")+"] LT"},lastWeek:function(){return"[o] dddd [pasado "+(1!==
|
||||
this.hours()?"ás":"a")+"] LT"},sameElse:"L"},relativeTime:{future:function(a){return"uns segundos"===a?"nuns segundos":"en "+a},past:"hai %s",s:"uns segundos",m:"un minuto",mm:"%d minutos",h:"unha hora",hh:"%d horas",d:"un dÃa",dd:"%d dÃas",M:"un mes",MM:"%d meses",y:"un ano",yy:"%d anos"},ordinal:"%dº",week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){a.lang("he",{months:"×™× ×•×ר;פברו×ר;מרץ;×פריל;מ××™;×™×•× ×™;יולי;×וגוסט;ספטמבר;×וקטובר;× ×•×‘×ž×‘×¨;דצמבר".split(";"),
|
||||
monthsShort:"×™× ×•×³;פבר׳;מרץ;×פר׳;מ××™;×™×•× ×™;יולי;×וג׳;ספט׳;×וק׳;× ×•×‘×³;דצמ׳".split(";"),weekdays:"ר×שון;×©× ×™;שלישי;רביעי;חמישי;שישי;שבת".split(";"),weekdaysShort:"×׳ ב׳ ג׳ ד׳ ה׳ ו׳ ש׳".split(" "),weekdaysMin:"× ×‘ ×’ ד ×” ו ש".split(" "),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D [ב]MMMM YYYY",LLL:"D [ב]MMMM YYYY LT",LLLL:"dddd, D [ב]MMMM YYYY LT",l:"D/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY LT",llll:"ddd, D MMM YYYY LT"},
|
||||
calendar:{sameDay:"[×”×™×•× ×‘Ö¾]LT",nextDay:"[מחר ב־]LT",nextWeek:"dddd [בשעה] LT",lastDay:"[×תמול ב־]LT",lastWeek:"[ביו×] dddd [×”×חרון בשעה] LT",sameElse:"L"},relativeTime:{future:"בעוד %s",past:"×œ×¤× ×™ %s",s:"מספר ×©× ×™×•×ª",m:"דקה",mm:"%d דקות",h:"שעה",hh:function(a){return 2===a?"שעתיי×":a+" שעות"},d:"יו×",dd:function(a){return 2===a?"יומיי×":a+" ימי×"},M:"חודש",MM:function(a){return 2===a?"חודשיי×":a+" חודשי×"},
|
||||
y:"×©× ×”",yy:function(a){return 2===a?"×©× ×ª×™×™×":a+" ×©× ×™×"}}})});(function(a){a(i)})(function(a){var c={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"à¥",8:"८",9:"९","0":"०"},b={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","à¥":"7","८":"8","९":"9","०":"0"};a.lang("hi",{months:"जनवरी फ़रवरी मारà¥à¤š अपà¥à¤°à¥ˆà¤² मई जून जà¥à¤²à¤¾à¤ˆ अगसà¥à¤¤ सितमà¥à¤¬à¤° अकà¥à¤Ÿà¥‚बर नवमà¥à¤¬à¤° दिसमà¥à¤¬à¤°".split(" "),
|
||||
monthsShort:"जन. फ़र. मारà¥à¤š अपà¥à¤°à¥ˆ. मई जून जà¥à¤². अग. सित. अकà¥à¤Ÿà¥‚. नव. दिस.".split(" "),weekdays:"रविवार सोमवार मंगलवार बà¥à¤§à¤µà¤¾à¤° गà¥à¤°à¥‚वार शà¥à¤•à¥à¤°à¤µà¤¾à¤° शनिवार".split(" "),weekdaysShort:"रवि सोम मंगल बà¥à¤§ गà¥à¤°à¥‚ शà¥à¤•à¥à¤° शनि".split(" "),weekdaysMin:"र सो मं बॠगॠशॠश".split(" "),
|
||||
longDateFormat:{LT:"A h:mm बजे",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[आज] LT",nextDay:"[कल] LT",nextWeek:"dddd, LT",lastDay:"[कल] LT",lastWeek:"[पिछले] dddd, LT",sameElse:"L"},relativeTime:{future:"%s में",past:"%s पहले",s:"कà¥à¤› ही कà¥à¤·à¤£",m:"à¤à¤• मिनट",mm:"%d मिनट",h:"à¤à¤• घंटा",hh:"%d घंटे",d:"à¤à¤• दिन",dd:"%d दिन",M:"à¤à¤• महीने",
|
||||
MM:"%d महीने",y:"à¤à¤• वरà¥à¤·",yy:"%d वरà¥à¤·"},preparse:function(a){return a.replace(/[१२३४५६à¥à¥®à¥¯à¥¦]/g,function(a){return b[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return c[a]})},meridiem:function(a){return 4>a?"रात":10>a?"सà¥à¤¬à¤¹":17>a?"दोपहर":20>a?"शाम":"रात"},week:{dow:0,doy:6}})});(function(a){a(i)})(function(a){function c(a,c,b){var d=a+" ";switch(b){case "m":return c?"jedna minuta":"jedne minute";
|
||||
case "mm":return 1===a?d+"minuta":2===a||3===a||4===a?d+"minute":d+"minuta";case "h":return c?"jedan sat":"jednog sata";case "hh":return 1===a?d+"sat":2===a||3===a||4===a?d+"sata":d+"sati";case "dd":return 1===a?d+"dan":d+"dana";case "MM":return 1===a?d+"mjesec":2===a||3===a||4===a?d+"mjeseca":d+"mjeseci";case "yy":return 1===a?d+"godina":2===a||3===a||4===a?d+"godine":d+"godina"}}a.lang("hr",{months:"sjeÄanj veljaÄa ožujak travanj svibanj lipanj srpanj kolovoz rujan listopad studeni prosinac".split(" "),
|
||||
monthsShort:"sje. vel. ožu. tra. svi. lip. srp. kol. ruj. lis. stu. pro.".split(" "),weekdays:"nedjelja ponedjeljak utorak srijeda Äetvrtak petak subota".split(" "),weekdaysShort:"ned. pon. uto. sri. Äet. pet. sub.".split(" "),weekdaysMin:"ne po ut sr Äe pe su".split(" "),longDateFormat:{LT:"H:mm",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";
|
||||
case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[juÄer u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[proÅ¡lu] dddd [u] LT";case 6:return"[proÅ¡le] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[proÅ¡li] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",m:c,mm:c,h:c,hh:c,d:"dan",dd:c,M:"mjesec",MM:c,y:"godinu",yy:c},ordinal:"%d.",week:{dow:1,doy:7}})});
|
||||
(function(a){a(i)})(function(a){function c(a,c,b,d){switch(b){case "s":return d||c?"néhány másodperc":"néhány másodperce";case "m":return"egy"+(d||c?" perc":" perce");case "mm":return a+(d||c?" perc":" perce");case "h":return"egy"+(d||c?" óra":" órája");case "hh":return a+(d||c?" óra":" órája");case "d":return"egy"+(d||c?" nap":" napja");case "dd":return a+(d||c?" nap":" napja");case "M":return"egy"+(d||c?" hónap":" hónapja");case "MM":return a+(d||c?" hónap":" hónapja");case "y":return"egy"+
|
||||
(d||c?" év":" éve");case "yy":return a+(d||c?" év":" éve")}return""}function b(a){return(a?"":"[múlt] ")+"["+d[this.day()]+"] LT[-kor]"}var d="vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton".split(" ");a.lang("hu",{months:"január február március április május június július augusztus szeptember október november december".split(" "),monthsShort:"jan feb márc ápr máj jún júl aug szept okt nov dec".split(" "),weekdays:"vasárnap hétfő kedd szerda csütörtök péntek szombat".split(" "),
|
||||
weekdaysShort:"v h k sze cs p szo".split(" "),longDateFormat:{LT:"H:mm",L:"YYYY.MM.DD.",LL:"YYYY. MMMM D.",LLL:"YYYY. MMMM D., LT",LLLL:"YYYY. MMMM D., dddd LT"},calendar:{sameDay:"[ma] LT[-kor]",nextDay:"[holnap] LT[-kor]",nextWeek:function(){return b.call(this,!0)},lastDay:"[tegnap] LT[-kor]",lastWeek:function(){return b.call(this,!1)},sameElse:"L"},relativeTime:{future:"%s múlva",past:"%s",s:c,m:c,mm:c,h:c,hh:c,d:c,dd:c,M:c,MM:c,y:c,yy:c},ordinal:"%d.",week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){a.lang("id",
|
||||
{months:"Januari Februari Maret April Mei Juni Juli Agustus September Oktober November Desember".split(" "),monthsShort:"Jan Feb Mar Apr Mei Jun Jul Ags Sep Okt Nov Des".split(" "),weekdays:"Minggu Senin Selasa Rabu Kamis Jumat Sabtu".split(" "),weekdaysShort:"Min Sen Sel Rab Kam Jum Sab".split(" "),weekdaysMin:"Mg Sn Sl Rb Km Jm Sb".split(" "),longDateFormat:{LT:"HH.mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] LT",LLLL:"dddd, D MMMM YYYY [pukul] LT"},meridiem:function(a){return 11>
|
||||
a?"pagi":15>a?"siang":19>a?"sore":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Besok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kemarin pukul] LT",lastWeek:"dddd [lalu pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lalu",s:"beberapa detik",m:"semenit",mm:"%d menit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){function c(a){return 11!==a%100&&1===a%
|
||||
10?!1:!0}function b(a,d,g,e){var f=a+" ";switch(g){case "s":return d||e?"nokkrar sekúndur":"nokkrum sekúndum";case "m":return d?"mÃnúta":"mÃnútu";case "mm":return c(a)?f+(d||e?"mÃnútur":"mÃnútum"):d?f+"mÃnúta":f+"mÃnútu";case "hh":return c(a)?f+(d||e?"klukkustundir":"klukkustundum"):f+"klukkustund";case "d":return d?"dagur":e?"dag":"degi";case "dd":return c(a)?d?f+"dagar":f+(e?"daga":"dögum"):d?f+"dagur":f+(e?"dag":"degi");case "M":return d?"mánuður":e?"mánuð":"mánuði";case "MM":return c(a)?
|
||||
d?f+"mánuðir":f+(e?"mánuði":"mánuðum"):d?f+"mánuður":f+(e?"mánuð":"mánuði");case "y":return d||e?"ár":"ári";case "yy":return c(a)?f+(d||e?"ár":"árum"):f+(d||e?"ár":"ári")}}a.lang("is",{months:"janúar febrúar mars aprÃl maà júnà júlà ágúst september október nóvember desember".split(" "),monthsShort:"jan feb mar apr maà jún júl ágú sep okt nóv des".split(" "),weekdays:"sunnudagur mánudagur þriðjudagur miðvikudagur fimmtudagur föstudagur laugardagur".split(" "),weekdaysShort:"sun mán þri mið fim fös lau".split(" "),
|
||||
weekdaysMin:"Su Má Þr Mi Fi Fö La".split(" "),longDateFormat:{LT:"H:mm",L:"DD/MM/YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] LT",LLLL:"dddd, D. MMMM YYYY [kl.] LT"},calendar:{sameDay:"[à dag kl.] LT",nextDay:"[á morgun kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[à gær kl.] LT",lastWeek:"[sÃðasta] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"eftir %s",past:"fyrir %s sÃðan",s:b,m:b,mm:b,h:"klukkustund",hh:b,d:b,dd:b,M:b,MM:b,y:b,yy:b},ordinal:"%d.",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("it",
|
||||
{months:"Gennaio Febbraio Marzo Aprile Maggio Giugno Luglio Agosto Settembre Ottobre Novembre Dicembre".split(" "),monthsShort:"Gen Feb Mar Apr Mag Giu Lug Ago Set Ott Nov Dic".split(" "),weekdays:"Domenica Lunedì Martedì Mercoledì Giovedì Venerdì Sabato".split(" "),weekdaysShort:"Dom Lun Mar Mer Gio Ven Sab".split(" "),weekdaysMin:"D L Ma Me G V S".split(" "),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Oggi alle] LT",
|
||||
nextDay:"[Domani alle] LT",nextWeek:"dddd [alle] LT",lastDay:"[Ieri alle] LT",lastWeek:"[lo scorso] dddd [alle] LT",sameElse:"L"},relativeTime:{future:function(a){return(/^[0-9].+$/.test(a)?"tra":"in")+" "+a},past:"%s fa",s:"secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},ordinal:"%dº",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("ja",{months:"1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月".split(" "),
|
||||
monthsShort:"1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月".split(" "),weekdays:"日曜日 月曜日 ç«æ›œæ—¥ 水曜日 木曜日 金曜日 土曜日".split(" "),weekdaysShort:"æ—¥ 月 ç« æ°´ 木 金 土".split(" "),weekdaysMin:"æ—¥ 月 ç« æ°´ 木 金 土".split(" "),longDateFormat:{LT:"Ah時m分",L:"YYYY/MM/DD",LL:"YYYYå¹´M月Dæ—¥",LLL:"YYYYå¹´M月Dæ—¥LT",LLLL:"YYYYå¹´M月Dæ—¥LT dddd"},meridiem:function(a){return 12>a?"åˆå‰":"åˆå¾Œ"},calendar:{sameDay:"[今日] LT",nextDay:"[明日] LT",
|
||||
nextWeek:"[æ¥é€±]dddd LT",lastDay:"[昨日] LT",lastWeek:"[å‰é€±]dddd LT",sameElse:"L"},relativeTime:{future:"%s後",past:"%så‰",s:"æ•°ç§’",m:"1分",mm:"%d分",h:"1時間",hh:"%d時間",d:"1æ—¥",dd:"%dæ—¥",M:"1ヶ月",MM:"%dヶ月",y:"1å¹´",yy:"%då¹´"}})});(function(a){a(i)})(function(a){a.lang("ka",{months:function(a,b){return{nominative:"იáƒáƒœáƒ•áƒáƒ ი;თებერვáƒáƒšáƒ˜;მáƒáƒ ტი;áƒáƒžáƒ ილი;მáƒáƒ˜áƒ¡áƒ˜;ივნისი;ივლისი;áƒáƒ’ვისტáƒ;სექტემბერი;áƒáƒ¥áƒ¢áƒáƒ›áƒ‘ერი;ნáƒáƒ”მბერი;დეკემბერი".split(";"),
|
||||
accusative:"იáƒáƒœáƒ•áƒáƒ ს;თებერვáƒáƒšáƒ¡;მáƒáƒ ტს;áƒáƒžáƒ ილის;მáƒáƒ˜áƒ¡áƒ¡;ივნისს;ივლისს;áƒáƒ’ვისტს;სექტემბერს;áƒáƒ¥áƒ¢áƒáƒ›áƒ‘ერს;ნáƒáƒ”მბერს;დეკემბერს".split(";")}[/D[oD] *MMMM?/.test(b)?"accusative":"nominative"][a.month()]},monthsShort:"იáƒáƒœ;თებ;მáƒáƒ ;áƒáƒžáƒ ;მáƒáƒ˜;ივნ;ივლ;áƒáƒ’ვ;სექ;áƒáƒ¥áƒ¢;ნáƒáƒ”;დეკ".split(";"),
|
||||
weekdays:function(a,b){return{nominative:"კვირáƒ;áƒáƒ შáƒáƒ‘áƒáƒ—ი;სáƒáƒ›áƒ¨áƒáƒ‘áƒáƒ—ი;áƒáƒ—ხშáƒáƒ‘áƒáƒ—ი;ხუთშáƒáƒ‘áƒáƒ—ი;პáƒáƒ áƒáƒ¡áƒ™áƒ”ვი;შáƒáƒ‘áƒáƒ—ი".split(";"),accusative:"კვირáƒáƒ¡;áƒáƒ შáƒáƒ‘áƒáƒ—ს;სáƒáƒ›áƒ¨áƒáƒ‘áƒáƒ—ს;áƒáƒ—ხშáƒáƒ‘áƒáƒ—ს;ხუთშáƒáƒ‘áƒáƒ—ს;პáƒáƒ áƒáƒ¡áƒ™áƒ”ვს;შáƒáƒ‘áƒáƒ—ს".split(";")}[/(წინáƒ|შემდეგ)/.test(b)?"accusative":"nominative"][a.day()]},
|
||||
weekdaysShort:"კვი;áƒáƒ შ;სáƒáƒ›;áƒáƒ—ხ;ხუთ;პáƒáƒ ;შáƒáƒ‘".split(";"),weekdaysMin:"კვ;áƒáƒ ;სáƒ;áƒáƒ—;ხუ;პáƒ;შáƒ".split(";"),longDateFormat:{LT:"h:mm A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[დღეს] LT[-ზე]",nextDay:"[ხვáƒáƒš] LT[-ზე]",lastDay:"[გუშინ] LT[-ზე]",nextWeek:"[შემდეგ] dddd LT[-ზე]",lastWeek:"[წინáƒ] dddd LT-ზე",sameElse:"L"},
|
||||
relativeTime:{future:function(a){return/(წáƒáƒ›áƒ˜|წუთი|სáƒáƒáƒ—ი|წელი)/.test(a)?a.replace(/ი$/,"ში"):a+"ში"},past:function(a){if(/(წáƒáƒ›áƒ˜|წუთი|სáƒáƒáƒ—ი|დღე|თვე)/.test(a))return a.replace(/(ი|ე)$/,"ის წინ");if(/წელი/.test(a))return a.replace(/წელი$/,"წლის წინ")},s:"რáƒáƒ›áƒ“ენიმე წáƒáƒ›áƒ˜",m:"წუთი",mm:"%d წუთი",h:"სáƒáƒáƒ—ი",hh:"%d სáƒáƒáƒ—ი",
|
||||
d:"დღე",dd:"%d დღე",M:"თვე",MM:"%d თვე",y:"წელი",yy:"%d წელი"},ordinal:function(a){return 0===a?a:1===a?a+"-ლი":20>a||100>=a&&0===a%20||0===a%100?"მე-"+a:a+"-ე"},week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){a.lang("ko",{months:"1ì›” 2ì›” 3ì›” 4ì›” 5ì›” 6ì›” 7ì›” 8ì›” 9ì›” 10ì›” 11ì›” 12ì›”".split(" "),monthsShort:"1ì›” 2ì›” 3ì›” 4ì›” 5ì›” 6ì›” 7ì›” 8ì›” 9ì›” 10ì›” 11ì›” 12ì›”".split(" "),weekdays:"ì¼ìš”ì¼;월요ì¼;화요ì¼;수요ì¼;목요ì¼;금요ì¼;í† ìš”ì¼".split(";"),
|
||||
weekdaysShort:"ì¼;ì›”;í™”;수;목;금;í† ".split(";"),weekdaysMin:"ì¼;ì›”;í™”;수;목;금;í† ".split(";"),longDateFormat:{LT:"A h시 mmë¶„",L:"YYYY.MM.DD",LL:"YYYYë…„ MMMM Dì¼",LLL:"YYYYë…„ MMMM Dì¼ LT",LLLL:"YYYYë…„ MMMM Dì¼ dddd LT"},meridiem:function(a){return 12>a?"ì˜¤ì „":"오후"},calendar:{sameDay:"오늘 LT",nextDay:"ë‚´ì¼ LT",nextWeek:"dddd LT",lastDay:"ì–´ì œ LT",lastWeek:"지난주 dddd LT",sameElse:"L"},relativeTime:{future:"%s 후",past:"%s ì „",s:"몇초",ss:"%dì´ˆ",m:"ì¼ë¶„",
|
||||
mm:"%dë¶„",h:"한시간",hh:"%d시간",d:"하루",dd:"%dì¼",M:"한달",MM:"%d달",y:"ì¼ë…„",yy:"%dë…„"},ordinal:"%dì¼"})});(function(a){a(i)})(function(a){function c(a,c,d){var e=a+" ";d=b[d].split("_");a=c?1===a%10&&11!==a?d[2]:d[3]:1===a%10&&11!==a?d[0]:d[1];return e+a}var b={mm:"minÅ«ti_minÅ«tes_minÅ«te_minÅ«tes",hh:"stundu_stundas_stunda_stundas",dd:"dienu_dienas_diena_dienas",MM:"mÄ“nesi_mÄ“neÅ¡us_mÄ“nesis_mÄ“neÅ¡i",yy:"gadu_gadus_gads_gadi"};a.lang("lv",{months:"janvÄris februÄris marts aprÄ«lis maijs jÅ«nijs jÅ«lijs augusts septembris oktobris novembris decembris".split(" "),
|
||||
monthsShort:"jan feb mar apr mai jūn jūl aug sep okt nov dec".split(" "),weekdays:"svētdiena pirmdiena otrdiena trešdiena ceturtdiena piektdiena sestdiena".split(" "),weekdaysShort:"Sv P O T C Pk S".split(" "),weekdaysMin:"Sv P O T C Pk S".split(" "),longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"YYYY. [gada] D. MMMM",LLL:"YYYY. [gada] D. MMMM, LT",LLLL:"YYYY. [gada] D. MMMM, dddd, LT"},calendar:{sameDay:"[Šodien pulksten] LT",nextDay:"[Rīt pulksten] LT",nextWeek:"dddd [pulksten] LT",lastDay:"[Vakar pulksten] LT",
|
||||
lastWeek:"[PagÄjuÅ¡Ä] dddd [pulksten] LT",sameElse:"L"},relativeTime:{future:"%s vÄ“lÄk",past:"%s agrÄk",s:"dažas sekundes",m:"minÅ«ti",mm:c,h:"stundu",hh:c,d:"dienu",dd:c,M:"mÄ“nesi",MM:c,y:"gadu",yy:c},ordinal:"%d.",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("ml",{months:"ജനàµà´µà´°à´¿ ഫെബàµà´°àµà´µà´°à´¿ മാർചàµà´šàµ à´à´ªàµà´°à´¿àµ½ മേയൠജൂൺ ജൂലൈ à´“à´—à´¸àµà´±àµà´±àµ സെപàµà´±àµà´±à´‚ബർ à´’à´•àµà´Ÿàµ‹à´¬àµ¼ നവംബർ ഡിസംബർ".split(" "),
|
||||
monthsShort:"ജനàµ. ഫെബàµà´°àµ. മാർ. à´à´ªàµà´°à´¿. മേയൠജൂൺ ജൂലൈ. à´“à´—. സെപàµà´±àµà´±. à´’à´•àµà´Ÿàµ‹. നവം. ഡിസം.".split(" "),weekdays:"ഞായറാഴàµà´š തിങàµà´•ളാഴàµà´š ചൊവàµà´µà´¾à´´àµà´š à´¬àµà´§à´¨à´¾à´´àµà´š à´µàµà´¯à´¾à´´à´¾à´´àµà´š വെളàµà´³à´¿à´¯à´¾à´´àµà´š ശനിയാഴàµà´š".split(" "),weekdaysShort:"ഞായർ തിങàµà´•ൾ ചൊവàµà´µ à´¬àµà´§àµ» à´µàµà´¯à´¾à´´à´‚ വെളàµà´³à´¿ ശനി".split(" "),
|
||||
weekdaysMin:"à´žà´¾ തി ചൊ ബൠവàµà´¯à´¾ വെ à´¶".split(" "),longDateFormat:{LT:"A h:mm -à´¨àµ",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[ഇനàµà´¨àµ] LT",nextDay:"[നാളെ] LT",nextWeek:"dddd, LT",lastDay:"[ഇനàµà´¨à´²àµ†] LT",lastWeek:"[à´•à´´à´¿à´žàµà´ž] dddd, LT",sameElse:"L"},relativeTime:{future:"%s à´•à´´à´¿à´žàµà´žàµ",past:"%s à´®àµàµ»à´ªàµ",s:"അൽപ നിമിഷങàµà´™àµ¾",m:"ഒരൠമിനിറàµà´±àµ",
|
||||
mm:"%d മിനിറàµà´±àµ",h:"ഒരൠമണികàµà´•ൂർ",hh:"%d മണികàµà´•ൂർ",d:"ഒരൠദിവസം",dd:"%d ദിവസം",M:"ഒരൠമാസം",MM:"%d മാസം",y:"ഒരൠവർഷം",yy:"%d വർഷം"},meridiem:function(a){return 4>a?"രാതàµà´°à´¿":12>a?"രാവിലെ":17>a?"ഉചàµà´š à´•à´´à´¿à´žàµà´žàµ":20>a?"വൈകàµà´¨àµà´¨àµ‡à´°à´‚":"രാതàµà´°à´¿"}})});(function(a){a(i)})(function(a){var c={1:"१",2:"२",3:"३",
|
||||
4:"४",5:"५",6:"६",7:"à¥",8:"८",9:"९","0":"०"},b={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","à¥":"7","८":"8","९":"9","०":"0"};a.lang("mr",{months:"जानेवारी फेबà¥à¤°à¥à¤µà¤¾à¤°à¥€ मारà¥à¤š à¤à¤ªà¥à¤°à¤¿à¤² मे जून जà¥à¤²à¥ˆ ऑगसà¥à¤Ÿ सपà¥à¤Ÿà¥‡à¤‚बर ऑकà¥à¤Ÿà¥‹à¤¬à¤° नोवà¥à¤¹à¥‡à¤‚बर डिसेंबर".split(" "),monthsShort:"जाने. फेबà¥à¤°à¥. मारà¥à¤š. à¤à¤ªà¥à¤°à¤¿. मे. जून. जà¥à¤²à¥ˆ. ऑग. सपà¥à¤Ÿà¥‡à¤‚. ऑकà¥à¤Ÿà¥‹. नोवà¥à¤¹à¥‡à¤‚. डिसें.".split(" "),
|
||||
weekdays:"रविवार सोमवार मंगळवार बà¥à¤§à¤µà¤¾à¤° गà¥à¤°à¥‚वार शà¥à¤•à¥à¤°à¤µà¤¾à¤° शनिवार".split(" "),weekdaysShort:"रवि सोम मंगळ बà¥à¤§ गà¥à¤°à¥‚ शà¥à¤•à¥à¤° शनि".split(" "),weekdaysMin:"र सो मं बॠगॠशॠश".split(" "),longDateFormat:{LT:"A h:mm वाजता",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},calendar:{sameDay:"[आज] LT",
|
||||
nextDay:"[उदà¥à¤¯à¤¾] LT",nextWeek:"dddd, LT",lastDay:"[काल] LT",lastWeek:"[मागील] dddd, LT",sameElse:"L"},relativeTime:{future:"%s नंतर",past:"%s पूरà¥à¤µà¥€",s:"सेकंद",m:"à¤à¤• मिनिट",mm:"%d मिनिटे",h:"à¤à¤• तास",hh:"%d तास",d:"à¤à¤• दिवस",dd:"%d दिवस",M:"à¤à¤• महिना",MM:"%d महिने",y:"à¤à¤• वरà¥à¤·",yy:"%d वरà¥à¤·à¥‡"},preparse:function(a){return a.replace(/[१२३४५६à¥à¥®à¥¯à¥¦]/g,
|
||||
function(a){return b[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return c[a]})},meridiem:function(a){return 4>a?"रातà¥à¤°à¥€":10>a?"सकाळी":17>a?"दà¥à¤ªà¤¾à¤°à¥€":20>a?"सायंकाळी":"रातà¥à¤°à¥€"},week:{dow:0,doy:6}})});(function(a){a(i)})(function(a){a.lang("ms-my",{months:"Januari Februari Mac April Mei Jun Julai Ogos September Oktober November Disember".split(" "),monthsShort:"Jan Feb Mac Apr Mei Jun Jul Ogs Sep Okt Nov Dis".split(" "),
|
||||
weekdays:"Ahad Isnin Selasa Rabu Khamis Jumaat Sabtu".split(" "),weekdaysShort:"Ahd Isn Sel Rab Kha Jum Sab".split(" "),weekdaysMin:"Ah Is Sl Rb Km Jm Sb".split(" "),longDateFormat:{LT:"HH.mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] LT",LLLL:"dddd, D MMMM YYYY [pukul] LT"},meridiem:function(a){return 11>a?"pagi":15>a?"tengahari":19>a?"petang":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Esok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kelmarin pukul] LT",lastWeek:"dddd [lepas pukul] LT",
|
||||
sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lepas",s:"beberapa saat",m:"seminit",mm:"%d minit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){a.lang("nb",{months:"januar februar mars april mai juni juli august september oktober november desember".split(" "),monthsShort:"jan. feb. mars april mai juni juli aug. sep. okt. nov. des.".split(" "),weekdays:"søndag mandag tirsdag onsdag torsdag fredag lørdag".split(" "),
|
||||
weekdaysShort:"sø. ma. ti. on. to. fr. lø.".split(" "),weekdaysMin:"sø ma ti on to fr lø".split(" "),longDateFormat:{LT:"H.mm",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] LT",LLLL:"dddd D. MMMM YYYY [kl.] LT"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[i går kl.] LT",lastWeek:"[forrige] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"for %s siden",s:"noen sekunder",m:"ett minutt",mm:"%d minutter",h:"en time",
|
||||
hh:"%d timer",d:"en dag",dd:"%d dager",M:"en mÃ¥ned",MM:"%d mÃ¥neder",y:"ett Ã¥r",yy:"%d Ã¥r"},ordinal:"%d.",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){var b={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"à¥",8:"८",9:"९","0":"०"},d={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","à¥":"7","८":"8","९":"9","०":"0"};a.lang("ne",{months:"जनवरी फेबà¥à¤°à¥à¤µà¤°à¥€ मारà¥à¤š अपà¥à¤°à¤¿à¤² मई जà¥à¤¨ जà¥à¤²à¤¾à¤ˆ अगषà¥à¤Ÿ सेपà¥à¤Ÿà¥‡à¤®à¥à¤¬à¤° अकà¥à¤Ÿà¥‹à¤¬à¤° नोà¤à¥‡à¤®à¥à¤¬à¤° डिसेमà¥à¤¬à¤°".split(" "),
|
||||
monthsShort:"जन. फेबà¥à¤°à¥. मारà¥à¤š अपà¥à¤°à¤¿. मई जà¥à¤¨ जà¥à¤²à¤¾à¤ˆ. अग. सेपà¥à¤Ÿ. अकà¥à¤Ÿà¥‹. नोà¤à¥‡. डिसे.".split(" "),weekdays:"आइतबार सोमबार मङà¥à¤—लबार बà¥à¤§à¤¬à¤¾à¤° बिहिबार शà¥à¤•à¥à¤°à¤¬à¤¾à¤° शनिबार".split(" "),weekdaysShort:"आइत. सोम. मङà¥à¤—ल. बà¥à¤§. बिहि. शà¥à¤•à¥à¤°. शनि.".split(" "),weekdaysMin:"आइ. सो. मङॠबà¥. बि. शà¥. श.".split(" "),
|
||||
longDateFormat:{LT:"Aको h:mm बजे",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, LT",LLLL:"dddd, D MMMM YYYY, LT"},preparse:function(a){return a.replace(/[१२३४५६à¥à¥®à¥¯à¥¦]/g,function(a){return d[a]})},postformat:function(a){return a.replace(/\d/g,function(a){return b[a]})},meridiem:function(a){return 3>a?"राती":10>a?"बिहान":15>a?"दिउà¤à¤¸à¥‹":18>a?"बेलà¥à¤•ा":20>a?"साà¤à¤":"राती"},calendar:{sameDay:"[आज] LT",nextDay:"[à¤à¥‹à¤²à¥€] LT",
|
||||
nextWeek:"[आउà¤à¤¦à¥‹] dddd[,] LT",lastDay:"[हिजो] LT",lastWeek:"[गà¤à¤•ो] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%sमा",past:"%s अगाडी",s:"केही समय",m:"à¤à¤• मिनेट",mm:"%d मिनेट",h:"à¤à¤• घणà¥à¤Ÿà¤¾",hh:"%d घणà¥à¤Ÿà¤¾",d:"à¤à¤• दिन",dd:"%d दिन",M:"à¤à¤• महिना",MM:"%d महिना",y:"à¤à¤• बरà¥à¤·",yy:"%d बरà¥à¤·"},week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){var b=
|
||||
"jan. feb. mrt. apr. mei jun. jul. aug. sep. okt. nov. dec.".split(" "),d="jan feb mrt apr mei jun jul aug sep okt nov dec".split(" ");a.lang("nl",{months:"januari februari maart april mei juni juli augustus september oktober november december".split(" "),monthsShort:function(a,e){return/-MMM-/.test(e)?d[a.month()]:b[a.month()]},weekdays:"zondag maandag dinsdag woensdag donderdag vrijdag zaterdag".split(" "),weekdaysShort:"zo. ma. di. wo. do. vr. za.".split(" "),weekdaysMin:"Zo Ma Di Wo Do Vr Za".split(" "),
|
||||
longDateFormat:{LT:"HH:mm",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[Vandaag om] LT",nextDay:"[Morgen om] LT",nextWeek:"dddd [om] LT",lastDay:"[Gisteren om] LT",lastWeek:"[afgelopen] dddd [om] LT",sameElse:"L"},relativeTime:{future:"over %s",past:"%s geleden",s:"een paar seconden",m:"één minuut",mm:"%d minuten",h:"één uur",hh:"%d uur",d:"één dag",dd:"%d dagen",M:"één maand",MM:"%d maanden",y:"één jaar",yy:"%d jaar"},ordinal:function(a){return a+
|
||||
(1===a||8===a||20<=a?"ste":"de")},week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("nn",{months:"januar februar mars april mai juni juli august september oktober november desember".split(" "),monthsShort:"jan feb mar apr mai jun jul aug sep okt nov des".split(" "),weekdays:"sundag måndag tysdag onsdag torsdag fredag laurdag".split(" "),weekdaysShort:"sun mån tys ons tor fre lau".split(" "),weekdaysMin:"su må ty on to fr lø".split(" "),longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY",
|
||||
LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[I dag klokka] LT",nextDay:"[I morgon klokka] LT",nextWeek:"dddd [klokka] LT",lastDay:"[I går klokka] LT",lastWeek:"[Føregående] dddd [klokka] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"for %s siden",s:"noen sekund",m:"ett minutt",mm:"%d minutt",h:"en time",hh:"%d timar",d:"en dag",dd:"%d dagar",M:"en månad",MM:"%d månader",y:"ett år",yy:"%d år"},ordinal:"%d.",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){function b(a){return 5>
|
||||
a%10&&1<a%10&&1!==~~(a/10)}function d(a,e,g){var f=a+" ";switch(g){case "m":return e?"minuta":"minutę";case "mm":return f+(b(a)?"minuty":"minut");case "h":return e?"godzina":"godzinę";case "hh":return f+(b(a)?"godziny":"godzin");case "MM":return f+(b(a)?"miesiące":"miesięcy");case "yy":return f+(b(a)?"lata":"lat")}}var e="styczeń luty marzec kwiecień maj czerwiec lipiec sierpień wrzesień październik listopad grudzień".split(" "),f="stycznia lutego marca kwietnia maja czerwca lipca sierpnia września października listopada grudnia".split(" ");
|
||||
a.lang("pl",{months:function(a,b){return/D MMMM/.test(b)?f[a.month()]:e[a.month()]},monthsShort:"sty lut mar kwi maj cze lip sie wrz paź lis gru".split(" "),weekdays:"niedziela poniedziałek wtorek środa czwartek piątek sobota".split(" "),weekdaysShort:"nie pon wt śr czw pt sb".split(" "),weekdaysMin:"N Pn Wt Śr Cz Pt So".split(" "),longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Dziś o] LT",nextDay:"[Jutro o] LT",
|
||||
nextWeek:"[W] dddd [o] LT",lastDay:"[Wczoraj o] LT",lastWeek:function(){switch(this.day()){case 0:return"[W zeszłą niedzielę o] LT";case 3:return"[W zeszłą środę o] LT";case 6:return"[W zeszłą sobotę o] LT";default:return"[W zeszły] dddd [o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"%s temu",s:"kilka sekund",m:d,mm:d,h:d,hh:d,d:"1 dzień",dd:"%d dni",M:"miesiąc",MM:d,y:"rok",yy:d},ordinal:"%d.",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("pt-br",{months:"Janeiro Fevereiro Março Abril Maio Junho Julho Agosto Setembro Outubro Novembro Dezembro".split(" "),
|
||||
monthsShort:"Jan Fev Mar Abr Mai Jun Jul Ago Set Out Nov Dez".split(" "),weekdays:"Domingo Segunda-feira Terça-feira Quarta-feira Quinta-feira Sexta-feira Sábado".split(" "),weekdaysShort:"Dom Seg Ter Qua Qui Sex Sáb".split(" "),weekdaysMin:"Dom 2ª 3ª 4ª 5ª 6ª Sáb".split(" "),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY LT",LLLL:"dddd, D [de] MMMM [de] YYYY LT"},calendar:{sameDay:"[Hoje à s] LT",nextDay:"[Amanhã à s] LT",nextWeek:"dddd [à s] LT",
|
||||
lastDay:"[Ontem à s] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[Último] dddd [à s] LT":"[Última] dddd [à s] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"%s atrás",s:"segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um mês",MM:"%d meses",y:"um ano",yy:"%d anos"},ordinal:"%dº"})});(function(a){a(i)})(function(a){a.lang("pt",{months:"Janeiro Fevereiro Março Abril Maio Junho Julho Agosto Setembro Outubro Novembro Dezembro".split(" "),
|
||||
monthsShort:"Jan Fev Mar Abr Mai Jun Jul Ago Set Out Nov Dez".split(" "),weekdays:"Domingo Segunda-feira Terça-feira Quarta-feira Quinta-feira Sexta-feira Sábado".split(" "),weekdaysShort:"Dom Seg Ter Qua Qui Sex Sáb".split(" "),weekdaysMin:"Dom 2ª 3ª 4ª 5ª 6ª Sáb".split(" "),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY LT",LLLL:"dddd, D [de] MMMM [de] YYYY LT"},calendar:{sameDay:"[Hoje à s] LT",nextDay:"[Amanhã à s] LT",nextWeek:"dddd [à s] LT",
|
||||
lastDay:"[Ontem à s] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[Último] dddd [à s] LT":"[Última] dddd [à s] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"%s atrás",s:"segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um mês",MM:"%d meses",y:"um ano",yy:"%d anos"},ordinal:"%dº",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("ro",{months:"Ianuarie Februarie Martie Aprilie Mai Iunie Iulie August Septembrie Octombrie Noiembrie Decembrie".split(" "),
|
||||
monthsShort:"Ian Feb Mar Apr Mai Iun Iul Aug Sep Oct Noi Dec".split(" "),weekdays:"Duminică Luni Marţi Miercuri Joi Vineri Sâmbătă".split(" "),weekdaysShort:"Dum Lun Mar Mie Joi Vin Sâm".split(" "),weekdaysMin:"Du Lu Ma Mi Jo Vi Sâ".split(" "),longDateFormat:{LT:"H:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[azi la] LT",nextDay:"[mâine la] LT",nextWeek:"dddd [la] LT",lastDay:"[ieri la] LT",lastWeek:"[fosta] dddd [la] LT",sameElse:"L"},
|
||||
relativeTime:{future:"peste %s",past:"%s în urmă",s:"câteva secunde",m:"un minut",mm:"%d minute",h:"o oră",hh:"%d ore",d:"o zi",dd:"%d zile",M:"o lună",MM:"%d luni",y:"un an",yy:"%d ani"},week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){function b(a,c,d){if("m"===d)return c?"минута":"минуту";c=a+" ";a=+a;d={mm:"минута_минуты_минут",hh:"чаÑ_чаÑа_чаÑов",dd:"день_днÑ_дней",MM:"меÑÑц_меÑÑца_меÑÑцев",yy:"год_года_лет"}[d].split("_");
|
||||
return c+(1===a%10&&11!==a%100?d[0]:2<=a%10&&4>=a%10&&(10>a%100||20<=a%100)?d[1]:d[2])}a.lang("ru",{months:function(a,b){return{nominative:"Ñнварь февраль март апрель май июнь июль авгуÑÑ‚ ÑентÑбрь октÑбрь ноÑбрь декабрь".split(" "),accusative:"ÑÐ½Ð²Ð°Ñ€Ñ Ñ„ÐµÐ²Ñ€Ð°Ð»Ñ Ð¼Ð°Ñ€Ñ‚Ð° Ð°Ð¿Ñ€ÐµÐ»Ñ Ð¼Ð°Ñ Ð¸ÑŽÐ½Ñ Ð¸ÑŽÐ»Ñ Ð°Ð²Ð³ÑƒÑта ÑентÑÐ±Ñ€Ñ Ð¾ÐºÑ‚ÑÐ±Ñ€Ñ Ð½Ð¾ÑÐ±Ñ€Ñ Ð´ÐµÐºÐ°Ð±Ñ€Ñ".split(" ")}[/D[oD]? *MMMM?/.test(b)?
|
||||
"accusative":"nominative"][a.month()]},monthsShort:function(a,b){return{nominative:"Ñнв фев мар апр май июнь июль авг Ñен окт Ð½Ð¾Ñ Ð´ÐµÐº".split(" "),accusative:"Ñнв фев мар апр Ð¼Ð°Ñ Ð¸ÑŽÐ½Ñ Ð¸ÑŽÐ»Ñ Ð°Ð²Ð³ Ñен окт Ð½Ð¾Ñ Ð´ÐµÐº".split(" ")}[/D[oD]? *MMMM?/.test(b)?"accusative":"nominative"][a.month()]},weekdays:function(a,b){return{nominative:"воÑкреÑенье понедельник вторник Ñреда четверг пÑтница Ñуббота".split(" "),
|
||||
accusative:"воÑкреÑенье понедельник вторник Ñреду четверг пÑтницу Ñубботу".split(" ")}[/\[ ?[Вв] ?(?:прошлую|Ñледующую)? ?\] ?dddd/.test(b)?"accusative":"nominative"][a.day()]},weekdaysShort:"вÑк пнд втр Ñрд чтв птн Ñбт".split(" "),weekdaysMin:"Ð²Ñ Ð¿Ð½ вт ÑÑ€ чт пт Ñб".split(" "),longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY г.",LLL:"D MMMM YYYY г., LT",LLLL:"dddd, D MMMM YYYY г., LT"},
|
||||
calendar:{sameDay:"[Ð¡ÐµÐ³Ð¾Ð´Ð½Ñ Ð²] LT",nextDay:"[Завтра в] LT",lastDay:"[Вчера в] LT",nextWeek:function(){return 2===this.day()?"[Во] dddd [в] LT":"[Ð’] dddd [в] LT"},lastWeek:function(){switch(this.day()){case 0:return"[Ð’ прошлое] dddd [в] LT";case 1:case 2:case 4:return"[Ð’ прошлый] dddd [в] LT";case 3:case 5:case 6:return"[Ð’ прошлую] dddd [в] LT"}},sameElse:"L"},relativeTime:{future:"через %s",past:"%s назад",s:"неÑколько Ñекунд",
|
||||
m:b,mm:b,h:"чаÑ",hh:b,d:"день",dd:b,M:"меÑÑц",MM:b,y:"год",yy:b},ordinal:function(a,b){switch(b){case "M":case "d":case "DDD":return a+"-й";case "D":return a+"-го";case "w":case "W":return a+"-Ñ";default:return a}},week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){function b(a,c,d,e){var f=a+" ";switch(d){case "s":return c||e?"pár sekúnd":"pár sekundami";case "m":return c?"minúta":e?"minútu":"minútou";case "mm":return c||e?f+(1<a&&5>a?"minúty":"minút"):f+"minútami";
|
||||
case "h":return c?"hodina":e?"hodinu":"hodinou";case "hh":return c||e?f+(1<a&&5>a?"hodiny":"hodÃn"):f+"hodinami";case "d":return c||e?"deň":"dňom";case "dd":return c||e?f+(1<a&&5>a?"dni":"dnÃ"):f+"dňami";case "M":return c||e?"mesiac":"mesiacom";case "MM":return c||e?f+(1<a&&5>a?"mesiace":"mesiacov"):f+"mesiacmi";case "y":return c||e?"rok":"rokom";case "yy":return c||e?f+(1<a&&5>a?"roky":"rokov"):f+"rokmi"}}var d="január február marec aprÃl máj jún júl august september október november december".split(" "),
|
||||
e="jan feb mar apr máj jún júl aug sep okt nov dec".split(" ");a.lang("sk",{months:d,monthsShort:e,monthsParse:function(a,b){var c,d=[];for(c=0;12>c;c++)d[c]=RegExp("^"+a[c]+"$|^"+b[c]+"$","i");return d}(d,e),weekdays:"nedeľa pondelok utorok streda štvrtok piatok sobota".split(" "),weekdaysShort:"ne po ut st št pi so".split(" "),weekdaysMin:"ne po ut st št pi so".split(" "),longDateFormat:{LT:"H:mm",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd D. MMMM YYYY LT"},calendar:{sameDay:"[dnes o] LT",
|
||||
nextDay:"[zajtra o] LT",nextWeek:function(){switch(this.day()){case 0:return"[v nedeľu o] LT";case 1:case 2:return"[v] dddd [o] LT";case 3:return"[v stredu o] LT";case 4:return"[vo Å¡tvrtok o] LT";case 5:return"[v piatok o] LT";case 6:return"[v sobotu o] LT"}},lastDay:"[vÄera o] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulú nedeľu o] LT";case 1:case 2:return"[minulý] dddd [o] LT";case 3:return"[minulú stredu o] LT";case 4:case 5:return"[minulý] dddd [o] LT";case 6:return"[minulú sobotu o] LT"}},
|
||||
sameElse:"L"},relativeTime:{future:"za %s",past:"pred %s",s:b,m:b,mm:b,h:b,hh:b,d:b,dd:b,M:b,MM:b,y:b,yy:b},ordinal:"%d.",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){function b(a,c,d){var e=a+" ";switch(d){case "m":return c?"ena minuta":"eno minuto";case "mm":return 1===a?e+"minuta":2===a?e+"minuti":3===a||4===a?e+"minute":e+"minut";case "h":return c?"ena ura":"eno uro";case "hh":return 1===a?e+"ura":2===a?e+"uri":3===a||4===a?e+"ure":e+"ur";case "dd":return 1===a?e+"dan":e+"dni";case "MM":return 1===
|
||||
a?e+"mesec":2===a?e+"meseca":3===a||4===a?e+"mesece":e+"mesecev";case "yy":return 1===a?e+"leto":2===a?e+"leti":3===a||4===a?e+"leta":e+"let"}}a.lang("sl",{months:"januar februar marec april maj junij julij avgust september oktober november december".split(" "),monthsShort:"jan. feb. mar. apr. maj. jun. jul. avg. sep. okt. nov. dec.".split(" "),weekdays:"nedelja ponedeljek torek sreda Äetrtek petek sobota".split(" "),weekdaysShort:"ned. pon. tor. sre. Äet. pet. sob.".split(" "),weekdaysMin:"ne po to sr Äe pe so".split(" "),
|
||||
longDateFormat:{LT:"H:mm",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY LT",LLLL:"dddd, D. MMMM YYYY LT"},calendar:{sameDay:"[danes ob] LT",nextDay:"[jutri ob] LT",nextWeek:function(){switch(this.day()){case 0:return"[v] [nedeljo] [ob] LT";case 3:return"[v] [sredo] [ob] LT";case 6:return"[v] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[v] dddd [ob] LT"}},lastDay:"[vÄeraj ob] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[prejÅ¡nja] dddd [ob] LT";case 1:case 2:case 4:case 5:return"[prejÅ¡nji] dddd [ob] LT"}},
|
||||
sameElse:"L"},relativeTime:{future:"Äez %s",past:"%s nazaj",s:"nekaj sekund",m:b,mm:b,h:b,hh:b,d:"en dan",dd:b,M:"en mesec",MM:b,y:"eno leto",yy:b},ordinal:"%d.",week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){a.lang("sq",{months:"Janar Shkurt Mars Prill Maj Qershor Korrik Gusht Shtator Tetor Nëntor Dhjetor".split(" "),monthsShort:"Jan Shk Mar Pri Maj Qer Kor Gus Sht Tet Nën Dhj".split(" "),weekdays:"E Diel;E Hënë;E Marte;E Mërkure;E Enjte;E Premte;E Shtunë".split(";"),weekdaysShort:"Die Hën Mar Mër Enj Pre Sht".split(" "),
|
||||
weekdaysMin:"D H Ma Më E P Sh".split(" "),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[Sot në] LT",nextDay:"[Neser në] LT",nextWeek:"dddd [në] LT",lastDay:"[Dje në] LT",lastWeek:"dddd [e kaluar në] LT",sameElse:"L"},relativeTime:{future:"në %s",past:"%s me parë",s:"disa seconda",m:"një minut",mm:"%d minutea",h:"një orë",hh:"%d orë",d:"një ditë",dd:"%d ditë",M:"një muaj",MM:"%d muaj",y:"një vit",yy:"%d vite"},
|
||||
ordinal:"%d.",week:{dow:1,doy:4}})});(function(a){a(i)})(function(a){a.lang("sv",{months:"januari februari mars april maj juni juli augusti september oktober november december".split(" "),monthsShort:"jan feb mar apr maj jun jul aug sep okt nov dec".split(" "),weekdays:"söndag måndag tisdag onsdag torsdag fredag lördag".split(" "),weekdaysShort:"sön mån tis ons tor fre lör".split(" "),weekdaysMin:"sö må ti on to fr lö".split(" "),longDateFormat:{LT:"HH:mm",L:"YYYY-MM-DD",LL:"D MMMM YYYY",
|
||||
LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[Idag] LT",nextDay:"[Imorgon] LT",lastDay:"[Igår] LT",nextWeek:"dddd LT",lastWeek:"[Förra] dddd[en] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"för %s sedan",s:"några sekunder",m:"en minut",mm:"%d minuter",h:"en timme",hh:"%d timmar",d:"en dag",dd:"%d dagar",M:"en månad",MM:"%d månader",y:"ett år",yy:"%d år"},ordinal:function(a){var b=a%10;return a+(1===~~(a%100/10)?"e":1===b?"a":2===b?"a":"e")},week:{dow:1,doy:4}})});
|
||||
(function(a){a(i)})(function(a){a.lang("th",{months:"มà¸à¸£à¸²à¸„ม;à¸à¸¸à¸¡à¸ าพันธ์;มีนาคม;เมษายน;พฤษภาคม;มิถุนายน;à¸à¸£à¸à¸Žà¸²à¸„ม;สิงหาคม;à¸à¸±à¸™à¸¢à¸²à¸¢à¸™;ตุลาคม;พฤศจิà¸à¸²à¸¢à¸™;ธันวาคม".split(";"),monthsShort:"มà¸à¸£à¸²;à¸à¸¸à¸¡à¸ า;มีนา;เมษา;พฤษภา;มิถุนา;à¸à¸£à¸à¸Žà¸²;สิงหา;à¸à¸±à¸™à¸¢à¸²;ตุลา;พฤศจิà¸à¸²;ธันวา".split(";"),
|
||||
weekdays:"à¸à¸²à¸—ิตย์ จันทร์ à¸à¸±à¸‡à¸„าร พุธ พฤหัสบดี ศุà¸à¸£à¹Œ เสาร์".split(" "),weekdaysShort:"à¸à¸²à¸—ิตย์ จันทร์ à¸à¸±à¸‡à¸„าร พุธ พฤหัส ศุà¸à¸£à¹Œ เสาร์".split(" "),weekdaysMin:"à¸à¸². จ. à¸. พ. พฤ. ศ. ส.".split(" "),longDateFormat:{LT:"H นาฬิà¸à¸² m นาที",L:"YYYY/MM/DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY เวลา LT",LLLL:"วันddddที่ D MMMM YYYY เวลา LT"},
|
||||
meridiem:function(a){return 12>a?"à¸à¹ˆà¸à¸™à¹€à¸—ี่ยง":"หลังเที่ยง"},calendar:{sameDay:"[วันนี้ เวลา] LT",nextDay:"[พรุ่งนี้ เวลา] LT",nextWeek:"dddd[หน้า เวลา] LT",lastDay:"[เมื่à¸à¸§à¸²à¸™à¸™à¸µà¹‰ เวลา] LT",lastWeek:"[วัน]dddd[ที่à¹à¸¥à¹‰à¸§ เวลา] LT",sameElse:"L"},relativeTime:{future:"à¸à¸µà¸ %s",past:"%sที่à¹à¸¥à¹‰à¸§",s:"ไม่à¸à¸µà¹ˆà¸§à¸´à¸™à¸²à¸—ี",
|
||||
m:"1 นาที",mm:"%d นาที",h:"1 ชั่วโมง",hh:"%d ชั่วโมง",d:"1 วัน",dd:"%d วัน",M:"1 เดืà¸à¸™",MM:"%d เดืà¸à¸™",y:"1 ปี",yy:"%d ปี"}})});(function(a){a(i)})(function(a){var b={1:"'inci",5:"'inci",8:"'inci",70:"'inci",80:"'inci",2:"'nci",7:"'nci",20:"'nci",50:"'nci",3:"'üncü",4:"'üncü",100:"'üncü",6:"'ncı",9:"'uncu",10:"'uncu",30:"'uncu",60:"'ıncı",90:"'ıncı"};a.lang("tr",{months:"Ocak Åžubat Mart Nisan Mayıs Haziran Temmuz AÄŸustos Eylül Ekim Kasım Aralık".split(" "),
|
||||
monthsShort:"Oca Şub Mar Nis May Haz Tem Ağu Eyl Eki Kas Ara".split(" "),weekdays:"Pazar Pazartesi Salı Çarşamba Perşembe Cuma Cumartesi".split(" "),weekdaysShort:"Paz Pts Sal Çar Per Cum Cts".split(" "),weekdaysMin:"Pz Pt Sa Ça Pe Cu Ct".split(" "),longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd, D MMMM YYYY LT"},calendar:{sameDay:"[bugün saat] LT",nextDay:"[yarın saat] LT",nextWeek:"[haftaya] dddd [saat] LT",lastDay:"[dün] LT",lastWeek:"[geçen hafta] dddd [saat] LT",
|
||||
sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s önce",s:"birkaç saniye",m:"bir dakika",mm:"%d dakika",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir yıl",yy:"%d yıl"},ordinal:function(a){if(0===a)return a+"'ıncı";var d=a%10;return a+(b[d]||b[a%100-d]||b[100<=a?100:null])},week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){a.lang("tzm-la",{months:"innayr brˤayrˤ marˤsˤ ibrir mayyw ywnyw ywlywz ɣwšt šwtanbir ktˤwbrˤ nwwanbir dwjnbir".split(" "),
|
||||
monthsShort:"innayr brˤayrˤ marˤsˤ ibrir mayyw ywnyw ywlywz É£wÅ¡t Å¡wtanbir ktˤwbrˤ nwwanbir dwjnbir".split(" "),weekdays:"asamas aynas asinas akras akwas asimwas asiá¸yas".split(" "),weekdaysShort:"asamas aynas asinas akras akwas asimwas asiá¸yas".split(" "),weekdaysMin:"asamas aynas asinas akras akwas asimwas asiá¸yas".split(" "),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[asdkh g] LT",nextDay:"[aska g] LT",
|
||||
nextWeek:"dddd [g] LT",lastDay:"[assant g] LT",lastWeek:"dddd [g] LT",sameElse:"L"},relativeTime:{future:"dadkh s yan %s",past:"yan %s",s:"imik",m:"minuá¸",mm:"%d minuá¸",h:"saÉ›a",hh:"%d tassaÉ›in",d:"ass",dd:"%d ossan",M:"ayowr",MM:"%d iyyirn",y:"asgas",yy:"%d isgasn"},week:{dow:6,doy:12}})});(function(a){a(i)})(function(a){a.lang("tzm",{months:"ⵉâµâµâ´°âµ¢âµ” ⴱⵕⴰⵢⵕ ⵎⴰⵕⵚ ⵉⴱⵔⵉⵔ ⵎⴰⵢⵢⵓ ⵢⵓâµâµ¢âµ“ ⵢⵓâµâµ¢âµ“âµ£ ⵖⵓⵛⵜ ⵛⵓⵜⴰâµâ´±âµ‰âµ” ⴽⵟⵓⴱⵕ âµâµ“ⵡⴰâµâ´±âµ‰âµ” ⴷⵓⵊâµâ´±âµ‰âµ”".split(" "),
|
||||
monthsShort:"ⵉâµâµâ´°âµ¢âµ” ⴱⵕⴰⵢⵕ ⵎⴰⵕⵚ ⵉⴱⵔⵉⵔ ⵎⴰⵢⵢⵓ ⵢⵓâµâµ¢âµ“ ⵢⵓâµâµ¢âµ“âµ£ ⵖⵓⵛⵜ ⵛⵓⵜⴰâµâ´±âµ‰âµ” ⴽⵟⵓⴱⵕ âµâµ“ⵡⴰâµâ´±âµ‰âµ” ⴷⵓⵊâµâ´±âµ‰âµ”".split(" "),weekdays:"ⴰⵙⴰⵎⴰⵙ â´°âµ¢âµâ´°âµ™ ⴰⵙⵉâµâ´°âµ™ ⴰⴽⵔⴰⵙ ⴰⴽⵡⴰⵙ ⴰⵙⵉⵎⵡⴰⵙ ⴰⵙⵉⴹⵢⴰⵙ".split(" "),weekdaysShort:"ⴰⵙⴰⵎⴰⵙ â´°âµ¢âµâ´°âµ™ ⴰⵙⵉâµâ´°âµ™ ⴰⴽⵔⴰⵙ ⴰⴽⵡⴰⵙ ⴰⵙⵉⵎⵡⴰⵙ ⴰⵙⵉⴹⵢⴰⵙ".split(" "),
|
||||
weekdaysMin:"ⴰⵙⴰⵎⴰⵙ â´°âµ¢âµâ´°âµ™ ⴰⵙⵉâµâ´°âµ™ ⴰⴽⵔⴰⵙ ⴰⴽⵡⴰⵙ ⴰⵙⵉⵎⵡⴰⵙ ⴰⵙⵉⴹⵢⴰⵙ".split(" "),longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY LT",LLLL:"dddd D MMMM YYYY LT"},calendar:{sameDay:"[ⴰⵙⴷⵅ â´´] LT",nextDay:"[ⴰⵙⴽⴰ â´´] LT",nextWeek:"dddd [â´´] LT",lastDay:"[ⴰⵚⴰâµâµœ â´´] LT",lastWeek:"dddd [â´´] LT",sameElse:"L"},relativeTime:{future:"â´·â´°â´·âµ… âµ™ ⵢⴰⵠ%s",past:"ⵢⴰⵠ%s",
|
||||
s:"ⵉⵎⵉⴽ",m:"ⵎⵉâµâµ“â´º",mm:"%d ⵎⵉâµâµ“â´º",h:"ⵙⴰⵄⴰ",hh:"%d ⵜⴰⵙⵙⴰⵄⵉâµ",d:"ⴰⵙⵙ",dd:"%d oⵙⵙⴰâµ",M:"â´°âµ¢oⵓⵔ",MM:"%d ⵉⵢⵢⵉⵔâµ",y:"ⴰⵙⴳⴰⵙ",yy:"%d ⵉⵙⴳⴰⵙâµ"},week:{dow:6,doy:12}})});(function(a){a(i)})(function(a){function b(a,c,d){if("m"===d)return c?"хвилина":"хвилину";if("h"===d)return c?"година":"годину";c=a+" ";a=+a;d={mm:"хвилина_хвилини_хвилин",hh:"година_години_годин",
|
||||
dd:"день_дні_днів",MM:"міÑÑць_міÑÑці_міÑÑців",yy:"рік_роки_років"}[d].split("_");return c+(1===a%10&&11!==a%100?d[0]:2<=a%10&&4>=a%10&&(10>a%100||20<=a%100)?d[1]:d[2])}function d(a){return function(){return a+"о"+(11===this.hours()?"б":"")+"] LT"}}a.lang("uk",{months:function(a,b){return{nominative:"Ñічень лютий березень квітень травень червень липень Ñерпень вереÑень жовтень лиÑтопад грудень".split(" "),
|
||||
accusative:"ÑÑ–Ñ‡Ð½Ñ Ð»ÑŽÑ‚Ð¾Ð³Ð¾ Ð±ÐµÑ€ÐµÐ·Ð½Ñ ÐºÐ²Ñ–Ñ‚Ð½Ñ Ñ‚Ñ€Ð°Ð²Ð½Ñ Ñ‡ÐµÑ€Ð²Ð½Ñ Ð»Ð¸Ð¿Ð½Ñ ÑÐµÑ€Ð¿Ð½Ñ Ð²ÐµÑ€ÐµÑÐ½Ñ Ð¶Ð¾Ð²Ñ‚Ð½Ñ Ð»Ð¸Ñтопада груднÑ".split(" ")}[/D[oD]? *MMMM?/.test(b)?"accusative":"nominative"][a.month()]},monthsShort:"Ñіч лют бер квіт трав черв лип Ñерп вер жовт лиÑÑ‚ груд".split(" "),weekdays:function(a,b){return{nominative:"Ð½ÐµÐ´Ñ–Ð»Ñ Ð¿Ð¾Ð½ÐµÐ´Ñ–Ð»Ð¾Ðº вівторок Ñереда четвер п’ÑÑ‚Ð½Ð¸Ñ†Ñ Ñубота".split(" "),
|
||||
accusative:"неділю понеділок вівторок Ñереду четвер п’Ñтницю Ñуботу".split(" "),genitive:"неділі понеділка вівторка Ñереди четверга п’Ñтниці Ñуботи".split(" ")}[/(\[[ВвУу]\]) ?dddd/.test(b)?"accusative":/\[?(?:минулої|наÑтупної)? ?\] ?dddd/.test(b)?"genitive":"nominative"][a.day()]},weekdaysShort:"нед пон вів Ñер чет п’ÑÑ‚ Ñуб".split(" "),weekdaysMin:"нд пн вт ÑÑ€ чт пт Ñб".split(" "),
|
||||
longDateFormat:{LT:"HH:mm",L:"DD.MM.YYYY",LL:"D MMMM YYYY Ñ€.",LLL:"D MMMM YYYY Ñ€., LT",LLLL:"dddd, D MMMM YYYY Ñ€., LT"},calendar:{sameDay:d("[Сьогодні "),nextDay:d("[Завтра "),lastDay:d("[Вчора "),nextWeek:d("[У] dddd ["),lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return d("[Минулої] dddd [").call(this);case 1:case 2:case 4:return d("[Минулого] dddd [").call(this)}},sameElse:"L"},relativeTime:{future:"за %s",past:"%s тому",s:"декілька Ñекунд",
|
||||
m:b,mm:b,h:"годину",hh:b,d:"день",dd:b,M:"міÑÑць",MM:b,y:"рік",yy:b},ordinal:function(a,b){switch(b){case "M":case "d":case "DDD":case "w":case "W":return a+"-й";case "D":return a+"-го";default:return a}},week:{dow:1,doy:7}})});(function(a){a(i)})(function(a){a.lang("zh-cn",{months:"一月 二月 三月 四月 五月 å…æœˆ 七月 八月 乿œˆ åæœˆ å一月 å二月".split(" "),monthsShort:"1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月".split(" "),weekdays:"星期日 星期一 星期二 星期三 星期四 星期五 星期å…".split(" "),
|
||||
weekdaysShort:"周日 周一 周二 周三 周四 周五 周å…".split(" "),weekdaysMin:"æ—¥ 一 二 三 å›› 五 å…".split(" "),longDateFormat:{LT:"Ah点mm",L:"YYYYå¹´MMMDæ—¥",LL:"YYYYå¹´MMMDæ—¥",LLL:"YYYYå¹´MMMDæ—¥LT",LLLL:"YYYYå¹´MMMDæ—¥ddddLT",l:"YYYYå¹´MMMDæ—¥",ll:"YYYYå¹´MMMDæ—¥",lll:"YYYYå¹´MMMDæ—¥LT",llll:"YYYYå¹´MMMDæ—¥ddddLT"},meridiem:function(a,b){return 9>a?"早上":11>a&&30>b?"上åˆ":13>a&&30>b?"ä¸åˆ":18>a?"下åˆ":"晚上"},calendar:{sameDay:"[今天]LT",nextDay:"[明天]LT",nextWeek:"[下]ddddLT",
|
||||
lastDay:"[昨天]LT",lastWeek:"[上]ddddLT",sameElse:"L"},ordinal:function(a,b){switch(b){case "d":case "D":case "DDD":return a+"æ—¥";case "M":return a+"月";case "w":case "W":return a+"周";default:return a}},relativeTime:{future:"%s内",past:"%så‰",s:"å‡ ç§’",m:"1分钟",mm:"%d分钟",h:"1å°æ—¶",hh:"%då°æ—¶",d:"1天",dd:"%d天",M:"1个月",MM:"%d个月",y:"1å¹´",yy:"%då¹´"}})});(function(a){a(i)})(function(a){a.lang("zh-tw",{months:"一月 二月 三月 四月 五月 å…æœˆ 七月 八月 乿œˆ åæœˆ å一月 å二月".split(" "),
|
||||
monthsShort:"1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月".split(" "),weekdays:"星期日 星期一 星期二 星期三 星期四 星期五 星期å…".split(" "),weekdaysShort:"週日 週一 週二 週三 週四 週五 週å…".split(" "),weekdaysMin:"æ—¥ 一 二 三 å›› 五 å…".split(" "),longDateFormat:{LT:"Ah點mm",L:"YYYYå¹´MMMDæ—¥",LL:"YYYYå¹´MMMDæ—¥",LLL:"YYYYå¹´MMMDæ—¥LT",LLLL:"YYYYå¹´MMMDæ—¥ddddLT",l:"YYYYå¹´MMMDæ—¥",ll:"YYYYå¹´MMMDæ—¥",lll:"YYYYå¹´MMMDæ—¥LT",llll:"YYYYå¹´MMMDæ—¥ddddLT"},
|
||||
meridiem:function(a,b){return 9>a?"早上":11>a&&30>b?"上åˆ":13>a&&30>b?"ä¸åˆ":18>a?"下åˆ":"晚上"},calendar:{sameDay:"[今天]LT",nextDay:"[明天]LT",nextWeek:"[下]ddddLT",lastDay:"[昨天]LT",lastWeek:"[上]ddddLT",sameElse:"L"},ordinal:function(a,b){switch(b){case "d":case "D":case "DDD":return a+"æ—¥";case "M":return a+"月";case "w":case "W":return a+"週";default:return a}},relativeTime:{future:"%så…§",past:"%så‰",s:"幾秒",m:"一分é˜",mm:"%d分é˜",h:"䏀尿™‚",hh:"%då°æ™‚",d:"一天",
|
||||
dd:"%d天",M:"一個月",MM:"%d個月",y:"一年",yy:"%d年"}})});i.lang("en");N&&(module.exports=i);"undefined"===typeof ender&&(this.moment=i);"function"===typeof define&&define.amd&&define("moment",[],function(){return i})}).call(this);
|
||||
var LZString={_keyStr:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",_f:String.fromCharCode,compressToBase64:function(e){if(null==e)return"";for(var b="",d,h,f,r,l,p,j=0,e=this.compress(e);j<2*e.length;)0==j%2?(d=e.charCodeAt(j/2)>>8,h=e.charCodeAt(j/2)&255,f=j/2+1<e.length?e.charCodeAt(j/2+1)>>8:NaN):(d=e.charCodeAt((j-1)/2)&255,(j+1)/2<e.length?(h=e.charCodeAt((j+1)/2)>>8,f=e.charCodeAt((j+1)/2)&255):h=f=NaN),j+=3,r=d>>2,d=(d&3)<<4|h>>4,l=(h&15)<<2|f>>6,p=f&63,isNaN(h)?l=p=
|
||||
64:isNaN(f)&&(p=64),b=b+this._keyStr.charAt(r)+this._keyStr.charAt(d)+this._keyStr.charAt(l)+this._keyStr.charAt(p);return b},decompressFromBase64:function(e){if(null==e)return"";for(var b="",d=0,h,f,r,l,p,j,s=0,o=this._f,e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");s<e.length;)f=this._keyStr.indexOf(e.charAt(s++)),r=this._keyStr.indexOf(e.charAt(s++)),p=this._keyStr.indexOf(e.charAt(s++)),j=this._keyStr.indexOf(e.charAt(s++)),f=f<<2|r>>4,r=(r&15)<<4|p>>2,l=(p&3)<<6|j,0==d%2?(h=f<<8,64!=p&&(b+=o(h|r)),64!=
|
||||
j&&(h=l<<8)):(b+=o(h|f),64!=p&&(h=r<<8),64!=j&&(b+=o(h|l))),d+=3;return this.decompress(b)},compressToUTF16:function(e){if(null==e)return"";var b="",d,h,f,r=0,l=this._f,e=this.compress(e);for(d=0;d<e.length;d++)switch(h=e.charCodeAt(d),r++){case 0:b+=l((h>>1)+32);f=(h&1)<<14;break;case 1:b+=l(f+(h>>2)+32);f=(h&3)<<13;break;case 2:b+=l(f+(h>>3)+32);f=(h&7)<<12;break;case 3:b+=l(f+(h>>4)+32);f=(h&15)<<11;break;case 4:b+=l(f+(h>>5)+32);f=(h&31)<<10;break;case 5:b+=l(f+(h>>6)+32);f=(h&63)<<9;break;case 6:b+=
|
||||
l(f+(h>>7)+32);f=(h&127)<<8;break;case 7:b+=l(f+(h>>8)+32);f=(h&255)<<7;break;case 8:b+=l(f+(h>>9)+32);f=(h&511)<<6;break;case 9:b+=l(f+(h>>10)+32);f=(h&1023)<<5;break;case 10:b+=l(f+(h>>11)+32);f=(h&2047)<<4;break;case 11:b+=l(f+(h>>12)+32);f=(h&4095)<<3;break;case 12:b+=l(f+(h>>13)+32);f=(h&8191)<<2;break;case 13:b+=l(f+(h>>14)+32);f=(h&16383)<<1;break;case 14:b+=l(f+(h>>15)+32,(h&32767)+32),r=0}return b+l(f+32)},decompressFromUTF16:function(e){if(null==e)return"";for(var b="",d,h,f=0,r=0,l=this._f;r<
|
||||
e.length;){h=e.charCodeAt(r)-32;switch(f++){case 0:d=h<<1;break;case 1:b+=l(d|h>>14);d=(h&16383)<<2;break;case 2:b+=l(d|h>>13);d=(h&8191)<<3;break;case 3:b+=l(d|h>>12);d=(h&4095)<<4;break;case 4:b+=l(d|h>>11);d=(h&2047)<<5;break;case 5:b+=l(d|h>>10);d=(h&1023)<<6;break;case 6:b+=l(d|h>>9);d=(h&511)<<7;break;case 7:b+=l(d|h>>8);d=(h&255)<<8;break;case 8:b+=l(d|h>>7);d=(h&127)<<9;break;case 9:b+=l(d|h>>6);d=(h&63)<<10;break;case 10:b+=l(d|h>>5);d=(h&31)<<11;break;case 11:b+=l(d|h>>4);d=(h&15)<<12;break;
|
||||
case 12:b+=l(d|h>>3);d=(h&7)<<13;break;case 13:b+=l(d|h>>2);d=(h&3)<<14;break;case 14:b+=l(d|h>>1);d=(h&1)<<15;break;case 15:b+=l(d|h),f=0}r++}return this.decompress(b)},compress:function(e){if(null==e)return"";var b,d,h={},f={},r="",l="",p="",j=2,s=3,o=2,q="",n=0,m=0,t,u=this._f;for(t=0;t<e.length;t+=1)if(r=e.charAt(t),Object.prototype.hasOwnProperty.call(h,r)||(h[r]=s++,f[r]=!0),l=p+r,Object.prototype.hasOwnProperty.call(h,l))p=l;else{if(Object.prototype.hasOwnProperty.call(f,p)){if(256>p.charCodeAt(0)){for(b=
|
||||
0;b<o;b++)n<<=1,15==m?(m=0,q+=u(n),n=0):m++;d=p.charCodeAt(0);for(b=0;8>b;b++)n=n<<1|d&1,15==m?(m=0,q+=u(n),n=0):m++,d>>=1}else{d=1;for(b=0;b<o;b++)n=n<<1|d,15==m?(m=0,q+=u(n),n=0):m++,d=0;d=p.charCodeAt(0);for(b=0;16>b;b++)n=n<<1|d&1,15==m?(m=0,q+=u(n),n=0):m++,d>>=1}j--;0==j&&(j=Math.pow(2,o),o++);delete f[p]}else{d=h[p];for(b=0;b<o;b++)n=n<<1|d&1,15==m?(m=0,q+=u(n),n=0):m++,d>>=1}j--;0==j&&(j=Math.pow(2,o),o++);h[l]=s++;p=""+r}if(""!==p){if(Object.prototype.hasOwnProperty.call(f,p)){if(256>p.charCodeAt(0)){for(b=
|
||||
0;b<o;b++)n<<=1,15==m?(m=0,q+=u(n),n=0):m++;d=p.charCodeAt(0);for(b=0;8>b;b++)n=n<<1|d&1,15==m?(m=0,q+=u(n),n=0):m++,d>>=1}else{d=1;for(b=0;b<o;b++)n=n<<1|d,15==m?(m=0,q+=u(n),n=0):m++,d=0;d=p.charCodeAt(0);for(b=0;16>b;b++)n=n<<1|d&1,15==m?(m=0,q+=u(n),n=0):m++,d>>=1}j--;0==j&&(j=Math.pow(2,o),o++);delete f[p]}else{d=h[p];for(b=0;b<o;b++)n=n<<1|d&1,15==m?(m=0,q+=u(n),n=0):m++,d>>=1}j--;0==j&&(Math.pow(2,o),o++)}d=2;for(b=0;b<o;b++)n=n<<1|d&1,15==m?(m=0,q+=u(n),n=0):m++,d>>=1;for(;;)if(n<<=1,15==
|
||||
m){q+=u(n);break}else m++;return q},decompress:function(e){if(null==e)return"";for(var b=[],d=4,h=4,f=3,r="",l="",p,j,s,o,q,n=this._f,m=e.charCodeAt(0),t=32768,u=1,l=0;3>l;l+=1)b[l]=l;r=0;s=Math.pow(2,2);for(o=1;o!=s;)j=m&t,t>>=1,0==t&&(t=32768,m=e.charCodeAt(u++)),r|=(0<j?1:0)*o,o<<=1;switch(r){case 0:r=0;s=Math.pow(2,8);for(o=1;o!=s;)j=m&t,t>>=1,0==t&&(t=32768,m=e.charCodeAt(u++)),r|=(0<j?1:0)*o,o<<=1;q=n(r);break;case 1:r=0;s=Math.pow(2,16);for(o=1;o!=s;)j=m&t,t>>=1,0==t&&(t=32768,m=e.charCodeAt(u++)),
|
||||
r|=(0<j?1:0)*o,o<<=1;q=n(r);break;case 2:return""}for(p=l=b[3]=q;;){r=0;s=Math.pow(2,f);for(o=1;o!=s;)j=m&t,t>>=1,0==t&&(t=32768,m=e.charCodeAt(u++)),r|=(0<j?1:0)*o,o<<=1;switch(q=r){case 0:r=0;s=Math.pow(2,8);for(o=1;o!=s;)j=m&t,t>>=1,0==t&&(t=32768,m=e.charCodeAt(u++)),r|=(0<j?1:0)*o,o<<=1;b[h++]=n(r);q=h-1;d--;break;case 1:r=0;s=Math.pow(2,16);for(o=1;o!=s;)j=m&t,t>>=1,0==t&&(t=32768,m=e.charCodeAt(u++)),r|=(0<j?1:0)*o,o<<=1;b[h++]=n(r);q=h-1;d--;break;case 2:return l}0==d&&(d=Math.pow(2,f),f++);
|
||||
if(b[q])r=b[q];else if(q===h)r=p+p.charAt(0);else return null;l+=r;b[h++]=p+r.charAt(0);d--;p=r;0==d&&(d=Math.pow(2,f),f++)}}};
|
||||
@@ -1,8 +1,8 @@
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.plugins.setLang( 'button', 'en', {
|
||||
selectedLabel: '%1 (Selected)'
|
||||
} );
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.plugins.setLang( 'button', 'en', {
|
||||
selectedLabel: '%1 (Selected)'
|
||||
} );
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.plugins.setLang( 'button', 'hu', {
|
||||
selectedLabel: '%1 (Kiválasztva)'
|
||||
} );
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.plugins.setLang( 'button', 'hu', {
|
||||
selectedLabel: '%1 (Kiválasztva)'
|
||||
} );
|
||||
|
||||
@@ -1,379 +1,379 @@
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
( function() {
|
||||
var template = '<a id="{id}"' +
|
||||
' class="cke_button cke_button__{name} cke_button_{state} {cls}"' +
|
||||
( CKEDITOR.env.gecko && CKEDITOR.env.version >= 10900 && !CKEDITOR.env.hc ? '' : ' href="javascript:void(\'{titleJs}\')"' ) +
|
||||
' title="{title}"' +
|
||||
' tabindex="-1"' +
|
||||
' hidefocus="true"' +
|
||||
' role="button"' +
|
||||
' aria-labelledby="{id}_label"' +
|
||||
' aria-haspopup="{hasArrow}"' +
|
||||
' aria-disabled="{ariaDisabled}"';
|
||||
|
||||
// Some browsers don't cancel key events in the keydown but in the
|
||||
// keypress.
|
||||
// TODO: Check if really needed for Gecko+Mac.
|
||||
if ( CKEDITOR.env.opera || ( CKEDITOR.env.gecko && CKEDITOR.env.mac ) )
|
||||
template += ' onkeypress="return false;"';
|
||||
|
||||
// With Firefox, we need to force the button to redraw, otherwise it
|
||||
// will remain in the focus state.
|
||||
if ( CKEDITOR.env.gecko )
|
||||
template += ' onblur="this.style.cssText = this.style.cssText;"';
|
||||
|
||||
template += ' onkeydown="return CKEDITOR.tools.callFunction({keydownFn},event);"' +
|
||||
' onfocus="return CKEDITOR.tools.callFunction({focusFn},event);" ' +
|
||||
' onmousedown="return CKEDITOR.tools.callFunction({mousedownFn},event);" ' +
|
||||
( CKEDITOR.env.ie ? 'onclick="return false;" onmouseup' : 'onclick' ) + // #188
|
||||
'="CKEDITOR.tools.callFunction({clickFn},this);return false;">' +
|
||||
'<span class="cke_button_icon cke_button__{iconName}_icon" style="{style}"';
|
||||
|
||||
|
||||
template += '> </span>' +
|
||||
'<span id="{id}_label" class="cke_button_label cke_button__{name}_label" aria-hidden="false">{label}</span>' +
|
||||
'{arrowHtml}' +
|
||||
'</a>';
|
||||
|
||||
var templateArrow = '<span class="cke_button_arrow">' +
|
||||
// BLACK DOWN-POINTING TRIANGLE
|
||||
( CKEDITOR.env.hc ? '▼' : '' ) +
|
||||
'</span>';
|
||||
|
||||
var btnArrowTpl = CKEDITOR.addTemplate( 'buttonArrow', templateArrow ),
|
||||
btnTpl = CKEDITOR.addTemplate( 'button', template );
|
||||
|
||||
CKEDITOR.plugins.add( 'button', {
|
||||
lang: 'ca,cs,el,en,en-gb,fa,fr,gl,hu,ja,km,nl,pl,pt,pt-br,ru,sl,sv,uk,zh-cn', // %REMOVE_LINE_CORE%
|
||||
beforeInit: function( editor ) {
|
||||
editor.ui.addHandler( CKEDITOR.UI_BUTTON, CKEDITOR.ui.button.handler );
|
||||
}
|
||||
} );
|
||||
|
||||
/**
|
||||
* Button UI element.
|
||||
*
|
||||
* @readonly
|
||||
* @property {String} [='button']
|
||||
* @member CKEDITOR
|
||||
*/
|
||||
CKEDITOR.UI_BUTTON = 'button';
|
||||
|
||||
/**
|
||||
* Represents a button UI element. This class should not be called directly. To
|
||||
* create new buttons use {@link CKEDITOR.ui#addButton} instead.
|
||||
*
|
||||
* @class
|
||||
* @constructor Creates a button class instance.
|
||||
* @param {Object} definition The button definition.
|
||||
*/
|
||||
CKEDITOR.ui.button = function( definition ) {
|
||||
CKEDITOR.tools.extend( this, definition,
|
||||
// Set defaults.
|
||||
{
|
||||
title: definition.label,
|
||||
click: definition.click ||
|
||||
function( editor ) {
|
||||
editor.execCommand( definition.command );
|
||||
}
|
||||
} );
|
||||
|
||||
this._ = {};
|
||||
};
|
||||
|
||||
/**
|
||||
* Represents button handler object.
|
||||
*
|
||||
* @class
|
||||
* @singleton
|
||||
* @extends CKEDITOR.ui.handlerDefinition
|
||||
*/
|
||||
CKEDITOR.ui.button.handler = {
|
||||
/**
|
||||
* Transforms a button definition in a {@link CKEDITOR.ui.button} instance.
|
||||
*
|
||||
* @member CKEDITOR.ui.button.handler
|
||||
* @param {Object} definition
|
||||
* @returns {CKEDITOR.ui.button}
|
||||
*/
|
||||
create: function( definition ) {
|
||||
return new CKEDITOR.ui.button( definition );
|
||||
}
|
||||
};
|
||||
|
||||
/** @class CKEDITOR.ui.button */
|
||||
CKEDITOR.ui.button.prototype = {
|
||||
/**
|
||||
* Renders the button.
|
||||
*
|
||||
* @param {CKEDITOR.editor} editor The editor instance which this button is
|
||||
* to be used by.
|
||||
* @param {Array} output The output array to which append the HTML relative
|
||||
* to this button.
|
||||
*/
|
||||
render: function( editor, output ) {
|
||||
var env = CKEDITOR.env,
|
||||
id = this._.id = CKEDITOR.tools.getNextId(),
|
||||
stateName = '',
|
||||
command = this.command,
|
||||
// Get the command name.
|
||||
clickFn;
|
||||
|
||||
this._.editor = editor;
|
||||
|
||||
var instance = {
|
||||
id: id,
|
||||
button: this,
|
||||
editor: editor,
|
||||
focus: function() {
|
||||
var element = CKEDITOR.document.getById( id );
|
||||
element.focus();
|
||||
},
|
||||
execute: function() {
|
||||
this.button.click( editor );
|
||||
},
|
||||
attach: function( editor ) {
|
||||
this.button.attach( editor );
|
||||
}
|
||||
};
|
||||
|
||||
var keydownFn = CKEDITOR.tools.addFunction( function( ev ) {
|
||||
if ( instance.onkey ) {
|
||||
ev = new CKEDITOR.dom.event( ev );
|
||||
return ( instance.onkey( instance, ev.getKeystroke() ) !== false );
|
||||
}
|
||||
} );
|
||||
|
||||
var focusFn = CKEDITOR.tools.addFunction( function( ev ) {
|
||||
var retVal;
|
||||
|
||||
if ( instance.onfocus )
|
||||
retVal = ( instance.onfocus( instance, new CKEDITOR.dom.event( ev ) ) !== false );
|
||||
|
||||
// FF2: prevent focus event been bubbled up to editor container, which caused unexpected editor focus.
|
||||
if ( CKEDITOR.env.gecko && CKEDITOR.env.version < 10900 )
|
||||
ev.preventBubble();
|
||||
return retVal;
|
||||
} );
|
||||
|
||||
var selLocked = 0;
|
||||
|
||||
var mousedownFn = CKEDITOR.tools.addFunction( function() {
|
||||
// Opera: lock to prevent loosing editable text selection when clicking on button.
|
||||
if ( CKEDITOR.env.opera ) {
|
||||
var edt = editor.editable();
|
||||
if ( edt.isInline() && edt.hasFocus ) {
|
||||
editor.lockSelection();
|
||||
selLocked = 1;
|
||||
}
|
||||
}
|
||||
} );
|
||||
|
||||
instance.clickFn = clickFn = CKEDITOR.tools.addFunction( function() {
|
||||
|
||||
// Restore locked selection in Opera.
|
||||
if ( selLocked ) {
|
||||
editor.unlockSelection( 1 );
|
||||
selLocked = 0;
|
||||
}
|
||||
|
||||
instance.execute();
|
||||
} );
|
||||
|
||||
|
||||
// Indicate a mode sensitive button.
|
||||
if ( this.modes ) {
|
||||
var modeStates = {};
|
||||
|
||||
function updateState() {
|
||||
// "this" is a CKEDITOR.ui.button instance.
|
||||
|
||||
var mode = editor.mode;
|
||||
|
||||
if ( mode ) {
|
||||
// Restore saved button state.
|
||||
var state = this.modes[ mode ] ? modeStates[ mode ] != undefined ? modeStates[ mode ] : CKEDITOR.TRISTATE_OFF : CKEDITOR.TRISTATE_DISABLED;
|
||||
|
||||
state = editor.readOnly && !this.readOnly ? CKEDITOR.TRISTATE_DISABLED : state;
|
||||
|
||||
this.setState( state );
|
||||
|
||||
// Let plugin to disable button.
|
||||
if ( this.refresh )
|
||||
this.refresh();
|
||||
}
|
||||
}
|
||||
|
||||
editor.on( 'beforeModeUnload', function() {
|
||||
if ( editor.mode && this._.state != CKEDITOR.TRISTATE_DISABLED )
|
||||
modeStates[ editor.mode ] = this._.state;
|
||||
}, this );
|
||||
|
||||
// Update status when activeFilter, mode or readOnly changes.
|
||||
editor.on( 'activeFilterChange', updateState, this );
|
||||
editor.on( 'mode', updateState, this );
|
||||
// If this button is sensitive to readOnly state, update it accordingly.
|
||||
!this.readOnly && editor.on( 'readOnly', updateState, this );
|
||||
|
||||
} else if ( command ) {
|
||||
// Get the command instance.
|
||||
command = editor.getCommand( command );
|
||||
|
||||
if ( command ) {
|
||||
command.on( 'state', function() {
|
||||
this.setState( command.state );
|
||||
}, this );
|
||||
|
||||
stateName += ( command.state == CKEDITOR.TRISTATE_ON ? 'on' : command.state == CKEDITOR.TRISTATE_DISABLED ? 'disabled' : 'off' );
|
||||
}
|
||||
}
|
||||
|
||||
// For button that has text-direction awareness on selection path.
|
||||
if ( this.directional ) {
|
||||
editor.on( 'contentDirChanged', function( evt ) {
|
||||
var el = CKEDITOR.document.getById( this._.id ),
|
||||
icon = el.getFirst();
|
||||
|
||||
var pathDir = evt.data;
|
||||
|
||||
// Make a minor direction change to become style-able for the skin icon.
|
||||
if ( pathDir != editor.lang.dir )
|
||||
el.addClass( 'cke_' + pathDir );
|
||||
else
|
||||
el.removeClass( 'cke_ltr' ).removeClass( 'cke_rtl' );
|
||||
|
||||
// Inline style update for the plugin icon.
|
||||
icon.setAttribute( 'style', CKEDITOR.skin.getIconStyle( iconName, pathDir == 'rtl', this.icon, this.iconOffset ) );
|
||||
}, this );
|
||||
}
|
||||
|
||||
if ( !command )
|
||||
stateName += 'off';
|
||||
|
||||
var name = this.name || this.command,
|
||||
iconName = name;
|
||||
|
||||
// Check if we're pointing to an icon defined by another command. (#9555)
|
||||
if ( this.icon && !( /\./ ).test( this.icon ) ) {
|
||||
iconName = this.icon;
|
||||
this.icon = null;
|
||||
}
|
||||
|
||||
var params = {
|
||||
id: id,
|
||||
name: name,
|
||||
iconName: iconName,
|
||||
label: this.label,
|
||||
cls: this.className || '',
|
||||
state: stateName,
|
||||
ariaDisabled: stateName == 'disabled' ? 'true' : 'false',
|
||||
title: this.title,
|
||||
titleJs: env.gecko && env.version >= 10900 && !env.hc ? '' : ( this.title || '' ).replace( "'", '' ),
|
||||
hasArrow: this.hasArrow ? 'true' : 'false',
|
||||
keydownFn: keydownFn,
|
||||
mousedownFn: mousedownFn,
|
||||
focusFn: focusFn,
|
||||
clickFn: clickFn,
|
||||
style: CKEDITOR.skin.getIconStyle( iconName, ( editor.lang.dir == 'rtl' ), this.icon, this.iconOffset ),
|
||||
arrowHtml: this.hasArrow ? btnArrowTpl.output() : ''
|
||||
};
|
||||
|
||||
btnTpl.output( params, output );
|
||||
|
||||
if ( this.onRender )
|
||||
this.onRender();
|
||||
|
||||
return instance;
|
||||
},
|
||||
|
||||
/**
|
||||
* @todo
|
||||
*/
|
||||
setState: function( state ) {
|
||||
if ( this._.state == state )
|
||||
return false;
|
||||
|
||||
this._.state = state;
|
||||
|
||||
var element = CKEDITOR.document.getById( this._.id );
|
||||
|
||||
if ( element ) {
|
||||
element.setState( state, 'cke_button' );
|
||||
|
||||
state == CKEDITOR.TRISTATE_DISABLED ?
|
||||
element.setAttribute( 'aria-disabled', true ) :
|
||||
element.removeAttribute( 'aria-disabled' );
|
||||
|
||||
if ( !this.hasArrow ) {
|
||||
// Note: aria-pressed attribute should not be added to menuButton instances. (#11331)
|
||||
state == CKEDITOR.TRISTATE_ON ?
|
||||
element.setAttribute( 'aria-pressed', true ) :
|
||||
element.removeAttribute( 'aria-pressed' );
|
||||
} else {
|
||||
var newLabel = state == CKEDITOR.TRISTATE_ON ?
|
||||
this._.editor.lang.button.selectedLabel.replace( /%1/g, this.label ) : this.label;
|
||||
CKEDITOR.document.getById( this._.id + '_label' ).setText( newLabel );
|
||||
}
|
||||
|
||||
return true;
|
||||
} else
|
||||
return false;
|
||||
},
|
||||
|
||||
/**
|
||||
* @todo
|
||||
*/
|
||||
getState: function( state ) {
|
||||
return this._.state;
|
||||
},
|
||||
|
||||
/**
|
||||
* Returns this button's {@link CKEDITOR.feature} instance.
|
||||
*
|
||||
* It may be this button instance if it has at least one of
|
||||
* `allowedContent` and `requiredContent` properties. Otherwise,
|
||||
* if command is bound to this button by `command` property, then
|
||||
* that command will be returned.
|
||||
*
|
||||
* This method implements {@link CKEDITOR.feature#toFeature} interface method.
|
||||
*
|
||||
* @since 4.1
|
||||
* @param {CKEDITOR.editor} Editor instance.
|
||||
* @returns {CKEDITOR.feature} The feature.
|
||||
*/
|
||||
toFeature: function( editor ) {
|
||||
if ( this._.feature )
|
||||
return this._.feature;
|
||||
|
||||
var feature = this;
|
||||
|
||||
// If button isn't a feature, return command if is bound.
|
||||
if ( !this.allowedContent && !this.requiredContent && this.command )
|
||||
feature = editor.getCommand( this.command ) || feature;
|
||||
|
||||
return this._.feature = feature;
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Adds a button definition to the UI elements list.
|
||||
*
|
||||
* editorInstance.ui.addButton( 'MyBold', {
|
||||
* label: 'My Bold',
|
||||
* command: 'bold',
|
||||
* toolbar: 'basicstyles,1'
|
||||
* } );
|
||||
*
|
||||
* @member CKEDITOR.ui
|
||||
* @param {String} name The button name.
|
||||
* @param {Object} definition The button definition.
|
||||
*/
|
||||
CKEDITOR.ui.prototype.addButton = function( name, definition ) {
|
||||
this.add( name, CKEDITOR.UI_BUTTON, definition );
|
||||
};
|
||||
|
||||
} )();
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
( function() {
|
||||
var template = '<a id="{id}"' +
|
||||
' class="cke_button cke_button__{name} cke_button_{state} {cls}"' +
|
||||
( CKEDITOR.env.gecko && CKEDITOR.env.version >= 10900 && !CKEDITOR.env.hc ? '' : ' href="javascript:void(\'{titleJs}\')"' ) +
|
||||
' title="{title}"' +
|
||||
' tabindex="-1"' +
|
||||
' hidefocus="true"' +
|
||||
' role="button"' +
|
||||
' aria-labelledby="{id}_label"' +
|
||||
' aria-haspopup="{hasArrow}"' +
|
||||
' aria-disabled="{ariaDisabled}"';
|
||||
|
||||
// Some browsers don't cancel key events in the keydown but in the
|
||||
// keypress.
|
||||
// TODO: Check if really needed for Gecko+Mac.
|
||||
if ( CKEDITOR.env.opera || ( CKEDITOR.env.gecko && CKEDITOR.env.mac ) )
|
||||
template += ' onkeypress="return false;"';
|
||||
|
||||
// With Firefox, we need to force the button to redraw, otherwise it
|
||||
// will remain in the focus state.
|
||||
if ( CKEDITOR.env.gecko )
|
||||
template += ' onblur="this.style.cssText = this.style.cssText;"';
|
||||
|
||||
template += ' onkeydown="return CKEDITOR.tools.callFunction({keydownFn},event);"' +
|
||||
' onfocus="return CKEDITOR.tools.callFunction({focusFn},event);" ' +
|
||||
' onmousedown="return CKEDITOR.tools.callFunction({mousedownFn},event);" ' +
|
||||
( CKEDITOR.env.ie ? 'onclick="return false;" onmouseup' : 'onclick' ) + // #188
|
||||
'="CKEDITOR.tools.callFunction({clickFn},this);return false;">' +
|
||||
'<span class="cke_button_icon cke_button__{iconName}_icon" style="{style}"';
|
||||
|
||||
|
||||
template += '> </span>' +
|
||||
'<span id="{id}_label" class="cke_button_label cke_button__{name}_label" aria-hidden="false">{label}</span>' +
|
||||
'{arrowHtml}' +
|
||||
'</a>';
|
||||
|
||||
var templateArrow = '<span class="cke_button_arrow">' +
|
||||
// BLACK DOWN-POINTING TRIANGLE
|
||||
( CKEDITOR.env.hc ? '▼' : '' ) +
|
||||
'</span>';
|
||||
|
||||
var btnArrowTpl = CKEDITOR.addTemplate( 'buttonArrow', templateArrow ),
|
||||
btnTpl = CKEDITOR.addTemplate( 'button', template );
|
||||
|
||||
CKEDITOR.plugins.add( 'button', {
|
||||
lang: 'ca,cs,el,en,en-gb,fa,fr,gl,hu,ja,km,nl,pl,pt,pt-br,ru,sl,sv,uk,zh-cn', // %REMOVE_LINE_CORE%
|
||||
beforeInit: function( editor ) {
|
||||
editor.ui.addHandler( CKEDITOR.UI_BUTTON, CKEDITOR.ui.button.handler );
|
||||
}
|
||||
} );
|
||||
|
||||
/**
|
||||
* Button UI element.
|
||||
*
|
||||
* @readonly
|
||||
* @property {String} [='button']
|
||||
* @member CKEDITOR
|
||||
*/
|
||||
CKEDITOR.UI_BUTTON = 'button';
|
||||
|
||||
/**
|
||||
* Represents a button UI element. This class should not be called directly. To
|
||||
* create new buttons use {@link CKEDITOR.ui#addButton} instead.
|
||||
*
|
||||
* @class
|
||||
* @constructor Creates a button class instance.
|
||||
* @param {Object} definition The button definition.
|
||||
*/
|
||||
CKEDITOR.ui.button = function( definition ) {
|
||||
CKEDITOR.tools.extend( this, definition,
|
||||
// Set defaults.
|
||||
{
|
||||
title: definition.label,
|
||||
click: definition.click ||
|
||||
function( editor ) {
|
||||
editor.execCommand( definition.command );
|
||||
}
|
||||
} );
|
||||
|
||||
this._ = {};
|
||||
};
|
||||
|
||||
/**
|
||||
* Represents button handler object.
|
||||
*
|
||||
* @class
|
||||
* @singleton
|
||||
* @extends CKEDITOR.ui.handlerDefinition
|
||||
*/
|
||||
CKEDITOR.ui.button.handler = {
|
||||
/**
|
||||
* Transforms a button definition in a {@link CKEDITOR.ui.button} instance.
|
||||
*
|
||||
* @member CKEDITOR.ui.button.handler
|
||||
* @param {Object} definition
|
||||
* @returns {CKEDITOR.ui.button}
|
||||
*/
|
||||
create: function( definition ) {
|
||||
return new CKEDITOR.ui.button( definition );
|
||||
}
|
||||
};
|
||||
|
||||
/** @class CKEDITOR.ui.button */
|
||||
CKEDITOR.ui.button.prototype = {
|
||||
/**
|
||||
* Renders the button.
|
||||
*
|
||||
* @param {CKEDITOR.editor} editor The editor instance which this button is
|
||||
* to be used by.
|
||||
* @param {Array} output The output array to which append the HTML relative
|
||||
* to this button.
|
||||
*/
|
||||
render: function( editor, output ) {
|
||||
var env = CKEDITOR.env,
|
||||
id = this._.id = CKEDITOR.tools.getNextId(),
|
||||
stateName = '',
|
||||
command = this.command,
|
||||
// Get the command name.
|
||||
clickFn;
|
||||
|
||||
this._.editor = editor;
|
||||
|
||||
var instance = {
|
||||
id: id,
|
||||
button: this,
|
||||
editor: editor,
|
||||
focus: function() {
|
||||
var element = CKEDITOR.document.getById( id );
|
||||
element.focus();
|
||||
},
|
||||
execute: function() {
|
||||
this.button.click( editor );
|
||||
},
|
||||
attach: function( editor ) {
|
||||
this.button.attach( editor );
|
||||
}
|
||||
};
|
||||
|
||||
var keydownFn = CKEDITOR.tools.addFunction( function( ev ) {
|
||||
if ( instance.onkey ) {
|
||||
ev = new CKEDITOR.dom.event( ev );
|
||||
return ( instance.onkey( instance, ev.getKeystroke() ) !== false );
|
||||
}
|
||||
} );
|
||||
|
||||
var focusFn = CKEDITOR.tools.addFunction( function( ev ) {
|
||||
var retVal;
|
||||
|
||||
if ( instance.onfocus )
|
||||
retVal = ( instance.onfocus( instance, new CKEDITOR.dom.event( ev ) ) !== false );
|
||||
|
||||
// FF2: prevent focus event been bubbled up to editor container, which caused unexpected editor focus.
|
||||
if ( CKEDITOR.env.gecko && CKEDITOR.env.version < 10900 )
|
||||
ev.preventBubble();
|
||||
return retVal;
|
||||
} );
|
||||
|
||||
var selLocked = 0;
|
||||
|
||||
var mousedownFn = CKEDITOR.tools.addFunction( function() {
|
||||
// Opera: lock to prevent loosing editable text selection when clicking on button.
|
||||
if ( CKEDITOR.env.opera ) {
|
||||
var edt = editor.editable();
|
||||
if ( edt.isInline() && edt.hasFocus ) {
|
||||
editor.lockSelection();
|
||||
selLocked = 1;
|
||||
}
|
||||
}
|
||||
} );
|
||||
|
||||
instance.clickFn = clickFn = CKEDITOR.tools.addFunction( function() {
|
||||
|
||||
// Restore locked selection in Opera.
|
||||
if ( selLocked ) {
|
||||
editor.unlockSelection( 1 );
|
||||
selLocked = 0;
|
||||
}
|
||||
|
||||
instance.execute();
|
||||
} );
|
||||
|
||||
|
||||
// Indicate a mode sensitive button.
|
||||
if ( this.modes ) {
|
||||
var modeStates = {};
|
||||
|
||||
function updateState() {
|
||||
// "this" is a CKEDITOR.ui.button instance.
|
||||
|
||||
var mode = editor.mode;
|
||||
|
||||
if ( mode ) {
|
||||
// Restore saved button state.
|
||||
var state = this.modes[ mode ] ? modeStates[ mode ] != undefined ? modeStates[ mode ] : CKEDITOR.TRISTATE_OFF : CKEDITOR.TRISTATE_DISABLED;
|
||||
|
||||
state = editor.readOnly && !this.readOnly ? CKEDITOR.TRISTATE_DISABLED : state;
|
||||
|
||||
this.setState( state );
|
||||
|
||||
// Let plugin to disable button.
|
||||
if ( this.refresh )
|
||||
this.refresh();
|
||||
}
|
||||
}
|
||||
|
||||
editor.on( 'beforeModeUnload', function() {
|
||||
if ( editor.mode && this._.state != CKEDITOR.TRISTATE_DISABLED )
|
||||
modeStates[ editor.mode ] = this._.state;
|
||||
}, this );
|
||||
|
||||
// Update status when activeFilter, mode or readOnly changes.
|
||||
editor.on( 'activeFilterChange', updateState, this );
|
||||
editor.on( 'mode', updateState, this );
|
||||
// If this button is sensitive to readOnly state, update it accordingly.
|
||||
!this.readOnly && editor.on( 'readOnly', updateState, this );
|
||||
|
||||
} else if ( command ) {
|
||||
// Get the command instance.
|
||||
command = editor.getCommand( command );
|
||||
|
||||
if ( command ) {
|
||||
command.on( 'state', function() {
|
||||
this.setState( command.state );
|
||||
}, this );
|
||||
|
||||
stateName += ( command.state == CKEDITOR.TRISTATE_ON ? 'on' : command.state == CKEDITOR.TRISTATE_DISABLED ? 'disabled' : 'off' );
|
||||
}
|
||||
}
|
||||
|
||||
// For button that has text-direction awareness on selection path.
|
||||
if ( this.directional ) {
|
||||
editor.on( 'contentDirChanged', function( evt ) {
|
||||
var el = CKEDITOR.document.getById( this._.id ),
|
||||
icon = el.getFirst();
|
||||
|
||||
var pathDir = evt.data;
|
||||
|
||||
// Make a minor direction change to become style-able for the skin icon.
|
||||
if ( pathDir != editor.lang.dir )
|
||||
el.addClass( 'cke_' + pathDir );
|
||||
else
|
||||
el.removeClass( 'cke_ltr' ).removeClass( 'cke_rtl' );
|
||||
|
||||
// Inline style update for the plugin icon.
|
||||
icon.setAttribute( 'style', CKEDITOR.skin.getIconStyle( iconName, pathDir == 'rtl', this.icon, this.iconOffset ) );
|
||||
}, this );
|
||||
}
|
||||
|
||||
if ( !command )
|
||||
stateName += 'off';
|
||||
|
||||
var name = this.name || this.command,
|
||||
iconName = name;
|
||||
|
||||
// Check if we're pointing to an icon defined by another command. (#9555)
|
||||
if ( this.icon && !( /\./ ).test( this.icon ) ) {
|
||||
iconName = this.icon;
|
||||
this.icon = null;
|
||||
}
|
||||
|
||||
var params = {
|
||||
id: id,
|
||||
name: name,
|
||||
iconName: iconName,
|
||||
label: this.label,
|
||||
cls: this.className || '',
|
||||
state: stateName,
|
||||
ariaDisabled: stateName == 'disabled' ? 'true' : 'false',
|
||||
title: this.title,
|
||||
titleJs: env.gecko && env.version >= 10900 && !env.hc ? '' : ( this.title || '' ).replace( "'", '' ),
|
||||
hasArrow: this.hasArrow ? 'true' : 'false',
|
||||
keydownFn: keydownFn,
|
||||
mousedownFn: mousedownFn,
|
||||
focusFn: focusFn,
|
||||
clickFn: clickFn,
|
||||
style: CKEDITOR.skin.getIconStyle( iconName, ( editor.lang.dir == 'rtl' ), this.icon, this.iconOffset ),
|
||||
arrowHtml: this.hasArrow ? btnArrowTpl.output() : ''
|
||||
};
|
||||
|
||||
btnTpl.output( params, output );
|
||||
|
||||
if ( this.onRender )
|
||||
this.onRender();
|
||||
|
||||
return instance;
|
||||
},
|
||||
|
||||
/**
|
||||
* @todo
|
||||
*/
|
||||
setState: function( state ) {
|
||||
if ( this._.state == state )
|
||||
return false;
|
||||
|
||||
this._.state = state;
|
||||
|
||||
var element = CKEDITOR.document.getById( this._.id );
|
||||
|
||||
if ( element ) {
|
||||
element.setState( state, 'cke_button' );
|
||||
|
||||
state == CKEDITOR.TRISTATE_DISABLED ?
|
||||
element.setAttribute( 'aria-disabled', true ) :
|
||||
element.removeAttribute( 'aria-disabled' );
|
||||
|
||||
if ( !this.hasArrow ) {
|
||||
// Note: aria-pressed attribute should not be added to menuButton instances. (#11331)
|
||||
state == CKEDITOR.TRISTATE_ON ?
|
||||
element.setAttribute( 'aria-pressed', true ) :
|
||||
element.removeAttribute( 'aria-pressed' );
|
||||
} else {
|
||||
var newLabel = state == CKEDITOR.TRISTATE_ON ?
|
||||
this._.editor.lang.button.selectedLabel.replace( /%1/g, this.label ) : this.label;
|
||||
CKEDITOR.document.getById( this._.id + '_label' ).setText( newLabel );
|
||||
}
|
||||
|
||||
return true;
|
||||
} else
|
||||
return false;
|
||||
},
|
||||
|
||||
/**
|
||||
* @todo
|
||||
*/
|
||||
getState: function( state ) {
|
||||
return this._.state;
|
||||
},
|
||||
|
||||
/**
|
||||
* Returns this button's {@link CKEDITOR.feature} instance.
|
||||
*
|
||||
* It may be this button instance if it has at least one of
|
||||
* `allowedContent` and `requiredContent` properties. Otherwise,
|
||||
* if command is bound to this button by `command` property, then
|
||||
* that command will be returned.
|
||||
*
|
||||
* This method implements {@link CKEDITOR.feature#toFeature} interface method.
|
||||
*
|
||||
* @since 4.1
|
||||
* @param {CKEDITOR.editor} Editor instance.
|
||||
* @returns {CKEDITOR.feature} The feature.
|
||||
*/
|
||||
toFeature: function( editor ) {
|
||||
if ( this._.feature )
|
||||
return this._.feature;
|
||||
|
||||
var feature = this;
|
||||
|
||||
// If button isn't a feature, return command if is bound.
|
||||
if ( !this.allowedContent && !this.requiredContent && this.command )
|
||||
feature = editor.getCommand( this.command ) || feature;
|
||||
|
||||
return this._.feature = feature;
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Adds a button definition to the UI elements list.
|
||||
*
|
||||
* editorInstance.ui.addButton( 'MyBold', {
|
||||
* label: 'My Bold',
|
||||
* command: 'bold',
|
||||
* toolbar: 'basicstyles,1'
|
||||
* } );
|
||||
*
|
||||
* @member CKEDITOR.ui
|
||||
* @param {String} name The button name.
|
||||
* @param {Object} definition The button definition.
|
||||
*/
|
||||
CKEDITOR.ui.prototype.addButton = function( name, definition ) {
|
||||
this.add( name, CKEDITOR.UI_BUTTON, definition );
|
||||
};
|
||||
|
||||
} )();
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.dialog.add("paste",function(c){function h(a){var b=new CKEDITOR.dom.document(a.document),f=b.getBody(),d=b.getById("cke_actscrpt");d&&d.remove();f.setAttribute("contenteditable",!0);if(CKEDITOR.env.ie&&8>CKEDITOR.env.version)b.getWindow().on("blur",function(){b.$.selection.empty()});b.on("keydown",function(a){var a=a.data,b;switch(a.getKeystroke()){case 27:this.hide();b=1;break;case 9:case CKEDITOR.SHIFT+9:this.changeFocus(1),b=1}b&&a.preventDefault()},this);c.fire("ariaWidget",new CKEDITOR.dom.element(a.frameElement));
|
||||
b.getWindow().getFrame().removeCustomData("pendingFocus")&&f.focus()}var e=c.lang.clipboard;c.on("pasteDialogCommit",function(a){a.data&&c.fire("paste",{type:"auto",dataValue:a.data})},null,null,1E3);return{title:e.title,minWidth:CKEDITOR.env.ie&&CKEDITOR.env.quirks?370:350,minHeight:CKEDITOR.env.quirks?250:245,onShow:function(){this.parts.dialog.$.offsetHeight;this.setupContent();this.parts.title.setHtml(this.customTitle||e.title);this.customTitle=null},onLoad:function(){(CKEDITOR.env.ie7Compat||
|
||||
CKEDITOR.env.ie6Compat)&&"rtl"==c.lang.dir&&this.parts.contents.setStyle("overflow","hidden")},onOk:function(){this.commitContent()},contents:[{id:"general",label:c.lang.common.generalTab,elements:[{type:"html",id:"securityMsg",html:'<div style="white-space:normal;width:340px">'+e.securityMsg+"</div>"},{type:"html",id:"pasteMsg",html:'<div style="white-space:normal;width:340px">'+e.pasteMsg+"</div>"},{type:"html",id:"editing_area",style:"width:100%;height:100%",html:"",focus:function(){var a=this.getInputElement(),
|
||||
b=a.getFrameDocument().getBody();!b||b.isReadOnly()?a.setCustomData("pendingFocus",1):b.focus()},setup:function(){var a=this.getDialog(),b='<html dir="'+c.config.contentsLangDirection+'" lang="'+(c.config.contentsLanguage||c.langCode)+'"><head><style>body{margin:3px;height:95%}</style></head><body><script id="cke_actscrpt" type="text/javascript">window.parent.CKEDITOR.tools.callFunction('+CKEDITOR.tools.addFunction(h,a)+",this);<\/script></body></html>",f=CKEDITOR.env.air?"javascript:void(0)":CKEDITOR.env.ie?
|
||||
"javascript:void((function(){"+encodeURIComponent("document.open();("+CKEDITOR.tools.fixDomain+")();document.close();")+'})())"':"",d=CKEDITOR.dom.element.createFromHtml('<iframe class="cke_pasteframe" frameborder="0" allowTransparency="true" src="'+f+'" role="region" aria-label="'+e.pasteArea+'" aria-describedby="'+a.getContentElement("general","pasteMsg").domId+'" aria-multiple="true"></iframe>');d.on("load",function(a){a.removeListener();a=d.getFrameDocument();a.write(b);c.focusManager.add(a.getBody());
|
||||
CKEDITOR.env.air&&h.call(this,a.getWindow().$)},a);d.setCustomData("dialog",a);a=this.getElement();a.setHtml("");a.append(d);if(CKEDITOR.env.ie){var g=CKEDITOR.dom.element.createFromHtml('<span tabindex="-1" style="position:absolute" role="presentation"></span>');g.on("focus",function(){setTimeout(function(){d.$.contentWindow.focus()})});a.append(g);this.focus=function(){g.focus();this.fire("focus")}}this.getInputElement=function(){return d};CKEDITOR.env.ie&&(a.setStyle("display","block"),a.setStyle("height",
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.dialog.add("paste",function(c){function h(a){var b=new CKEDITOR.dom.document(a.document),f=b.getBody(),d=b.getById("cke_actscrpt");d&&d.remove();f.setAttribute("contenteditable",!0);if(CKEDITOR.env.ie&&8>CKEDITOR.env.version)b.getWindow().on("blur",function(){b.$.selection.empty()});b.on("keydown",function(a){var a=a.data,b;switch(a.getKeystroke()){case 27:this.hide();b=1;break;case 9:case CKEDITOR.SHIFT+9:this.changeFocus(1),b=1}b&&a.preventDefault()},this);c.fire("ariaWidget",new CKEDITOR.dom.element(a.frameElement));
|
||||
b.getWindow().getFrame().removeCustomData("pendingFocus")&&f.focus()}var e=c.lang.clipboard;c.on("pasteDialogCommit",function(a){a.data&&c.fire("paste",{type:"auto",dataValue:a.data})},null,null,1E3);return{title:e.title,minWidth:CKEDITOR.env.ie&&CKEDITOR.env.quirks?370:350,minHeight:CKEDITOR.env.quirks?250:245,onShow:function(){this.parts.dialog.$.offsetHeight;this.setupContent();this.parts.title.setHtml(this.customTitle||e.title);this.customTitle=null},onLoad:function(){(CKEDITOR.env.ie7Compat||
|
||||
CKEDITOR.env.ie6Compat)&&"rtl"==c.lang.dir&&this.parts.contents.setStyle("overflow","hidden")},onOk:function(){this.commitContent()},contents:[{id:"general",label:c.lang.common.generalTab,elements:[{type:"html",id:"securityMsg",html:'<div style="white-space:normal;width:340px">'+e.securityMsg+"</div>"},{type:"html",id:"pasteMsg",html:'<div style="white-space:normal;width:340px">'+e.pasteMsg+"</div>"},{type:"html",id:"editing_area",style:"width:100%;height:100%",html:"",focus:function(){var a=this.getInputElement(),
|
||||
b=a.getFrameDocument().getBody();!b||b.isReadOnly()?a.setCustomData("pendingFocus",1):b.focus()},setup:function(){var a=this.getDialog(),b='<html dir="'+c.config.contentsLangDirection+'" lang="'+(c.config.contentsLanguage||c.langCode)+'"><head><style>body{margin:3px;height:95%}</style></head><body><script id="cke_actscrpt" type="text/javascript">window.parent.CKEDITOR.tools.callFunction('+CKEDITOR.tools.addFunction(h,a)+",this);<\/script></body></html>",f=CKEDITOR.env.air?"javascript:void(0)":CKEDITOR.env.ie?
|
||||
"javascript:void((function(){"+encodeURIComponent("document.open();("+CKEDITOR.tools.fixDomain+")();document.close();")+'})())"':"",d=CKEDITOR.dom.element.createFromHtml('<iframe class="cke_pasteframe" frameborder="0" allowTransparency="true" src="'+f+'" role="region" aria-label="'+e.pasteArea+'" aria-describedby="'+a.getContentElement("general","pasteMsg").domId+'" aria-multiple="true"></iframe>');d.on("load",function(a){a.removeListener();a=d.getFrameDocument();a.write(b);c.focusManager.add(a.getBody());
|
||||
CKEDITOR.env.air&&h.call(this,a.getWindow().$)},a);d.setCustomData("dialog",a);a=this.getElement();a.setHtml("");a.append(d);if(CKEDITOR.env.ie){var g=CKEDITOR.dom.element.createFromHtml('<span tabindex="-1" style="position:absolute" role="presentation"></span>');g.on("focus",function(){setTimeout(function(){d.$.contentWindow.focus()})});a.append(g);this.focus=function(){g.focus();this.fire("focus")}}this.getInputElement=function(){return d};CKEDITOR.env.ie&&(a.setStyle("display","block"),a.setStyle("height",
|
||||
d.$.offsetHeight+2+"px"))},commit:function(){var a=this.getDialog().getParentEditor(),b=this.getInputElement().getFrameDocument().getBody(),c=b.getBogus(),d;c&&c.remove();d=b.getHtml();setTimeout(function(){a.fire("pasteDialogCommit",d)},0)}}]}]}});
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'contextmenu', 'en', {
|
||||
options: 'Context Menu Options'
|
||||
} );
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'contextmenu', 'en', {
|
||||
options: 'Context Menu Options'
|
||||
} );
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'contextmenu', 'hu', {
|
||||
options: 'Helyi menü opciók'
|
||||
} );
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'contextmenu', 'hu', {
|
||||
options: 'Helyi menü opciók'
|
||||
} );
|
||||
|
||||
@@ -1,143 +1,143 @@
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.plugins.add( 'contextmenu', {
|
||||
requires: 'menu',
|
||||
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,ug,uk,vi,zh,zh-cn', // %REMOVE_LINE_CORE%
|
||||
|
||||
// Make sure the base class (CKEDITOR.menu) is loaded before it (#3318).
|
||||
onLoad: function() {
|
||||
/**
|
||||
* Class replacing the non-configurable native context menu with configurable CKEditor's equivalent.
|
||||
*
|
||||
* @class
|
||||
* @extends CKEDITOR.menu
|
||||
*/
|
||||
CKEDITOR.plugins.contextMenu = CKEDITOR.tools.createClass( {
|
||||
base: CKEDITOR.menu,
|
||||
|
||||
/**
|
||||
* Creates the CKEDITOR.plugins.contextMenu class instance.
|
||||
*
|
||||
* @constructor
|
||||
* @param {CKEDITOR.editor} editor
|
||||
*/
|
||||
$: function( editor ) {
|
||||
this.base.call( this, editor, {
|
||||
panel: {
|
||||
className: 'cke_menu_panel',
|
||||
attributes: {
|
||||
'aria-label': editor.lang.contextmenu.options
|
||||
}
|
||||
}
|
||||
} );
|
||||
},
|
||||
|
||||
proto: {
|
||||
/**
|
||||
* Starts watching on native context menu triggers (option key, right click) on given element.
|
||||
*
|
||||
* @param {CKEDITOR.dom.element} element
|
||||
* @param {Boolean} [nativeContextMenuOnCtrl] Whether to open native context menu if
|
||||
* *Ctrl* key is hold on opening the context menu. See {@link CKEDITOR.config#browserContextMenuOnCtrl}.
|
||||
*/
|
||||
addTarget: function( element, nativeContextMenuOnCtrl ) {
|
||||
element.on( 'contextmenu', function( event ) {
|
||||
var domEvent = event.data,
|
||||
isCtrlKeyDown =
|
||||
// Safari on Windows always show 'ctrlKey' as true in 'contextmenu' event,
|
||||
// which make this property unreliable. (#4826)
|
||||
( CKEDITOR.env.webkit ? holdCtrlKey : ( CKEDITOR.env.mac ? domEvent.$.metaKey : domEvent.$.ctrlKey ) );
|
||||
|
||||
if ( nativeContextMenuOnCtrl && isCtrlKeyDown )
|
||||
return;
|
||||
|
||||
// Cancel the browser context menu.
|
||||
domEvent.preventDefault();
|
||||
|
||||
var doc = domEvent.getTarget().getDocument(),
|
||||
offsetParent = domEvent.getTarget().getDocument().getDocumentElement(),
|
||||
fromFrame = !doc.equals( CKEDITOR.document ),
|
||||
scroll = doc.getWindow().getScrollPosition(),
|
||||
offsetX = fromFrame ? domEvent.$.clientX : domEvent.$.pageX || scroll.x + domEvent.$.clientX,
|
||||
offsetY = fromFrame ? domEvent.$.clientY : domEvent.$.pageY || scroll.y + domEvent.$.clientY;
|
||||
|
||||
CKEDITOR.tools.setTimeout( function() {
|
||||
this.open( offsetParent, null, offsetX, offsetY );
|
||||
|
||||
// IE needs a short while to allow selection change before opening menu. (#7908)
|
||||
}, CKEDITOR.env.ie ? 200 : 0, this );
|
||||
}, this );
|
||||
|
||||
if ( CKEDITOR.env.webkit ) {
|
||||
var holdCtrlKey,
|
||||
onKeyDown = function( event ) {
|
||||
holdCtrlKey = CKEDITOR.env.mac ? event.data.$.metaKey : event.data.$.ctrlKey;
|
||||
},
|
||||
resetOnKeyUp = function() {
|
||||
holdCtrlKey = 0;
|
||||
};
|
||||
|
||||
element.on( 'keydown', onKeyDown );
|
||||
element.on( 'keyup', resetOnKeyUp );
|
||||
element.on( 'contextmenu', resetOnKeyUp );
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* Opens context menu in given location. See the {@link CKEDITOR.menu#show} method.
|
||||
*
|
||||
* @param {CKEDITOR.dom.element} offsetParent
|
||||
* @param {Number} [corner]
|
||||
* @param {Number} [offsetX]
|
||||
* @param {Number} [offsetY]
|
||||
*/
|
||||
open: function( offsetParent, corner, offsetX, offsetY ) {
|
||||
this.editor.focus();
|
||||
offsetParent = offsetParent || CKEDITOR.document.getDocumentElement();
|
||||
|
||||
// #9362: Force selection check to update commands' states in the new context.
|
||||
this.editor.selectionChange( 1 );
|
||||
|
||||
this.show( offsetParent, corner, offsetX, offsetY );
|
||||
}
|
||||
}
|
||||
} );
|
||||
},
|
||||
|
||||
beforeInit: function( editor ) {
|
||||
/**
|
||||
* @readonly
|
||||
* @property {CKEDITOR.plugins.contextMenu} contextMenu
|
||||
* @member CKEDITOR.editor
|
||||
*/
|
||||
var contextMenu = editor.contextMenu = new CKEDITOR.plugins.contextMenu( editor );
|
||||
|
||||
editor.on( 'contentDom', function() {
|
||||
contextMenu.addTarget( editor.editable(), editor.config.browserContextMenuOnCtrl !== false );
|
||||
} );
|
||||
|
||||
editor.addCommand( 'contextMenu', {
|
||||
exec: function() {
|
||||
editor.contextMenu.open( editor.document.getBody() );
|
||||
}
|
||||
} );
|
||||
|
||||
editor.setKeystroke( CKEDITOR.SHIFT + 121 /*F10*/, 'contextMenu' );
|
||||
editor.setKeystroke( CKEDITOR.CTRL + CKEDITOR.SHIFT + 121 /*F10*/, 'contextMenu' );
|
||||
}
|
||||
} );
|
||||
|
||||
/**
|
||||
* Whether to show the browser native context menu when the *Ctrl* or
|
||||
* *Meta* (Mac) key is pressed on opening the context menu with the
|
||||
* right mouse button click or the *Menu* key.
|
||||
*
|
||||
* config.browserContextMenuOnCtrl = false;
|
||||
*
|
||||
* @since 3.0.2
|
||||
* @cfg {Boolean} [browserContextMenuOnCtrl=true]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.plugins.add( 'contextmenu', {
|
||||
requires: 'menu',
|
||||
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,ug,uk,vi,zh,zh-cn', // %REMOVE_LINE_CORE%
|
||||
|
||||
// Make sure the base class (CKEDITOR.menu) is loaded before it (#3318).
|
||||
onLoad: function() {
|
||||
/**
|
||||
* Class replacing the non-configurable native context menu with configurable CKEditor's equivalent.
|
||||
*
|
||||
* @class
|
||||
* @extends CKEDITOR.menu
|
||||
*/
|
||||
CKEDITOR.plugins.contextMenu = CKEDITOR.tools.createClass( {
|
||||
base: CKEDITOR.menu,
|
||||
|
||||
/**
|
||||
* Creates the CKEDITOR.plugins.contextMenu class instance.
|
||||
*
|
||||
* @constructor
|
||||
* @param {CKEDITOR.editor} editor
|
||||
*/
|
||||
$: function( editor ) {
|
||||
this.base.call( this, editor, {
|
||||
panel: {
|
||||
className: 'cke_menu_panel',
|
||||
attributes: {
|
||||
'aria-label': editor.lang.contextmenu.options
|
||||
}
|
||||
}
|
||||
} );
|
||||
},
|
||||
|
||||
proto: {
|
||||
/**
|
||||
* Starts watching on native context menu triggers (option key, right click) on given element.
|
||||
*
|
||||
* @param {CKEDITOR.dom.element} element
|
||||
* @param {Boolean} [nativeContextMenuOnCtrl] Whether to open native context menu if
|
||||
* *Ctrl* key is hold on opening the context menu. See {@link CKEDITOR.config#browserContextMenuOnCtrl}.
|
||||
*/
|
||||
addTarget: function( element, nativeContextMenuOnCtrl ) {
|
||||
element.on( 'contextmenu', function( event ) {
|
||||
var domEvent = event.data,
|
||||
isCtrlKeyDown =
|
||||
// Safari on Windows always show 'ctrlKey' as true in 'contextmenu' event,
|
||||
// which make this property unreliable. (#4826)
|
||||
( CKEDITOR.env.webkit ? holdCtrlKey : ( CKEDITOR.env.mac ? domEvent.$.metaKey : domEvent.$.ctrlKey ) );
|
||||
|
||||
if ( nativeContextMenuOnCtrl && isCtrlKeyDown )
|
||||
return;
|
||||
|
||||
// Cancel the browser context menu.
|
||||
domEvent.preventDefault();
|
||||
|
||||
var doc = domEvent.getTarget().getDocument(),
|
||||
offsetParent = domEvent.getTarget().getDocument().getDocumentElement(),
|
||||
fromFrame = !doc.equals( CKEDITOR.document ),
|
||||
scroll = doc.getWindow().getScrollPosition(),
|
||||
offsetX = fromFrame ? domEvent.$.clientX : domEvent.$.pageX || scroll.x + domEvent.$.clientX,
|
||||
offsetY = fromFrame ? domEvent.$.clientY : domEvent.$.pageY || scroll.y + domEvent.$.clientY;
|
||||
|
||||
CKEDITOR.tools.setTimeout( function() {
|
||||
this.open( offsetParent, null, offsetX, offsetY );
|
||||
|
||||
// IE needs a short while to allow selection change before opening menu. (#7908)
|
||||
}, CKEDITOR.env.ie ? 200 : 0, this );
|
||||
}, this );
|
||||
|
||||
if ( CKEDITOR.env.webkit ) {
|
||||
var holdCtrlKey,
|
||||
onKeyDown = function( event ) {
|
||||
holdCtrlKey = CKEDITOR.env.mac ? event.data.$.metaKey : event.data.$.ctrlKey;
|
||||
},
|
||||
resetOnKeyUp = function() {
|
||||
holdCtrlKey = 0;
|
||||
};
|
||||
|
||||
element.on( 'keydown', onKeyDown );
|
||||
element.on( 'keyup', resetOnKeyUp );
|
||||
element.on( 'contextmenu', resetOnKeyUp );
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* Opens context menu in given location. See the {@link CKEDITOR.menu#show} method.
|
||||
*
|
||||
* @param {CKEDITOR.dom.element} offsetParent
|
||||
* @param {Number} [corner]
|
||||
* @param {Number} [offsetX]
|
||||
* @param {Number} [offsetY]
|
||||
*/
|
||||
open: function( offsetParent, corner, offsetX, offsetY ) {
|
||||
this.editor.focus();
|
||||
offsetParent = offsetParent || CKEDITOR.document.getDocumentElement();
|
||||
|
||||
// #9362: Force selection check to update commands' states in the new context.
|
||||
this.editor.selectionChange( 1 );
|
||||
|
||||
this.show( offsetParent, corner, offsetX, offsetY );
|
||||
}
|
||||
}
|
||||
} );
|
||||
},
|
||||
|
||||
beforeInit: function( editor ) {
|
||||
/**
|
||||
* @readonly
|
||||
* @property {CKEDITOR.plugins.contextMenu} contextMenu
|
||||
* @member CKEDITOR.editor
|
||||
*/
|
||||
var contextMenu = editor.contextMenu = new CKEDITOR.plugins.contextMenu( editor );
|
||||
|
||||
editor.on( 'contentDom', function() {
|
||||
contextMenu.addTarget( editor.editable(), editor.config.browserContextMenuOnCtrl !== false );
|
||||
} );
|
||||
|
||||
editor.addCommand( 'contextMenu', {
|
||||
exec: function() {
|
||||
editor.contextMenu.open( editor.document.getBody() );
|
||||
}
|
||||
} );
|
||||
|
||||
editor.setKeystroke( CKEDITOR.SHIFT + 121 /*F10*/, 'contextMenu' );
|
||||
editor.setKeystroke( CKEDITOR.CTRL + CKEDITOR.SHIFT + 121 /*F10*/, 'contextMenu' );
|
||||
}
|
||||
} );
|
||||
|
||||
/**
|
||||
* Whether to show the browser native context menu when the *Ctrl* or
|
||||
* *Meta* (Mac) key is pressed on opening the context menu with the
|
||||
* right mouse button click or the *Menu* key.
|
||||
*
|
||||
* config.browserContextMenuOnCtrl = false;
|
||||
*
|
||||
* @since 3.0.2
|
||||
* @cfg {Boolean} [browserContextMenuOnCtrl=true]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,18 +1,18 @@
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'format', 'en', {
|
||||
label: 'Format',
|
||||
panelTitle: 'Paragraph Format',
|
||||
tag_address: 'Address',
|
||||
tag_div: 'Normal (DIV)',
|
||||
tag_h1: 'Heading 1',
|
||||
tag_h2: 'Heading 2',
|
||||
tag_h3: 'Heading 3',
|
||||
tag_h4: 'Heading 4',
|
||||
tag_h5: 'Heading 5',
|
||||
tag_h6: 'Heading 6',
|
||||
tag_p: 'Normal',
|
||||
tag_pre: 'Formatted'
|
||||
} );
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'format', 'en', {
|
||||
label: 'Format',
|
||||
panelTitle: 'Paragraph Format',
|
||||
tag_address: 'Address',
|
||||
tag_div: 'Normal (DIV)',
|
||||
tag_h1: 'Heading 1',
|
||||
tag_h2: 'Heading 2',
|
||||
tag_h3: 'Heading 3',
|
||||
tag_h4: 'Heading 4',
|
||||
tag_h5: 'Heading 5',
|
||||
tag_h6: 'Heading 6',
|
||||
tag_p: 'Normal',
|
||||
tag_pre: 'Formatted'
|
||||
} );
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'format', 'hu', {
|
||||
label: 'Formátum',
|
||||
panelTitle: 'Formátum',
|
||||
tag_address: 'Címsor',
|
||||
tag_div: 'Bekezdés (DIV)',
|
||||
tag_h1: 'Fejléc 1',
|
||||
tag_h2: 'Fejléc 2',
|
||||
tag_h3: 'Fejléc 3',
|
||||
tag_h4: 'Fejléc 4',
|
||||
tag_h5: 'Fejléc 5',
|
||||
tag_h6: 'Fejléc 6',
|
||||
tag_p: 'Normál',
|
||||
tag_pre: 'Formázott'
|
||||
} );
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'format', 'hu', {
|
||||
label: 'Formátum',
|
||||
panelTitle: 'Formátum',
|
||||
tag_address: 'Címsor',
|
||||
tag_div: 'Bekezdés (DIV)',
|
||||
tag_h1: 'Fejléc 1',
|
||||
tag_h2: 'Fejléc 2',
|
||||
tag_h3: 'Fejléc 3',
|
||||
tag_h4: 'Fejléc 4',
|
||||
tag_h5: 'Fejléc 5',
|
||||
tag_h6: 'Fejléc 6',
|
||||
tag_p: 'Normál',
|
||||
tag_pre: 'Formázott'
|
||||
} );
|
||||
|
||||
@@ -1,244 +1,244 @@
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.plugins.add( 'format', {
|
||||
requires: 'richcombo',
|
||||
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,ug,uk,vi,zh,zh-cn', // %REMOVE_LINE_CORE%
|
||||
init: function( editor ) {
|
||||
if ( editor.blockless )
|
||||
return;
|
||||
|
||||
var config = editor.config,
|
||||
lang = editor.lang.format;
|
||||
|
||||
// Gets the list of tags from the settings.
|
||||
var tags = config.format_tags.split( ';' );
|
||||
|
||||
// Create style objects for all defined styles.
|
||||
var styles = {},
|
||||
stylesCount = 0,
|
||||
allowedContent = [];
|
||||
for ( var i = 0; i < tags.length; i++ ) {
|
||||
var tag = tags[ i ];
|
||||
var style = new CKEDITOR.style( config[ 'format_' + tag ] );
|
||||
if ( !editor.filter.customConfig || editor.filter.check( style ) ) {
|
||||
stylesCount++;
|
||||
styles[ tag ] = style;
|
||||
styles[ tag ]._.enterMode = editor.config.enterMode;
|
||||
allowedContent.push( style );
|
||||
}
|
||||
}
|
||||
|
||||
// Hide entire combo when all formats are rejected.
|
||||
if ( stylesCount === 0 )
|
||||
return;
|
||||
|
||||
editor.ui.addRichCombo( 'Format', {
|
||||
label: lang.label,
|
||||
title: lang.panelTitle,
|
||||
toolbar: 'styles,20',
|
||||
allowedContent: allowedContent,
|
||||
|
||||
panel: {
|
||||
css: [ CKEDITOR.skin.getPath( 'editor' ) ].concat( config.contentsCss ),
|
||||
multiSelect: false,
|
||||
attributes: { 'aria-label': lang.panelTitle }
|
||||
},
|
||||
|
||||
init: function() {
|
||||
this.startGroup( lang.panelTitle );
|
||||
|
||||
for ( var tag in styles ) {
|
||||
var label = lang[ 'tag_' + tag ];
|
||||
|
||||
// Add the tag entry to the panel list.
|
||||
this.add( tag, styles[ tag ].buildPreview( label ), label );
|
||||
}
|
||||
},
|
||||
|
||||
onClick: function( value ) {
|
||||
editor.focus();
|
||||
editor.fire( 'saveSnapshot' );
|
||||
|
||||
var style = styles[ value ],
|
||||
elementPath = editor.elementPath();
|
||||
|
||||
editor[ style.checkActive( elementPath ) ? 'removeStyle' : 'applyStyle' ]( style );
|
||||
|
||||
// Save the undo snapshot after all changes are affected. (#4899)
|
||||
setTimeout( function() {
|
||||
editor.fire( 'saveSnapshot' );
|
||||
}, 0 );
|
||||
},
|
||||
|
||||
onRender: function() {
|
||||
editor.on( 'selectionChange', function( ev ) {
|
||||
var currentTag = this.getValue(),
|
||||
elementPath = ev.data.path;
|
||||
|
||||
this.refresh();
|
||||
|
||||
for ( var tag in styles ) {
|
||||
if ( styles[ tag ].checkActive( elementPath ) ) {
|
||||
if ( tag != currentTag )
|
||||
this.setValue( tag, editor.lang.format[ 'tag_' + tag ] );
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// If no styles match, just empty it.
|
||||
this.setValue( '' );
|
||||
|
||||
}, this );
|
||||
},
|
||||
|
||||
onOpen: function() {
|
||||
this.showAll();
|
||||
for ( var name in styles ) {
|
||||
var style = styles[ name ];
|
||||
|
||||
// Check if that style is enabled in activeFilter.
|
||||
if ( !editor.activeFilter.check( style ) )
|
||||
this.hideItem( name );
|
||||
|
||||
}
|
||||
},
|
||||
|
||||
refresh: function() {
|
||||
var elementPath = editor.elementPath();
|
||||
|
||||
if ( !elementPath )
|
||||
return;
|
||||
|
||||
// Check if element path contains 'p' element.
|
||||
if ( !elementPath.isContextFor( 'p' ) ) {
|
||||
this.setState( CKEDITOR.TRISTATE_DISABLED );
|
||||
return;
|
||||
}
|
||||
|
||||
// Check if there is any available style.
|
||||
for ( var name in styles ) {
|
||||
if ( editor.activeFilter.check( styles[ name ] ) )
|
||||
return;
|
||||
}
|
||||
this.setState( CKEDITOR.TRISTATE_DISABLED );
|
||||
}
|
||||
} );
|
||||
}
|
||||
} );
|
||||
|
||||
/**
|
||||
* A list of semi colon separated style names (by default tags) representing
|
||||
* the style definition for each entry to be displayed in the Format combo in
|
||||
* the toolbar. Each entry must have its relative definition configuration in a
|
||||
* setting named `'format_(tagName)'`. For example, the `'p'` entry has its
|
||||
* definition taken from `config.format_p`.
|
||||
*
|
||||
* config.format_tags = 'p;h2;h3;pre';
|
||||
*
|
||||
* @cfg {String} [format_tags='p;h1;h2;h3;h4;h5;h6;pre;address;div']
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
CKEDITOR.config.format_tags = 'p;h1;h2;h3;h4;h5;h6;pre;address;div';
|
||||
|
||||
/**
|
||||
* The style definition to be used to apply the `'Normal'` format.
|
||||
*
|
||||
* config.format_p = { element: 'p', attributes: { 'class': 'normalPara' } };
|
||||
*
|
||||
* @cfg {Object} [format_p={ element: 'p' }]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
CKEDITOR.config.format_p = { element: 'p' };
|
||||
|
||||
/**
|
||||
* The style definition to be used to apply the `'Normal (DIV)'` format.
|
||||
*
|
||||
* config.format_div = { element: 'div', attributes: { 'class': 'normalDiv' } };
|
||||
*
|
||||
* @cfg {Object} [format_div={ element: 'div' }]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
CKEDITOR.config.format_div = { element: 'div' };
|
||||
|
||||
/**
|
||||
* The style definition to be used to apply the `'Formatted'` format.
|
||||
*
|
||||
* config.format_pre = { element: 'pre', attributes: { 'class': 'code' } };
|
||||
*
|
||||
* @cfg {Object} [format_pre={ element: 'pre' }]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
CKEDITOR.config.format_pre = { element: 'pre' };
|
||||
|
||||
/**
|
||||
* The style definition to be used to apply the `'Address'` format.
|
||||
*
|
||||
* config.format_address = { element: 'address', attributes: { 'class': 'styledAddress' } };
|
||||
*
|
||||
* @cfg {Object} [format_address={ element: 'address' }]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
CKEDITOR.config.format_address = { element: 'address' };
|
||||
|
||||
/**
|
||||
* The style definition to be used to apply the `'Heading 1'` format.
|
||||
*
|
||||
* config.format_h1 = { element: 'h1', attributes: { 'class': 'contentTitle1' } };
|
||||
*
|
||||
* @cfg {Object} [format_h1={ element: 'h1' }]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
CKEDITOR.config.format_h1 = { element: 'h1' };
|
||||
|
||||
/**
|
||||
* The style definition to be used to apply the `'Heading 2'` format.
|
||||
*
|
||||
* config.format_h2 = { element: 'h2', attributes: { 'class': 'contentTitle2' } };
|
||||
*
|
||||
* @cfg {Object} [format_h2={ element: 'h2' }]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
CKEDITOR.config.format_h2 = { element: 'h2' };
|
||||
|
||||
/**
|
||||
* The style definition to be used to apply the `'Heading 3'` format.
|
||||
*
|
||||
* config.format_h3 = { element: 'h3', attributes: { 'class': 'contentTitle3' } };
|
||||
*
|
||||
* @cfg {Object} [format_h3={ element: 'h3' }]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
CKEDITOR.config.format_h3 = { element: 'h3' };
|
||||
|
||||
/**
|
||||
* The style definition to be used to apply the `'Heading 4'` format.
|
||||
*
|
||||
* config.format_h4 = { element: 'h4', attributes: { 'class': 'contentTitle4' } };
|
||||
*
|
||||
* @cfg {Object} [format_h4={ element: 'h4' }]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
CKEDITOR.config.format_h4 = { element: 'h4' };
|
||||
|
||||
/**
|
||||
* The style definition to be used to apply the `'Heading 5'` format.
|
||||
*
|
||||
* config.format_h5 = { element: 'h5', attributes: { 'class': 'contentTitle5' } };
|
||||
*
|
||||
* @cfg {Object} [format_h5={ element: 'h5' }]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
CKEDITOR.config.format_h5 = { element: 'h5' };
|
||||
|
||||
/**
|
||||
* The style definition to be used to apply the `'Heading 6'` format.
|
||||
*
|
||||
* config.format_h6 = { element: 'h6', attributes: { 'class': 'contentTitle6' } };
|
||||
*
|
||||
* @cfg {Object} [format_h6={ element: 'h6' }]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
CKEDITOR.config.format_h6 = { element: 'h6' };
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.plugins.add( 'format', {
|
||||
requires: 'richcombo',
|
||||
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,ug,uk,vi,zh,zh-cn', // %REMOVE_LINE_CORE%
|
||||
init: function( editor ) {
|
||||
if ( editor.blockless )
|
||||
return;
|
||||
|
||||
var config = editor.config,
|
||||
lang = editor.lang.format;
|
||||
|
||||
// Gets the list of tags from the settings.
|
||||
var tags = config.format_tags.split( ';' );
|
||||
|
||||
// Create style objects for all defined styles.
|
||||
var styles = {},
|
||||
stylesCount = 0,
|
||||
allowedContent = [];
|
||||
for ( var i = 0; i < tags.length; i++ ) {
|
||||
var tag = tags[ i ];
|
||||
var style = new CKEDITOR.style( config[ 'format_' + tag ] );
|
||||
if ( !editor.filter.customConfig || editor.filter.check( style ) ) {
|
||||
stylesCount++;
|
||||
styles[ tag ] = style;
|
||||
styles[ tag ]._.enterMode = editor.config.enterMode;
|
||||
allowedContent.push( style );
|
||||
}
|
||||
}
|
||||
|
||||
// Hide entire combo when all formats are rejected.
|
||||
if ( stylesCount === 0 )
|
||||
return;
|
||||
|
||||
editor.ui.addRichCombo( 'Format', {
|
||||
label: lang.label,
|
||||
title: lang.panelTitle,
|
||||
toolbar: 'styles,20',
|
||||
allowedContent: allowedContent,
|
||||
|
||||
panel: {
|
||||
css: [ CKEDITOR.skin.getPath( 'editor' ) ].concat( config.contentsCss ),
|
||||
multiSelect: false,
|
||||
attributes: { 'aria-label': lang.panelTitle }
|
||||
},
|
||||
|
||||
init: function() {
|
||||
this.startGroup( lang.panelTitle );
|
||||
|
||||
for ( var tag in styles ) {
|
||||
var label = lang[ 'tag_' + tag ];
|
||||
|
||||
// Add the tag entry to the panel list.
|
||||
this.add( tag, styles[ tag ].buildPreview( label ), label );
|
||||
}
|
||||
},
|
||||
|
||||
onClick: function( value ) {
|
||||
editor.focus();
|
||||
editor.fire( 'saveSnapshot' );
|
||||
|
||||
var style = styles[ value ],
|
||||
elementPath = editor.elementPath();
|
||||
|
||||
editor[ style.checkActive( elementPath ) ? 'removeStyle' : 'applyStyle' ]( style );
|
||||
|
||||
// Save the undo snapshot after all changes are affected. (#4899)
|
||||
setTimeout( function() {
|
||||
editor.fire( 'saveSnapshot' );
|
||||
}, 0 );
|
||||
},
|
||||
|
||||
onRender: function() {
|
||||
editor.on( 'selectionChange', function( ev ) {
|
||||
var currentTag = this.getValue(),
|
||||
elementPath = ev.data.path;
|
||||
|
||||
this.refresh();
|
||||
|
||||
for ( var tag in styles ) {
|
||||
if ( styles[ tag ].checkActive( elementPath ) ) {
|
||||
if ( tag != currentTag )
|
||||
this.setValue( tag, editor.lang.format[ 'tag_' + tag ] );
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// If no styles match, just empty it.
|
||||
this.setValue( '' );
|
||||
|
||||
}, this );
|
||||
},
|
||||
|
||||
onOpen: function() {
|
||||
this.showAll();
|
||||
for ( var name in styles ) {
|
||||
var style = styles[ name ];
|
||||
|
||||
// Check if that style is enabled in activeFilter.
|
||||
if ( !editor.activeFilter.check( style ) )
|
||||
this.hideItem( name );
|
||||
|
||||
}
|
||||
},
|
||||
|
||||
refresh: function() {
|
||||
var elementPath = editor.elementPath();
|
||||
|
||||
if ( !elementPath )
|
||||
return;
|
||||
|
||||
// Check if element path contains 'p' element.
|
||||
if ( !elementPath.isContextFor( 'p' ) ) {
|
||||
this.setState( CKEDITOR.TRISTATE_DISABLED );
|
||||
return;
|
||||
}
|
||||
|
||||
// Check if there is any available style.
|
||||
for ( var name in styles ) {
|
||||
if ( editor.activeFilter.check( styles[ name ] ) )
|
||||
return;
|
||||
}
|
||||
this.setState( CKEDITOR.TRISTATE_DISABLED );
|
||||
}
|
||||
} );
|
||||
}
|
||||
} );
|
||||
|
||||
/**
|
||||
* A list of semi colon separated style names (by default tags) representing
|
||||
* the style definition for each entry to be displayed in the Format combo in
|
||||
* the toolbar. Each entry must have its relative definition configuration in a
|
||||
* setting named `'format_(tagName)'`. For example, the `'p'` entry has its
|
||||
* definition taken from `config.format_p`.
|
||||
*
|
||||
* config.format_tags = 'p;h2;h3;pre';
|
||||
*
|
||||
* @cfg {String} [format_tags='p;h1;h2;h3;h4;h5;h6;pre;address;div']
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
CKEDITOR.config.format_tags = 'p;h1;h2;h3;h4;h5;h6;pre;address;div';
|
||||
|
||||
/**
|
||||
* The style definition to be used to apply the `'Normal'` format.
|
||||
*
|
||||
* config.format_p = { element: 'p', attributes: { 'class': 'normalPara' } };
|
||||
*
|
||||
* @cfg {Object} [format_p={ element: 'p' }]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
CKEDITOR.config.format_p = { element: 'p' };
|
||||
|
||||
/**
|
||||
* The style definition to be used to apply the `'Normal (DIV)'` format.
|
||||
*
|
||||
* config.format_div = { element: 'div', attributes: { 'class': 'normalDiv' } };
|
||||
*
|
||||
* @cfg {Object} [format_div={ element: 'div' }]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
CKEDITOR.config.format_div = { element: 'div' };
|
||||
|
||||
/**
|
||||
* The style definition to be used to apply the `'Formatted'` format.
|
||||
*
|
||||
* config.format_pre = { element: 'pre', attributes: { 'class': 'code' } };
|
||||
*
|
||||
* @cfg {Object} [format_pre={ element: 'pre' }]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
CKEDITOR.config.format_pre = { element: 'pre' };
|
||||
|
||||
/**
|
||||
* The style definition to be used to apply the `'Address'` format.
|
||||
*
|
||||
* config.format_address = { element: 'address', attributes: { 'class': 'styledAddress' } };
|
||||
*
|
||||
* @cfg {Object} [format_address={ element: 'address' }]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
CKEDITOR.config.format_address = { element: 'address' };
|
||||
|
||||
/**
|
||||
* The style definition to be used to apply the `'Heading 1'` format.
|
||||
*
|
||||
* config.format_h1 = { element: 'h1', attributes: { 'class': 'contentTitle1' } };
|
||||
*
|
||||
* @cfg {Object} [format_h1={ element: 'h1' }]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
CKEDITOR.config.format_h1 = { element: 'h1' };
|
||||
|
||||
/**
|
||||
* The style definition to be used to apply the `'Heading 2'` format.
|
||||
*
|
||||
* config.format_h2 = { element: 'h2', attributes: { 'class': 'contentTitle2' } };
|
||||
*
|
||||
* @cfg {Object} [format_h2={ element: 'h2' }]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
CKEDITOR.config.format_h2 = { element: 'h2' };
|
||||
|
||||
/**
|
||||
* The style definition to be used to apply the `'Heading 3'` format.
|
||||
*
|
||||
* config.format_h3 = { element: 'h3', attributes: { 'class': 'contentTitle3' } };
|
||||
*
|
||||
* @cfg {Object} [format_h3={ element: 'h3' }]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
CKEDITOR.config.format_h3 = { element: 'h3' };
|
||||
|
||||
/**
|
||||
* The style definition to be used to apply the `'Heading 4'` format.
|
||||
*
|
||||
* config.format_h4 = { element: 'h4', attributes: { 'class': 'contentTitle4' } };
|
||||
*
|
||||
* @cfg {Object} [format_h4={ element: 'h4' }]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
CKEDITOR.config.format_h4 = { element: 'h4' };
|
||||
|
||||
/**
|
||||
* The style definition to be used to apply the `'Heading 5'` format.
|
||||
*
|
||||
* config.format_h5 = { element: 'h5', attributes: { 'class': 'contentTitle5' } };
|
||||
*
|
||||
* @cfg {Object} [format_h5={ element: 'h5' }]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
CKEDITOR.config.format_h5 = { element: 'h5' };
|
||||
|
||||
/**
|
||||
* The style definition to be used to apply the `'Heading 6'` format.
|
||||
*
|
||||
* config.format_h6 = { element: 'h6', attributes: { 'class': 'contentTitle6' } };
|
||||
*
|
||||
* @cfg {Object} [format_h6={ element: 'h6' }]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
CKEDITOR.config.format_h6 = { element: 'h6' };
|
||||
|
||||
@@ -1,71 +1,71 @@
|
||||
/*
|
||||
* @file HTML Buttons plugin for CKEditor
|
||||
* Copyright (C) 2012 Alfonso Martínez de Lizarrondo
|
||||
* A simple plugin to help create custom buttons to insert HTML blocks
|
||||
*/
|
||||
|
||||
CKEDITOR.plugins.add( 'htmlbuttons',
|
||||
{
|
||||
init : function( editor )
|
||||
{
|
||||
var buttonsConfig = editor.config.htmlbuttons;
|
||||
if (!buttonsConfig)
|
||||
return;
|
||||
|
||||
function createCommand( definition )
|
||||
{
|
||||
return {
|
||||
exec: function( editor ) {
|
||||
editor.insertHtml( definition.html );
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
// Create the command for each button
|
||||
for(var i=0; i<buttonsConfig.length; i++)
|
||||
{
|
||||
var button = buttonsConfig[ i ];
|
||||
var commandName = button.name;
|
||||
editor.addCommand( commandName, createCommand(button, editor) );
|
||||
|
||||
editor.ui.addButton( commandName,
|
||||
{
|
||||
label : button.title,
|
||||
command : commandName,
|
||||
icon : this.path + button.icon
|
||||
});
|
||||
}
|
||||
} //Init
|
||||
|
||||
} );
|
||||
|
||||
/**
|
||||
* An array of buttons to add to the toolbar.
|
||||
* Each button is an object with these properties:
|
||||
* name: The name of the command and the button (the one to use in the toolbar configuration)
|
||||
* icon: The icon to use. Place them in the plugin folder
|
||||
* html: The HTML to insert when the user clicks the button
|
||||
* title: Title that appears while hovering the button
|
||||
*
|
||||
* Default configuration with some sample buttons:
|
||||
*/
|
||||
CKEDITOR.config.htmlbuttons = [
|
||||
{
|
||||
name:'button1',
|
||||
icon:'icon1.png',
|
||||
html:'<a href="http://www.google.com">Search something</a>',
|
||||
title:'A link to Google'
|
||||
},
|
||||
{
|
||||
name:'button2',
|
||||
icon:'icon2.png',
|
||||
html:'<table style="min-width:200px"><tr><td> </td><td> </td></tr><tr><td> </td><td> </td></tr></table>',
|
||||
title:'A simple table'
|
||||
},
|
||||
{
|
||||
name:'button3',
|
||||
icon:'icon3.png',
|
||||
html:'<ol><li>Item 1 <ol><li>Sub item 1</li><li>Sub item 2</li></ol></li></ol>',
|
||||
title:'A nested list'
|
||||
}
|
||||
/*
|
||||
* @file HTML Buttons plugin for CKEditor
|
||||
* Copyright (C) 2012 Alfonso Martínez de Lizarrondo
|
||||
* A simple plugin to help create custom buttons to insert HTML blocks
|
||||
*/
|
||||
|
||||
CKEDITOR.plugins.add( 'htmlbuttons',
|
||||
{
|
||||
init : function( editor )
|
||||
{
|
||||
var buttonsConfig = editor.config.htmlbuttons;
|
||||
if (!buttonsConfig)
|
||||
return;
|
||||
|
||||
function createCommand( definition )
|
||||
{
|
||||
return {
|
||||
exec: function( editor ) {
|
||||
editor.insertHtml( definition.html );
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
// Create the command for each button
|
||||
for(var i=0; i<buttonsConfig.length; i++)
|
||||
{
|
||||
var button = buttonsConfig[ i ];
|
||||
var commandName = button.name;
|
||||
editor.addCommand( commandName, createCommand(button, editor) );
|
||||
|
||||
editor.ui.addButton( commandName,
|
||||
{
|
||||
label : button.title,
|
||||
command : commandName,
|
||||
icon : this.path + button.icon
|
||||
});
|
||||
}
|
||||
} //Init
|
||||
|
||||
} );
|
||||
|
||||
/**
|
||||
* An array of buttons to add to the toolbar.
|
||||
* Each button is an object with these properties:
|
||||
* name: The name of the command and the button (the one to use in the toolbar configuration)
|
||||
* icon: The icon to use. Place them in the plugin folder
|
||||
* html: The HTML to insert when the user clicks the button
|
||||
* title: Title that appears while hovering the button
|
||||
*
|
||||
* Default configuration with some sample buttons:
|
||||
*/
|
||||
CKEDITOR.config.htmlbuttons = [
|
||||
{
|
||||
name:'button1',
|
||||
icon:'icon1.png',
|
||||
html:'<a href="http://www.google.com">Search something</a>',
|
||||
title:'A link to Google'
|
||||
},
|
||||
{
|
||||
name:'button2',
|
||||
icon:'icon2.png',
|
||||
html:'<table style="min-width:200px"><tr><td> </td><td> </td></tr><tr><td> </td><td> </td></tr></table>',
|
||||
title:'A simple table'
|
||||
},
|
||||
{
|
||||
name:'button3',
|
||||
icon:'icon3.png',
|
||||
html:'<ol><li>Item 1 <ol><li>Sub item 1</li><li>Sub item 2</li></ol></li></ol>',
|
||||
title:'A nested list'
|
||||
}
|
||||
];
|
||||
@@ -1,359 +1,359 @@
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.plugins.add( 'htmlwriter', {
|
||||
init: function( editor ) {
|
||||
var writer = new CKEDITOR.htmlWriter();
|
||||
|
||||
writer.forceSimpleAmpersand = editor.config.forceSimpleAmpersand;
|
||||
writer.indentationChars = editor.config.dataIndentationChars || '\t';
|
||||
|
||||
// Overwrite default basicWriter initialized in hmtlDataProcessor constructor.
|
||||
editor.dataProcessor.writer = writer;
|
||||
}
|
||||
} );
|
||||
|
||||
/**
|
||||
* Class used to write HTML data.
|
||||
*
|
||||
* var writer = new CKEDITOR.htmlWriter();
|
||||
* writer.openTag( 'p' );
|
||||
* writer.attribute( 'class', 'MyClass' );
|
||||
* writer.openTagClose( 'p' );
|
||||
* writer.text( 'Hello' );
|
||||
* writer.closeTag( 'p' );
|
||||
* alert( writer.getHtml() ); // '<p class="MyClass">Hello</p>'
|
||||
*
|
||||
* @class
|
||||
* @extends CKEDITOR.htmlParser.basicWriter
|
||||
*/
|
||||
CKEDITOR.htmlWriter = CKEDITOR.tools.createClass( {
|
||||
base: CKEDITOR.htmlParser.basicWriter,
|
||||
|
||||
/**
|
||||
* Creates a htmlWriter class instance.
|
||||
*
|
||||
* @constructor
|
||||
*/
|
||||
$: function() {
|
||||
// Call the base contructor.
|
||||
this.base();
|
||||
|
||||
/**
|
||||
* The characters to be used for each identation step.
|
||||
*
|
||||
* // Use tab for indentation.
|
||||
* editorInstance.dataProcessor.writer.indentationChars = '\t';
|
||||
*/
|
||||
this.indentationChars = '\t';
|
||||
|
||||
/**
|
||||
* The characters to be used to close "self-closing" elements, like `<br>` or `<img>`.
|
||||
*
|
||||
* // Use HTML4 notation for self-closing elements.
|
||||
* editorInstance.dataProcessor.writer.selfClosingEnd = '>';
|
||||
*/
|
||||
this.selfClosingEnd = ' />';
|
||||
|
||||
/**
|
||||
* The characters to be used for line breaks.
|
||||
*
|
||||
* // Use CRLF for line breaks.
|
||||
* editorInstance.dataProcessor.writer.lineBreakChars = '\r\n';
|
||||
*/
|
||||
this.lineBreakChars = '\n';
|
||||
|
||||
this.sortAttributes = 1;
|
||||
|
||||
this._.indent = 0;
|
||||
this._.indentation = '';
|
||||
// Indicate preformatted block context status. (#5789)
|
||||
this._.inPre = 0;
|
||||
this._.rules = {};
|
||||
|
||||
var dtd = CKEDITOR.dtd;
|
||||
|
||||
for ( var e in CKEDITOR.tools.extend( {}, dtd.$nonBodyContent, dtd.$block, dtd.$listItem, dtd.$tableContent ) ) {
|
||||
this.setRules( e, {
|
||||
indent: !dtd[ e ][ '#' ],
|
||||
breakBeforeOpen: 1,
|
||||
breakBeforeClose: !dtd[ e ][ '#' ],
|
||||
breakAfterClose: 1,
|
||||
needsSpace: ( e in dtd.$block ) && !( e in { li: 1, dt: 1, dd: 1 } )
|
||||
} );
|
||||
}
|
||||
|
||||
this.setRules( 'br', { breakAfterOpen: 1 } );
|
||||
|
||||
this.setRules( 'title', {
|
||||
indent: 0,
|
||||
breakAfterOpen: 0
|
||||
} );
|
||||
|
||||
this.setRules( 'style', {
|
||||
indent: 0,
|
||||
breakBeforeClose: 1
|
||||
} );
|
||||
|
||||
this.setRules( 'pre', {
|
||||
breakAfterOpen: 1, // Keep line break after the opening tag
|
||||
indent: 0 // Disable indentation on <pre>.
|
||||
} );
|
||||
},
|
||||
|
||||
proto: {
|
||||
/**
|
||||
* Writes the tag opening part for a opener tag.
|
||||
*
|
||||
* // Writes '<p'.
|
||||
* writer.openTag( 'p', { class : 'MyClass', id : 'MyId' } );
|
||||
*
|
||||
* @param {String} tagName The element name for this tag.
|
||||
* @param {Object} attributes The attributes defined for this tag. The
|
||||
* attributes could be used to inspect the tag.
|
||||
*/
|
||||
openTag: function( tagName, attributes ) {
|
||||
var rules = this._.rules[ tagName ];
|
||||
|
||||
if ( this._.afterCloser && rules && rules.needsSpace && this._.needsSpace )
|
||||
this._.output.push( '\n' );
|
||||
|
||||
if ( this._.indent )
|
||||
this.indentation();
|
||||
// Do not break if indenting.
|
||||
else if ( rules && rules.breakBeforeOpen ) {
|
||||
this.lineBreak();
|
||||
this.indentation();
|
||||
}
|
||||
|
||||
this._.output.push( '<', tagName );
|
||||
|
||||
this._.afterCloser = 0;
|
||||
},
|
||||
|
||||
/**
|
||||
* Writes the tag closing part for a opener tag.
|
||||
*
|
||||
* // Writes '>'.
|
||||
* writer.openTagClose( 'p', false );
|
||||
*
|
||||
* // Writes ' />'.
|
||||
* writer.openTagClose( 'br', true );
|
||||
*
|
||||
* @param {String} tagName The element name for this tag.
|
||||
* @param {Boolean} isSelfClose Indicates that this is a self-closing tag,
|
||||
* like `<br>` or `<img>`.
|
||||
*/
|
||||
openTagClose: function( tagName, isSelfClose ) {
|
||||
var rules = this._.rules[ tagName ];
|
||||
|
||||
if ( isSelfClose ) {
|
||||
this._.output.push( this.selfClosingEnd );
|
||||
|
||||
if ( rules && rules.breakAfterClose )
|
||||
this._.needsSpace = rules.needsSpace;
|
||||
} else {
|
||||
this._.output.push( '>' );
|
||||
|
||||
if ( rules && rules.indent )
|
||||
this._.indentation += this.indentationChars;
|
||||
}
|
||||
|
||||
if ( rules && rules.breakAfterOpen )
|
||||
this.lineBreak();
|
||||
tagName == 'pre' && ( this._.inPre = 1 );
|
||||
},
|
||||
|
||||
/**
|
||||
* Writes an attribute. This function should be called after opening the
|
||||
* tag with {@link #openTagClose}.
|
||||
*
|
||||
* // Writes ' class="MyClass"'.
|
||||
* writer.attribute( 'class', 'MyClass' );
|
||||
*
|
||||
* @param {String} attName The attribute name.
|
||||
* @param {String} attValue The attribute value.
|
||||
*/
|
||||
attribute: function( attName, attValue ) {
|
||||
|
||||
if ( typeof attValue == 'string' ) {
|
||||
this.forceSimpleAmpersand && ( attValue = attValue.replace( /&/g, '&' ) );
|
||||
// Browsers don't always escape special character in attribute values. (#4683, #4719).
|
||||
attValue = CKEDITOR.tools.htmlEncodeAttr( attValue );
|
||||
}
|
||||
|
||||
this._.output.push( ' ', attName, '="', attValue, '"' );
|
||||
},
|
||||
|
||||
/**
|
||||
* Writes a closer tag.
|
||||
*
|
||||
* // Writes '</p>'.
|
||||
* writer.closeTag( 'p' );
|
||||
*
|
||||
* @param {String} tagName The element name for this tag.
|
||||
*/
|
||||
closeTag: function( tagName ) {
|
||||
var rules = this._.rules[ tagName ];
|
||||
|
||||
if ( rules && rules.indent )
|
||||
this._.indentation = this._.indentation.substr( this.indentationChars.length );
|
||||
|
||||
if ( this._.indent )
|
||||
this.indentation();
|
||||
// Do not break if indenting.
|
||||
else if ( rules && rules.breakBeforeClose ) {
|
||||
this.lineBreak();
|
||||
this.indentation();
|
||||
}
|
||||
|
||||
this._.output.push( '</', tagName, '>' );
|
||||
tagName == 'pre' && ( this._.inPre = 0 );
|
||||
|
||||
if ( rules && rules.breakAfterClose ) {
|
||||
this.lineBreak();
|
||||
this._.needsSpace = rules.needsSpace;
|
||||
}
|
||||
|
||||
this._.afterCloser = 1;
|
||||
},
|
||||
|
||||
/**
|
||||
* Writes text.
|
||||
*
|
||||
* // Writes 'Hello Word'.
|
||||
* writer.text( 'Hello Word' );
|
||||
*
|
||||
* @param {String} text The text value
|
||||
*/
|
||||
text: function( text ) {
|
||||
if ( this._.indent ) {
|
||||
this.indentation();
|
||||
!this._.inPre && ( text = CKEDITOR.tools.ltrim( text ) );
|
||||
}
|
||||
|
||||
this._.output.push( text );
|
||||
},
|
||||
|
||||
/**
|
||||
* Writes a comment.
|
||||
*
|
||||
* // Writes "<!-- My comment -->".
|
||||
* writer.comment( ' My comment ' );
|
||||
*
|
||||
* @param {String} comment The comment text.
|
||||
*/
|
||||
comment: function( comment ) {
|
||||
if ( this._.indent )
|
||||
this.indentation();
|
||||
|
||||
this._.output.push( '<!--', comment, '-->' );
|
||||
},
|
||||
|
||||
/**
|
||||
* Writes a line break. It uses the {@link #lineBreakChars} property for it.
|
||||
*
|
||||
* // Writes '\n' (e.g.).
|
||||
* writer.lineBreak();
|
||||
*/
|
||||
lineBreak: function() {
|
||||
if ( !this._.inPre && this._.output.length > 0 )
|
||||
this._.output.push( this.lineBreakChars );
|
||||
this._.indent = 1;
|
||||
},
|
||||
|
||||
/**
|
||||
* Writes the current indentation chars. It uses the {@link #indentationChars}
|
||||
* property, repeating it for the current indentation steps.
|
||||
*
|
||||
* // Writes '\t' (e.g.).
|
||||
* writer.indentation();
|
||||
*/
|
||||
indentation: function() {
|
||||
if ( !this._.inPre && this._.indentation )
|
||||
this._.output.push( this._.indentation );
|
||||
this._.indent = 0;
|
||||
},
|
||||
|
||||
/**
|
||||
* Empties the current output buffer. It also brings back the default
|
||||
* values of the writer flags.
|
||||
*
|
||||
* writer.reset();
|
||||
*/
|
||||
reset: function() {
|
||||
this._.output = [];
|
||||
this._.indent = 0;
|
||||
this._.indentation = '';
|
||||
this._.afterCloser = 0;
|
||||
this._.inPre = 0;
|
||||
},
|
||||
|
||||
/**
|
||||
* Sets formatting rules for a give element. The possible rules are:
|
||||
*
|
||||
* * `indent`: indent the element contents.
|
||||
* * `breakBeforeOpen`: break line before the opener tag for this element.
|
||||
* * `breakAfterOpen`: break line after the opener tag for this element.
|
||||
* * `breakBeforeClose`: break line before the closer tag for this element.
|
||||
* * `breakAfterClose`: break line after the closer tag for this element.
|
||||
*
|
||||
* All rules default to `false`. Each call to the function overrides
|
||||
* already present rules, leaving the undefined untouched.
|
||||
*
|
||||
* By default, all elements available in the {@link CKEDITOR.dtd#$block},
|
||||
* {@link CKEDITOR.dtd#$listItem} and {@link CKEDITOR.dtd#$tableContent}
|
||||
* lists have all the above rules set to `true`. Additionaly, the `<br>`
|
||||
* element has the `breakAfterOpen` set to `true`.
|
||||
*
|
||||
* // Break line before and after "img" tags.
|
||||
* writer.setRules( 'img', {
|
||||
* breakBeforeOpen: true
|
||||
* breakAfterOpen: true
|
||||
* } );
|
||||
*
|
||||
* // Reset the rules for the "h1" tag.
|
||||
* writer.setRules( 'h1', {} );
|
||||
*
|
||||
* @param {String} tagName The element name to which set the rules.
|
||||
* @param {Object} rules An object containing the element rules.
|
||||
*/
|
||||
setRules: function( tagName, rules ) {
|
||||
var currentRules = this._.rules[ tagName ];
|
||||
|
||||
if ( currentRules )
|
||||
CKEDITOR.tools.extend( currentRules, rules, true );
|
||||
else
|
||||
this._.rules[ tagName ] = rules;
|
||||
}
|
||||
}
|
||||
} );
|
||||
|
||||
/**
|
||||
* Whether to force using `'&'` instead of `'&'` in elements attributes
|
||||
* values, it's not recommended to change this setting for compliance with the
|
||||
* W3C XHTML 1.0 standards ([C.12, XHTML 1.0](http://www.w3.org/TR/xhtml1/#C_12)).
|
||||
*
|
||||
* // Use `'&'` instead of `'&'`
|
||||
* CKEDITOR.config.forceSimpleAmpersand = true;
|
||||
*
|
||||
* @cfg {Boolean} [forceSimpleAmpersand=false]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
|
||||
/**
|
||||
* The characters to be used for indenting the HTML produced by the editor.
|
||||
* Using characters different than `' '` (space) and `'\t'` (tab) is definitely
|
||||
* a bad idea as it'll mess the code.
|
||||
*
|
||||
* // No indentation.
|
||||
* CKEDITOR.config.dataIndentationChars = '';
|
||||
*
|
||||
* // Use two spaces for indentation.
|
||||
* CKEDITOR.config.dataIndentationChars = ' ';
|
||||
*
|
||||
* @cfg {String} [dataIndentationChars='\t']
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.plugins.add( 'htmlwriter', {
|
||||
init: function( editor ) {
|
||||
var writer = new CKEDITOR.htmlWriter();
|
||||
|
||||
writer.forceSimpleAmpersand = editor.config.forceSimpleAmpersand;
|
||||
writer.indentationChars = editor.config.dataIndentationChars || '\t';
|
||||
|
||||
// Overwrite default basicWriter initialized in hmtlDataProcessor constructor.
|
||||
editor.dataProcessor.writer = writer;
|
||||
}
|
||||
} );
|
||||
|
||||
/**
|
||||
* Class used to write HTML data.
|
||||
*
|
||||
* var writer = new CKEDITOR.htmlWriter();
|
||||
* writer.openTag( 'p' );
|
||||
* writer.attribute( 'class', 'MyClass' );
|
||||
* writer.openTagClose( 'p' );
|
||||
* writer.text( 'Hello' );
|
||||
* writer.closeTag( 'p' );
|
||||
* alert( writer.getHtml() ); // '<p class="MyClass">Hello</p>'
|
||||
*
|
||||
* @class
|
||||
* @extends CKEDITOR.htmlParser.basicWriter
|
||||
*/
|
||||
CKEDITOR.htmlWriter = CKEDITOR.tools.createClass( {
|
||||
base: CKEDITOR.htmlParser.basicWriter,
|
||||
|
||||
/**
|
||||
* Creates a htmlWriter class instance.
|
||||
*
|
||||
* @constructor
|
||||
*/
|
||||
$: function() {
|
||||
// Call the base contructor.
|
||||
this.base();
|
||||
|
||||
/**
|
||||
* The characters to be used for each identation step.
|
||||
*
|
||||
* // Use tab for indentation.
|
||||
* editorInstance.dataProcessor.writer.indentationChars = '\t';
|
||||
*/
|
||||
this.indentationChars = '\t';
|
||||
|
||||
/**
|
||||
* The characters to be used to close "self-closing" elements, like `<br>` or `<img>`.
|
||||
*
|
||||
* // Use HTML4 notation for self-closing elements.
|
||||
* editorInstance.dataProcessor.writer.selfClosingEnd = '>';
|
||||
*/
|
||||
this.selfClosingEnd = ' />';
|
||||
|
||||
/**
|
||||
* The characters to be used for line breaks.
|
||||
*
|
||||
* // Use CRLF for line breaks.
|
||||
* editorInstance.dataProcessor.writer.lineBreakChars = '\r\n';
|
||||
*/
|
||||
this.lineBreakChars = '\n';
|
||||
|
||||
this.sortAttributes = 1;
|
||||
|
||||
this._.indent = 0;
|
||||
this._.indentation = '';
|
||||
// Indicate preformatted block context status. (#5789)
|
||||
this._.inPre = 0;
|
||||
this._.rules = {};
|
||||
|
||||
var dtd = CKEDITOR.dtd;
|
||||
|
||||
for ( var e in CKEDITOR.tools.extend( {}, dtd.$nonBodyContent, dtd.$block, dtd.$listItem, dtd.$tableContent ) ) {
|
||||
this.setRules( e, {
|
||||
indent: !dtd[ e ][ '#' ],
|
||||
breakBeforeOpen: 1,
|
||||
breakBeforeClose: !dtd[ e ][ '#' ],
|
||||
breakAfterClose: 1,
|
||||
needsSpace: ( e in dtd.$block ) && !( e in { li: 1, dt: 1, dd: 1 } )
|
||||
} );
|
||||
}
|
||||
|
||||
this.setRules( 'br', { breakAfterOpen: 1 } );
|
||||
|
||||
this.setRules( 'title', {
|
||||
indent: 0,
|
||||
breakAfterOpen: 0
|
||||
} );
|
||||
|
||||
this.setRules( 'style', {
|
||||
indent: 0,
|
||||
breakBeforeClose: 1
|
||||
} );
|
||||
|
||||
this.setRules( 'pre', {
|
||||
breakAfterOpen: 1, // Keep line break after the opening tag
|
||||
indent: 0 // Disable indentation on <pre>.
|
||||
} );
|
||||
},
|
||||
|
||||
proto: {
|
||||
/**
|
||||
* Writes the tag opening part for a opener tag.
|
||||
*
|
||||
* // Writes '<p'.
|
||||
* writer.openTag( 'p', { class : 'MyClass', id : 'MyId' } );
|
||||
*
|
||||
* @param {String} tagName The element name for this tag.
|
||||
* @param {Object} attributes The attributes defined for this tag. The
|
||||
* attributes could be used to inspect the tag.
|
||||
*/
|
||||
openTag: function( tagName, attributes ) {
|
||||
var rules = this._.rules[ tagName ];
|
||||
|
||||
if ( this._.afterCloser && rules && rules.needsSpace && this._.needsSpace )
|
||||
this._.output.push( '\n' );
|
||||
|
||||
if ( this._.indent )
|
||||
this.indentation();
|
||||
// Do not break if indenting.
|
||||
else if ( rules && rules.breakBeforeOpen ) {
|
||||
this.lineBreak();
|
||||
this.indentation();
|
||||
}
|
||||
|
||||
this._.output.push( '<', tagName );
|
||||
|
||||
this._.afterCloser = 0;
|
||||
},
|
||||
|
||||
/**
|
||||
* Writes the tag closing part for a opener tag.
|
||||
*
|
||||
* // Writes '>'.
|
||||
* writer.openTagClose( 'p', false );
|
||||
*
|
||||
* // Writes ' />'.
|
||||
* writer.openTagClose( 'br', true );
|
||||
*
|
||||
* @param {String} tagName The element name for this tag.
|
||||
* @param {Boolean} isSelfClose Indicates that this is a self-closing tag,
|
||||
* like `<br>` or `<img>`.
|
||||
*/
|
||||
openTagClose: function( tagName, isSelfClose ) {
|
||||
var rules = this._.rules[ tagName ];
|
||||
|
||||
if ( isSelfClose ) {
|
||||
this._.output.push( this.selfClosingEnd );
|
||||
|
||||
if ( rules && rules.breakAfterClose )
|
||||
this._.needsSpace = rules.needsSpace;
|
||||
} else {
|
||||
this._.output.push( '>' );
|
||||
|
||||
if ( rules && rules.indent )
|
||||
this._.indentation += this.indentationChars;
|
||||
}
|
||||
|
||||
if ( rules && rules.breakAfterOpen )
|
||||
this.lineBreak();
|
||||
tagName == 'pre' && ( this._.inPre = 1 );
|
||||
},
|
||||
|
||||
/**
|
||||
* Writes an attribute. This function should be called after opening the
|
||||
* tag with {@link #openTagClose}.
|
||||
*
|
||||
* // Writes ' class="MyClass"'.
|
||||
* writer.attribute( 'class', 'MyClass' );
|
||||
*
|
||||
* @param {String} attName The attribute name.
|
||||
* @param {String} attValue The attribute value.
|
||||
*/
|
||||
attribute: function( attName, attValue ) {
|
||||
|
||||
if ( typeof attValue == 'string' ) {
|
||||
this.forceSimpleAmpersand && ( attValue = attValue.replace( /&/g, '&' ) );
|
||||
// Browsers don't always escape special character in attribute values. (#4683, #4719).
|
||||
attValue = CKEDITOR.tools.htmlEncodeAttr( attValue );
|
||||
}
|
||||
|
||||
this._.output.push( ' ', attName, '="', attValue, '"' );
|
||||
},
|
||||
|
||||
/**
|
||||
* Writes a closer tag.
|
||||
*
|
||||
* // Writes '</p>'.
|
||||
* writer.closeTag( 'p' );
|
||||
*
|
||||
* @param {String} tagName The element name for this tag.
|
||||
*/
|
||||
closeTag: function( tagName ) {
|
||||
var rules = this._.rules[ tagName ];
|
||||
|
||||
if ( rules && rules.indent )
|
||||
this._.indentation = this._.indentation.substr( this.indentationChars.length );
|
||||
|
||||
if ( this._.indent )
|
||||
this.indentation();
|
||||
// Do not break if indenting.
|
||||
else if ( rules && rules.breakBeforeClose ) {
|
||||
this.lineBreak();
|
||||
this.indentation();
|
||||
}
|
||||
|
||||
this._.output.push( '</', tagName, '>' );
|
||||
tagName == 'pre' && ( this._.inPre = 0 );
|
||||
|
||||
if ( rules && rules.breakAfterClose ) {
|
||||
this.lineBreak();
|
||||
this._.needsSpace = rules.needsSpace;
|
||||
}
|
||||
|
||||
this._.afterCloser = 1;
|
||||
},
|
||||
|
||||
/**
|
||||
* Writes text.
|
||||
*
|
||||
* // Writes 'Hello Word'.
|
||||
* writer.text( 'Hello Word' );
|
||||
*
|
||||
* @param {String} text The text value
|
||||
*/
|
||||
text: function( text ) {
|
||||
if ( this._.indent ) {
|
||||
this.indentation();
|
||||
!this._.inPre && ( text = CKEDITOR.tools.ltrim( text ) );
|
||||
}
|
||||
|
||||
this._.output.push( text );
|
||||
},
|
||||
|
||||
/**
|
||||
* Writes a comment.
|
||||
*
|
||||
* // Writes "<!-- My comment -->".
|
||||
* writer.comment( ' My comment ' );
|
||||
*
|
||||
* @param {String} comment The comment text.
|
||||
*/
|
||||
comment: function( comment ) {
|
||||
if ( this._.indent )
|
||||
this.indentation();
|
||||
|
||||
this._.output.push( '<!--', comment, '-->' );
|
||||
},
|
||||
|
||||
/**
|
||||
* Writes a line break. It uses the {@link #lineBreakChars} property for it.
|
||||
*
|
||||
* // Writes '\n' (e.g.).
|
||||
* writer.lineBreak();
|
||||
*/
|
||||
lineBreak: function() {
|
||||
if ( !this._.inPre && this._.output.length > 0 )
|
||||
this._.output.push( this.lineBreakChars );
|
||||
this._.indent = 1;
|
||||
},
|
||||
|
||||
/**
|
||||
* Writes the current indentation chars. It uses the {@link #indentationChars}
|
||||
* property, repeating it for the current indentation steps.
|
||||
*
|
||||
* // Writes '\t' (e.g.).
|
||||
* writer.indentation();
|
||||
*/
|
||||
indentation: function() {
|
||||
if ( !this._.inPre && this._.indentation )
|
||||
this._.output.push( this._.indentation );
|
||||
this._.indent = 0;
|
||||
},
|
||||
|
||||
/**
|
||||
* Empties the current output buffer. It also brings back the default
|
||||
* values of the writer flags.
|
||||
*
|
||||
* writer.reset();
|
||||
*/
|
||||
reset: function() {
|
||||
this._.output = [];
|
||||
this._.indent = 0;
|
||||
this._.indentation = '';
|
||||
this._.afterCloser = 0;
|
||||
this._.inPre = 0;
|
||||
},
|
||||
|
||||
/**
|
||||
* Sets formatting rules for a give element. The possible rules are:
|
||||
*
|
||||
* * `indent`: indent the element contents.
|
||||
* * `breakBeforeOpen`: break line before the opener tag for this element.
|
||||
* * `breakAfterOpen`: break line after the opener tag for this element.
|
||||
* * `breakBeforeClose`: break line before the closer tag for this element.
|
||||
* * `breakAfterClose`: break line after the closer tag for this element.
|
||||
*
|
||||
* All rules default to `false`. Each call to the function overrides
|
||||
* already present rules, leaving the undefined untouched.
|
||||
*
|
||||
* By default, all elements available in the {@link CKEDITOR.dtd#$block},
|
||||
* {@link CKEDITOR.dtd#$listItem} and {@link CKEDITOR.dtd#$tableContent}
|
||||
* lists have all the above rules set to `true`. Additionaly, the `<br>`
|
||||
* element has the `breakAfterOpen` set to `true`.
|
||||
*
|
||||
* // Break line before and after "img" tags.
|
||||
* writer.setRules( 'img', {
|
||||
* breakBeforeOpen: true
|
||||
* breakAfterOpen: true
|
||||
* } );
|
||||
*
|
||||
* // Reset the rules for the "h1" tag.
|
||||
* writer.setRules( 'h1', {} );
|
||||
*
|
||||
* @param {String} tagName The element name to which set the rules.
|
||||
* @param {Object} rules An object containing the element rules.
|
||||
*/
|
||||
setRules: function( tagName, rules ) {
|
||||
var currentRules = this._.rules[ tagName ];
|
||||
|
||||
if ( currentRules )
|
||||
CKEDITOR.tools.extend( currentRules, rules, true );
|
||||
else
|
||||
this._.rules[ tagName ] = rules;
|
||||
}
|
||||
}
|
||||
} );
|
||||
|
||||
/**
|
||||
* Whether to force using `'&'` instead of `'&'` in elements attributes
|
||||
* values, it's not recommended to change this setting for compliance with the
|
||||
* W3C XHTML 1.0 standards ([C.12, XHTML 1.0](http://www.w3.org/TR/xhtml1/#C_12)).
|
||||
*
|
||||
* // Use `'&'` instead of `'&'`
|
||||
* CKEDITOR.config.forceSimpleAmpersand = true;
|
||||
*
|
||||
* @cfg {Boolean} [forceSimpleAmpersand=false]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
|
||||
/**
|
||||
* The characters to be used for indenting the HTML produced by the editor.
|
||||
* Using characters different than `' '` (space) and `'\t'` (tab) is definitely
|
||||
* a bad idea as it'll mess the code.
|
||||
*
|
||||
* // No indentation.
|
||||
* CKEDITOR.config.dataIndentationChars = '';
|
||||
*
|
||||
* // Use two spaces for indentation.
|
||||
* CKEDITOR.config.dataIndentationChars = ' ';
|
||||
*
|
||||
* @cfg {String} [dataIndentationChars='\t']
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -1,280 +1,280 @@
|
||||
<!DOCTYPE html>
|
||||
<!--
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
-->
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Output for Flash — CKEditor Sample</title>
|
||||
<script src="../../../ckeditor.js"></script>
|
||||
<script src="../../../samples/sample.js"></script>
|
||||
<script src="assets/outputforflash/swfobject.js"></script>
|
||||
<link href="../../../samples/sample.css" rel="stylesheet">
|
||||
<meta name="ckeditor-sample-required-plugins" content="sourcearea">
|
||||
<meta name="ckeditor-sample-name" content="Output for Flash">
|
||||
<meta name="ckeditor-sample-group" content="Advanced Samples">
|
||||
<meta name="ckeditor-sample-description" content="Configuring CKEditor to produce HTML code that can be used with Adobe Flash.">
|
||||
<style>
|
||||
|
||||
.alert
|
||||
{
|
||||
background: #ffa84c;
|
||||
padding: 10px 15px;
|
||||
font-weight: bold;
|
||||
display: block;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h1 class="samples">
|
||||
<a href="../../../samples/index.html">CKEditor Samples</a> » Producing Flash Compliant HTML Output
|
||||
</h1>
|
||||
<div class="description">
|
||||
<p>
|
||||
This sample shows how to configure CKEditor to output
|
||||
HTML code that can be used with
|
||||
<a class="samples" href="http://www.adobe.com/livedocs/flash/9.0/main/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00000922.html">
|
||||
Adobe Flash</a>.
|
||||
The code will contain a subset of standard HTML elements like <code><b></code>,
|
||||
<code><i></code>, and <code><p></code> as well as HTML attributes.
|
||||
</p>
|
||||
<p>
|
||||
To add a CKEditor instance outputting Flash compliant HTML code, load the editor using a standard
|
||||
JavaScript call, and define CKEditor features to use HTML elements and attributes.
|
||||
</p>
|
||||
<p>
|
||||
For details on how to create this setup check the source code of this sample page.
|
||||
</p>
|
||||
</div>
|
||||
<p>
|
||||
To see how it works, create some content in the editing area of CKEditor on the left
|
||||
and send it to the Flash object on the right side of the page by using the
|
||||
<strong>Send to Flash</strong> button.
|
||||
</p>
|
||||
<table style="width: 100%; border-spacing: 0; border-collapse:collapse;">
|
||||
<tr>
|
||||
<td style="width: 100%">
|
||||
<textarea cols="80" id="editor1" name="editor1" rows="10"><p><b><font size="18" style="font-size:18px;">Flash and HTML</font></b></p><p>&nbsp;</p><p>It is possible to have <a href="http://ckeditor.com">CKEditor</a> creating content that will be later loaded inside <b>Flash</b> objects and animations.</p><p>&nbsp;</p><p>Flash has a few limitations when dealing with HTML:</p><p>&nbsp;</p><ul><li>It has limited support on tags.</li><li>There is no margin between block elements, like paragraphs.</li></ul></textarea>
|
||||
<script>
|
||||
|
||||
if ( document.location.protocol == 'file:' )
|
||||
alert( 'Warning: This samples does not work when loaded from local filesystem' +
|
||||
'due to security restrictions implemented in Flash.' +
|
||||
'\n\nPlease load the sample from a web server instead.' );
|
||||
|
||||
var editor = CKEDITOR.replace( 'editor1', {
|
||||
/*
|
||||
* Ensure that htmlwriter plugin, which is required for this sample, is loaded.
|
||||
*/
|
||||
extraPlugins: 'htmlwriter',
|
||||
|
||||
height: 290,
|
||||
width: '100%',
|
||||
toolbar: [
|
||||
[ 'Source', '-', 'Bold', 'Italic', 'Underline', '-', 'BulletedList', '-', 'Link', 'Unlink' ],
|
||||
[ 'JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock' ],
|
||||
'/',
|
||||
[ 'Font', 'FontSize' ],
|
||||
[ 'TextColor', '-', 'About' ]
|
||||
],
|
||||
|
||||
/*
|
||||
* Style sheet for the contents
|
||||
*/
|
||||
contentsCss: 'body {color:#000; background-color#FFF; font-family: Arial; font-size:80%;} p, ol, ul {margin-top: 0px; margin-bottom: 0px;}',
|
||||
|
||||
/*
|
||||
* Quirks doctype
|
||||
*/
|
||||
docType: '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">',
|
||||
|
||||
/*
|
||||
* Core styles.
|
||||
*/
|
||||
coreStyles_bold: { element: 'b' },
|
||||
coreStyles_italic: { element: 'i' },
|
||||
coreStyles_underline: { element: 'u' },
|
||||
|
||||
/*
|
||||
* Font face.
|
||||
*/
|
||||
|
||||
// Define the way font elements will be applied to the document. The "font"
|
||||
// element will be used.
|
||||
font_style: {
|
||||
element: 'font',
|
||||
attributes: { 'face': '#(family)' }
|
||||
},
|
||||
|
||||
/*
|
||||
* Font sizes.
|
||||
*/
|
||||
|
||||
// The CSS part of the font sizes isn't used by Flash, it is there to get the
|
||||
// font rendered correctly in CKEditor.
|
||||
fontSize_sizes: '8px/8;9px/9;10px/10;11px/11;12px/12;14px/14;16px/16;18px/18;20px/20;22px/22;24px/24;26px/26;28px/28;36px/36;48px/48;72px/72',
|
||||
fontSize_style: {
|
||||
element: 'font',
|
||||
attributes: { 'size': '#(size)' },
|
||||
styles: { 'font-size': '#(size)px' }
|
||||
} ,
|
||||
|
||||
/*
|
||||
* Font colors.
|
||||
*/
|
||||
colorButton_enableMore: true,
|
||||
|
||||
colorButton_foreStyle: {
|
||||
element: 'font',
|
||||
attributes: { 'color': '#(color)' }
|
||||
},
|
||||
|
||||
colorButton_backStyle: {
|
||||
element: 'font',
|
||||
styles: { 'background-color': '#(color)' }
|
||||
},
|
||||
|
||||
on: { 'instanceReady': configureFlashOutput }
|
||||
});
|
||||
|
||||
/*
|
||||
* Adjust the behavior of the dataProcessor to match the
|
||||
* requirements of Flash
|
||||
*/
|
||||
function configureFlashOutput( ev ) {
|
||||
var editor = ev.editor,
|
||||
dataProcessor = editor.dataProcessor,
|
||||
htmlFilter = dataProcessor && dataProcessor.htmlFilter;
|
||||
|
||||
// Out self closing tags the HTML4 way, like <br>.
|
||||
dataProcessor.writer.selfClosingEnd = '>';
|
||||
|
||||
// Make output formatting match Flash expectations
|
||||
var dtd = CKEDITOR.dtd;
|
||||
for ( var e in CKEDITOR.tools.extend( {}, dtd.$nonBodyContent, dtd.$block, dtd.$listItem, dtd.$tableContent ) ) {
|
||||
dataProcessor.writer.setRules( e, {
|
||||
indent: false,
|
||||
breakBeforeOpen: false,
|
||||
breakAfterOpen: false,
|
||||
breakBeforeClose: false,
|
||||
breakAfterClose: false
|
||||
});
|
||||
}
|
||||
dataProcessor.writer.setRules( 'br', {
|
||||
indent: false,
|
||||
breakBeforeOpen: false,
|
||||
breakAfterOpen: false,
|
||||
breakBeforeClose: false,
|
||||
breakAfterClose: false
|
||||
});
|
||||
|
||||
// Output properties as attributes, not styles.
|
||||
htmlFilter.addRules( {
|
||||
elements: {
|
||||
$: function( element ) {
|
||||
var style, match, width, height, align;
|
||||
|
||||
// Output dimensions of images as width and height
|
||||
if ( element.name == 'img' ) {
|
||||
style = element.attributes.style;
|
||||
|
||||
if ( style ) {
|
||||
// Get the width from the style.
|
||||
match = ( /(?:^|\s)width\s*:\s*(\d+)px/i ).exec( style );
|
||||
width = match && match[1];
|
||||
|
||||
// Get the height from the style.
|
||||
match = ( /(?:^|\s)height\s*:\s*(\d+)px/i ).exec( style );
|
||||
height = match && match[1];
|
||||
|
||||
if ( width ) {
|
||||
element.attributes.style = element.attributes.style.replace( /(?:^|\s)width\s*:\s*(\d+)px;?/i , '' );
|
||||
element.attributes.width = width;
|
||||
}
|
||||
|
||||
if ( height ) {
|
||||
element.attributes.style = element.attributes.style.replace( /(?:^|\s)height\s*:\s*(\d+)px;?/i , '' );
|
||||
element.attributes.height = height;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Output alignment of paragraphs using align
|
||||
if ( element.name == 'p' ) {
|
||||
style = element.attributes.style;
|
||||
|
||||
if ( style ) {
|
||||
// Get the align from the style.
|
||||
match = ( /(?:^|\s)text-align\s*:\s*(\w*);?/i ).exec( style );
|
||||
align = match && match[1];
|
||||
|
||||
if ( align ) {
|
||||
element.attributes.style = element.attributes.style.replace( /(?:^|\s)text-align\s*:\s*(\w*);?/i , '' );
|
||||
element.attributes.align = align;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ( element.attributes.style === '' )
|
||||
delete element.attributes.style;
|
||||
|
||||
return element;
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function sendToFlash() {
|
||||
var html = CKEDITOR.instances.editor1.getData() ;
|
||||
|
||||
// Quick fix for link color.
|
||||
html = html.replace( /<a /g, '<font color="#0000FF"><u><a ' )
|
||||
html = html.replace( /<\/a>/g, '</a></u></font>' )
|
||||
|
||||
var flash = document.getElementById( 'ckFlashContainer' ) ;
|
||||
flash.setData( html ) ;
|
||||
}
|
||||
|
||||
CKEDITOR.domReady( function() {
|
||||
if ( !swfobject.hasFlashPlayerVersion( '8' ) ) {
|
||||
CKEDITOR.dom.element.createFromHtml( '<span class="alert">' +
|
||||
'At least Adobe Flash Player 8 is required to run this sample. ' +
|
||||
'You can download it from <a href="http://get.adobe.com/flashplayer">Adobe\'s website</a>.' +
|
||||
'</span>' ).insertBefore( editor.element );
|
||||
}
|
||||
|
||||
swfobject.embedSWF(
|
||||
'assets/outputforflash/outputforflash.swf',
|
||||
'ckFlashContainer',
|
||||
'550',
|
||||
'400',
|
||||
'8',
|
||||
{ wmode: 'transparent' }
|
||||
);
|
||||
});
|
||||
|
||||
</script>
|
||||
<p>
|
||||
<input type="button" value="Send to Flash" onclick="sendToFlash();">
|
||||
</p>
|
||||
</td>
|
||||
<td style="vertical-align: top; padding-left: 20px">
|
||||
<div id="ckFlashContainer"></div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<div id="footer">
|
||||
<hr>
|
||||
<p>
|
||||
CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
|
||||
</p>
|
||||
<p id="copy">
|
||||
Copyright © 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico
|
||||
Knabben. All rights reserved.
|
||||
</p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
<!DOCTYPE html>
|
||||
<!--
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
-->
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Output for Flash — CKEditor Sample</title>
|
||||
<script src="../../../ckeditor.js"></script>
|
||||
<script src="../../../samples/sample.js"></script>
|
||||
<script src="assets/outputforflash/swfobject.js"></script>
|
||||
<link href="../../../samples/sample.css" rel="stylesheet">
|
||||
<meta name="ckeditor-sample-required-plugins" content="sourcearea">
|
||||
<meta name="ckeditor-sample-name" content="Output for Flash">
|
||||
<meta name="ckeditor-sample-group" content="Advanced Samples">
|
||||
<meta name="ckeditor-sample-description" content="Configuring CKEditor to produce HTML code that can be used with Adobe Flash.">
|
||||
<style>
|
||||
|
||||
.alert
|
||||
{
|
||||
background: #ffa84c;
|
||||
padding: 10px 15px;
|
||||
font-weight: bold;
|
||||
display: block;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h1 class="samples">
|
||||
<a href="../../../samples/index.html">CKEditor Samples</a> » Producing Flash Compliant HTML Output
|
||||
</h1>
|
||||
<div class="description">
|
||||
<p>
|
||||
This sample shows how to configure CKEditor to output
|
||||
HTML code that can be used with
|
||||
<a class="samples" href="http://www.adobe.com/livedocs/flash/9.0/main/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00000922.html">
|
||||
Adobe Flash</a>.
|
||||
The code will contain a subset of standard HTML elements like <code><b></code>,
|
||||
<code><i></code>, and <code><p></code> as well as HTML attributes.
|
||||
</p>
|
||||
<p>
|
||||
To add a CKEditor instance outputting Flash compliant HTML code, load the editor using a standard
|
||||
JavaScript call, and define CKEditor features to use HTML elements and attributes.
|
||||
</p>
|
||||
<p>
|
||||
For details on how to create this setup check the source code of this sample page.
|
||||
</p>
|
||||
</div>
|
||||
<p>
|
||||
To see how it works, create some content in the editing area of CKEditor on the left
|
||||
and send it to the Flash object on the right side of the page by using the
|
||||
<strong>Send to Flash</strong> button.
|
||||
</p>
|
||||
<table style="width: 100%; border-spacing: 0; border-collapse:collapse;">
|
||||
<tr>
|
||||
<td style="width: 100%">
|
||||
<textarea cols="80" id="editor1" name="editor1" rows="10"><p><b><font size="18" style="font-size:18px;">Flash and HTML</font></b></p><p>&nbsp;</p><p>It is possible to have <a href="http://ckeditor.com">CKEditor</a> creating content that will be later loaded inside <b>Flash</b> objects and animations.</p><p>&nbsp;</p><p>Flash has a few limitations when dealing with HTML:</p><p>&nbsp;</p><ul><li>It has limited support on tags.</li><li>There is no margin between block elements, like paragraphs.</li></ul></textarea>
|
||||
<script>
|
||||
|
||||
if ( document.location.protocol == 'file:' )
|
||||
alert( 'Warning: This samples does not work when loaded from local filesystem' +
|
||||
'due to security restrictions implemented in Flash.' +
|
||||
'\n\nPlease load the sample from a web server instead.' );
|
||||
|
||||
var editor = CKEDITOR.replace( 'editor1', {
|
||||
/*
|
||||
* Ensure that htmlwriter plugin, which is required for this sample, is loaded.
|
||||
*/
|
||||
extraPlugins: 'htmlwriter',
|
||||
|
||||
height: 290,
|
||||
width: '100%',
|
||||
toolbar: [
|
||||
[ 'Source', '-', 'Bold', 'Italic', 'Underline', '-', 'BulletedList', '-', 'Link', 'Unlink' ],
|
||||
[ 'JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock' ],
|
||||
'/',
|
||||
[ 'Font', 'FontSize' ],
|
||||
[ 'TextColor', '-', 'About' ]
|
||||
],
|
||||
|
||||
/*
|
||||
* Style sheet for the contents
|
||||
*/
|
||||
contentsCss: 'body {color:#000; background-color#FFF; font-family: Arial; font-size:80%;} p, ol, ul {margin-top: 0px; margin-bottom: 0px;}',
|
||||
|
||||
/*
|
||||
* Quirks doctype
|
||||
*/
|
||||
docType: '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">',
|
||||
|
||||
/*
|
||||
* Core styles.
|
||||
*/
|
||||
coreStyles_bold: { element: 'b' },
|
||||
coreStyles_italic: { element: 'i' },
|
||||
coreStyles_underline: { element: 'u' },
|
||||
|
||||
/*
|
||||
* Font face.
|
||||
*/
|
||||
|
||||
// Define the way font elements will be applied to the document. The "font"
|
||||
// element will be used.
|
||||
font_style: {
|
||||
element: 'font',
|
||||
attributes: { 'face': '#(family)' }
|
||||
},
|
||||
|
||||
/*
|
||||
* Font sizes.
|
||||
*/
|
||||
|
||||
// The CSS part of the font sizes isn't used by Flash, it is there to get the
|
||||
// font rendered correctly in CKEditor.
|
||||
fontSize_sizes: '8px/8;9px/9;10px/10;11px/11;12px/12;14px/14;16px/16;18px/18;20px/20;22px/22;24px/24;26px/26;28px/28;36px/36;48px/48;72px/72',
|
||||
fontSize_style: {
|
||||
element: 'font',
|
||||
attributes: { 'size': '#(size)' },
|
||||
styles: { 'font-size': '#(size)px' }
|
||||
} ,
|
||||
|
||||
/*
|
||||
* Font colors.
|
||||
*/
|
||||
colorButton_enableMore: true,
|
||||
|
||||
colorButton_foreStyle: {
|
||||
element: 'font',
|
||||
attributes: { 'color': '#(color)' }
|
||||
},
|
||||
|
||||
colorButton_backStyle: {
|
||||
element: 'font',
|
||||
styles: { 'background-color': '#(color)' }
|
||||
},
|
||||
|
||||
on: { 'instanceReady': configureFlashOutput }
|
||||
});
|
||||
|
||||
/*
|
||||
* Adjust the behavior of the dataProcessor to match the
|
||||
* requirements of Flash
|
||||
*/
|
||||
function configureFlashOutput( ev ) {
|
||||
var editor = ev.editor,
|
||||
dataProcessor = editor.dataProcessor,
|
||||
htmlFilter = dataProcessor && dataProcessor.htmlFilter;
|
||||
|
||||
// Out self closing tags the HTML4 way, like <br>.
|
||||
dataProcessor.writer.selfClosingEnd = '>';
|
||||
|
||||
// Make output formatting match Flash expectations
|
||||
var dtd = CKEDITOR.dtd;
|
||||
for ( var e in CKEDITOR.tools.extend( {}, dtd.$nonBodyContent, dtd.$block, dtd.$listItem, dtd.$tableContent ) ) {
|
||||
dataProcessor.writer.setRules( e, {
|
||||
indent: false,
|
||||
breakBeforeOpen: false,
|
||||
breakAfterOpen: false,
|
||||
breakBeforeClose: false,
|
||||
breakAfterClose: false
|
||||
});
|
||||
}
|
||||
dataProcessor.writer.setRules( 'br', {
|
||||
indent: false,
|
||||
breakBeforeOpen: false,
|
||||
breakAfterOpen: false,
|
||||
breakBeforeClose: false,
|
||||
breakAfterClose: false
|
||||
});
|
||||
|
||||
// Output properties as attributes, not styles.
|
||||
htmlFilter.addRules( {
|
||||
elements: {
|
||||
$: function( element ) {
|
||||
var style, match, width, height, align;
|
||||
|
||||
// Output dimensions of images as width and height
|
||||
if ( element.name == 'img' ) {
|
||||
style = element.attributes.style;
|
||||
|
||||
if ( style ) {
|
||||
// Get the width from the style.
|
||||
match = ( /(?:^|\s)width\s*:\s*(\d+)px/i ).exec( style );
|
||||
width = match && match[1];
|
||||
|
||||
// Get the height from the style.
|
||||
match = ( /(?:^|\s)height\s*:\s*(\d+)px/i ).exec( style );
|
||||
height = match && match[1];
|
||||
|
||||
if ( width ) {
|
||||
element.attributes.style = element.attributes.style.replace( /(?:^|\s)width\s*:\s*(\d+)px;?/i , '' );
|
||||
element.attributes.width = width;
|
||||
}
|
||||
|
||||
if ( height ) {
|
||||
element.attributes.style = element.attributes.style.replace( /(?:^|\s)height\s*:\s*(\d+)px;?/i , '' );
|
||||
element.attributes.height = height;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Output alignment of paragraphs using align
|
||||
if ( element.name == 'p' ) {
|
||||
style = element.attributes.style;
|
||||
|
||||
if ( style ) {
|
||||
// Get the align from the style.
|
||||
match = ( /(?:^|\s)text-align\s*:\s*(\w*);?/i ).exec( style );
|
||||
align = match && match[1];
|
||||
|
||||
if ( align ) {
|
||||
element.attributes.style = element.attributes.style.replace( /(?:^|\s)text-align\s*:\s*(\w*);?/i , '' );
|
||||
element.attributes.align = align;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ( element.attributes.style === '' )
|
||||
delete element.attributes.style;
|
||||
|
||||
return element;
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function sendToFlash() {
|
||||
var html = CKEDITOR.instances.editor1.getData() ;
|
||||
|
||||
// Quick fix for link color.
|
||||
html = html.replace( /<a /g, '<font color="#0000FF"><u><a ' )
|
||||
html = html.replace( /<\/a>/g, '</a></u></font>' )
|
||||
|
||||
var flash = document.getElementById( 'ckFlashContainer' ) ;
|
||||
flash.setData( html ) ;
|
||||
}
|
||||
|
||||
CKEDITOR.domReady( function() {
|
||||
if ( !swfobject.hasFlashPlayerVersion( '8' ) ) {
|
||||
CKEDITOR.dom.element.createFromHtml( '<span class="alert">' +
|
||||
'At least Adobe Flash Player 8 is required to run this sample. ' +
|
||||
'You can download it from <a href="http://get.adobe.com/flashplayer">Adobe\'s website</a>.' +
|
||||
'</span>' ).insertBefore( editor.element );
|
||||
}
|
||||
|
||||
swfobject.embedSWF(
|
||||
'assets/outputforflash/outputforflash.swf',
|
||||
'ckFlashContainer',
|
||||
'550',
|
||||
'400',
|
||||
'8',
|
||||
{ wmode: 'transparent' }
|
||||
);
|
||||
});
|
||||
|
||||
</script>
|
||||
<p>
|
||||
<input type="button" value="Send to Flash" onclick="sendToFlash();">
|
||||
</p>
|
||||
</td>
|
||||
<td style="vertical-align: top; padding-left: 20px">
|
||||
<div id="ckFlashContainer"></div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<div id="footer">
|
||||
<hr>
|
||||
<p>
|
||||
CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
|
||||
</p>
|
||||
<p id="copy">
|
||||
Copyright © 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico
|
||||
Knabben. All rights reserved.
|
||||
</p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -1,221 +1,221 @@
|
||||
<!DOCTYPE html>
|
||||
<!--
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
-->
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>HTML Compliant Output — CKEditor Sample</title>
|
||||
<script src="../../../ckeditor.js"></script>
|
||||
<script src="../../../samples/sample.js"></script>
|
||||
<link href="../../../samples/sample.css" rel="stylesheet">
|
||||
<meta name="ckeditor-sample-required-plugins" content="sourcearea">
|
||||
<meta name="ckeditor-sample-name" content="Output HTML">
|
||||
<meta name="ckeditor-sample-group" content="Advanced Samples">
|
||||
<meta name="ckeditor-sample-description" content="Configuring CKEditor to produce legacy HTML 4 code.">
|
||||
</head>
|
||||
<body>
|
||||
<h1 class="samples">
|
||||
<a href="../../../samples/index.html">CKEditor Samples</a> » Producing HTML Compliant Output
|
||||
</h1>
|
||||
<div class="description">
|
||||
<p>
|
||||
This sample shows how to configure CKEditor to output valid
|
||||
<a class="samples" href="http://www.w3.org/TR/html401/">HTML 4.01</a> code.
|
||||
Traditional HTML elements like <code><b></code>,
|
||||
<code><i></code>, and <code><font></code> are used in place of
|
||||
<code><strong></code>, <code><em></code>, and CSS styles.
|
||||
</p>
|
||||
<p>
|
||||
To add a CKEditor instance outputting legacy HTML 4.01 code, load the editor using a standard
|
||||
JavaScript call, and define CKEditor features to use the HTML compliant elements and attributes.
|
||||
</p>
|
||||
<p>
|
||||
A snippet of the configuration code can be seen below; check the source of this page for
|
||||
full definition:
|
||||
</p>
|
||||
<pre class="samples">
|
||||
CKEDITOR.replace( '<em>textarea_id</em>', {
|
||||
coreStyles_bold: { element: 'b' },
|
||||
coreStyles_italic: { element: 'i' },
|
||||
|
||||
fontSize_style: {
|
||||
element: 'font',
|
||||
attributes: { 'size': '#(size)' }
|
||||
}
|
||||
|
||||
...
|
||||
});</pre>
|
||||
</div>
|
||||
<form action="../../../samples/sample_posteddata.php" method="post">
|
||||
<p>
|
||||
<label for="editor1">
|
||||
Editor 1:
|
||||
</label>
|
||||
<textarea cols="80" id="editor1" name="editor1" rows="10"><p>This is some <b>sample text</b>. You are using <a href="http://ckeditor.com/">CKEditor</a>.</p></textarea>
|
||||
<script>
|
||||
|
||||
CKEDITOR.replace( 'editor1', {
|
||||
/*
|
||||
* Ensure that htmlwriter plugin, which is required for this sample, is loaded.
|
||||
*/
|
||||
extraPlugins: 'htmlwriter',
|
||||
|
||||
/*
|
||||
* Style sheet for the contents
|
||||
*/
|
||||
contentsCss: 'body {color:#000; background-color#:FFF;}',
|
||||
|
||||
/*
|
||||
* Simple HTML5 doctype
|
||||
*/
|
||||
docType: '<!DOCTYPE HTML>',
|
||||
|
||||
/*
|
||||
* Allowed content rules which beside limiting allowed HTML
|
||||
* will also take care of transforming styles to attributes
|
||||
* (currently only for img - see transformation rules defined below).
|
||||
*
|
||||
* Read more: http://docs.ckeditor.com/#!/guide/dev_advanced_content_filter
|
||||
*/
|
||||
allowedContent:
|
||||
'h1 h2 h3 p pre[align]; ' +
|
||||
'blockquote code kbd samp var del ins cite q b i u strike ul ol li hr table tbody tr td th caption; ' +
|
||||
'img[!src,alt,align,width,height]; font[!face]; font[!family]; font[!color]; font[!size]; font{!background-color}; a[!href]; a[!name]',
|
||||
|
||||
/*
|
||||
* Core styles.
|
||||
*/
|
||||
coreStyles_bold: { element: 'b' },
|
||||
coreStyles_italic: { element: 'i' },
|
||||
coreStyles_underline: { element: 'u' },
|
||||
coreStyles_strike: { element: 'strike' },
|
||||
|
||||
/*
|
||||
* Font face.
|
||||
*/
|
||||
|
||||
// Define the way font elements will be applied to the document.
|
||||
// The "font" element will be used.
|
||||
font_style: {
|
||||
element: 'font',
|
||||
attributes: { 'face': '#(family)' }
|
||||
},
|
||||
|
||||
/*
|
||||
* Font sizes.
|
||||
*/
|
||||
fontSize_sizes: 'xx-small/1;x-small/2;small/3;medium/4;large/5;x-large/6;xx-large/7',
|
||||
fontSize_style: {
|
||||
element: 'font',
|
||||
attributes: { 'size': '#(size)' }
|
||||
},
|
||||
|
||||
/*
|
||||
* Font colors.
|
||||
*/
|
||||
|
||||
colorButton_foreStyle: {
|
||||
element: 'font',
|
||||
attributes: { 'color': '#(color)' }
|
||||
},
|
||||
|
||||
colorButton_backStyle: {
|
||||
element: 'font',
|
||||
styles: { 'background-color': '#(color)' }
|
||||
},
|
||||
|
||||
/*
|
||||
* Styles combo.
|
||||
*/
|
||||
stylesSet: [
|
||||
{ name: 'Computer Code', element: 'code' },
|
||||
{ name: 'Keyboard Phrase', element: 'kbd' },
|
||||
{ name: 'Sample Text', element: 'samp' },
|
||||
{ name: 'Variable', element: 'var' },
|
||||
{ name: 'Deleted Text', element: 'del' },
|
||||
{ name: 'Inserted Text', element: 'ins' },
|
||||
{ name: 'Cited Work', element: 'cite' },
|
||||
{ name: 'Inline Quotation', element: 'q' }
|
||||
],
|
||||
|
||||
on: {
|
||||
pluginsLoaded: configureTransformations,
|
||||
loaded: configureHtmlWriter
|
||||
}
|
||||
});
|
||||
|
||||
/*
|
||||
* Add missing content transformations.
|
||||
*/
|
||||
function configureTransformations( evt ) {
|
||||
var editor = evt.editor;
|
||||
|
||||
editor.dataProcessor.htmlFilter.addRules( {
|
||||
attributes: {
|
||||
style: function( value, element ) {
|
||||
// Return #RGB for background and border colors
|
||||
return CKEDITOR.tools.convertRgbToHex( value );
|
||||
}
|
||||
}
|
||||
} );
|
||||
|
||||
// Default automatic content transformations do not yet take care of
|
||||
// align attributes on blocks, so we need to add our own transformation rules.
|
||||
function alignToAttribute( element ) {
|
||||
if ( element.styles[ 'text-align' ] ) {
|
||||
element.attributes.align = element.styles[ 'text-align' ];
|
||||
delete element.styles[ 'text-align' ];
|
||||
}
|
||||
}
|
||||
editor.filter.addTransformations( [
|
||||
[ { element: 'p', right: alignToAttribute } ],
|
||||
[ { element: 'h1', right: alignToAttribute } ],
|
||||
[ { element: 'h2', right: alignToAttribute } ],
|
||||
[ { element: 'h3', right: alignToAttribute } ],
|
||||
[ { element: 'pre', right: alignToAttribute } ]
|
||||
] );
|
||||
}
|
||||
|
||||
/*
|
||||
* Adjust the behavior of htmlWriter to make it output HTML like FCKeditor.
|
||||
*/
|
||||
function configureHtmlWriter( evt ) {
|
||||
var editor = evt.editor,
|
||||
dataProcessor = editor.dataProcessor;
|
||||
|
||||
// Out self closing tags the HTML4 way, like <br>.
|
||||
dataProcessor.writer.selfClosingEnd = '>';
|
||||
|
||||
// Make output formatting behave similar to FCKeditor.
|
||||
var dtd = CKEDITOR.dtd;
|
||||
for ( var e in CKEDITOR.tools.extend( {}, dtd.$nonBodyContent, dtd.$block, dtd.$listItem, dtd.$tableContent ) ) {
|
||||
dataProcessor.writer.setRules( e, {
|
||||
indent: true,
|
||||
breakBeforeOpen: true,
|
||||
breakAfterOpen: false,
|
||||
breakBeforeClose: !dtd[ e ][ '#' ],
|
||||
breakAfterClose: true
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
</p>
|
||||
<p>
|
||||
<input type="submit" value="Submit">
|
||||
</p>
|
||||
</form>
|
||||
<div id="footer">
|
||||
<hr>
|
||||
<p>
|
||||
CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
|
||||
</p>
|
||||
<p id="copy">
|
||||
Copyright © 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico
|
||||
Knabben. All rights reserved.
|
||||
</p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
<!DOCTYPE html>
|
||||
<!--
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
-->
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>HTML Compliant Output — CKEditor Sample</title>
|
||||
<script src="../../../ckeditor.js"></script>
|
||||
<script src="../../../samples/sample.js"></script>
|
||||
<link href="../../../samples/sample.css" rel="stylesheet">
|
||||
<meta name="ckeditor-sample-required-plugins" content="sourcearea">
|
||||
<meta name="ckeditor-sample-name" content="Output HTML">
|
||||
<meta name="ckeditor-sample-group" content="Advanced Samples">
|
||||
<meta name="ckeditor-sample-description" content="Configuring CKEditor to produce legacy HTML 4 code.">
|
||||
</head>
|
||||
<body>
|
||||
<h1 class="samples">
|
||||
<a href="../../../samples/index.html">CKEditor Samples</a> » Producing HTML Compliant Output
|
||||
</h1>
|
||||
<div class="description">
|
||||
<p>
|
||||
This sample shows how to configure CKEditor to output valid
|
||||
<a class="samples" href="http://www.w3.org/TR/html401/">HTML 4.01</a> code.
|
||||
Traditional HTML elements like <code><b></code>,
|
||||
<code><i></code>, and <code><font></code> are used in place of
|
||||
<code><strong></code>, <code><em></code>, and CSS styles.
|
||||
</p>
|
||||
<p>
|
||||
To add a CKEditor instance outputting legacy HTML 4.01 code, load the editor using a standard
|
||||
JavaScript call, and define CKEditor features to use the HTML compliant elements and attributes.
|
||||
</p>
|
||||
<p>
|
||||
A snippet of the configuration code can be seen below; check the source of this page for
|
||||
full definition:
|
||||
</p>
|
||||
<pre class="samples">
|
||||
CKEDITOR.replace( '<em>textarea_id</em>', {
|
||||
coreStyles_bold: { element: 'b' },
|
||||
coreStyles_italic: { element: 'i' },
|
||||
|
||||
fontSize_style: {
|
||||
element: 'font',
|
||||
attributes: { 'size': '#(size)' }
|
||||
}
|
||||
|
||||
...
|
||||
});</pre>
|
||||
</div>
|
||||
<form action="../../../samples/sample_posteddata.php" method="post">
|
||||
<p>
|
||||
<label for="editor1">
|
||||
Editor 1:
|
||||
</label>
|
||||
<textarea cols="80" id="editor1" name="editor1" rows="10"><p>This is some <b>sample text</b>. You are using <a href="http://ckeditor.com/">CKEditor</a>.</p></textarea>
|
||||
<script>
|
||||
|
||||
CKEDITOR.replace( 'editor1', {
|
||||
/*
|
||||
* Ensure that htmlwriter plugin, which is required for this sample, is loaded.
|
||||
*/
|
||||
extraPlugins: 'htmlwriter',
|
||||
|
||||
/*
|
||||
* Style sheet for the contents
|
||||
*/
|
||||
contentsCss: 'body {color:#000; background-color#:FFF;}',
|
||||
|
||||
/*
|
||||
* Simple HTML5 doctype
|
||||
*/
|
||||
docType: '<!DOCTYPE HTML>',
|
||||
|
||||
/*
|
||||
* Allowed content rules which beside limiting allowed HTML
|
||||
* will also take care of transforming styles to attributes
|
||||
* (currently only for img - see transformation rules defined below).
|
||||
*
|
||||
* Read more: http://docs.ckeditor.com/#!/guide/dev_advanced_content_filter
|
||||
*/
|
||||
allowedContent:
|
||||
'h1 h2 h3 p pre[align]; ' +
|
||||
'blockquote code kbd samp var del ins cite q b i u strike ul ol li hr table tbody tr td th caption; ' +
|
||||
'img[!src,alt,align,width,height]; font[!face]; font[!family]; font[!color]; font[!size]; font{!background-color}; a[!href]; a[!name]',
|
||||
|
||||
/*
|
||||
* Core styles.
|
||||
*/
|
||||
coreStyles_bold: { element: 'b' },
|
||||
coreStyles_italic: { element: 'i' },
|
||||
coreStyles_underline: { element: 'u' },
|
||||
coreStyles_strike: { element: 'strike' },
|
||||
|
||||
/*
|
||||
* Font face.
|
||||
*/
|
||||
|
||||
// Define the way font elements will be applied to the document.
|
||||
// The "font" element will be used.
|
||||
font_style: {
|
||||
element: 'font',
|
||||
attributes: { 'face': '#(family)' }
|
||||
},
|
||||
|
||||
/*
|
||||
* Font sizes.
|
||||
*/
|
||||
fontSize_sizes: 'xx-small/1;x-small/2;small/3;medium/4;large/5;x-large/6;xx-large/7',
|
||||
fontSize_style: {
|
||||
element: 'font',
|
||||
attributes: { 'size': '#(size)' }
|
||||
},
|
||||
|
||||
/*
|
||||
* Font colors.
|
||||
*/
|
||||
|
||||
colorButton_foreStyle: {
|
||||
element: 'font',
|
||||
attributes: { 'color': '#(color)' }
|
||||
},
|
||||
|
||||
colorButton_backStyle: {
|
||||
element: 'font',
|
||||
styles: { 'background-color': '#(color)' }
|
||||
},
|
||||
|
||||
/*
|
||||
* Styles combo.
|
||||
*/
|
||||
stylesSet: [
|
||||
{ name: 'Computer Code', element: 'code' },
|
||||
{ name: 'Keyboard Phrase', element: 'kbd' },
|
||||
{ name: 'Sample Text', element: 'samp' },
|
||||
{ name: 'Variable', element: 'var' },
|
||||
{ name: 'Deleted Text', element: 'del' },
|
||||
{ name: 'Inserted Text', element: 'ins' },
|
||||
{ name: 'Cited Work', element: 'cite' },
|
||||
{ name: 'Inline Quotation', element: 'q' }
|
||||
],
|
||||
|
||||
on: {
|
||||
pluginsLoaded: configureTransformations,
|
||||
loaded: configureHtmlWriter
|
||||
}
|
||||
});
|
||||
|
||||
/*
|
||||
* Add missing content transformations.
|
||||
*/
|
||||
function configureTransformations( evt ) {
|
||||
var editor = evt.editor;
|
||||
|
||||
editor.dataProcessor.htmlFilter.addRules( {
|
||||
attributes: {
|
||||
style: function( value, element ) {
|
||||
// Return #RGB for background and border colors
|
||||
return CKEDITOR.tools.convertRgbToHex( value );
|
||||
}
|
||||
}
|
||||
} );
|
||||
|
||||
// Default automatic content transformations do not yet take care of
|
||||
// align attributes on blocks, so we need to add our own transformation rules.
|
||||
function alignToAttribute( element ) {
|
||||
if ( element.styles[ 'text-align' ] ) {
|
||||
element.attributes.align = element.styles[ 'text-align' ];
|
||||
delete element.styles[ 'text-align' ];
|
||||
}
|
||||
}
|
||||
editor.filter.addTransformations( [
|
||||
[ { element: 'p', right: alignToAttribute } ],
|
||||
[ { element: 'h1', right: alignToAttribute } ],
|
||||
[ { element: 'h2', right: alignToAttribute } ],
|
||||
[ { element: 'h3', right: alignToAttribute } ],
|
||||
[ { element: 'pre', right: alignToAttribute } ]
|
||||
] );
|
||||
}
|
||||
|
||||
/*
|
||||
* Adjust the behavior of htmlWriter to make it output HTML like FCKeditor.
|
||||
*/
|
||||
function configureHtmlWriter( evt ) {
|
||||
var editor = evt.editor,
|
||||
dataProcessor = editor.dataProcessor;
|
||||
|
||||
// Out self closing tags the HTML4 way, like <br>.
|
||||
dataProcessor.writer.selfClosingEnd = '>';
|
||||
|
||||
// Make output formatting behave similar to FCKeditor.
|
||||
var dtd = CKEDITOR.dtd;
|
||||
for ( var e in CKEDITOR.tools.extend( {}, dtd.$nonBodyContent, dtd.$block, dtd.$listItem, dtd.$tableContent ) ) {
|
||||
dataProcessor.writer.setRules( e, {
|
||||
indent: true,
|
||||
breakBeforeOpen: true,
|
||||
breakAfterOpen: false,
|
||||
breakBeforeClose: !dtd[ e ][ '#' ],
|
||||
breakAfterClose: true
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
</p>
|
||||
<p>
|
||||
<input type="submit" value="Submit">
|
||||
</p>
|
||||
</form>
|
||||
<div id="footer">
|
||||
<hr>
|
||||
<p>
|
||||
CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
|
||||
</p>
|
||||
<p id="copy">
|
||||
Copyright © 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico
|
||||
Knabben. All rights reserved.
|
||||
</p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,26 +1,26 @@
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'image', 'en', {
|
||||
alertUrl: 'Please type the image URL',
|
||||
alt: 'Alternative Text',
|
||||
border: 'Border',
|
||||
btnUpload: 'Send it to the Server',
|
||||
button2Img: 'Do you want to transform the selected image button on a simple image?',
|
||||
hSpace: 'HSpace',
|
||||
img2Button: 'Do you want to transform the selected image on a image button?',
|
||||
infoTab: 'Image Info',
|
||||
linkTab: 'Link',
|
||||
lockRatio: 'Lock Ratio',
|
||||
menu: 'Image Properties',
|
||||
resetSize: 'Reset Size',
|
||||
title: 'Image Properties',
|
||||
titleButton: 'Image Button Properties',
|
||||
upload: 'Upload',
|
||||
urlMissing: 'Image source URL is missing.',
|
||||
vSpace: 'VSpace',
|
||||
validateBorder: 'Border must be a whole number.',
|
||||
validateHSpace: 'HSpace must be a whole number.',
|
||||
validateVSpace: 'VSpace must be a whole number.'
|
||||
} );
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'image', 'en', {
|
||||
alertUrl: 'Please type the image URL',
|
||||
alt: 'Alternative Text',
|
||||
border: 'Border',
|
||||
btnUpload: 'Send it to the Server',
|
||||
button2Img: 'Do you want to transform the selected image button on a simple image?',
|
||||
hSpace: 'HSpace',
|
||||
img2Button: 'Do you want to transform the selected image on a image button?',
|
||||
infoTab: 'Image Info',
|
||||
linkTab: 'Link',
|
||||
lockRatio: 'Lock Ratio',
|
||||
menu: 'Image Properties',
|
||||
resetSize: 'Reset Size',
|
||||
title: 'Image Properties',
|
||||
titleButton: 'Image Button Properties',
|
||||
upload: 'Upload',
|
||||
urlMissing: 'Image source URL is missing.',
|
||||
vSpace: 'VSpace',
|
||||
validateBorder: 'Border must be a whole number.',
|
||||
validateHSpace: 'HSpace must be a whole number.',
|
||||
validateVSpace: 'VSpace must be a whole number.'
|
||||
} );
|
||||
|
||||
@@ -1,26 +1,26 @@
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'image', 'hu', {
|
||||
alertUrl: 'Töltse ki a kép webcímét',
|
||||
alt: 'Buborék szöveg',
|
||||
border: 'Keret',
|
||||
btnUpload: 'Küldés a szerverre',
|
||||
button2Img: 'A kiválasztott képgombból sima képet szeretne csinálni?',
|
||||
hSpace: 'Vízsz. táv',
|
||||
img2Button: 'A kiválasztott képből képgombot szeretne csinálni?',
|
||||
infoTab: 'Alaptulajdonságok',
|
||||
linkTab: 'Hivatkozás',
|
||||
lockRatio: 'Arány megtartása',
|
||||
menu: 'Kép tulajdonságai',
|
||||
resetSize: 'Eredeti méret',
|
||||
title: 'Kép tulajdonságai',
|
||||
titleButton: 'Képgomb tulajdonságai',
|
||||
upload: 'Feltöltés',
|
||||
urlMissing: 'Hiányzik a kép URL-je',
|
||||
vSpace: 'Függ. táv',
|
||||
validateBorder: 'A keret méretének egész számot kell beírni!',
|
||||
validateHSpace: 'Vízszintes távolságnak egész számot kell beírni!',
|
||||
validateVSpace: 'Függőleges távolságnak egész számot kell beírni!'
|
||||
} );
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'image', 'hu', {
|
||||
alertUrl: 'Töltse ki a kép webcímét',
|
||||
alt: 'Buborék szöveg',
|
||||
border: 'Keret',
|
||||
btnUpload: 'Küldés a szerverre',
|
||||
button2Img: 'A kiválasztott képgombból sima képet szeretne csinálni?',
|
||||
hSpace: 'Vízsz. táv',
|
||||
img2Button: 'A kiválasztott képből képgombot szeretne csinálni?',
|
||||
infoTab: 'Alaptulajdonságok',
|
||||
linkTab: 'Hivatkozás',
|
||||
lockRatio: 'Arány megtartása',
|
||||
menu: 'Kép tulajdonságai',
|
||||
resetSize: 'Eredeti méret',
|
||||
title: 'Kép tulajdonságai',
|
||||
titleButton: 'Képgomb tulajdonságai',
|
||||
upload: 'Feltöltés',
|
||||
urlMissing: 'Hiányzik a kép URL-je',
|
||||
vSpace: 'Függ. táv',
|
||||
validateBorder: 'A keret méretének egész számot kell beírni!',
|
||||
validateHSpace: 'Vízszintes távolságnak egész számot kell beírni!',
|
||||
validateVSpace: 'Függőleges távolságnak egész számot kell beírni!'
|
||||
} );
|
||||
|
||||
@@ -1,170 +1,170 @@
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
/**
|
||||
* @fileOverview Image plugin
|
||||
*/
|
||||
|
||||
( function() {
|
||||
|
||||
CKEDITOR.plugins.add( 'image', {
|
||||
requires: 'dialog',
|
||||
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: 'image', // %REMOVE_LINE_CORE%
|
||||
hidpi: true, // %REMOVE_LINE_CORE%
|
||||
init: function( editor ) {
|
||||
// Abort when Image2 is to be loaded since both plugins
|
||||
// share the same button, command, etc. names (#11222).
|
||||
if ( editor.plugins.image2 )
|
||||
return;
|
||||
|
||||
var pluginName = 'image';
|
||||
|
||||
// Register the dialog.
|
||||
CKEDITOR.dialog.add( pluginName, this.path + 'dialogs/image.js' );
|
||||
|
||||
var allowed = 'img[alt,!src]{border-style,border-width,float,height,margin,margin-bottom,margin-left,margin-right,margin-top,width}',
|
||||
required = 'img[alt,src]';
|
||||
|
||||
if ( CKEDITOR.dialog.isTabEnabled( editor, pluginName, 'advanced' ) )
|
||||
allowed = 'img[alt,dir,id,lang,longdesc,!src,title]{*}(*)';
|
||||
|
||||
// Register the command.
|
||||
editor.addCommand( pluginName, new CKEDITOR.dialogCommand( pluginName, {
|
||||
allowedContent: allowed,
|
||||
requiredContent: required,
|
||||
contentTransformations: [
|
||||
[ 'img{width}: sizeToStyle', 'img[width]: sizeToAttribute' ],
|
||||
[ 'img{float}: alignmentToStyle', 'img[align]: alignmentToAttribute' ]
|
||||
]
|
||||
} ) );
|
||||
|
||||
// Register the toolbar button.
|
||||
editor.ui.addButton && editor.ui.addButton( 'Image', {
|
||||
label: editor.lang.common.image,
|
||||
command: pluginName,
|
||||
toolbar: 'insert,10'
|
||||
} );
|
||||
|
||||
editor.on( 'doubleclick', function( evt ) {
|
||||
var element = evt.data.element;
|
||||
|
||||
if ( element.is( 'img' ) && !element.data( 'cke-realelement' ) && !element.isReadOnly() )
|
||||
evt.data.dialog = 'image';
|
||||
} );
|
||||
|
||||
// If the "menu" plugin is loaded, register the menu items.
|
||||
if ( editor.addMenuItems ) {
|
||||
editor.addMenuItems( {
|
||||
image: {
|
||||
label: editor.lang.image.menu,
|
||||
command: 'image',
|
||||
group: 'image'
|
||||
}
|
||||
} );
|
||||
}
|
||||
|
||||
// If the "contextmenu" plugin is loaded, register the listeners.
|
||||
if ( editor.contextMenu ) {
|
||||
editor.contextMenu.addListener( function( element, selection ) {
|
||||
if ( getSelectedImage( editor, element ) )
|
||||
return { image: CKEDITOR.TRISTATE_OFF };
|
||||
} );
|
||||
}
|
||||
},
|
||||
afterInit: function( editor ) {
|
||||
// Abort when Image2 is to be loaded since both plugins
|
||||
// share the same button, command, etc. names (#11222).
|
||||
if ( editor.plugins.image2 )
|
||||
return;
|
||||
|
||||
// Customize the behavior of the alignment commands. (#7430)
|
||||
setupAlignCommand( 'left' );
|
||||
setupAlignCommand( 'right' );
|
||||
setupAlignCommand( 'center' );
|
||||
setupAlignCommand( 'block' );
|
||||
|
||||
function setupAlignCommand( value ) {
|
||||
var command = editor.getCommand( 'justify' + value );
|
||||
if ( command ) {
|
||||
if ( value == 'left' || value == 'right' ) {
|
||||
command.on( 'exec', function( evt ) {
|
||||
var img = getSelectedImage( editor ),
|
||||
align;
|
||||
if ( img ) {
|
||||
align = getImageAlignment( img );
|
||||
if ( align == value ) {
|
||||
img.removeStyle( 'float' );
|
||||
|
||||
// Remove "align" attribute when necessary.
|
||||
if ( value == getImageAlignment( img ) )
|
||||
img.removeAttribute( 'align' );
|
||||
} else
|
||||
img.setStyle( 'float', value );
|
||||
|
||||
evt.cancel();
|
||||
}
|
||||
} );
|
||||
}
|
||||
|
||||
command.on( 'refresh', function( evt ) {
|
||||
var img = getSelectedImage( editor ),
|
||||
align;
|
||||
if ( img ) {
|
||||
align = getImageAlignment( img );
|
||||
|
||||
this.setState(
|
||||
( align == value ) ? CKEDITOR.TRISTATE_ON : ( value == 'right' || value == 'left' ) ? CKEDITOR.TRISTATE_OFF : CKEDITOR.TRISTATE_DISABLED );
|
||||
|
||||
evt.cancel();
|
||||
}
|
||||
} );
|
||||
}
|
||||
}
|
||||
}
|
||||
} );
|
||||
|
||||
function getSelectedImage( editor, element ) {
|
||||
if ( !element ) {
|
||||
var sel = editor.getSelection();
|
||||
element = sel.getSelectedElement();
|
||||
}
|
||||
|
||||
if ( element && element.is( 'img' ) && !element.data( 'cke-realelement' ) && !element.isReadOnly() )
|
||||
return element;
|
||||
}
|
||||
|
||||
function getImageAlignment( element ) {
|
||||
var align = element.getStyle( 'float' );
|
||||
|
||||
if ( align == 'inherit' || align == 'none' )
|
||||
align = 0;
|
||||
|
||||
if ( !align )
|
||||
align = element.getAttribute( 'align' );
|
||||
|
||||
return align;
|
||||
}
|
||||
|
||||
} )();
|
||||
|
||||
/**
|
||||
* Whether to remove links when emptying the link URL field in the image dialog.
|
||||
*
|
||||
* config.image_removeLinkByEmptyURL = false;
|
||||
*
|
||||
* @cfg {Boolean} [image_removeLinkByEmptyURL=true]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
CKEDITOR.config.image_removeLinkByEmptyURL = true;
|
||||
|
||||
/**
|
||||
* Padding text to set off the image in preview area.
|
||||
*
|
||||
* config.image_previewText = CKEDITOR.tools.repeat( '___ ', 100 );
|
||||
*
|
||||
* @cfg {String} [image_previewText='Lorem ipsum dolor...' (placeholder text)]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
/**
|
||||
* @fileOverview Image plugin
|
||||
*/
|
||||
|
||||
( function() {
|
||||
|
||||
CKEDITOR.plugins.add( 'image', {
|
||||
requires: 'dialog',
|
||||
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: 'image', // %REMOVE_LINE_CORE%
|
||||
hidpi: true, // %REMOVE_LINE_CORE%
|
||||
init: function( editor ) {
|
||||
// Abort when Image2 is to be loaded since both plugins
|
||||
// share the same button, command, etc. names (#11222).
|
||||
if ( editor.plugins.image2 )
|
||||
return;
|
||||
|
||||
var pluginName = 'image';
|
||||
|
||||
// Register the dialog.
|
||||
CKEDITOR.dialog.add( pluginName, this.path + 'dialogs/image.js' );
|
||||
|
||||
var allowed = 'img[alt,!src]{border-style,border-width,float,height,margin,margin-bottom,margin-left,margin-right,margin-top,width}',
|
||||
required = 'img[alt,src]';
|
||||
|
||||
if ( CKEDITOR.dialog.isTabEnabled( editor, pluginName, 'advanced' ) )
|
||||
allowed = 'img[alt,dir,id,lang,longdesc,!src,title]{*}(*)';
|
||||
|
||||
// Register the command.
|
||||
editor.addCommand( pluginName, new CKEDITOR.dialogCommand( pluginName, {
|
||||
allowedContent: allowed,
|
||||
requiredContent: required,
|
||||
contentTransformations: [
|
||||
[ 'img{width}: sizeToStyle', 'img[width]: sizeToAttribute' ],
|
||||
[ 'img{float}: alignmentToStyle', 'img[align]: alignmentToAttribute' ]
|
||||
]
|
||||
} ) );
|
||||
|
||||
// Register the toolbar button.
|
||||
editor.ui.addButton && editor.ui.addButton( 'Image', {
|
||||
label: editor.lang.common.image,
|
||||
command: pluginName,
|
||||
toolbar: 'insert,10'
|
||||
} );
|
||||
|
||||
editor.on( 'doubleclick', function( evt ) {
|
||||
var element = evt.data.element;
|
||||
|
||||
if ( element.is( 'img' ) && !element.data( 'cke-realelement' ) && !element.isReadOnly() )
|
||||
evt.data.dialog = 'image';
|
||||
} );
|
||||
|
||||
// If the "menu" plugin is loaded, register the menu items.
|
||||
if ( editor.addMenuItems ) {
|
||||
editor.addMenuItems( {
|
||||
image: {
|
||||
label: editor.lang.image.menu,
|
||||
command: 'image',
|
||||
group: 'image'
|
||||
}
|
||||
} );
|
||||
}
|
||||
|
||||
// If the "contextmenu" plugin is loaded, register the listeners.
|
||||
if ( editor.contextMenu ) {
|
||||
editor.contextMenu.addListener( function( element, selection ) {
|
||||
if ( getSelectedImage( editor, element ) )
|
||||
return { image: CKEDITOR.TRISTATE_OFF };
|
||||
} );
|
||||
}
|
||||
},
|
||||
afterInit: function( editor ) {
|
||||
// Abort when Image2 is to be loaded since both plugins
|
||||
// share the same button, command, etc. names (#11222).
|
||||
if ( editor.plugins.image2 )
|
||||
return;
|
||||
|
||||
// Customize the behavior of the alignment commands. (#7430)
|
||||
setupAlignCommand( 'left' );
|
||||
setupAlignCommand( 'right' );
|
||||
setupAlignCommand( 'center' );
|
||||
setupAlignCommand( 'block' );
|
||||
|
||||
function setupAlignCommand( value ) {
|
||||
var command = editor.getCommand( 'justify' + value );
|
||||
if ( command ) {
|
||||
if ( value == 'left' || value == 'right' ) {
|
||||
command.on( 'exec', function( evt ) {
|
||||
var img = getSelectedImage( editor ),
|
||||
align;
|
||||
if ( img ) {
|
||||
align = getImageAlignment( img );
|
||||
if ( align == value ) {
|
||||
img.removeStyle( 'float' );
|
||||
|
||||
// Remove "align" attribute when necessary.
|
||||
if ( value == getImageAlignment( img ) )
|
||||
img.removeAttribute( 'align' );
|
||||
} else
|
||||
img.setStyle( 'float', value );
|
||||
|
||||
evt.cancel();
|
||||
}
|
||||
} );
|
||||
}
|
||||
|
||||
command.on( 'refresh', function( evt ) {
|
||||
var img = getSelectedImage( editor ),
|
||||
align;
|
||||
if ( img ) {
|
||||
align = getImageAlignment( img );
|
||||
|
||||
this.setState(
|
||||
( align == value ) ? CKEDITOR.TRISTATE_ON : ( value == 'right' || value == 'left' ) ? CKEDITOR.TRISTATE_OFF : CKEDITOR.TRISTATE_DISABLED );
|
||||
|
||||
evt.cancel();
|
||||
}
|
||||
} );
|
||||
}
|
||||
}
|
||||
}
|
||||
} );
|
||||
|
||||
function getSelectedImage( editor, element ) {
|
||||
if ( !element ) {
|
||||
var sel = editor.getSelection();
|
||||
element = sel.getSelectedElement();
|
||||
}
|
||||
|
||||
if ( element && element.is( 'img' ) && !element.data( 'cke-realelement' ) && !element.isReadOnly() )
|
||||
return element;
|
||||
}
|
||||
|
||||
function getImageAlignment( element ) {
|
||||
var align = element.getStyle( 'float' );
|
||||
|
||||
if ( align == 'inherit' || align == 'none' )
|
||||
align = 0;
|
||||
|
||||
if ( !align )
|
||||
align = element.getAttribute( 'align' );
|
||||
|
||||
return align;
|
||||
}
|
||||
|
||||
} )();
|
||||
|
||||
/**
|
||||
* Whether to remove links when emptying the link URL field in the image dialog.
|
||||
*
|
||||
* config.image_removeLinkByEmptyURL = false;
|
||||
*
|
||||
* @cfg {Boolean} [image_removeLinkByEmptyURL=true]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
CKEDITOR.config.image_removeLinkByEmptyURL = true;
|
||||
|
||||
/**
|
||||
* Padding text to set off the image in preview area.
|
||||
*
|
||||
* config.image_previewText = CKEDITOR.tools.repeat( '___ ', 100 );
|
||||
*
|
||||
* @cfg {String} [image_previewText='Lorem ipsum dolor...' (placeholder text)]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
|
||||
@@ -1,62 +1,62 @@
|
||||
body {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.folder-switcher {
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
margin: 0;
|
||||
padding: 5px 10px;
|
||||
list-style: none;
|
||||
background-color: #e3e3e3;
|
||||
border-bottom: 1px solid #b7b7b7;
|
||||
}
|
||||
|
||||
.folder-switcher li {
|
||||
display: inline-block;
|
||||
margin: 5px;
|
||||
padding: 5px 10px;
|
||||
border: 1px solid #b7b7b7;
|
||||
border-radius: 4px;
|
||||
box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
|
||||
background-color: #fff;
|
||||
color: #333;
|
||||
white-space: nowrap;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.folder-switcher li:hover {
|
||||
color: #0576b7;
|
||||
border-color: #0576b7;
|
||||
}
|
||||
|
||||
.folder-switcher li.active {
|
||||
color: #fff;
|
||||
background-color: #0576b7;
|
||||
border-color: #0576b7;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
.images-container {
|
||||
padding: 5px 10px;
|
||||
}
|
||||
|
||||
.thumbnail {
|
||||
display: inline-block;
|
||||
margin: 5px 5px;
|
||||
border: 1px solid #ccc;
|
||||
border-radius: 4px;
|
||||
overflow: hidden;
|
||||
font-size: 0;
|
||||
}
|
||||
|
||||
.thumbnail:hover {
|
||||
border-color: #0a94e3;
|
||||
}
|
||||
|
||||
.thumbnail img {
|
||||
width: auto;
|
||||
height: auto;
|
||||
max-width: 200px;
|
||||
max-height: 200px;
|
||||
}
|
||||
body {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.folder-switcher {
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
margin: 0;
|
||||
padding: 5px 10px;
|
||||
list-style: none;
|
||||
background-color: #e3e3e3;
|
||||
border-bottom: 1px solid #b7b7b7;
|
||||
}
|
||||
|
||||
.folder-switcher li {
|
||||
display: inline-block;
|
||||
margin: 5px;
|
||||
padding: 5px 10px;
|
||||
border: 1px solid #b7b7b7;
|
||||
border-radius: 4px;
|
||||
box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1);
|
||||
background-color: #fff;
|
||||
color: #333;
|
||||
white-space: nowrap;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.folder-switcher li:hover {
|
||||
color: #0576b7;
|
||||
border-color: #0576b7;
|
||||
}
|
||||
|
||||
.folder-switcher li.active {
|
||||
color: #fff;
|
||||
background-color: #0576b7;
|
||||
border-color: #0576b7;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
.images-container {
|
||||
padding: 5px 10px;
|
||||
}
|
||||
|
||||
.thumbnail {
|
||||
display: inline-block;
|
||||
margin: 5px 5px;
|
||||
border: 1px solid #ccc;
|
||||
border-radius: 4px;
|
||||
overflow: hidden;
|
||||
font-size: 0;
|
||||
}
|
||||
|
||||
.thumbnail:hover {
|
||||
border-color: #0a94e3;
|
||||
}
|
||||
|
||||
.thumbnail img {
|
||||
width: auto;
|
||||
height: auto;
|
||||
max-width: 200px;
|
||||
max-height: 200px;
|
||||
}
|
||||
|
||||
@@ -1,25 +1,25 @@
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<base>
|
||||
<link rel="stylesheet" href="browser.css">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<script type="text/x-template-html" id="js-template-image">
|
||||
<a href="javascript://" class="thumbnail js-image-link" data-url="%imageUrl%"><img src="%thumbUrl%"></a>
|
||||
</script>
|
||||
|
||||
<ul class="folder-switcher" id="js-folder-switcher"></ul>
|
||||
|
||||
<div class="images-container" id="js-images-container">Loading..</div>
|
||||
|
||||
<script type="text/javascript" src="jquery-1.9.1.min.js"></script>
|
||||
<script type="text/javascript" src="browser.js"></script>
|
||||
|
||||
<script type="text/javascript">
|
||||
CkEditorImageBrowser.init();
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<base>
|
||||
<link rel="stylesheet" href="browser.css">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<script type="text/x-template-html" id="js-template-image">
|
||||
<a href="javascript://" class="thumbnail js-image-link" data-url="%imageUrl%"><img src="%thumbUrl%"></a>
|
||||
</script>
|
||||
|
||||
<ul class="folder-switcher" id="js-folder-switcher"></ul>
|
||||
|
||||
<div class="images-container" id="js-images-container">Loading..</div>
|
||||
|
||||
<script type="text/javascript" src="jquery-1.9.1.min.js"></script>
|
||||
<script type="text/javascript" src="browser.js"></script>
|
||||
|
||||
<script type="text/javascript">
|
||||
CkEditorImageBrowser.init();
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
var CkEditorImageBrowser={folders:[],images:{},ckFunctionNum:null,$folderSwitcher:null,$imagesContainer:null,init:function(){CkEditorImageBrowser.$folderSwitcher=$("#js-folder-switcher");CkEditorImageBrowser.$imagesContainer=$("#js-images-container");var a=CkEditorImageBrowser.getQueryStringParam("baseHref");if(a){var c=document.head||document.getElementsByTagName("head")[0];c.getElementsByTagName("link")[0].href=location.href.replace(/\/[^\/]*$/,"/browser.css");c.getElementsByTagName("base")[0].href=
|
||||
a}CkEditorImageBrowser.ckFunctionNum=CkEditorImageBrowser.getQueryStringParam("CKEditorFuncNum");CkEditorImageBrowser.initEventHandlers();CkEditorImageBrowser.loadData(CkEditorImageBrowser.getQueryStringParam("listUrl"),function(){CkEditorImageBrowser.initFolderSwitcher()})},loadData:function(a,c){CkEditorImageBrowser.folders=[];CkEditorImageBrowser.images={};$.getJSON(a,function(a){$.each(a,function(a,b){"undefined"===typeof b.folder&&(b.folder="Images");"undefined"===typeof b.thumb&&(b.thumb=b.image);
|
||||
CkEditorImageBrowser.addImage(b.folder,b.image,b.thumb)});c()}).error(function(c,d,b){CkEditorImageBrowser.$imagesContainer.html(200>c.status||400<=c.status?"HTTP Status: "+c.status+"/"+c.statusText+': "<strong style="color: red;">'+a+'</strong>"':"parsererror"===d?d+': invalid JSON file: "<strong style="color: red;">'+a+'</strong>": '+b.message:d+" / "+c.statusText+" / "+b.message)})},addImage:function(a,c,e){"undefined"===typeof CkEditorImageBrowser.images[a]&&(CkEditorImageBrowser.folders.push(a),
|
||||
CkEditorImageBrowser.images[a]=[]);CkEditorImageBrowser.images[a].push({imageUrl:c,thumbUrl:e})},initFolderSwitcher:function(){var a=CkEditorImageBrowser.$folderSwitcher;a.find("li").remove();$.each(CkEditorImageBrowser.folders,function(c,e){$("<li></li>").data("idx",c).text(e).appendTo(a)});0===CkEditorImageBrowser.folders.length?(a.remove(),CkEditorImageBrowser.$imagesContainer.text("No images.")):(1===CkEditorImageBrowser.folders.length&&a.hide(),a.find("li:first").click())},renderImagesForFolder:function(a){var a=
|
||||
CkEditorImageBrowser.images[a],c=$("#js-template-image").html();CkEditorImageBrowser.$imagesContainer.html("");$.each(a,function(a,d){var b=c,b=b.replace("%imageUrl%",d.imageUrl),b=b.replace("%thumbUrl%",d.thumbUrl),b=$($.parseHTML(b));CkEditorImageBrowser.$imagesContainer.append(b)})},initEventHandlers:function(){$(document).on("click","#js-folder-switcher li",function(){var a=parseInt($(this).data("idx"),10),a=CkEditorImageBrowser.folders[a];$(this).siblings("li").removeClass("active");$(this).addClass("active");
|
||||
var CkEditorImageBrowser={folders:[],images:{},ckFunctionNum:null,$folderSwitcher:null,$imagesContainer:null,init:function(){CkEditorImageBrowser.$folderSwitcher=$("#js-folder-switcher");CkEditorImageBrowser.$imagesContainer=$("#js-images-container");var a=CkEditorImageBrowser.getQueryStringParam("baseHref");if(a){var c=document.head||document.getElementsByTagName("head")[0];c.getElementsByTagName("link")[0].href=location.href.replace(/\/[^\/]*$/,"/browser.css");c.getElementsByTagName("base")[0].href=
|
||||
a}CkEditorImageBrowser.ckFunctionNum=CkEditorImageBrowser.getQueryStringParam("CKEditorFuncNum");CkEditorImageBrowser.initEventHandlers();CkEditorImageBrowser.loadData(CkEditorImageBrowser.getQueryStringParam("listUrl"),function(){CkEditorImageBrowser.initFolderSwitcher()})},loadData:function(a,c){CkEditorImageBrowser.folders=[];CkEditorImageBrowser.images={};$.getJSON(a,function(a){$.each(a,function(a,b){"undefined"===typeof b.folder&&(b.folder="Images");"undefined"===typeof b.thumb&&(b.thumb=b.image);
|
||||
CkEditorImageBrowser.addImage(b.folder,b.image,b.thumb)});c()}).error(function(c,d,b){CkEditorImageBrowser.$imagesContainer.html(200>c.status||400<=c.status?"HTTP Status: "+c.status+"/"+c.statusText+': "<strong style="color: red;">'+a+'</strong>"':"parsererror"===d?d+': invalid JSON file: "<strong style="color: red;">'+a+'</strong>": '+b.message:d+" / "+c.statusText+" / "+b.message)})},addImage:function(a,c,e){"undefined"===typeof CkEditorImageBrowser.images[a]&&(CkEditorImageBrowser.folders.push(a),
|
||||
CkEditorImageBrowser.images[a]=[]);CkEditorImageBrowser.images[a].push({imageUrl:c,thumbUrl:e})},initFolderSwitcher:function(){var a=CkEditorImageBrowser.$folderSwitcher;a.find("li").remove();$.each(CkEditorImageBrowser.folders,function(c,e){$("<li></li>").data("idx",c).text(e).appendTo(a)});0===CkEditorImageBrowser.folders.length?(a.remove(),CkEditorImageBrowser.$imagesContainer.text("No images.")):(1===CkEditorImageBrowser.folders.length&&a.hide(),a.find("li:first").click())},renderImagesForFolder:function(a){var a=
|
||||
CkEditorImageBrowser.images[a],c=$("#js-template-image").html();CkEditorImageBrowser.$imagesContainer.html("");$.each(a,function(a,d){var b=c,b=b.replace("%imageUrl%",d.imageUrl),b=b.replace("%thumbUrl%",d.thumbUrl),b=$($.parseHTML(b));CkEditorImageBrowser.$imagesContainer.append(b)})},initEventHandlers:function(){$(document).on("click","#js-folder-switcher li",function(){var a=parseInt($(this).data("idx"),10),a=CkEditorImageBrowser.folders[a];$(this).siblings("li").removeClass("active");$(this).addClass("active");
|
||||
CkEditorImageBrowser.renderImagesForFolder(a)});$(document).on("click",".js-image-link",function(){window.opener.CKEDITOR.tools.callFunction(CkEditorImageBrowser.ckFunctionNum,$(this).data("url"));window.close()})},getQueryStringParam:function(a){return(a=window.location.search.match(RegExp("[?&]"+a+"=([^&]*)")))&&1<a.length?decodeURIComponent(a[1]):null}};
|
||||
+180
-180
@@ -1,181 +1,181 @@
|
||||
(function(q,k){function ra(a){var b=a.length,d=c.type(a);return c.isWindow(a)?!1:1===a.nodeType&&b?!0:"array"===d||"function"!==d&&(0===b||"number"==typeof b&&0<b&&b-1 in a)}function Qb(a){var b=Qa[a]={};return c.each(a.match(I)||[],function(a,c){b[c]=!0}),b}function Ra(a,b,d,e){if(c.acceptData(a)){var f,g,h=c.expando,i="string"==typeof b,j=a.nodeType,m=j?c.cache:a,o=j?a[h]:a[h]&&h;if(o&&m[o]&&(e||m[o].data)||!i||d!==k)return o||(j?a[h]=o=T.pop()||c.guid++:o=h),m[o]||(m[o]={},j||(m[o].toJSON=c.noop)),
|
||||
("object"==typeof b||"function"==typeof b)&&(e?m[o]=c.extend(m[o],b):m[o].data=c.extend(m[o].data,b)),f=m[o],e||(f.data||(f.data={}),f=f.data),d!==k&&(f[c.camelCase(b)]=d),i?(g=f[b],null==g&&(g=f[c.camelCase(b)])):g=f,g}}function Sa(a,b,d){if(c.acceptData(a)){var e,f,g,h=a.nodeType,i=h?c.cache:a,j=h?a[c.expando]:c.expando;if(i[j]){if(b&&(g=d?i[j]:i[j].data)){c.isArray(b)?b=b.concat(c.map(b,c.camelCase)):b in g?b=[b]:(b=c.camelCase(b),b=b in g?[b]:b.split(" "));e=0;for(f=b.length;f>e;e++)delete g[b[e]];
|
||||
if(!(d?sa:c.isEmptyObject)(g))return}(d||(delete i[j].data,sa(i[j])))&&(h?c.cleanData([a],!0):c.support.deleteExpando||i!=i.window?delete i[j]:i[j]=null)}}}function Ta(a,b,d){if(d===k&&1===a.nodeType){var e="data-"+b.replace(Rb,"-$1").toLowerCase();if(d=a.getAttribute(e),"string"==typeof d){try{d="true"===d?!0:"false"===d?!1:"null"===d?null:+d+""===d?+d:Sb.test(d)?c.parseJSON(d):d}catch(f){}c.data(a,b,d)}else d=k}return d}function sa(a){for(var b in a)if(("data"!==b||!c.isEmptyObject(a[b]))&&"toJSON"!==
|
||||
b)return!1;return!0}function ha(){return!0}function U(){return!1}function Ua(a,b){do a=a[b];while(a&&1!==a.nodeType);return a}function Va(a,b,d){if(b=b||0,c.isFunction(b))return c.grep(a,function(a,c){return!!b.call(a,c,a)===d});if(b.nodeType)return c.grep(a,function(a){return a===b===d});if("string"==typeof b){var e=c.grep(a,function(a){return 1===a.nodeType});if(Tb.test(b))return c.filter(b,e,!d);b=c.filter(b,e)}return c.grep(a,function(a){return 0<=c.inArray(a,b)===d})}function Wa(a){var b=Xa.split("|"),
|
||||
a=a.createDocumentFragment();if(a.createElement)for(;b.length;)a.createElement(b.pop());return a}function Ya(a){var b=a.getAttributeNode("type");return a.type=(b&&b.specified)+"/"+a.type,a}function Za(a){var b=Ub.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function ta(a,b){for(var d,e=0;null!=(d=a[e]);e++)c._data(d,"globalEval",!b||c._data(b[e],"globalEval"))}function $a(a,b){if(1===b.nodeType&&c.hasData(a)){var d,e,f;e=c._data(a);var g=c._data(b,e),h=e.events;if(h)for(d in delete g.handle,
|
||||
g.events={},h){e=0;for(f=h[d].length;f>e;e++)c.event.add(b,d,h[d][e])}g.data&&(g.data=c.extend({},g.data))}}function u(a,b){var d,e,f=0,g=typeof a.getElementsByTagName!==v?a.getElementsByTagName(b||"*"):typeof a.querySelectorAll!==v?a.querySelectorAll(b||"*"):k;if(!g){g=[];for(d=a.childNodes||a;null!=(e=d[f]);f++)!b||c.nodeName(e,b)?g.push(e):c.merge(g,u(e,b))}return b===k||b&&c.nodeName(a,b)?c.merge([a],g):g}function Vb(a){ua.test(a.type)&&(a.defaultChecked=a.checked)}function ab(a,b){if(b in a)return b;
|
||||
for(var c=b.charAt(0).toUpperCase()+b.slice(1),e=b,f=bb.length;f--;)if(b=bb[f]+c,b in a)return b;return e}function V(a,b){return a=b||a,"none"===c.css(a,"display")||!c.contains(a.ownerDocument,a)}function cb(a,b){for(var d,e,f,g=[],h=0,i=a.length;i>h;h++)e=a[h],e.style&&(g[h]=c._data(e,"olddisplay"),d=e.style.display,b?(g[h]||"none"!==d||(e.style.display=""),""===e.style.display&&V(e)&&(g[h]=c._data(e,"olddisplay",db(e.nodeName)))):g[h]||(f=V(e),(d&&"none"!==d||!f)&&c._data(e,"olddisplay",f?d:c.css(e,
|
||||
"display"))));for(h=0;i>h;h++)e=a[h],e.style&&(b&&"none"!==e.style.display&&""!==e.style.display||(e.style.display=b?g[h]||"":"none"));return a}function eb(a,b,c){return(a=Wb.exec(b))?Math.max(0,a[1]-(c||0))+(a[2]||"px"):b}function fb(a,b,d,e,f){for(var b=d===(e?"border":"content")?4:"width"===b?1:0,g=0;4>b;b+=2)"margin"===d&&(g+=c.css(a,d+M[b],!0,f)),e?("content"===d&&(g-=c.css(a,"padding"+M[b],!0,f)),"margin"!==d&&(g-=c.css(a,"border"+M[b]+"Width",!0,f))):(g+=c.css(a,"padding"+M[b],!0,f),"padding"!==
|
||||
d&&(g+=c.css(a,"border"+M[b]+"Width",!0,f)));return g}function gb(a,b,d){var e=!0,f="width"===b?a.offsetWidth:a.offsetHeight,g=F(a),h=c.support.boxSizing&&"border-box"===c.css(a,"boxSizing",!1,g);if(0>=f||null==f){if(f=P(a,b,g),(0>f||null==f)&&(f=a.style[b]),ia.test(f))return f;e=h&&(c.support.boxSizingReliable||f===a.style[b]);f=parseFloat(f)||0}return f+fb(a,b,d||(h?"border":"content"),e,g)+"px"}function db(a){var b=n,d=hb[a];return d||(d=ib(a,b),"none"!==d&&d||(aa=(aa||c("<iframe frameborder='0' width='0' height='0'/>").css("cssText",
|
||||
"display:block !important")).appendTo(b.documentElement),b=(aa[0].contentWindow||aa[0].contentDocument).document,b.write("<!doctype html><html><body>"),b.close(),d=ib(a,b),aa.detach()),hb[a]=d),d}function ib(a,b){var d=c(b.createElement(a)).appendTo(b.body),e=c.css(d[0],"display");return d.remove(),e}function xa(a,b,d,e){var f;if(c.isArray(b))c.each(b,function(b,c){d||Xb.test(a)?e(a,c):xa(a+"["+("object"==typeof c?b:"")+"]",c,d,e)});else if(d||"object"!==c.type(b))e(a,b);else for(f in b)xa(a+"["+
|
||||
f+"]",b[f],d,e)}function jb(a){return function(b,d){"string"!=typeof b&&(d=b,b="*");var e,f=0,g=b.toLowerCase().match(I)||[];if(c.isFunction(d))for(;e=g[f++];)"+"===e[0]?(e=e.slice(1)||"*",(a[e]=a[e]||[]).unshift(d)):(a[e]=a[e]||[]).push(d)}}function kb(a,b,d,e){function f(i){var j;return g[i]=!0,c.each(a[i]||[],function(a,c){var i=c(b,d,e);return"string"!=typeof i||h||g[i]?h?!(j=i):k:(b.dataTypes.unshift(i),f(i),!1)}),j}var g={},h=a===ya;return f(b.dataTypes[0])||!g["*"]&&f("*")}function za(a,b){var d,
|
||||
e,f=c.ajaxSettings.flatOptions||{};for(e in b)b[e]!==k&&((f[e]?a:d||(d={}))[e]=b[e]);return d&&c.extend(!0,a,d),a}function lb(){try{return new q.XMLHttpRequest}catch(a){}}function mb(){return setTimeout(function(){W=k}),W=c.now()}function Yb(a,b){c.each(b,function(b,c){for(var f=(X[b]||[]).concat(X["*"]),g=0,h=f.length;h>g&&!f[g].call(a,b,c);g++);})}function nb(a,b,d){var e,f=0,g=ja.length,h=c.Deferred().always(function(){delete i.elem}),i=function(){if(e)return!1;for(var b=W||mb(),b=Math.max(0,j.startTime+
|
||||
j.duration-b),c=1-(b/j.duration||0),d=0,f=j.tweens.length;f>d;d++)j.tweens[d].run(c);return h.notifyWith(a,[j,c,b]),1>c&&f?b:(h.resolveWith(a,[j]),!1)},j=h.promise({elem:a,props:c.extend({},b),opts:c.extend(!0,{specialEasing:{}},d),originalProperties:b,originalOptions:d,startTime:W||mb(),duration:d.duration,tweens:[],createTween:function(b,d){var e=c.Tween(a,j.opts,b,d,j.opts.specialEasing[b]||j.opts.easing);return j.tweens.push(e),e},stop:function(b){var c=0,d=b?j.tweens.length:0;if(e)return this;
|
||||
for(e=!0;d>c;c++)j.tweens[c].run(1);return b?h.resolveWith(a,[j,b]):h.rejectWith(a,[j,b]),this}}),d=j.props;for(Zb(d,j.opts.specialEasing);g>f;f++)if(b=ja[f].call(j,a,d,j.opts))return b;return Yb(j,d),c.isFunction(j.opts.start)&&j.opts.start.call(a,j),c.fx.timer(c.extend(i,{elem:a,anim:j,queue:j.opts.queue})),j.progress(j.opts.progress).done(j.opts.done,j.opts.complete).fail(j.opts.fail).always(j.opts.always)}function Zb(a,b){var d,e,f,g,h;for(f in a)if(e=c.camelCase(f),g=b[e],d=a[f],c.isArray(d)&&
|
||||
(g=d[1],d=a[f]=d[0]),f!==e&&(a[e]=d,delete a[f]),h=c.cssHooks[e],h&&"expand"in h)for(f in d=h.expand(d),delete a[e],d)f in a||(a[f]=d[f],b[f]=g);else b[e]=g}function w(a,b,c,e,f){return new w.prototype.init(a,b,c,e,f)}function Y(a,b){for(var c,e={height:a},f=0,b=b?1:0;4>f;f+=2-b)c=M[f],e["margin"+c]=e["padding"+c]=a;return b&&(e.opacity=e.width=a),e}function ob(a){return c.isWindow(a)?a:9===a.nodeType?a.defaultView||a.parentWindow:!1}var ba,pb,v=typeof k,n=q.document,$b=q.location,ac=q.jQuery,bc=
|
||||
q.$,ka={},T=[],qb=T.concat,Aa=T.push,B=T.slice,rb=T.indexOf,cc=ka.toString,Q=ka.hasOwnProperty,Ba="1.9.1".trim,c=function(a,b){return new c.fn.init(a,b,pb)},la=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,I=/\S+/g,dc=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,ec=/^(?:(<[\w\W]+>)[^>]*|#([\w-]*))$/,sb=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,fc=/^[\],:{}\s]*$/,gc=/(?:^|:|,)(?:\s*\[)+/g,hc=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,ic=/"[^"\\\r\n]*"|true|false|null|-?(?:\d+\.|)\d+(?:[eE][+-]?\d+|)/g,jc=/^-ms-/,kc=/-([\da-z])/gi,
|
||||
lc=function(a,b){return b.toUpperCase()},N=function(a){(n.addEventListener||"load"===a.type||"complete"===n.readyState)&&(tb(),c.ready())},tb=function(){n.addEventListener?(n.removeEventListener("DOMContentLoaded",N,!1),q.removeEventListener("load",N,!1)):(n.detachEvent("onreadystatechange",N),q.detachEvent("onload",N))};c.fn=c.prototype={jquery:"1.9.1",constructor:c,init:function(a,b,d){var e,f;if(!a)return this;if("string"==typeof a){if(e="<"===a.charAt(0)&&">"===a.charAt(a.length-1)&&3<=a.length?
|
||||
[null,a,null]:ec.exec(a),!e||!e[1]&&b)return!b||b.jquery?(b||d).find(a):this.constructor(b).find(a);if(e[1]){if(b=b instanceof c?b[0]:b,c.merge(this,c.parseHTML(e[1],b&&b.nodeType?b.ownerDocument||b:n,!0)),sb.test(e[1])&&c.isPlainObject(b))for(e in b)c.isFunction(this[e])?this[e](b[e]):this.attr(e,b[e]);return this}if(f=n.getElementById(e[2]),f&&f.parentNode){if(f.id!==e[2])return d.find(a);this.length=1;this[0]=f}return this.context=n,this.selector=a,this}return a.nodeType?(this.context=this[0]=
|
||||
a,this.length=1,this):c.isFunction(a)?d.ready(a):(a.selector!==k&&(this.selector=a.selector,this.context=a.context),c.makeArray(a,this))},selector:"",length:0,size:function(){return this.length},toArray:function(){return B.call(this)},get:function(a){return null==a?this.toArray():0>a?this[this.length+a]:this[a]},pushStack:function(a){a=c.merge(this.constructor(),a);return a.prevObject=this,a.context=this.context,a},each:function(a,b){return c.each(this,a,b)},ready:function(a){return c.ready.promise().done(a),
|
||||
this},slice:function(){return this.pushStack(B.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(a){var b=this.length,a=+a+(0>a?b:0);return this.pushStack(0<=a&&b>a?[this[a]]:[])},map:function(a){return this.pushStack(c.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:Aa,sort:[].sort,splice:[].splice};c.fn.init.prototype=c.fn;c.extend=c.fn.extend=function(){var a,b,d,e,f,g,
|
||||
h=arguments[0]||{},i=1,j=arguments.length,m=!1;"boolean"==typeof h&&(m=h,h=arguments[1]||{},i=2);"object"==typeof h||c.isFunction(h)||(h={});for(j===i&&(h=this,--i);j>i;i++)if(null!=(f=arguments[i]))for(e in f)a=h[e],d=f[e],h!==d&&(m&&d&&(c.isPlainObject(d)||(b=c.isArray(d)))?(b?(b=!1,g=a&&c.isArray(a)?a:[]):g=a&&c.isPlainObject(a)?a:{},h[e]=c.extend(m,g,d)):d!==k&&(h[e]=d));return h};c.extend({noConflict:function(a){return q.$===c&&(q.$=bc),a&&q.jQuery===c&&(q.jQuery=ac),c},isReady:!1,readyWait:1,
|
||||
holdReady:function(a){a?c.readyWait++:c.ready(!0)},ready:function(a){if(!0===a?!--c.readyWait:!c.isReady){if(!n.body)return setTimeout(c.ready);c.isReady=!0;!0!==a&&0<--c.readyWait||(ba.resolveWith(n,[c]),c.fn.trigger&&c(n).trigger("ready").off("ready"))}},isFunction:function(a){return"function"===c.type(a)},isArray:Array.isArray||function(a){return"array"===c.type(a)},isWindow:function(a){return null!=a&&a==a.window},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return null==
|
||||
a?a+"":"object"==typeof a||"function"==typeof a?ka[cc.call(a)]||"object":typeof a},isPlainObject:function(a){if(!a||"object"!==c.type(a)||a.nodeType||c.isWindow(a))return!1;try{if(a.constructor&&!Q.call(a,"constructor")&&!Q.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(b){return!1}for(var d in a);return d===k||Q.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw Error(a);},parseHTML:function(a,b,d){if(!a||"string"!=typeof a)return null;"boolean"==
|
||||
typeof b&&(d=b,b=!1);var b=b||n,e=sb.exec(a),d=!d&&[];return e?[b.createElement(e[1])]:(e=c.buildFragment([a],b,d),d&&c(d).remove(),c.merge([],e.childNodes))},parseJSON:function(a){return q.JSON&&q.JSON.parse?q.JSON.parse(a):null===a?a:"string"==typeof a&&(a=c.trim(a),a&&fc.test(a.replace(hc,"@").replace(ic,"]").replace(gc,"")))?Function("return "+a)():(c.error("Invalid JSON: "+a),k)},parseXML:function(a){var b,d;if(!a||"string"!=typeof a)return null;try{q.DOMParser?(d=new DOMParser,b=d.parseFromString(a,
|
||||
"text/xml")):(b=new ActiveXObject("Microsoft.XMLDOM"),b.async="false",b.loadXML(a))}catch(e){b=k}return b&&b.documentElement&&!b.getElementsByTagName("parsererror").length||c.error("Invalid XML: "+a),b},noop:function(){},globalEval:function(a){a&&c.trim(a)&&(q.execScript||function(a){q.eval.call(q,a)})(a)},camelCase:function(a){return a.replace(jc,"ms-").replace(kc,lc)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,b,c){var e,f=0,g=a.length,
|
||||
h=ra(a);if(c)if(h)for(;g>f&&!(e=b.apply(a[f],c),!1===e);f++);else for(f in a){if(e=b.apply(a[f],c),!1===e)break}else if(h)for(;g>f&&!(e=b.call(a[f],f,a[f]),!1===e);f++);else for(f in a)if(e=b.call(a[f],f,a[f]),!1===e)break;return a},trim:Ba&&!Ba.call(" ")?function(a){return null==a?"":Ba.call(a)}:function(a){return null==a?"":(a+"").replace(dc,"")},makeArray:function(a,b){var d=b||[];return null!=a&&(ra(Object(a))?c.merge(d,"string"==typeof a?[a]:a):Aa.call(d,a)),d},inArray:function(a,b,c){var e;
|
||||
if(b){if(rb)return rb.call(b,a,c);e=b.length;for(c=c?0>c?Math.max(0,e+c):c:0;e>c;c++)if(c in b&&b[c]===a)return c}return-1},merge:function(a,b){var c=b.length,e=a.length,f=0;if("number"==typeof c)for(;c>f;f++)a[e++]=b[f];else for(;b[f]!==k;)a[e++]=b[f++];return a.length=e,a},grep:function(a,b,c){for(var e,f=[],g=0,h=a.length,c=!!c;h>g;g++)e=!!b(a[g],g),c!==e&&f.push(a[g]);return f},map:function(a,b,c){var e,f=0,g=a.length,h=[];if(ra(a))for(;g>f;f++)e=b(a[f],f,c),null!=e&&(h[h.length]=e);else for(f in a)e=
|
||||
b(a[f],f,c),null!=e&&(h[h.length]=e);return qb.apply([],h)},guid:1,proxy:function(a,b){var d,e,f;return"string"==typeof b&&(f=a[b],b=a,a=f),c.isFunction(a)?(d=B.call(arguments,2),e=function(){return a.apply(b||this,d.concat(B.call(arguments)))},e.guid=a.guid=a.guid||c.guid++,e):k},access:function(a,b,d,e,f,g,h){var i=0,j=a.length,m=null==d;if("object"===c.type(d))for(i in f=!0,d)c.access(a,b,i,d[i],!0,g,h);else if(e!==k&&(f=!0,c.isFunction(e)||(h=!0),m&&(h?(b.call(a,e),b=null):(m=b,b=function(a,b,
|
||||
d){return m.call(c(a),d)})),b))for(;j>i;i++)b(a[i],d,h?e:e.call(a[i],i,b(a[i],d)));return f?a:m?b.call(a):j?b(a[0],d):g},now:function(){return(new Date).getTime()}});c.ready.promise=function(a){if(!ba)if(ba=c.Deferred(),"complete"===n.readyState)setTimeout(c.ready);else if(n.addEventListener)n.addEventListener("DOMContentLoaded",N,!1),q.addEventListener("load",N,!1);else{n.attachEvent("onreadystatechange",N);q.attachEvent("onload",N);var b=!1;try{b=null==q.frameElement&&n.documentElement}catch(d){}b&&
|
||||
b.doScroll&&function f(){if(!c.isReady){try{b.doScroll("left")}catch(a){return setTimeout(f,50)}tb();c.ready()}}()}return ba.promise(a)};c.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(a,b){ka["[object "+b+"]"]=b.toLowerCase()});pb=c(n);var Qa={};c.Callbacks=function(a){var a="string"==typeof a?Qa[a]||Qb(a):c.extend({},a),b,d,e,f,g,h,i=[],j=!a.once&&[],m=function(c){d=a.memory&&c;e=!0;g=h||0;h=0;f=i.length;for(b=!0;i&&f>g;g++)if(!1===i[g].apply(c[0],c[1])&&
|
||||
a.stopOnFalse){d=!1;break}b=!1;i&&(j?j.length&&m(j.shift()):d?i=[]:o.disable())},o={add:function(){if(i){var e=i.length;(function p(b){c.each(b,function(b,d){var e=c.type(d);"function"===e?a.unique&&o.has(d)||i.push(d):d&&d.length&&"string"!==e&&p(d)})})(arguments);b?f=i.length:d&&(h=e,m(d))}return this},remove:function(){return i&&c.each(arguments,function(a,d){for(var e;-1<(e=c.inArray(d,i,e));)i.splice(e,1),b&&(f>=e&&f--,g>=e&&g--)}),this},has:function(a){return a?-1<c.inArray(a,i):!(!i||!i.length)},
|
||||
empty:function(){return i=[],this},disable:function(){return i=j=d=k,this},disabled:function(){return!i},lock:function(){return j=k,d||o.disable(),this},locked:function(){return!j},fireWith:function(a,c){return c=c||[],c=[a,c.slice?c.slice():c],!i||e&&!j||(b?j.push(c):m(c)),this},fire:function(){return o.fireWith(this,arguments),this},fired:function(){return!!e}};return o};c.extend({Deferred:function(a){var b=[["resolve","done",c.Callbacks("once memory"),"resolved"],["reject","fail",c.Callbacks("once memory"),
|
||||
"rejected"],["notify","progress",c.Callbacks("memory")]],d="pending",e={state:function(){return d},always:function(){return f.done(arguments).fail(arguments),this},then:function(){var a=arguments;return c.Deferred(function(d){c.each(b,function(b,j){var m=j[0],k=c.isFunction(a[b])&&a[b];f[j[1]](function(){var a=k&&k.apply(this,arguments);a&&c.isFunction(a.promise)?a.promise().done(d.resolve).fail(d.reject).progress(d.notify):d[m+"With"](this===e?d.promise():this,k?[a]:arguments)})});a=null}).promise()},
|
||||
promise:function(a){return null!=a?c.extend(a,e):e}},f={};return e.pipe=e.then,c.each(b,function(a,c){var i=c[2],j=c[3];e[c[1]]=i.add;j&&i.add(function(){d=j},b[1^a][2].disable,b[2][2].lock);f[c[0]]=function(){return f[c[0]+"With"](this===f?e:this,arguments),this};f[c[0]+"With"]=i.fireWith}),e.promise(f),a&&a.call(f,f),f},when:function(a){var b=0,d=B.call(arguments),e=d.length,f=1!==e||a&&c.isFunction(a.promise)?e:0,g=1===f?a:c.Deferred(),h=function(a,b,c){return function(d){b[a]=this;c[a]=1<arguments.length?
|
||||
B.call(arguments):d;c===i?g.notifyWith(b,c):--f||g.resolveWith(b,c)}},i,j,m;if(1<e){i=Array(e);j=Array(e);for(m=Array(e);e>b;b++)d[b]&&c.isFunction(d[b].promise)?d[b].promise().done(h(b,m,d)).fail(g.reject).progress(h(b,j,i)):--f}return f||g.resolveWith(m,d),g.promise()}});c.support=function(){var a,b,d,e,f,g,h,i=n.createElement("div");if(i.setAttribute("className","t"),i.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",b=i.getElementsByTagName("*"),d=i.getElementsByTagName("a")[0],
|
||||
!b||!d||!b.length)return{};e=n.createElement("select");f=e.appendChild(n.createElement("option"));b=i.getElementsByTagName("input")[0];d.style.cssText="top:1px;float:left;opacity:.5";a={getSetAttribute:"t"!==i.className,leadingWhitespace:3===i.firstChild.nodeType,tbody:!i.getElementsByTagName("tbody").length,htmlSerialize:!!i.getElementsByTagName("link").length,style:/top/.test(d.getAttribute("style")),hrefNormalized:"/a"===d.getAttribute("href"),opacity:/^0.5/.test(d.style.opacity),cssFloat:!!d.style.cssFloat,
|
||||
checkOn:!!b.value,optSelected:f.selected,enctype:!!n.createElement("form").enctype,html5Clone:"<:nav></:nav>"!==n.createElement("nav").cloneNode(!0).outerHTML,boxModel:"CSS1Compat"===n.compatMode,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,boxSizingReliable:!0,pixelPosition:!1};b.checked=!0;a.noCloneChecked=b.cloneNode(!0).checked;e.disabled=!0;a.optDisabled=!f.disabled;try{delete i.test}catch(j){a.deleteExpando=!1}b=n.createElement("input");
|
||||
b.setAttribute("value","");a.input=""===b.getAttribute("value");b.value="t";b.setAttribute("type","radio");a.radioValue="t"===b.value;b.setAttribute("checked","t");b.setAttribute("name","t");d=n.createDocumentFragment();d.appendChild(b);a.appendChecked=b.checked;a.checkClone=d.cloneNode(!0).cloneNode(!0).lastChild.checked;i.attachEvent&&(i.attachEvent("onclick",function(){a.noCloneEvent=!1}),i.cloneNode(!0).click());for(h in{submit:!0,change:!0,focusin:!0})i.setAttribute(d="on"+h,"t"),a[h+"Bubbles"]=
|
||||
d in q||!1===i.attributes[d].expando;return i.style.backgroundClip="content-box",i.cloneNode(!0).style.backgroundClip="",a.clearCloneStyle="content-box"===i.style.backgroundClip,c(function(){var b,c,d,e=n.getElementsByTagName("body")[0];e&&(b=n.createElement("div"),b.style.cssText="border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px",e.appendChild(b).appendChild(i),i.innerHTML="<table><tr><td></td><td>t</td></tr></table>",d=i.getElementsByTagName("td"),d[0].style.cssText=
|
||||
"padding:0;margin:0;border:0;display:none",g=0===d[0].offsetHeight,d[0].style.display="",d[1].style.display="none",a.reliableHiddenOffsets=g&&0===d[0].offsetHeight,i.innerHTML="",i.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",a.boxSizing=4===i.offsetWidth,a.doesNotIncludeMarginInBodyOffset=1!==e.offsetTop,q.getComputedStyle&&(a.pixelPosition="1%"!==(q.getComputedStyle(i,
|
||||
null)||{}).top,a.boxSizingReliable="4px"===(q.getComputedStyle(i,null)||{width:"4px"}).width,c=i.appendChild(n.createElement("div")),c.style.cssText=i.style.cssText="padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;",c.style.marginRight=c.style.width="0",i.style.width="1px",a.reliableMarginRight=!parseFloat((q.getComputedStyle(c,null)||{}).marginRight)),typeof i.style.zoom!==v&&(i.innerHTML="",i.style.cssText="padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;width:1px;padding:1px;display:inline;zoom:1",
|
||||
a.inlineBlockNeedsLayout=3===i.offsetWidth,i.style.display="block",i.innerHTML="<div></div>",i.firstChild.style.width="5px",a.shrinkWrapBlocks=3!==i.offsetWidth,a.inlineBlockNeedsLayout&&(e.style.zoom=1)),e.removeChild(b),i=null)}),b=e=d=f=d=b=null,a}();var Sb=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,Rb=/([A-Z])/g;c.extend({cache:{},expando:"jQuery"+("1.9.1"+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){return a=a.nodeType?
|
||||
c.cache[a[c.expando]]:a[c.expando],!!a&&!sa(a)},data:function(a,b,c){return Ra(a,b,c)},removeData:function(a,b){return Sa(a,b)},_data:function(a,b,c){return Ra(a,b,c,!0)},_removeData:function(a,b){return Sa(a,b,!0)},acceptData:function(a){if(a.nodeType&&1!==a.nodeType&&9!==a.nodeType)return!1;var b=a.nodeName&&c.noData[a.nodeName.toLowerCase()];return!b||!0!==b&&a.getAttribute("classid")===b}});c.fn.extend({data:function(a,b){var d,e,f=this[0],g=0,h=null;if(a===k){if(this.length&&(h=c.data(f),1===
|
||||
f.nodeType&&!c._data(f,"parsedAttrs"))){for(d=f.attributes;d.length>g;g++)e=d[g].name,e.indexOf("data-")||(e=c.camelCase(e.slice(5)),Ta(f,e,h[e]));c._data(f,"parsedAttrs",!0)}return h}return"object"==typeof a?this.each(function(){c.data(this,a)}):c.access(this,function(b){return b===k?f?Ta(f,a,c.data(f,a)):null:(this.each(function(){c.data(this,a,b)}),k)},null,b,1<arguments.length,null,!0)},removeData:function(a){return this.each(function(){c.removeData(this,a)})}});c.extend({queue:function(a,b,d){var e;
|
||||
return a?(b=(b||"fx")+"queue",e=c._data(a,b),d&&(!e||c.isArray(d)?e=c._data(a,b,c.makeArray(d)):e.push(d)),e||[]):k},dequeue:function(a,b){var b=b||"fx",d=c.queue(a,b),e=d.length,f=d.shift(),g=c._queueHooks(a,b),h=function(){c.dequeue(a,b)};"inprogress"===f&&(f=d.shift(),e--);(g.cur=f)&&("fx"===b&&d.unshift("inprogress"),delete g.stop,f.call(a,h,g));!e&&g&&g.empty.fire()},_queueHooks:function(a,b){var d=b+"queueHooks";return c._data(a,d)||c._data(a,d,{empty:c.Callbacks("once memory").add(function(){c._removeData(a,
|
||||
b+"queue");c._removeData(a,d)})})}});c.fn.extend({queue:function(a,b){var d=2;return"string"!=typeof a&&(b=a,a="fx",d--),d>arguments.length?c.queue(this[0],a):b===k?this:this.each(function(){var d=c.queue(this,a,b);c._queueHooks(this,a);"fx"===a&&"inprogress"!==d[0]&&c.dequeue(this,a)})},dequeue:function(a){return this.each(function(){c.dequeue(this,a)})},delay:function(a,b){return a=c.fx?c.fx.speeds[a]||a:a,b=b||"fx",this.queue(b,function(b,c){var f=setTimeout(b,a);c.stop=function(){clearTimeout(f)}})},
|
||||
clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,b){var d,e=1,f=c.Deferred(),g=this,h=this.length,i=function(){--e||f.resolveWith(g,[g])};"string"!=typeof a&&(b=a,a=k);for(a=a||"fx";h--;)(d=c._data(g[h],a+"queueHooks"))&&d.empty&&(e++,d.empty.add(i));return i(),f.promise(b)}});var ca,ub,Ca=/[\t\r\n]/g,mc=/\r/g,nc=/^(?:input|select|textarea|button|object)$/i,oc=/^(?:a|area)$/i,vb=/^(?:checked|selected|autofocus|autoplay|async|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped)$/i,
|
||||
Da=/^(?:checked|selected)$/i,Z=c.support.getSetAttribute,Ea=c.support.input;c.fn.extend({attr:function(a,b){return c.access(this,c.attr,a,b,1<arguments.length)},removeAttr:function(a){return this.each(function(){c.removeAttr(this,a)})},prop:function(a,b){return c.access(this,c.prop,a,b,1<arguments.length)},removeProp:function(a){return a=c.propFix[a]||a,this.each(function(){try{this[a]=k,delete this[a]}catch(b){}})},addClass:function(a){var b,d,e,f,g,h=0,i=this.length;b="string"==typeof a&&a;if(c.isFunction(a))return this.each(function(b){c(this).addClass(a.call(this,
|
||||
b,this.className))});if(b)for(b=(a||"").match(I)||[];i>h;h++)if(d=this[h],e=1===d.nodeType&&(d.className?(" "+d.className+" ").replace(Ca," "):" ")){for(g=0;f=b[g++];)0>e.indexOf(" "+f+" ")&&(e+=f+" ");d.className=c.trim(e)}return this},removeClass:function(a){var b,d,e,f,g,h=0,i=this.length;b=0===arguments.length||"string"==typeof a&&a;if(c.isFunction(a))return this.each(function(b){c(this).removeClass(a.call(this,b,this.className))});if(b)for(b=(a||"").match(I)||[];i>h;h++)if(d=this[h],e=1===d.nodeType&&
|
||||
(d.className?(" "+d.className+" ").replace(Ca," "):"")){for(g=0;f=b[g++];)for(;0<=e.indexOf(" "+f+" ");)e=e.replace(" "+f+" "," ");d.className=a?c.trim(e):""}return this},toggleClass:function(a,b){var d=typeof a,e="boolean"==typeof b;return c.isFunction(a)?this.each(function(d){c(this).toggleClass(a.call(this,d,this.className,b),b)}):this.each(function(){if("string"===d)for(var f,g=0,h=c(this),i=b,j=a.match(I)||[];f=j[g++];)i=e?i:!h.hasClass(f),h[i?"addClass":"removeClass"](f);else(d===v||"boolean"===
|
||||
d)&&(this.className&&c._data(this,"__className__",this.className),this.className=this.className||!1===a?"":c._data(this,"__className__")||"")})},hasClass:function(a){for(var a=" "+a+" ",b=0,c=this.length;c>b;b++)if(1===this[b].nodeType&&0<=(" "+this[b].className+" ").replace(Ca," ").indexOf(a))return!0;return!1},val:function(a){var b,d,e,f=this[0];if(arguments.length)return e=c.isFunction(a),this.each(function(b){var f,i=c(this);1===this.nodeType&&(f=e?a.call(this,b,i.val()):a,null==f?f="":"number"==
|
||||
typeof f?f+="":c.isArray(f)&&(f=c.map(f,function(a){return null==a?"":a+""})),d=c.valHooks[this.type]||c.valHooks[this.nodeName.toLowerCase()],d&&"set"in d&&d.set(this,f,"value")!==k||(this.value=f))});if(f)return d=c.valHooks[f.type]||c.valHooks[f.nodeName.toLowerCase()],d&&"get"in d&&(b=d.get(f,"value"))!==k?b:(b=f.value,"string"==typeof b?b.replace(mc,""):null==b?"":b)}});c.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){for(var b,
|
||||
d=a.options,e=a.selectedIndex,f="select-one"===a.type||0>e,g=f?null:[],h=f?e+1:d.length,i=0>e?h:f?e:0;h>i;i++)if(b=d[i],!(!b.selected&&i!==e||(c.support.optDisabled?b.disabled:null!==b.getAttribute("disabled"))||b.parentNode.disabled&&c.nodeName(b.parentNode,"optgroup"))){if(a=c(b).val(),f)return a;g.push(a)}return g},set:function(a,b){var d=c.makeArray(b);return c(a).find("option").each(function(){this.selected=0<=c.inArray(c(this).val(),d)}),d.length||(a.selectedIndex=-1),d}}},attr:function(a,b,
|
||||
d){var e,f,g,h=a.nodeType;if(a&&3!==h&&8!==h&&2!==h)return typeof a.getAttribute===v?c.prop(a,b,d):(f=1!==h||!c.isXMLDoc(a),f&&(b=b.toLowerCase(),e=c.attrHooks[b]||(vb.test(b)?ub:ca)),d===k?e&&f&&"get"in e&&null!==(g=e.get(a,b))?g:(typeof a.getAttribute!==v&&(g=a.getAttribute(b)),null==g?k:g):null!==d?e&&f&&"set"in e&&(g=e.set(a,d,b))!==k?g:(a.setAttribute(b,d+""),d):(c.removeAttr(a,b),k))},removeAttr:function(a,b){var d,e,f=0,g=b&&b.match(I);if(g&&1===a.nodeType)for(;d=g[f++];)e=c.propFix[d]||d,
|
||||
vb.test(d)?!Z&&Da.test(d)?a[c.camelCase("default-"+d)]=a[e]=!1:a[e]=!1:c.attr(a,d,""),a.removeAttribute(Z?d:e)},attrHooks:{type:{set:function(a,b){if(!c.support.radioValue&&"radio"===b&&c.nodeName(a,"input")){var d=a.value;return a.setAttribute("type",b),d&&(a.value=d),b}}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",
|
||||
contenteditable:"contentEditable"},prop:function(a,b,d){var e,f,g,h=a.nodeType;if(a&&3!==h&&8!==h&&2!==h)return g=1!==h||!c.isXMLDoc(a),g&&(b=c.propFix[b]||b,f=c.propHooks[b]),d!==k?f&&"set"in f&&(e=f.set(a,d,b))!==k?e:a[b]=d:f&&"get"in f&&null!==(e=f.get(a,b))?e:a[b]},propHooks:{tabIndex:{get:function(a){var b=a.getAttributeNode("tabindex");return b&&b.specified?parseInt(b.value,10):nc.test(a.nodeName)||oc.test(a.nodeName)&&a.href?0:k}}}});ub={get:function(a,b){var d=c.prop(a,b),e="boolean"==typeof d&&
|
||||
a.getAttribute(b);return(d="boolean"==typeof d?Ea&&Z?null!=e:Da.test(b)?a[c.camelCase("default-"+b)]:!!e:a.getAttributeNode(b))&&!1!==d.value?b.toLowerCase():k},set:function(a,b,d){return!1===b?c.removeAttr(a,d):Ea&&Z||!Da.test(d)?a.setAttribute(!Z&&c.propFix[d]||d,d):a[c.camelCase("default-"+d)]=a[d]=!0,d}};Ea&&Z||(c.attrHooks.value={get:function(a,b){var d=a.getAttributeNode(b);return c.nodeName(a,"input")?a.defaultValue:d&&d.specified?d.value:k},set:function(a,b,d){return c.nodeName(a,"input")?
|
||||
(a.defaultValue=b,k):ca&&ca.set(a,b,d)}});Z||(ca=c.valHooks.button={get:function(a,b){var c=a.getAttributeNode(b);return c&&("id"===b||"name"===b||"coords"===b?""!==c.value:c.specified)?c.value:k},set:function(a,b,c){var e=a.getAttributeNode(c);return e||a.setAttributeNode(e=a.ownerDocument.createAttribute(c)),e.value=b+="","value"===c||b===a.getAttribute(c)?b:k}},c.attrHooks.contenteditable={get:ca.get,set:function(a,b,c){ca.set(a,""===b?!1:b,c)}},c.each(["width","height"],function(a,b){c.attrHooks[b]=
|
||||
c.extend(c.attrHooks[b],{set:function(a,c){return""===c?(a.setAttribute(b,"auto"),c):k}})}));c.support.hrefNormalized||(c.each(["href","src","width","height"],function(a,b){c.attrHooks[b]=c.extend(c.attrHooks[b],{get:function(a){a=a.getAttribute(b,2);return null==a?k:a}})}),c.each(["href","src"],function(a,b){c.propHooks[b]={get:function(a){return a.getAttribute(b,4)}}}));c.support.style||(c.attrHooks.style={get:function(a){return a.style.cssText||k},set:function(a,b){return a.style.cssText=b+""}});
|
||||
c.support.optSelected||(c.propHooks.selected=c.extend(c.propHooks.selected,{get:function(a){a=a.parentNode;return a&&(a.selectedIndex,a.parentNode&&a.parentNode.selectedIndex),null}}));c.support.enctype||(c.propFix.enctype="encoding");c.support.checkOn||c.each(["radio","checkbox"],function(){c.valHooks[this]={get:function(a){return null===a.getAttribute("value")?"on":a.value}}});c.each(["radio","checkbox"],function(){c.valHooks[this]=c.extend(c.valHooks[this],{set:function(a,b){return c.isArray(b)?
|
||||
a.checked=0<=c.inArray(c(a).val(),b):k}})});var Fa=/^(?:input|select|textarea)$/i,pc=/^key/,qc=/^(?:mouse|contextmenu)|click/,wb=/^(?:focusinfocus|focusoutblur)$/,xb=/^([^.]*)(?:\.(.+)|)$/;c.event={global:{},add:function(a,b,d,e,f){var g,h,i,j,m,o,l,x,p;if(i=c._data(a)){d.handler&&(j=d,d=j.handler,f=j.selector);d.guid||(d.guid=c.guid++);(h=i.events)||(h=i.events={});(m=i.handle)||(m=i.handle=function(a){return typeof c===v||a&&c.event.triggered===a.type?k:c.event.dispatch.apply(m.elem,arguments)},
|
||||
m.elem=a);b=(b||"").match(I)||[""];for(i=b.length;i--;)g=xb.exec(b[i])||[],x=o=g[1],p=(g[2]||"").split(".").sort(),g=c.event.special[x]||{},x=(f?g.delegateType:g.bindType)||x,g=c.event.special[x]||{},o=c.extend({type:x,origType:o,data:e,handler:d,guid:d.guid,selector:f,needsContext:f&&c.expr.match.needsContext.test(f),namespace:p.join(".")},j),(l=h[x])||(l=h[x]=[],l.delegateCount=0,g.setup&&!1!==g.setup.call(a,e,p,m)||(a.addEventListener?a.addEventListener(x,m,!1):a.attachEvent&&a.attachEvent("on"+
|
||||
x,m))),g.add&&(g.add.call(a,o),o.handler.guid||(o.handler.guid=d.guid)),f?l.splice(l.delegateCount++,0,o):l.push(o),c.event.global[x]=!0;a=null}},remove:function(a,b,d,e,f){var g,h,i,j,m,k,l,x,p,n,q,u=c.hasData(a)&&c._data(a);if(u&&(k=u.events)){b=(b||"").match(I)||[""];for(m=b.length;m--;)if(i=xb.exec(b[m])||[],p=q=i[1],n=(i[2]||"").split(".").sort(),p){l=c.event.special[p]||{};p=(e?l.delegateType:l.bindType)||p;x=k[p]||[];i=i[2]&&RegExp("(^|\\.)"+n.join("\\.(?:.*\\.|)")+"(\\.|$)");for(j=g=x.length;g--;)h=
|
||||
x[g],!f&&q!==h.origType||d&&d.guid!==h.guid||i&&!i.test(h.namespace)||e&&e!==h.selector&&("**"!==e||!h.selector)||(x.splice(g,1),h.selector&&x.delegateCount--,l.remove&&l.remove.call(a,h));j&&!x.length&&(l.teardown&&!1!==l.teardown.call(a,n,u.handle)||c.removeEvent(a,p,u.handle),delete k[p])}else for(p in k)c.event.remove(a,p+b[m],d,e,!0);c.isEmptyObject(k)&&(delete u.handle,c._removeData(a,"events"))}},trigger:function(a,b,d,e){var f,g,h,i,j,m,o=[d||n],l=Q.call(a,"type")?a.type:a;m=Q.call(a,"namespace")?
|
||||
a.namespace.split("."):[];if(h=f=d=d||n,3!==d.nodeType&&8!==d.nodeType&&!wb.test(l+c.event.triggered)&&(0<=l.indexOf(".")&&(m=l.split("."),l=m.shift(),m.sort()),g=0>l.indexOf(":")&&"on"+l,a=a[c.expando]?a:new c.Event(l,"object"==typeof a&&a),a.isTrigger=!0,a.namespace=m.join("."),a.namespace_re=a.namespace?RegExp("(^|\\.)"+m.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,a.result=k,a.target||(a.target=d),b=null==b?[a]:c.makeArray(b,[a]),j=c.event.special[l]||{},e||!j.trigger||!1!==j.trigger.apply(d,b))){if(!e&&
|
||||
!j.noBubble&&!c.isWindow(d)){i=j.delegateType||l;for(wb.test(i+l)||(h=h.parentNode);h;h=h.parentNode)o.push(h),f=h;f===(d.ownerDocument||n)&&o.push(f.defaultView||f.parentWindow||q)}for(m=0;(h=o[m++])&&!a.isPropagationStopped();)a.type=1<m?i:j.bindType||l,(f=(c._data(h,"events")||{})[a.type]&&c._data(h,"handle"))&&f.apply(h,b),(f=g&&h[g])&&c.acceptData(h)&&f.apply&&!1===f.apply(h,b)&&a.preventDefault();if(a.type=l,!(e||a.isDefaultPrevented()||j._default&&!1!==j._default.apply(d.ownerDocument,b)||
|
||||
"click"===l&&c.nodeName(d,"a")||!c.acceptData(d)||!g||!d[l]||c.isWindow(d))){(f=d[g])&&(d[g]=null);c.event.triggered=l;try{d[l]()}catch(x){}c.event.triggered=k;f&&(d[g]=f)}return a.result}},dispatch:function(a){var a=c.event.fix(a),b,d,e,f,g,h=[],i=B.call(arguments);b=(c._data(this,"events")||{})[a.type]||[];var j=c.event.special[a.type]||{};if(i[0]=a,a.delegateTarget=this,!j.preDispatch||!1!==j.preDispatch.call(this,a)){h=c.event.handlers.call(this,a,b);for(b=0;(f=h[b++])&&!a.isPropagationStopped();){a.currentTarget=
|
||||
f.elem;for(g=0;(e=f.handlers[g++])&&!a.isImmediatePropagationStopped();)(!a.namespace_re||a.namespace_re.test(e.namespace))&&(a.handleObj=e,a.data=e.data,d=((c.event.special[e.origType]||{}).handle||e.handler).apply(f.elem,i),d!==k&&!1===(a.result=d)&&(a.preventDefault(),a.stopPropagation()))}return j.postDispatch&&j.postDispatch.call(this,a),a.result}},handlers:function(a,b){var d,e,f,g,h=[],i=b.delegateCount,j=a.target;if(i&&j.nodeType&&(!a.button||"click"!==a.type))for(;j!=this;j=j.parentNode||
|
||||
this)if(1===j.nodeType&&(!0!==j.disabled||"click"!==a.type)){f=[];for(g=0;i>g;g++)e=b[g],d=e.selector+" ",f[d]===k&&(f[d]=e.needsContext?0<=c(d,this).index(j):c.find(d,this,null,[j]).length),f[d]&&f.push(e);f.length&&h.push({elem:j,handlers:f})}return b.length>i&&h.push({elem:this,handlers:b.slice(i)}),h},fix:function(a){if(a[c.expando])return a;var b,d,e;b=a.type;var f=a,g=this.fixHooks[b];g||(this.fixHooks[b]=g=qc.test(b)?this.mouseHooks:pc.test(b)?this.keyHooks:{});e=g.props?this.props.concat(g.props):
|
||||
this.props;a=new c.Event(f);for(b=e.length;b--;)d=e[b],a[d]=f[d];return a.target||(a.target=f.srcElement||n),3===a.target.nodeType&&(a.target=a.target.parentNode),a.metaKey=!!a.metaKey,g.filter?g.filter(a,f):a},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:["char","charCode","key","keyCode"],filter:function(a,b){return null==a.which&&(a.which=null!=b.charCode?b.charCode:b.keyCode),
|
||||
a}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(a,b){var c,e,f,g=b.button,h=b.fromElement;return null==a.pageX&&null!=b.clientX&&(e=a.target.ownerDocument||n,f=e.documentElement,c=e.body,a.pageX=b.clientX+(f&&f.scrollLeft||c&&c.scrollLeft||0)-(f&&f.clientLeft||c&&c.clientLeft||0),a.pageY=b.clientY+(f&&f.scrollTop||c&&c.scrollTop||0)-(f&&f.clientTop||c&&c.clientTop||0)),!a.relatedTarget&&h&&(a.relatedTarget=
|
||||
h===a.target?b.toElement:h),a.which||g===k||(a.which=1&g?1:2&g?3:4&g?2:0),a}},special:{load:{noBubble:!0},click:{trigger:function(){return c.nodeName(this,"input")&&"checkbox"===this.type&&this.click?(this.click(),!1):k}},focus:{trigger:function(){if(this!==n.activeElement&&this.focus)try{return this.focus(),!1}catch(a){}},delegateType:"focusin"},blur:{trigger:function(){return this===n.activeElement&&this.blur?(this.blur(),!1):k},delegateType:"focusout"},beforeunload:{postDispatch:function(a){a.result!==
|
||||
k&&(a.originalEvent.returnValue=a.result)}}},simulate:function(a,b,d,e){a=c.extend(new c.Event,d,{type:a,isSimulated:!0,originalEvent:{}});e?c.event.trigger(a,null,b):c.event.dispatch.call(b,a);a.isDefaultPrevented()&&d.preventDefault()}};c.removeEvent=n.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){b="on"+b;a.detachEvent&&(typeof a[b]===v&&(a[b]=null),a.detachEvent(b,c))};c.Event=function(a,b){return this instanceof c.Event?(a&&a.type?(this.originalEvent=
|
||||
a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||!1===a.returnValue||a.getPreventDefault&&a.getPreventDefault()?ha:U):this.type=a,b&&c.extend(this,b),this.timeStamp=a&&a.timeStamp||c.now(),this[c.expando]=!0,k):new c.Event(a,b)};c.Event.prototype={isDefaultPrevented:U,isPropagationStopped:U,isImmediatePropagationStopped:U,preventDefault:function(){var a=this.originalEvent;this.isDefaultPrevented=ha;a&&(a.preventDefault?a.preventDefault():a.returnValue=!1)},stopPropagation:function(){var a=
|
||||
this.originalEvent;this.isPropagationStopped=ha;a&&(a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=ha;this.stopPropagation()}};c.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){c.event.special[a]={delegateType:b,bindType:b,handle:function(a){var e,f=a.relatedTarget,g=a.handleObj;return(!f||f!==this&&!c.contains(this,f))&&(a.type=g.origType,e=g.handler.apply(this,arguments),a.type=b),e}}});c.support.submitBubbles||
|
||||
(c.event.special.submit={setup:function(){return c.nodeName(this,"form")?!1:(c.event.add(this,"click._submit keypress._submit",function(a){a=a.target;(a=c.nodeName(a,"input")||c.nodeName(a,"button")?a.form:k)&&!c._data(a,"submitBubbles")&&(c.event.add(a,"submit._submit",function(a){a._submit_bubble=true}),c._data(a,"submitBubbles",true))}),k)},postDispatch:function(a){a._submit_bubble&&(delete a._submit_bubble,this.parentNode&&!a.isTrigger&&c.event.simulate("submit",this.parentNode,a,!0))},teardown:function(){return c.nodeName(this,
|
||||
"form")?!1:(c.event.remove(this,"._submit"),k)}});c.support.changeBubbles||(c.event.special.change={setup:function(){return Fa.test(this.nodeName)?(("checkbox"===this.type||"radio"===this.type)&&(c.event.add(this,"propertychange._change",function(a){"checked"===a.originalEvent.propertyName&&(this._just_changed=!0)}),c.event.add(this,"click._change",function(a){this._just_changed&&!a.isTrigger&&(this._just_changed=!1);c.event.simulate("change",this,a,!0)})),!1):(c.event.add(this,"beforeactivate._change",
|
||||
function(a){a=a.target;Fa.test(a.nodeName)&&!c._data(a,"changeBubbles")&&(c.event.add(a,"change._change",function(a){!this.parentNode||a.isSimulated||a.isTrigger||c.event.simulate("change",this.parentNode,a,!0)}),c._data(a,"changeBubbles",!0))}),k)},handle:function(a){var b=a.target;return this!==b||a.isSimulated||a.isTrigger||"radio"!==b.type&&"checkbox"!==b.type?a.handleObj.handler.apply(this,arguments):k},teardown:function(){return c.event.remove(this,"._change"),!Fa.test(this.nodeName)}});c.support.focusinBubbles||
|
||||
c.each({focus:"focusin",blur:"focusout"},function(a,b){var d=0,e=function(a){c.event.simulate(b,a.target,c.event.fix(a),!0)};c.event.special[b]={setup:function(){0===d++&&n.addEventListener(a,e,!0)},teardown:function(){0===--d&&n.removeEventListener(a,e,!0)}}});c.fn.extend({on:function(a,b,d,e,f){var g,h;if("object"==typeof a){"string"!=typeof b&&(d=d||b,b=k);for(g in a)this.on(g,b,d,a[g],f);return this}if(null==d&&null==e?(e=b,d=b=k):null==e&&("string"==typeof b?(e=d,d=k):(e=d,d=b,b=k)),!1===e)e=
|
||||
U;else if(!e)return this;return 1===f&&(h=e,e=function(a){return c().off(a),h.apply(this,arguments)},e.guid=h.guid||(h.guid=c.guid++)),this.each(function(){c.event.add(this,a,e,d,b)})},one:function(a,b,c,e){return this.on(a,b,c,e,1)},off:function(a,b,d){var e,f;if(a&&a.preventDefault&&a.handleObj)return e=a.handleObj,c(a.delegateTarget).off(e.namespace?e.origType+"."+e.namespace:e.origType,e.selector,e.handler),this;if("object"==typeof a){for(f in a)this.off(f,b,a[f]);return this}return(!1===b||"function"==
|
||||
typeof b)&&(d=b,b=k),!1===d&&(d=U),this.each(function(){c.event.remove(this,a,d,b)})},bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},delegate:function(a,b,c,e){return this.on(b,a,c,e)},undelegate:function(a,b,c){return 1===arguments.length?this.off(a,"**"):this.off(b,a||"**",c)},trigger:function(a,b){return this.each(function(){c.event.trigger(a,b,this)})},triggerHandler:function(a,b){var d=this[0];return d?c.event.trigger(a,b,d,!0):k}});(function(a,
|
||||
b){var d,e,f,g,h,i,j,k,o;function l(a){return ka.test(a+"")}function n(){var a,b=[];return a=function(c,d){return b.push(c+=" ")>r.cacheLength&&delete a[b.shift()],a[c]=d}}function p(a){return a[C]=!0,a}function q(a){var b=z.createElement("div");try{return a(b)}catch(c){return!1}finally{}}function t(a,b,c,f){var g,h,i,j,l;if((b?b.ownerDocument||b:B)!==z&&ma(b),b=b||z,c=c||[],!a||"string"!=typeof a)return c;if(1!==(j=b.nodeType)&&9!==j)return[];if(!G&&!f){if(g=la.exec(a))if(i=g[1])if(9===j){if(h=b.getElementById(i),
|
||||
!h||!h.parentNode)return c;if(h.id===i)return c.push(h),c}else{if(b.ownerDocument&&(h=b.ownerDocument.getElementById(i))&&F(b,h)&&h.id===i)return c.push(h),c}else{if(g[2])return L.apply(c,na.call(b.getElementsByTagName(a),0)),c;if((i=g[3])&&d&&b.getElementsByClassName)return L.apply(c,na.call(b.getElementsByClassName(i),0)),c}if(e&&!A.test(a)){if(g=!0,h=C,i=b,l=9===j&&a,1===j&&"object"!==b.nodeName.toLowerCase()){j=v(a);(g=b.getAttribute("id"))?h=g.replace(sa,"\\$&"):b.setAttribute("id",h);h="[id='"+
|
||||
h+"'] ";for(i=j.length;i--;)j[i]=h+s(j[i]);i=ba.test(a)&&b.parentNode||b;l=j.join(",")}if(l)try{return L.apply(c,na.call(i.querySelectorAll(l),0)),c}catch(k){}finally{g||b.removeAttribute("id")}}}var m;a:{var a=a.replace(Q,"$1"),o,n;h=v(a);if(!f&&1===h.length){if(m=h[0]=h[0].slice(0),2<m.length&&"ID"===(o=m[0]).type&&9===b.nodeType&&!G&&r.relative[m[1].type]){if(b=r.find.ID(o.matches[0].replace(da,ea),b)[0],!b){m=c;break a}a=a.slice(m.shift().value.length)}for(j=Y.needsContext.test(a)?0:m.length;j--&&
|
||||
!(o=m[j],r.relative[g=o.type]);)if((n=r.find[g])&&(f=n(o.matches[0].replace(da,ea),ba.test(m[0].type)&&b.parentNode||b))){if(m.splice(j,1),a=f.length&&s(m),!a){m=(L.apply(c,na.call(f,0)),c);break a}break}}m=(O(a,h)(f,b,G,c,ba.test(a)),c)}return m}function u(a,b){var c=b&&a,d=c&&(~b.sourceIndex||W)-(~a.sourceIndex||W);if(d)return d;if(c)for(;c=c.nextSibling;)if(c===b)return-1;return a?1:-1}function w(a){return function(b){return"input"===b.nodeName.toLowerCase()&&b.type===a}}function y(a){return function(b){var c=
|
||||
b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function H(a){return p(function(b){return b=+b,p(function(c,d){for(var e,f=a([],c.length,b),g=f.length;g--;)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function v(a,b){var c,d,e,f,g,h,i;if(g=T[a+" "])return b?0:g.slice(0);g=a;h=[];for(i=r.preFilter;g;){(!c||(d=ga.exec(g)))&&(d&&(g=g.slice(d[0].length)||g),h.push(e=[]));c=!1;(d=ha.exec(g))&&(c=d.shift(),e.push({value:c,type:d[0].replace(Q," ")}),g=g.slice(c.length));for(f in r.filter)!(d=
|
||||
Y[f].exec(g))||i[f]&&!(d=i[f](d))||(c=d.shift(),e.push({value:c,type:f,matches:d}),g=g.slice(c.length));if(!c)break}return b?g.length:g?t.error(a):T(a,h).slice(0)}function s(a){for(var b=0,c=a.length,d="";c>b;b++)d+=a[b].value;return d}function I(a,b,c){var d=b.dir,e=c&&"parentNode"===d,f=Z++;return b.first?function(b,c,f){for(;b=b[d];)if(1===b.nodeType||e)return a(b,c,f)}:function(b,c,g){var h,i,Ga,j=R+" "+f;if(g)for(;b=b[d];){if((1===b.nodeType||e)&&a(b,c,g))return!0}else for(;b=b[d];)if(1===b.nodeType||
|
||||
e)if(Ga=b[C]||(b[C]={}),(i=Ga[d])&&i[0]===j){if(!0===(h=i[1])||h===va)return!0===h}else if(i=Ga[d]=[j],i[1]=a(b,c,g)||va,!0===i[1])return!0}}function Ha(a){return 1<a.length?function(b,c,d){for(var e=a.length;e--;)if(!a[e](b,c,d))return!1;return!0}:a[0]}function wa(a,b,c,d,e){for(var f,g=[],h=0,i=a.length,j=null!=b;i>h;h++)(f=a[h])&&(!c||c(f,d,e))&&(g.push(f),j&&b.push(h));return g}function Ia(a,b,c,d,e,f){return d&&!d[C]&&(d=Ia(d)),e&&!e[C]&&(e=Ia(e,f)),p(function(f,g,h,i){var j,l,m=[],k=[],o=g.length,
|
||||
n;if(!(n=f)){n=b||"*";for(var p=h.nodeType?[h]:h,q=[],x=0,r=p.length;r>x;x++)t(n,p[x],q);n=q}n=!a||!f&&b?n:wa(n,m,a,h,i);p=c?e||(f?a:o||d)?[]:g:n;if(c&&c(n,p,h,i),d){j=wa(p,k);d(j,[],h,i);for(h=j.length;h--;)(l=j[h])&&(p[k[h]]=!(n[k[h]]=l))}if(f){if(e||a){if(e){j=[];for(h=p.length;h--;)(l=p[h])&&j.push(n[h]=l);e(null,p=[],j,i)}for(h=p.length;h--;)(l=p[h])&&-1<(j=e?V.call(f,l):m[h])&&(f[j]=!(g[j]=l))}}else p=wa(p===g?p.splice(o,p.length):p),e?e(null,g,p,i):L.apply(g,p)})}function N(a){var b,c,d,e=
|
||||
a.length,f=r.relative[a[0].type];c=f||r.relative[" "];for(var g=f?1:0,h=I(function(a){return a===b},c,!0),i=I(function(a){return-1<V.call(b,a)},c,!0),j=[function(a,c,d){return!f&&(d||c!==J)||((b=c).nodeType?h(a,c,d):i(a,c,d))}];e>g;g++)if(c=r.relative[a[g].type])j=[I(Ha(j),c)];else{if(c=r.filter[a[g].type].apply(null,a[g].matches),c[C]){for(d=++g;e>d&&!r.relative[a[d].type];d++);return Ia(1<g&&Ha(j),1<g&&s(a.slice(0,g-1)).replace(Q,"$1"),c,d>g&&N(a.slice(g,d)),e>d&&N(a=a.slice(d)),e>d&&s(a))}j.push(c)}return Ha(j)}
|
||||
function rc(a,b){var c=0,d=0<b.length,e=0<a.length,f=function(f,g,h,i,j){var l,m,k=[],o=0,p="0",n=f&&[],q=null!=j,x=J,s=f||e&&r.find.TAG("*",j&&g.parentNode||g),yb=R+=null==x?1:Math.random()||0.1;for(q&&(J=g!==z&&g,va=c);null!=(j=s[p]);p++){if(e&&j){for(l=0;m=a[l++];)if(m(j,g,h)){i.push(j);break}q&&(R=yb,va=++c)}d&&((j=!m&&j)&&o--,f&&n.push(j))}if(o+=p,d&&p!==o){for(l=0;m=b[l++];)m(n,k,g,h);if(f){if(0<o)for(;p--;)n[p]||k[p]||(k[p]=ca.call(i));k=wa(k)}L.apply(i,k);q&&!f&&0<k.length&&1<o+b.length&&
|
||||
t.uniqueSort(i)}return q&&(R=yb,J=x),n};return d?p(f):f}function zb(){}var D,va,r,E,Ab,O,oa,J,ma,z,K,G,A,pa,M,F,P,C="sizzle"+-new Date,B=a.document;o=k=j=i=h=g=f=e=d=void 0;var R=0,Z=0,S=n(),T=n(),U=n(),$=typeof b,W=-2147483648,fa=[],ca=fa.pop,L=fa.push,na=fa.slice,V=fa.indexOf||function(a){for(var b=0,c=this.length;c>b;b++)if(this[b]===a)return b;return-1},fa="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+".replace("w","w#"),aa="\\[[\\x20\\t\\r\\n\\f]*((?:\\\\.|[\\w-]|[^\\x00-\\xa0])+)[\\x20\\t\\r\\n\\f]*(?:([*^$|!~]?=)[\\x20\\t\\r\\n\\f]*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+
|
||||
fa+")|)|)[\\x20\\t\\r\\n\\f]*\\]",X=":((?:\\\\.|[\\w-]|[^\\x00-\\xa0])+)(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\3|((?:\\\\.|[^\\\\()[\\]]|"+aa.replace(3,8)+")*)|.*)\\)|)",Q=RegExp("^[\\x20\\t\\r\\n\\f]+|((?:^|[^\\\\])(?:\\\\.)*)[\\x20\\t\\r\\n\\f]+$","g"),ga=/^[\x20\t\r\n\f]*,[\x20\t\r\n\f]*/,ha=/^[\x20\t\r\n\f]*([\x20\t\r\n\f>+~])[\x20\t\r\n\f]*/,ia=RegExp(X),ja=RegExp("^"+fa+"$"),Y={ID:/^#((?:\\.|[\w-]|[^\x00-\xa0])+)/,CLASS:/^\.((?:\\.|[\w-]|[^\x00-\xa0])+)/,NAME:/^\[name=['"]?((?:\\.|[\w-]|[^\x00-\xa0])+)['"]?\]/,
|
||||
TAG:RegExp("^("+"(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+".replace("w","w*")+")"),ATTR:RegExp("^"+aa),PSEUDO:RegExp("^"+X),CHILD:RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\([\\x20\\t\\r\\n\\f]*(even|odd|(([+-]|)(\\d*)n|)[\\x20\\t\\r\\n\\f]*(?:([+-]|)[\\x20\\t\\r\\n\\f]*(\\d+)|))[\\x20\\t\\r\\n\\f]*\\)|)","i"),needsContext:RegExp("^[\\x20\\t\\r\\n\\f]*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\([\\x20\\t\\r\\n\\f]*((?:-\\d)?\\d*)[\\x20\\t\\r\\n\\f]*\\)|)(?=[^-]|$)","i")},ba=/[\x20\t\r\n\f]*[+~]/,
|
||||
ka=/^[^{]+\{\s*\[native code/,la=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,qa=/^(?:input|select|textarea|button)$/i,ra=/^h\d$/i,sa=/'|\\/g,ta=/\=[\x20\t\r\n\f]*([^'"\]]*)[\x20\t\r\n\f]*\]/g,da=/\\([\da-fA-F]{1,6}[\x20\t\r\n\f]?|.)/g,ea=function(a,b){var c="0x"+b-65536;return c!==c?b:0>c?String.fromCharCode(c+65536):String.fromCharCode(55296|c>>10,56320|1023&c)};try{na.call(B.documentElement.childNodes,0)[0].nodeType}catch(ua){na=function(a){for(var b,c=[];b=this[a++];)c.push(b);return c}}Ab=t.isXML=function(a){return(a=
|
||||
a&&(a.ownerDocument||a).documentElement)?"HTML"!==a.nodeName:!1};ma=t.setDocument=function(a){var c=a?a.ownerDocument||a:B;return c!==z&&9===c.nodeType&&c.documentElement?(z=c,K=c.documentElement,G=Ab(c),f=q(function(a){return a.appendChild(c.createComment("")),!a.getElementsByTagName("*").length}),g=q(function(a){a.innerHTML="<select></select>";a=typeof a.lastChild.getAttribute("multiple");return"boolean"!==a&&"string"!==a}),d=q(function(a){return a.innerHTML="<div class='hidden e'></div><div class='hidden'></div>",
|
||||
a.getElementsByClassName&&a.getElementsByClassName("e").length?(a.lastChild.className="e",2===a.getElementsByClassName("e").length):!1}),h=q(function(a){a.id=C+0;a.innerHTML="<a name='"+C+"'></a><div name='"+C+"'></div>";K.insertBefore(a,K.firstChild);var b=c.getElementsByName&&c.getElementsByName(C).length===2+c.getElementsByName(C+0).length;return i=!c.getElementById(C),K.removeChild(a),b}),r.attrHandle=q(function(a){return a.innerHTML="<a href='#'></a>",a.firstChild&&typeof a.firstChild.getAttribute!==
|
||||
$&&"#"===a.firstChild.getAttribute("href")})?{}:{href:function(a){return a.getAttribute("href",2)},type:function(a){return a.getAttribute("type")}},i?(r.find.ID=function(a,b){if(typeof b.getElementById!==$&&!G){var c=b.getElementById(a);return c&&c.parentNode?[c]:[]}},r.filter.ID=function(a){var b=a.replace(da,ea);return function(a){return a.getAttribute("id")===b}}):(r.find.ID=function(a,c){if(typeof c.getElementById!==$&&!G){var d=c.getElementById(a);return d?d.id===a||typeof d.getAttributeNode!==
|
||||
$&&d.getAttributeNode("id").value===a?[d]:b:[]}},r.filter.ID=function(a){var b=a.replace(da,ea);return function(a){return(a=typeof a.getAttributeNode!==$&&a.getAttributeNode("id"))&&a.value===b}}),r.find.TAG=f?function(a,c){return typeof c.getElementsByTagName!==$?c.getElementsByTagName(a):b}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){for(;c=f[e++];)1===c.nodeType&&d.push(c);return d}return f},r.find.NAME=h&&function(a,c){return typeof c.getElementsByName!==$?c.getElementsByName(name):
|
||||
b},r.find.CLASS=d&&function(a,c){return typeof c.getElementsByClassName===$||G?b:c.getElementsByClassName(a)},pa=[],A=[":focus"],(e=l(c.querySelectorAll))&&(q(function(a){a.innerHTML="<select><option selected=''></option></select>";a.querySelectorAll("[selected]").length||A.push("\\[[\\x20\\t\\r\\n\\f]*(?:checked|disabled|ismap|multiple|readonly|selected|value)");a.querySelectorAll(":checked").length||A.push(":checked")}),q(function(a){a.innerHTML="<input type='hidden' i=''/>";a.querySelectorAll("[i^='']").length&&
|
||||
A.push("[*^$]=[\\x20\\t\\r\\n\\f]*(?:\"\"|'')");a.querySelectorAll(":enabled").length||A.push(":enabled",":disabled");a.querySelectorAll("*,:x");A.push(",.*:")})),(j=l(M=K.matchesSelector||K.mozMatchesSelector||K.webkitMatchesSelector||K.oMatchesSelector||K.msMatchesSelector))&&q(function(a){k=M.call(a,"div");M.call(a,"[s!='']:x");pa.push("!=",X)}),A=RegExp(A.join("|")),pa=RegExp(pa.join("|")),F=l(K.contains)||K.compareDocumentPosition?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;
|
||||
return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)for(;b=b.parentNode;)if(b===a)return!0;return!1},P=K.compareDocumentPosition?function(a,b){var d;return a===b?(oa=!0,0):(d=b.compareDocumentPosition&&a.compareDocumentPosition&&a.compareDocumentPosition(b))?1&d||a.parentNode&&11===a.parentNode.nodeType?a===c||F(B,a)?-1:b===c||F(B,b)?1:0:4&d?-1:1:a.compareDocumentPosition?-1:1}:function(a,b){var d,e=0;d=a.parentNode;
|
||||
var f=b.parentNode,g=[a],h=[b];if(a===b)return oa=!0,0;if(!d||!f)return a===c?-1:b===c?1:d?-1:f?1:0;if(d===f)return u(a,b);for(d=a;d=d.parentNode;)g.unshift(d);for(d=b;d=d.parentNode;)h.unshift(d);for(;g[e]===h[e];)e++;return e?u(g[e],h[e]):g[e]===B?-1:h[e]===B?1:0},oa=!1,[0,0].sort(P),o=oa,z):z};t.matches=function(a,b){return t(a,null,null,b)};t.matchesSelector=function(a,b){if((a.ownerDocument||a)!==z&&ma(a),b=b.replace(ta,"='$1']"),!(!j||G||pa&&pa.test(b)||A.test(b)))try{var c=M.call(a,b);if(c||
|
||||
k||a.document&&11!==a.document.nodeType)return c}catch(d){}return 0<t(b,z,null,[a]).length};t.contains=function(a,b){return(a.ownerDocument||a)!==z&&ma(a),F(a,b)};t.attr=function(a,b){var c;return(a.ownerDocument||a)!==z&&ma(a),G||(b=b.toLowerCase()),(c=r.attrHandle[b])?c(a):G||g?a.getAttribute(b):((c=a.getAttributeNode(b))||a.getAttribute(b))&&!0===a[b]?b:c&&c.specified?c.value:null};t.error=function(a){throw Error("Syntax error, unrecognized expression: "+a);};t.uniqueSort=function(a){var b,c=[],
|
||||
d=1,e=0;if(oa=!o,a.sort(P),oa){for(;b=a[d];d++)b===a[d-1]&&(e=c.push(d));for(;e--;)a.splice(c[e],1)}return a};E=t.getText=function(a){var b,c="",d=0;if(b=a.nodeType)if(1===b||9===b||11===b){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=E(a)}else{if(3===b||4===b)return a.nodeValue}else for(;b=a[d];d++)c+=E(b);return c};r=t.selectors={cacheLength:50,createPseudo:p,match:Y,find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",
|
||||
first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(da,ea),a[3]=(a[4]||a[5]||"").replace(da,ea),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||t.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&t.error(a[0]),a},PSEUDO:function(a){var b,c=!a[5]&&a[2];return Y.CHILD.test(a[0])?null:(a[4]?a[2]=a[4]:c&&ia.test(c)&&(b=v(c,
|
||||
!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){return"*"===a?function(){return!0}:(a=a.replace(da,ea).toLowerCase(),function(b){return b.nodeName&&b.nodeName.toLowerCase()===a})},CLASS:function(a){var b=S[a+" "];return b||(b=RegExp("(^|[\\x20\\t\\r\\n\\f])"+a+"([\\x20\\t\\r\\n\\f]|$)"))&&S(a,function(a){return b.test(a.className||typeof a.getAttribute!==$&&a.getAttribute("class")||"")})},ATTR:function(a,b,c){return function(d){d=
|
||||
t.attr(d,a);return null==d?"!="===b:b?(d+="","="===b?d===c:"!="===b?d!==c:"^="===b?c&&0===d.indexOf(c):"*="===b?c&&-1<d.indexOf(c):"$="===b?c&&d.slice(-c.length)===c:"~="===b?-1<(" "+d+" ").indexOf(c):"|="===b?d===c||d.slice(0,c.length+1)===c+"-":!1):!0}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,l,m,k,o,c=f!==g?"nextSibling":"previousSibling",p=b.parentNode,n=h&&b.nodeName.toLowerCase(),
|
||||
i=!i&&!h;if(p){if(f){for(;c;){for(l=b;l=l[c];)if(h?l.nodeName.toLowerCase()===n:1===l.nodeType)return!1;o=c="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?p.firstChild:p.lastChild],g&&i){i=p[C]||(p[C]={});j=i[a]||[];k=j[0]===R&&j[1];m=j[0]===R&&j[2];for(l=k&&p.childNodes[k];l=++k&&l&&l[c]||(m=k=0)||o.pop();)if(1===l.nodeType&&++m&&l===b){i[a]=[R,k,m];break}}else if(i&&(j=(b[C]||(b[C]={}))[a])&&j[0]===R)m=j[1];else for(;(l=++k&&l&&l[c]||(m=k=0)||o.pop())&&(!(h?l.nodeName.toLowerCase()===n:1===l.nodeType)||
|
||||
!++m||!(i&&((l[C]||(l[C]={}))[a]=[R,m]),l===b)););return m-=e,m===d||0===m%d&&0<=m/d}}},PSEUDO:function(a,b){var c,d=r.pseudos[a]||r.setFilters[a.toLowerCase()]||t.error("unsupported pseudo: "+a);return d[C]?d(b):1<d.length?(c=[a,a,"",b],r.setFilters.hasOwnProperty(a.toLowerCase())?p(function(a,c){for(var e,f=d(a,b),g=f.length;g--;)e=V.call(a,f[g]),a[e]=!(c[e]=f[g])}):function(a){return d(a,0,c)}):d}},pseudos:{not:p(function(a){var b=[],c=[],d=O(a.replace(Q,"$1"));return d[C]?p(function(a,b,c,e){for(var f,
|
||||
c=d(a,null,e,[]),e=a.length;e--;)(f=c[e])&&(a[e]=!(b[e]=f))}):function(a,e,f){return b[0]=a,d(b,null,f,c),!c.pop()}}),has:p(function(a){return function(b){return 0<t(a,b).length}}),contains:p(function(a){return function(b){return-1<(b.textContent||b.innerText||E(b)).indexOf(a)}}),lang:p(function(a){return ja.test(a||"")||t.error("unsupported lang: "+a),a=a.replace(da,ea).toLowerCase(),function(b){var c;do if(c=G?b.getAttribute("xml:lang")||b.getAttribute("lang"):b.lang)return c=c.toLowerCase(),c===
|
||||
a||0===c.indexOf(a+"-");while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===K},focus:function(a){return a===z.activeElement&&(!z.hasFocus||z.hasFocus())&&!(!a.type&&!a.href&&!~a.tabIndex)},enabled:function(a){return!1===a.disabled},disabled:function(a){return!0===a.disabled},checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&
|
||||
a.parentNode.selectedIndex,!0===a.selected},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if("@"<a.nodeName||3===a.nodeType||4===a.nodeType)return!1;return!0},parent:function(a){return!r.pseudos.empty(a)},header:function(a){return ra.test(a.nodeName)},input:function(a){return qa.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=
|
||||
a.getAttribute("type"))||b.toLowerCase()===a.type)},first:H(function(){return[0]}),last:H(function(a,b){return[b-1]}),eq:H(function(a,b,c){return[0>c?c+b:c]}),even:H(function(a,b){for(var c=0;b>c;c+=2)a.push(c);return a}),odd:H(function(a,b){for(var c=1;b>c;c+=2)a.push(c);return a}),lt:H(function(a,b,c){for(b=0>c?c+b:c;0<=--b;)a.push(b);return a}),gt:H(function(a,b,c){for(c=0>c?c+b:c;b>++c;)a.push(c);return a})}};for(D in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})r.pseudos[D]=w(D);for(D in{submit:!0,
|
||||
reset:!0})r.pseudos[D]=y(D);O=t.compile=function(a,b){var c,d=[],e=[],f=U[a+" "];if(!f){b||(b=v(a));for(c=b.length;c--;)f=N(b[c]),f[C]?d.push(f):e.push(f);f=U(a,rc(e,d))}return f};r.pseudos.nth=r.pseudos.eq;r.filters=zb.prototype=r.pseudos;r.setFilters=new zb;ma();t.attr=c.attr;c.find=t;c.expr=t.selectors;c.expr[":"]=c.expr.pseudos;c.unique=t.uniqueSort;c.text=t.getText;c.isXMLDoc=t.isXML;c.contains=t.contains})(q);var sc=/Until$/,tc=/^(?:parents|prev(?:Until|All))/,Tb=/^.[^:#\[\.,]*$/,Bb=c.expr.match.needsContext,
|
||||
uc={children:!0,contents:!0,next:!0,prev:!0};c.fn.extend({find:function(a){var b,d,e,f=this.length;if("string"!=typeof a)return e=this,this.pushStack(c(a).filter(function(){for(b=0;f>b;b++)if(c.contains(e[b],this))return!0}));d=[];for(b=0;f>b;b++)c.find(a,this[b],d);return d=this.pushStack(1<f?c.unique(d):d),d.selector=(this.selector?this.selector+" ":"")+a,d},has:function(a){var b,d=c(a,this),e=d.length;return this.filter(function(){for(b=0;e>b;b++)if(c.contains(this,d[b]))return!0})},not:function(a){return this.pushStack(Va(this,
|
||||
a,!1))},filter:function(a){return this.pushStack(Va(this,a,!0))},is:function(a){return!!a&&("string"==typeof a?Bb.test(a)?0<=c(a,this.context).index(this[0]):0<c.filter(a,this).length:0<this.filter(a).length)},closest:function(a,b){for(var d,e=0,f=this.length,g=[],h=Bb.test(a)||"string"!=typeof a?c(a,b||this.context):0;f>e;e++)for(d=this[e];d&&d.ownerDocument&&d!==b&&11!==d.nodeType;){if(h?-1<h.index(d):c.find.matchesSelector(d,a)){g.push(d);break}d=d.parentNode}return this.pushStack(1<g.length?c.unique(g):
|
||||
g)},index:function(a){return a?"string"==typeof a?c.inArray(this[0],c(a)):c.inArray(a.jquery?a[0]:a,this):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(a,b){var d="string"==typeof a?c(a,b):c.makeArray(a&&a.nodeType?[a]:a),d=c.merge(this.get(),d);return this.pushStack(c.unique(d))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}});c.fn.andSelf=c.fn.addBack;c.each({parent:function(a){return(a=a.parentNode)&&11!==a.nodeType?a:null},
|
||||
parents:function(a){return c.dir(a,"parentNode")},parentsUntil:function(a,b,d){return c.dir(a,"parentNode",d)},next:function(a){return Ua(a,"nextSibling")},prev:function(a){return Ua(a,"previousSibling")},nextAll:function(a){return c.dir(a,"nextSibling")},prevAll:function(a){return c.dir(a,"previousSibling")},nextUntil:function(a,b,d){return c.dir(a,"nextSibling",d)},prevUntil:function(a,b,d){return c.dir(a,"previousSibling",d)},siblings:function(a){return c.sibling((a.parentNode||{}).firstChild,
|
||||
a)},children:function(a){return c.sibling(a.firstChild)},contents:function(a){return c.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:c.merge([],a.childNodes)}},function(a,b){c.fn[a]=function(d,e){var f=c.map(this,b,d);return sc.test(a)||(e=d),e&&"string"==typeof e&&(f=c.filter(e,f)),f=1<this.length&&!uc[a]?c.unique(f):f,1<this.length&&tc.test(a)&&(f=f.reverse()),this.pushStack(f)}});c.extend({filter:function(a,b,d){return d&&(a=":not("+a+")"),1===b.length?c.find.matchesSelector(b[0],
|
||||
a)?[b[0]]:[]:c.find.matches(a,b)},dir:function(a,b,d){for(var e=[],a=a[b];a&&9!==a.nodeType&&(d===k||1!==a.nodeType||!c(a).is(d));)1===a.nodeType&&e.push(a),a=a[b];return e},sibling:function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c}});var Xa="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",vc=/ jQuery\d+="(?:null|\d+)"/g,Cb=RegExp("<(?:"+Xa+")[\\s/>]","i"),
|
||||
Ja=/^\s+/,Db=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,Eb=/<([\w:]+)/,Fb=/<tbody/i,wc=/<|&#?\w+;/,xc=/<(?:script|style|link)/i,ua=/^(?:checkbox|radio)$/i,yc=/checked\s*(?:[^=]|=\s*.checked.)/i,Gb=/^$|\/(?:java|ecma)script/i,Ub=/^true\/(.*)/,zc=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,y={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],area:[1,"<map>","</map>"],param:[1,"<object>","</object>"],thead:[1,"<table>","</table>"],
|
||||
tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:c.support.htmlSerialize?[0,"",""]:[1,"X<div>","</div>"]},Ka=Wa(n).appendChild(n.createElement("div"));y.optgroup=y.option;y.tbody=y.tfoot=y.colgroup=y.caption=y.thead;y.th=y.td;c.fn.extend({text:function(a){return c.access(this,function(a){return a===k?c.text(this):this.empty().append((this[0]&&this[0].ownerDocument||n).createTextNode(a))},
|
||||
null,a,arguments.length)},wrapAll:function(a){if(c.isFunction(a))return this.each(function(b){c(this).wrapAll(a.call(this,b))});if(this[0]){var b=c(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]);b.map(function(){for(var a=this;a.firstChild&&1===a.firstChild.nodeType;)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){return c.isFunction(a)?this.each(function(b){c(this).wrapInner(a.call(this,b))}):this.each(function(){var b=c(this),d=b.contents();
|
||||
d.length?d.wrapAll(a):b.append(a)})},wrap:function(a){var b=c.isFunction(a);return this.each(function(d){c(this).wrapAll(b?a.call(this,d):a)})},unwrap:function(){return this.parent().each(function(){c.nodeName(this,"body")||c(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){(1===this.nodeType||11===this.nodeType||9===this.nodeType)&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){(1===this.nodeType||
|
||||
11===this.nodeType||9===this.nodeType)&&this.insertBefore(a,this.firstChild)})},before:function(){return this.domManip(arguments,!1,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return this.domManip(arguments,!1,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},remove:function(a,b){for(var d,e=0;null!=(d=this[e]);e++)(!a||0<c.filter(a,[d]).length)&&(b||1!==d.nodeType||c.cleanData(u(d)),d.parentNode&&(b&&c.contains(d.ownerDocument,
|
||||
d)&&ta(u(d,"script")),d.parentNode.removeChild(d)));return this},empty:function(){for(var a,b=0;null!=(a=this[b]);b++){for(1===a.nodeType&&c.cleanData(u(a,!1));a.firstChild;)a.removeChild(a.firstChild);a.options&&c.nodeName(a,"select")&&(a.options.length=0)}return this},clone:function(a,b){return a=null==a?!1:a,b=null==b?a:b,this.map(function(){return c.clone(this,a,b)})},html:function(a){return c.access(this,function(a){var d=this[0]||{},e=0,f=this.length;if(a===k)return 1===d.nodeType?d.innerHTML.replace(vc,
|
||||
""):k;if(!("string"!=typeof a||xc.test(a)||!c.support.htmlSerialize&&Cb.test(a)||!c.support.leadingWhitespace&&Ja.test(a)||y[(Eb.exec(a)||["",""])[1].toLowerCase()])){a=a.replace(Db,"<$1></$2>");try{for(;f>e;e++)d=this[e]||{},1===d.nodeType&&(c.cleanData(u(d,!1)),d.innerHTML=a);d=0}catch(g){}}d&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(a){return c.isFunction(a)||"string"==typeof a||(a=c(a).not(this).detach()),this.domManip([a],!0,function(a){var d=this.nextSibling,e=
|
||||
this.parentNode;e&&(c(this).remove(),e.insertBefore(a,d))})},detach:function(a){return this.remove(a,!0)},domManip:function(a,b,d){var a=qb.apply([],a),e,f,g,h,i=0,j=this.length,m=this,o=j-1,l=a[0],n=c.isFunction(l);if(n||!(1>=j||"string"!=typeof l||c.support.checkClone)&&yc.test(l))return this.each(function(c){var e=m.eq(c);n&&(a[0]=l.call(this,c,b?e.html():k));e.domManip(a,b,d)});if(j&&(h=c.buildFragment(a,this[0].ownerDocument,!1,this),e=h.firstChild,1===h.childNodes.length&&(h=e),e)){b=b&&c.nodeName(e,
|
||||
"tr");g=c.map(u(h,"script"),Ya);for(f=g.length;j>i;i++)e=h,i!==o&&(e=c.clone(e,!0,!0),f&&c.merge(g,u(e,"script"))),d.call(b&&c.nodeName(this[i],"table")?this[i].getElementsByTagName("tbody")[0]||this[i].appendChild(this[i].ownerDocument.createElement("tbody")):this[i],e,i);if(f){h=g[g.length-1].ownerDocument;c.map(g,Za);for(i=0;f>i;i++)e=g[i],Gb.test(e.type||"")&&!c._data(e,"globalEval")&&c.contains(h,e)&&(e.src?c.ajax({url:e.src,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0}):c.globalEval((e.text||
|
||||
e.textContent||e.innerHTML||"").replace(zc,"")))}h=e=null}return this}});c.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){c.fn[a]=function(a){for(var e=0,f=[],g=c(a),h=g.length-1;h>=e;e++)a=e===h?this:this.clone(!0),c(g[e])[b](a),Aa.apply(f,a.get());return this.pushStack(f)}});c.extend({clone:function(a,b,d){var e,f,g,h,i,j=c.contains(a.ownerDocument,a);if(c.support.html5Clone||c.isXMLDoc(a)||!Cb.test("<"+a.nodeName+">")?
|
||||
g=a.cloneNode(!0):(Ka.innerHTML=a.outerHTML,Ka.removeChild(g=Ka.firstChild)),!(c.support.noCloneEvent&&c.support.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||c.isXMLDoc(a))){e=u(g);i=u(a);for(h=0;null!=(f=i[h]);++h)if(e[h]){var m=e[h],k=void 0,l=void 0,n=void 0;if(1===m.nodeType){if(k=m.nodeName.toLowerCase(),!c.support.noCloneEvent&&m[c.expando]){n=c._data(m);for(l in n.events)c.removeEvent(m,l,n.handle);m.removeAttribute(c.expando)}"script"===k&&m.text!==f.text?(Ya(m).text=f.text,Za(m)):"object"===
|
||||
k?(m.parentNode&&(m.outerHTML=f.outerHTML),c.support.html5Clone&&f.innerHTML&&!c.trim(m.innerHTML)&&(m.innerHTML=f.innerHTML)):"input"===k&&ua.test(f.type)?(m.defaultChecked=m.checked=f.checked,m.value!==f.value&&(m.value=f.value)):"option"===k?m.defaultSelected=m.selected=f.defaultSelected:("input"===k||"textarea"===k)&&(m.defaultValue=f.defaultValue)}}}if(b)if(d){i=i||u(a);e=e||u(g);for(h=0;null!=(f=i[h]);h++)$a(f,e[h])}else $a(a,g);return e=u(g,"script"),0<e.length&&ta(e,!j&&u(a,"script")),g},
|
||||
buildFragment:function(a,b,d,e){for(var f,g,h,i,j,k,o,l=a.length,n=Wa(b),p=[],q=0;l>q;q++)if(g=a[q],g||0===g)if("object"===c.type(g))c.merge(p,g.nodeType?[g]:g);else if(wc.test(g)){i=i||n.appendChild(b.createElement("div"));j=(Eb.exec(g)||["",""])[1].toLowerCase();o=y[j]||y._default;i.innerHTML=o[1]+g.replace(Db,"<$1></$2>")+o[2];for(f=o[0];f--;)i=i.lastChild;if(!c.support.leadingWhitespace&&Ja.test(g)&&p.push(b.createTextNode(Ja.exec(g)[0])),!c.support.tbody)for(f=(g="table"!==j||Fb.test(g)?"<table>"!==
|
||||
o[1]||Fb.test(g)?0:i:i.firstChild)&&g.childNodes.length;f--;)c.nodeName(k=g.childNodes[f],"tbody")&&!k.childNodes.length&&g.removeChild(k);c.merge(p,i.childNodes);for(i.textContent="";i.firstChild;)i.removeChild(i.firstChild);i=n.lastChild}else p.push(b.createTextNode(g));i&&n.removeChild(i);c.support.appendChecked||c.grep(u(p,"input"),Vb);for(q=0;g=p[q++];)if((!e||-1===c.inArray(g,e))&&(h=c.contains(g.ownerDocument,g),i=u(n.appendChild(g),"script"),h&&ta(i),d))for(f=0;g=i[f++];)Gb.test(g.type||"")&&
|
||||
d.push(g);return n},cleanData:function(a,b){for(var d,e,f,g,h=0,i=c.expando,j=c.cache,k=c.support.deleteExpando,o=c.event.special;null!=(d=a[h]);h++)if((b||c.acceptData(d))&&(f=d[i],g=f&&j[f])){if(g.events)for(e in g.events)o[e]?c.event.remove(d,e):c.removeEvent(d,e,g.handle);j[f]&&(delete j[f],k?delete d[i]:typeof d.removeAttribute!==v?d.removeAttribute(i):d[i]=null,T.push(f))}}});var aa,F,P,La=/alpha\([^)]*\)/i,Ac=/opacity\s*=\s*([^)]*)/,Bc=/^(top|right|bottom|left)$/,Cc=/^(none|table(?!-c[ea]).+)/,
|
||||
Hb=/^margin/,Wb=RegExp("^("+la+")(.*)$","i"),ia=RegExp("^("+la+")(?!px)[a-z%]+$","i"),Dc=RegExp("^([+-])=("+la+")","i"),hb={BODY:"block"},Ec={position:"absolute",visibility:"hidden",display:"block"},Ib={letterSpacing:0,fontWeight:400},M=["Top","Right","Bottom","Left"],bb=["Webkit","O","Moz","ms"];c.fn.extend({css:function(a,b){return c.access(this,function(a,b,f){var g,h={},i=0;if(c.isArray(b)){g=F(a);for(f=b.length;f>i;i++)h[b[i]]=c.css(a,b[i],!1,g);return h}return f!==k?c.style(a,b,f):c.css(a,b)},
|
||||
a,b,1<arguments.length)},show:function(){return cb(this,!0)},hide:function(){return cb(this)},toggle:function(a){var b="boolean"==typeof a;return this.each(function(){(b?a:V(this))?c(this).show():c(this).hide()})}});c.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=P(a,"opacity");return""===c?"1":c}}}},cssNumber:{columnCount:!0,fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":c.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,
|
||||
b,d,e){if(a&&3!==a.nodeType&&8!==a.nodeType&&a.style){var f,g,h,i=c.camelCase(b),j=a.style;if(b=c.cssProps[i]||(c.cssProps[i]=ab(j,i)),h=c.cssHooks[b]||c.cssHooks[i],d===k)return h&&"get"in h&&(f=h.get(a,!1,e))!==k?f:j[b];if(g=typeof d,"string"===g&&(f=Dc.exec(d))&&(d=(f[1]+1)*f[2]+parseFloat(c.css(a,b)),g="number"),!(null==d||"number"===g&&isNaN(d)||("number"!==g||c.cssNumber[i]||(d+="px"),c.support.clearCloneStyle||""!==d||0!==b.indexOf("background")||(j[b]="inherit"),h&&"set"in h&&(d=h.set(a,d,
|
||||
e))===k)))try{j[b]=d}catch(m){}}},css:function(a,b,d,e){var f,g,h,i=c.camelCase(b);return b=c.cssProps[i]||(c.cssProps[i]=ab(a.style,i)),h=c.cssHooks[b]||c.cssHooks[i],h&&"get"in h&&(g=h.get(a,!0,d)),g===k&&(g=P(a,b,e)),"normal"===g&&b in Ib&&(g=Ib[b]),""===d||d?(f=parseFloat(g),!0===d||c.isNumeric(f)?f||0:g):g},swap:function(a,b,c,e){var f,g={};for(f in b)g[f]=a.style[f],a.style[f]=b[f];c=c.apply(a,e||[]);for(f in b)a.style[f]=g[f];return c}});q.getComputedStyle?(F=function(a){return q.getComputedStyle(a,
|
||||
null)},P=function(a,b,d){var e,f,g,h=(d=d||F(a))?d.getPropertyValue(b)||d[b]:k,i=a.style;return d&&(""!==h||c.contains(a.ownerDocument,a)||(h=c.style(a,b)),ia.test(h)&&Hb.test(b)&&(e=i.width,f=i.minWidth,g=i.maxWidth,i.minWidth=i.maxWidth=i.width=h,h=d.width,i.width=e,i.minWidth=f,i.maxWidth=g)),h}):n.documentElement.currentStyle&&(F=function(a){return a.currentStyle},P=function(a,b,c){var e,f,g,c=(c=c||F(a))?c[b]:k,h=a.style;return null==c&&h&&h[b]&&(c=h[b]),ia.test(c)&&!Bc.test(b)&&(e=h.left,f=
|
||||
a.runtimeStyle,g=f&&f.left,g&&(f.left=a.currentStyle.left),h.left="fontSize"===b?"1em":c,c=h.pixelLeft+"px",h.left=e,g&&(f.left=g)),""===c?"auto":c});c.each(["height","width"],function(a,b){c.cssHooks[b]={get:function(a,e,f){return e?0===a.offsetWidth&&Cc.test(c.css(a,"display"))?c.swap(a,Ec,function(){return gb(a,b,f)}):gb(a,b,f):k},set:function(a,e,f){var g=f&&F(a);return eb(a,e,f?fb(a,b,f,c.support.boxSizing&&"border-box"===c.css(a,"boxSizing",!1,g),g):0)}}});c.support.opacity||(c.cssHooks.opacity=
|
||||
{get:function(a,b){return Ac.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?0.01*parseFloat(RegExp.$1)+"":b?"1":""},set:function(a,b){var d=a.style,e=a.currentStyle,f=c.isNumeric(b)?"alpha(opacity="+100*b+")":"",g=e&&e.filter||d.filter||"";d.zoom=1;(1<=b||""===b)&&""===c.trim(g.replace(La,""))&&d.removeAttribute&&(d.removeAttribute("filter"),""===b||e&&!e.filter)||(d.filter=La.test(g)?g.replace(La,f):g+" "+f)}});c(function(){c.support.reliableMarginRight||(c.cssHooks.marginRight=
|
||||
{get:function(a,b){return b?c.swap(a,{display:"inline-block"},P,[a,"marginRight"]):k}});!c.support.pixelPosition&&c.fn.position&&c.each(["top","left"],function(a,b){c.cssHooks[b]={get:function(a,e){return e?(e=P(a,b),ia.test(e)?c(a).position()[b]+"px":e):k}}})});c.expr&&c.expr.filters&&(c.expr.filters.hidden=function(a){return 0>=a.offsetWidth&&0>=a.offsetHeight||!c.support.reliableHiddenOffsets&&"none"===(a.style&&a.style.display||c.css(a,"display"))},c.expr.filters.visible=function(a){return!c.expr.filters.hidden(a)});
|
||||
c.each({margin:"",padding:"",border:"Width"},function(a,b){c.cssHooks[a+b]={expand:function(c){for(var e=0,f={},c="string"==typeof c?c.split(" "):[c];4>e;e++)f[a+M[e]+b]=c[e]||c[e-2]||c[0];return f}};Hb.test(a)||(c.cssHooks[a+b].set=eb)});var Fc=/%20/g,Xb=/\[\]$/,Jb=/\r?\n/g,Gc=/^(?:submit|button|image|reset|file)$/i,Hc=/^(?:input|select|textarea|keygen)/i;c.fn.extend({serialize:function(){return c.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var a=c.prop(this,
|
||||
"elements");return a?c.makeArray(a):this}).filter(function(){var a=this.type;return this.name&&!c(this).is(":disabled")&&Hc.test(this.nodeName)&&!Gc.test(a)&&(this.checked||!ua.test(a))}).map(function(a,b){var d=c(this).val();return null==d?null:c.isArray(d)?c.map(d,function(a){return{name:b.name,value:a.replace(Jb,"\r\n")}}):{name:b.name,value:d.replace(Jb,"\r\n")}}).get()}});c.param=function(a,b){var d,e=[],f=function(a,b){b=c.isFunction(b)?b():null==b?"":b;e[e.length]=encodeURIComponent(a)+"="+
|
||||
encodeURIComponent(b)};if(b===k&&(b=c.ajaxSettings&&c.ajaxSettings.traditional),c.isArray(a)||a.jquery&&!c.isPlainObject(a))c.each(a,function(){f(this.name,this.value)});else for(d in a)xa(d,a[d],b,f);return e.join("&").replace(Fc,"+")};c.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(a,b){c.fn[b]=function(a,c){return arguments.length>
|
||||
0?this.on(b,null,a,c):this.trigger(b)}});c.fn.hover=function(a,b){return this.mouseenter(a).mouseleave(b||a)};var S,O,Ma=c.now(),Na=/\?/,Ic=/#.*$/,Kb=/([?&])_=[^&]*/,Jc=/^(.*?):[ \t]*([^\r\n]*)\r?$/gm,Kc=/^(?:GET|HEAD)$/,Lc=/^\/\//,Lb=/^([\w.+-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,Mb=c.fn.load,Nb={},ya={},Ob="*/".concat("*");try{O=$b.href}catch(Qc){O=n.createElement("a"),O.href="",O=O.href}S=Lb.exec(O.toLowerCase())||[];c.fn.load=function(a,b,d){if("string"!=typeof a&&Mb)return Mb.apply(this,arguments);
|
||||
var e,f,g,h=this,i=a.indexOf(" ");return 0<=i&&(e=a.slice(i,a.length),a=a.slice(0,i)),c.isFunction(b)?(d=b,b=k):b&&"object"==typeof b&&(g="POST"),0<h.length&&c.ajax({url:a,type:g,dataType:"html",data:b}).done(function(a){f=arguments;h.html(e?c("<div>").append(c.parseHTML(a)).find(e):a)}).complete(d&&function(a,b){h.each(d,f||[a.responseText,b,a])}),this};c.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){c.fn[b]=function(a){return this.on(b,a)}});c.each(["get",
|
||||
"post"],function(a,b){c[b]=function(a,e,f,g){return c.isFunction(e)&&(g=g||f,f=e,e=k),c.ajax({url:a,type:b,dataType:g,data:e,success:f})}});c.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:O,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(S[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Ob,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},
|
||||
contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":q.String,"text html":!0,"text json":c.parseJSON,"text xml":c.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(a,b){return b?za(za(a,c.ajaxSettings),b):za(c.ajaxSettings,a)},ajaxPrefilter:jb(Nb),ajaxTransport:jb(ya),ajax:function(a,b){function d(a,b,d,e){var f,o,D,w,r,E=b;if(2!==H){H=2;i&&clearTimeout(i);m=k;h=e||"";s.readyState=0<a?4:0;if(d){w=l;var e=s,v,B,y,J,I=w.contents,
|
||||
z=w.dataTypes,K=w.responseFields;for(J in K)J in d&&(e[K[J]]=d[J]);for(;"*"===z[0];)z.shift(),B===k&&(B=w.mimeType||e.getResponseHeader("Content-Type"));if(B)for(J in I)if(I[J]&&I[J].test(B)){z.unshift(J);break}if(z[0]in d)y=z[0];else{for(J in d){if(!z[0]||w.converters[J+" "+z[0]]){y=J;break}v||(v=J)}y=y||v}w=y?(y!==z[0]&&z.unshift(y),d[y]):k}if(200<=a&&300>a||304===a)if(l.ifModified&&(r=s.getResponseHeader("Last-Modified"),r&&(c.lastModified[g]=r),r=s.getResponseHeader("etag"),r&&(c.etag[g]=r)),
|
||||
204===a)f=!0,E="nocontent";else if(304===a)f=!0,E="notmodified";else{var G;a:{d=l;f=w;var A,F;D={};r=0;E=d.dataTypes.slice();v=E[0];if(d.dataFilter&&(f=d.dataFilter(f,d.dataType)),E[1])for(A in d.converters)D[A.toLowerCase()]=d.converters[A];for(;o=E[++r];)if("*"!==o){if("*"!==v&&v!==o){if(A=D[v+" "+o]||D["* "+o],!A)for(G in D)if(F=G.split(" "),F[1]===o&&(A=D[v+" "+F[0]]||D["* "+F[0]])){!0===A?A=D[G]:!0!==D[G]&&(o=F[0],E.splice(r--,0,o));break}if(!0!==A)if(A&&d["throws"])f=A(f);else try{f=A(f)}catch(L){G=
|
||||
{state:"parsererror",error:A?L:"No conversion from "+v+" to "+o};break a}}v=o}G={state:"success",data:f}}f=G;E=f.state;o=f.data;D=f.error;f=!D}else D=E,(a||!E)&&(E="error",0>a&&(a=0));s.status=a;s.statusText=(b||E)+"";f?q.resolveWith(n,[o,E,s]):q.rejectWith(n,[s,E,D]);s.statusCode(u);u=k;j&&p.trigger(f?"ajaxSuccess":"ajaxError",[s,l,f?o:D]);t.fireWith(n,[s,E]);j&&(p.trigger("ajaxComplete",[s,l]),--c.active||c.event.trigger("ajaxStop"))}}"object"==typeof a&&(b=a,a=k);var b=b||{},e,f,g,h,i,j,m,o,l=
|
||||
c.ajaxSetup({},b),n=l.context||l,p=l.context&&(n.nodeType||n.jquery)?c(n):c.event,q=c.Deferred(),t=c.Callbacks("once memory"),u=l.statusCode||{},w={},v={},H=0,B="canceled",s={readyState:0,getResponseHeader:function(a){var b;if(2===H){if(!o)for(o={};b=Jc.exec(h);)o[b[1].toLowerCase()]=b[2];b=o[a.toLowerCase()]}return null==b?null:b},getAllResponseHeaders:function(){return 2===H?h:null},setRequestHeader:function(a,b){var c=a.toLowerCase();return H||(a=v[c]=v[c]||a,w[a]=b),this},overrideMimeType:function(a){return H||
|
||||
(l.mimeType=a),this},statusCode:function(a){var b;if(a)if(2>H)for(b in a)u[b]=[u[b],a[b]];else s.always(a[s.status]);return this},abort:function(a){a=a||B;return m&&m.abort(a),d(0,a),this}};if(q.promise(s).complete=t.add,s.success=s.done,s.error=s.fail,l.url=((a||l.url||O)+"").replace(Ic,"").replace(Lc,S[1]+"//"),l.type=b.method||b.type||l.method||l.type,l.dataTypes=c.trim(l.dataType||"*").toLowerCase().match(I)||[""],null==l.crossDomain&&(e=Lb.exec(l.url.toLowerCase()),l.crossDomain=!(!e||e[1]===
|
||||
S[1]&&e[2]===S[2]&&(e[3]||("http:"===e[1]?80:443))==(S[3]||("http:"===S[1]?80:443)))),l.data&&l.processData&&"string"!=typeof l.data&&(l.data=c.param(l.data,l.traditional)),kb(Nb,l,b,s),2===H)return s;(j=l.global)&&0===c.active++&&c.event.trigger("ajaxStart");l.type=l.type.toUpperCase();l.hasContent=!Kc.test(l.type);g=l.url;l.hasContent||(l.data&&(g=l.url+=(Na.test(g)?"&":"?")+l.data,delete l.data),!1===l.cache&&(l.url=Kb.test(g)?g.replace(Kb,"$1_="+Ma++):g+(Na.test(g)?"&":"?")+"_="+Ma++));l.ifModified&&
|
||||
(c.lastModified[g]&&s.setRequestHeader("If-Modified-Since",c.lastModified[g]),c.etag[g]&&s.setRequestHeader("If-None-Match",c.etag[g]));(l.data&&l.hasContent&&!1!==l.contentType||b.contentType)&&s.setRequestHeader("Content-Type",l.contentType);s.setRequestHeader("Accept",l.dataTypes[0]&&l.accepts[l.dataTypes[0]]?l.accepts[l.dataTypes[0]]+("*"!==l.dataTypes[0]?", "+Ob+"; q=0.01":""):l.accepts["*"]);for(f in l.headers)s.setRequestHeader(f,l.headers[f]);if(l.beforeSend&&(!1===l.beforeSend.call(n,s,l)||
|
||||
2===H))return s.abort();B="abort";for(f in{success:1,error:1,complete:1})s[f](l[f]);if(m=kb(ya,l,b,s)){s.readyState=1;j&&p.trigger("ajaxSend",[s,l]);l.async&&0<l.timeout&&(i=setTimeout(function(){s.abort("timeout")},l.timeout));try{H=1,m.send(w,d)}catch(y){if(!(2>H))throw y;d(-1,y)}}else d(-1,"No Transport");return s},getScript:function(a,b){return c.get(a,k,b,"script")},getJSON:function(a,b,d){return c.get(a,b,d,"json")}});c.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},
|
||||
contents:{script:/(?:java|ecma)script/},converters:{"text script":function(a){return c.globalEval(a),a}}});c.ajaxPrefilter("script",function(a){a.cache===k&&(a.cache=!1);a.crossDomain&&(a.type="GET",a.global=!1)});c.ajaxTransport("script",function(a){if(a.crossDomain){var b,d=n.head||c("head")[0]||n.documentElement;return{send:function(c,f){b=n.createElement("script");b.async=!0;a.scriptCharset&&(b.charset=a.scriptCharset);b.src=a.url;b.onload=b.onreadystatechange=function(a,c){(c||!b.readyState||
|
||||
/loaded|complete/.test(b.readyState))&&(b.onload=b.onreadystatechange=null,b.parentNode&&b.parentNode.removeChild(b),b=null,c||f(200,"success"))};d.insertBefore(b,d.firstChild)},abort:function(){b&&b.onload(k,!0)}}}});var Pb=[],Oa=/(=)\?(?=&|$)|\?\?/;c.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var a=Pb.pop()||c.expando+"_"+Ma++;return this[a]=!0,a}});c.ajaxPrefilter("json jsonp",function(a,b,d){var e,f,g,h=!1!==a.jsonp&&(Oa.test(a.url)?"url":"string"==typeof a.data&&!(a.contentType||"").indexOf("application/x-www-form-urlencoded")&&
|
||||
Oa.test(a.data)&&"data");return h||"jsonp"===a.dataTypes[0]?(e=a.jsonpCallback=c.isFunction(a.jsonpCallback)?a.jsonpCallback():a.jsonpCallback,h?a[h]=a[h].replace(Oa,"$1"+e):!1!==a.jsonp&&(a.url+=(Na.test(a.url)?"&":"?")+a.jsonp+"="+e),a.converters["script json"]=function(){return g||c.error(e+" was not called"),g[0]},a.dataTypes[0]="json",f=q[e],q[e]=function(){g=arguments},d.always(function(){q[e]=f;a[e]&&(a.jsonpCallback=b.jsonpCallback,Pb.push(e));g&&c.isFunction(f)&&f(g[0]);g=f=k}),"script"):
|
||||
k});var L,ga,Mc=0,Pa=q.ActiveXObject&&function(){for(var a in L)L[a](k,!0)};c.ajaxSettings.xhr=q.ActiveXObject?function(){var a;if(!(a=!this.isLocal&&lb()))a:{try{a=new q.ActiveXObject("Microsoft.XMLHTTP");break a}catch(b){}a=void 0}return a}:lb;ga=c.ajaxSettings.xhr();c.support.cors=!!ga&&"withCredentials"in ga;(ga=c.support.ajax=!!ga)&&c.ajaxTransport(function(a){if(!a.crossDomain||c.support.cors){var b;return{send:function(d,e){var f,g,h=a.xhr();if(a.username?h.open(a.type,a.url,a.async,a.username,
|
||||
a.password):h.open(a.type,a.url,a.async),a.xhrFields)for(g in a.xhrFields)h[g]=a.xhrFields[g];a.mimeType&&h.overrideMimeType&&h.overrideMimeType(a.mimeType);a.crossDomain||d["X-Requested-With"]||(d["X-Requested-With"]="XMLHttpRequest");try{for(g in d)h.setRequestHeader(g,d[g])}catch(i){}h.send(a.hasContent&&a.data||null);b=function(d,g){var i,l,n,p;try{if(b&&(g||4===h.readyState))if(b=k,f&&(h.onreadystatechange=c.noop,Pa&&delete L[f]),g)4!==h.readyState&&h.abort();else{p={};i=h.status;l=h.getAllResponseHeaders();
|
||||
"string"==typeof h.responseText&&(p.text=h.responseText);try{n=h.statusText}catch(q){n=""}i||!a.isLocal||a.crossDomain?1223===i&&(i=204):i=p.text?200:404}}catch(t){g||e(-1,t)}p&&e(i,n,p,l)};a.async?4===h.readyState?setTimeout(b):(f=++Mc,Pa&&(L||(L={},c(q).unload(Pa)),L[f]=b),h.onreadystatechange=b):b()},abort:function(){b&&b(k,!0)}}}});var W,qa,Nc=/^(?:toggle|show|hide)$/,Oc=RegExp("^(?:([+-])=|)("+la+")([a-z%]*)$","i"),Pc=/queueHooks$/,ja=[function(a,b,d){var e,f,g,h,i,j,k=this,n=a.style,l={},q=
|
||||
[],p=a.nodeType&&V(a);d.queue||(i=c._queueHooks(a,"fx"),null==i.unqueued&&(i.unqueued=0,j=i.empty.fire,i.empty.fire=function(){i.unqueued||j()}),i.unqueued++,k.always(function(){k.always(function(){i.unqueued--;c.queue(a,"fx").length||i.empty.fire()})}));1===a.nodeType&&("height"in b||"width"in b)&&(d.overflow=[n.overflow,n.overflowX,n.overflowY],"inline"===c.css(a,"display")&&"none"===c.css(a,"float")&&(c.support.inlineBlockNeedsLayout&&"inline"!==db(a.nodeName)?n.zoom=1:n.display="inline-block"));
|
||||
d.overflow&&(n.overflow="hidden",c.support.shrinkWrapBlocks||k.always(function(){n.overflow=d.overflow[0];n.overflowX=d.overflow[1];n.overflowY=d.overflow[2]}));for(f in b)if(g=b[f],Nc.exec(g))(delete b[f],e=e||"toggle"===g,g===(p?"hide":"show"))||q.push(f);if(b=q.length){g=c._data(a,"fxshow")||c._data(a,"fxshow",{});"hidden"in g&&(p=g.hidden);e&&(g.hidden=!p);p?c(a).show():k.done(function(){c(a).hide()});k.done(function(){var b;c._removeData(a,"fxshow");for(b in l)c.style(a,b,l[b])});for(f=0;b>f;f++)e=
|
||||
q[f],h=k.createTween(e,p?g[e]:0),l[e]=g[e]||c.style(a,e),e in g||(g[e]=h.start,p&&(h.end=h.start,h.start="width"===e||"height"===e?1:0))}}],X={"*":[function(a,b){var d,e,f=this.createTween(a,b),g=Oc.exec(b),h=f.cur(),i=+h||0,j=1,k=20;if(g){if(d=+g[2],e=g[3]||(c.cssNumber[a]?"":"px"),"px"!==e&&i){i=c.css(f.elem,a,!0)||d||1;do j=j||".5",i/=j,c.style(f.elem,a,i+e);while(j!==(j=f.cur()/h)&&1!==j&&--k)}f.unit=e;f.start=i;f.end=g[1]?i+(g[1]+1)*d:d}return f}]};c.Animation=c.extend(nb,{tweener:function(a,
|
||||
b){c.isFunction(a)?(b=a,a=["*"]):a=a.split(" ");for(var d,e=0,f=a.length;f>e;e++)d=a[e],X[d]=X[d]||[],X[d].unshift(b)},prefilter:function(a,b){b?ja.unshift(a):ja.push(a)}});c.Tween=w;w.prototype={constructor:w,init:function(a,b,d,e,f,g){this.elem=a;this.prop=d;this.easing=f||"swing";this.options=b;this.start=this.now=this.cur();this.end=e;this.unit=g||(c.cssNumber[d]?"":"px")},cur:function(){var a=w.propHooks[this.prop];return a&&a.get?a.get(this):w.propHooks._default.get(this)},run:function(a){var b,
|
||||
d=w.propHooks[this.prop];return this.pos=b=this.options.duration?c.easing[this.easing](a,this.options.duration*a,0,1,this.options.duration):a,this.now=(this.end-this.start)*b+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),d&&d.set?d.set(this):w.propHooks._default.set(this),this}};w.prototype.init.prototype=w.prototype;w.propHooks={_default:{get:function(a){var b;return null==a.elem[a.prop]||a.elem.style&&null!=a.elem.style[a.prop]?(b=c.css(a.elem,a.prop,""),b&&"auto"!==
|
||||
b?b:0):a.elem[a.prop]},set:function(a){c.fx.step[a.prop]?c.fx.step[a.prop](a):a.elem.style&&(null!=a.elem.style[c.cssProps[a.prop]]||c.cssHooks[a.prop])?c.style(a.elem,a.prop,a.now+a.unit):a.elem[a.prop]=a.now}}};w.propHooks.scrollTop=w.propHooks.scrollLeft={set:function(a){a.elem.nodeType&&a.elem.parentNode&&(a.elem[a.prop]=a.now)}};c.each(["toggle","show","hide"],function(a,b){var d=c.fn[b];c.fn[b]=function(a,c,g){return null==a||"boolean"==typeof a?d.apply(this,arguments):this.animate(Y(b,!0),
|
||||
a,c,g)}});c.fn.extend({fadeTo:function(a,b,c,e){return this.filter(V).css("opacity",0).show().end().animate({opacity:b},a,c,e)},animate:function(a,b,d,e){var f=c.isEmptyObject(a),g=c.speed(b,d,e),h=function(){var b=nb(this,c.extend({},a),g);h.finish=function(){b.stop(!0)};(f||c._data(this,"finish"))&&b.stop(!0)};return h.finish=h,f||!1===g.queue?this.each(h):this.queue(g.queue,h)},stop:function(a,b,d){var e=function(a){var b=a.stop;delete a.stop;b(d)};return"string"!=typeof a&&(d=b,b=a,a=k),b&&!1!==
|
||||
a&&this.queue(a||"fx",[]),this.each(function(){var b=!0,g=null!=a&&a+"queueHooks",h=c.timers,i=c._data(this);if(g)i[g]&&i[g].stop&&e(i[g]);else for(g in i)i[g]&&i[g].stop&&Pc.test(g)&&e(i[g]);for(g=h.length;g--;)h[g].elem!==this||null!=a&&h[g].queue!==a||(h[g].anim.stop(d),b=!1,h.splice(g,1));(b||!d)&&c.dequeue(this,a)})},finish:function(a){return!1!==a&&(a=a||"fx"),this.each(function(){var b,d=c._data(this),e=d[a+"queue"];b=d[a+"queueHooks"];var f=c.timers,g=e?e.length:0;d.finish=!0;c.queue(this,
|
||||
a,[]);b&&b.cur&&b.cur.finish&&b.cur.finish.call(this);for(b=f.length;b--;)f[b].elem===this&&f[b].queue===a&&(f[b].anim.stop(!0),f.splice(b,1));for(b=0;g>b;b++)e[b]&&e[b].finish&&e[b].finish.call(this);delete d.finish})}});c.each({slideDown:Y("show"),slideUp:Y("hide"),slideToggle:Y("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){c.fn[a]=function(a,c,f){return this.animate(b,a,c,f)}});c.speed=function(a,b,d){var e=a&&"object"==typeof a?c.extend({},
|
||||
a):{complete:d||!d&&b||c.isFunction(a)&&a,duration:a,easing:d&&b||b&&!c.isFunction(b)&&b};return e.duration=c.fx.off?0:"number"==typeof e.duration?e.duration:e.duration in c.fx.speeds?c.fx.speeds[e.duration]:c.fx.speeds._default,(null==e.queue||!0===e.queue)&&(e.queue="fx"),e.old=e.complete,e.complete=function(){c.isFunction(e.old)&&e.old.call(this);e.queue&&c.dequeue(this,e.queue)},e};c.easing={linear:function(a){return a},swing:function(a){return 0.5-Math.cos(a*Math.PI)/2}};c.timers=[];c.fx=w.prototype.init;
|
||||
c.fx.tick=function(){var a,b=c.timers,d=0;for(W=c.now();b.length>d;d++)a=b[d],a()||b[d]!==a||b.splice(d--,1);b.length||c.fx.stop();W=k};c.fx.timer=function(a){a()&&c.timers.push(a)&&c.fx.start()};c.fx.interval=13;c.fx.start=function(){qa||(qa=setInterval(c.fx.tick,c.fx.interval))};c.fx.stop=function(){clearInterval(qa);qa=null};c.fx.speeds={slow:600,fast:200,_default:400};c.fx.step={};c.expr&&c.expr.filters&&(c.expr.filters.animated=function(a){return c.grep(c.timers,function(b){return a===b.elem}).length});
|
||||
c.fn.offset=function(a){if(arguments.length)return a===k?this:this.each(function(b){c.offset.setOffset(this,a,b)});var b,d,e={top:0,left:0},f=this[0],g=f&&f.ownerDocument;if(g)return b=g.documentElement,c.contains(b,f)?(typeof f.getBoundingClientRect!==v&&(e=f.getBoundingClientRect()),d=ob(g),{top:e.top+(d.pageYOffset||b.scrollTop)-(b.clientTop||0),left:e.left+(d.pageXOffset||b.scrollLeft)-(b.clientLeft||0)}):e};c.offset={setOffset:function(a,b,d){var e=c.css(a,"position");"static"===e&&(a.style.position=
|
||||
"relative");var f=c(a),g=f.offset(),h=c.css(a,"top"),i=c.css(a,"left"),j={},k={},n,l;("absolute"===e||"fixed"===e)&&-1<c.inArray("auto",[h,i])?(k=f.position(),n=k.top,l=k.left):(n=parseFloat(h)||0,l=parseFloat(i)||0);c.isFunction(b)&&(b=b.call(a,d,g));null!=b.top&&(j.top=b.top-g.top+n);null!=b.left&&(j.left=b.left-g.left+l);"using"in b?b.using.call(a,j):f.css(j)}};c.fn.extend({position:function(){if(this[0]){var a,b,d={top:0,left:0},e=this[0];return"fixed"===c.css(e,"position")?b=e.getBoundingClientRect():
|
||||
(a=this.offsetParent(),b=this.offset(),c.nodeName(a[0],"html")||(d=a.offset()),d.top+=c.css(a[0],"borderTopWidth",!0),d.left+=c.css(a[0],"borderLeftWidth",!0)),{top:b.top-d.top-c.css(e,"marginTop",!0),left:b.left-d.left-c.css(e,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var a=this.offsetParent||n.documentElement;a&&!c.nodeName(a,"html")&&"static"===c.css(a,"position");)a=a.offsetParent;return a||n.documentElement})}});c.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},
|
||||
function(a,b){var d=/Y/.test(b);c.fn[a]=function(e){return c.access(this,function(a,e,h){var i=ob(a);return h===k?i?b in i?i[b]:i.document.documentElement[e]:a[e]:(i?i.scrollTo(d?c(i).scrollLeft():h,d?h:c(i).scrollTop()):a[e]=h,k)},a,e,arguments.length,null)}});c.each({Height:"height",Width:"width"},function(a,b){c.each({padding:"inner"+a,content:b,"":"outer"+a},function(d,e){c.fn[e]=function(e,g){var h=arguments.length&&(d||"boolean"!=typeof e),i=d||(!0===e||!0===g?"margin":"border");return c.access(this,
|
||||
(function(q,k){function ra(a){var b=a.length,d=c.type(a);return c.isWindow(a)?!1:1===a.nodeType&&b?!0:"array"===d||"function"!==d&&(0===b||"number"==typeof b&&0<b&&b-1 in a)}function Qb(a){var b=Qa[a]={};return c.each(a.match(I)||[],function(a,c){b[c]=!0}),b}function Ra(a,b,d,e){if(c.acceptData(a)){var f,g,h=c.expando,i="string"==typeof b,j=a.nodeType,m=j?c.cache:a,o=j?a[h]:a[h]&&h;if(o&&m[o]&&(e||m[o].data)||!i||d!==k)return o||(j?a[h]=o=T.pop()||c.guid++:o=h),m[o]||(m[o]={},j||(m[o].toJSON=c.noop)),
|
||||
("object"==typeof b||"function"==typeof b)&&(e?m[o]=c.extend(m[o],b):m[o].data=c.extend(m[o].data,b)),f=m[o],e||(f.data||(f.data={}),f=f.data),d!==k&&(f[c.camelCase(b)]=d),i?(g=f[b],null==g&&(g=f[c.camelCase(b)])):g=f,g}}function Sa(a,b,d){if(c.acceptData(a)){var e,f,g,h=a.nodeType,i=h?c.cache:a,j=h?a[c.expando]:c.expando;if(i[j]){if(b&&(g=d?i[j]:i[j].data)){c.isArray(b)?b=b.concat(c.map(b,c.camelCase)):b in g?b=[b]:(b=c.camelCase(b),b=b in g?[b]:b.split(" "));e=0;for(f=b.length;f>e;e++)delete g[b[e]];
|
||||
if(!(d?sa:c.isEmptyObject)(g))return}(d||(delete i[j].data,sa(i[j])))&&(h?c.cleanData([a],!0):c.support.deleteExpando||i!=i.window?delete i[j]:i[j]=null)}}}function Ta(a,b,d){if(d===k&&1===a.nodeType){var e="data-"+b.replace(Rb,"-$1").toLowerCase();if(d=a.getAttribute(e),"string"==typeof d){try{d="true"===d?!0:"false"===d?!1:"null"===d?null:+d+""===d?+d:Sb.test(d)?c.parseJSON(d):d}catch(f){}c.data(a,b,d)}else d=k}return d}function sa(a){for(var b in a)if(("data"!==b||!c.isEmptyObject(a[b]))&&"toJSON"!==
|
||||
b)return!1;return!0}function ha(){return!0}function U(){return!1}function Ua(a,b){do a=a[b];while(a&&1!==a.nodeType);return a}function Va(a,b,d){if(b=b||0,c.isFunction(b))return c.grep(a,function(a,c){return!!b.call(a,c,a)===d});if(b.nodeType)return c.grep(a,function(a){return a===b===d});if("string"==typeof b){var e=c.grep(a,function(a){return 1===a.nodeType});if(Tb.test(b))return c.filter(b,e,!d);b=c.filter(b,e)}return c.grep(a,function(a){return 0<=c.inArray(a,b)===d})}function Wa(a){var b=Xa.split("|"),
|
||||
a=a.createDocumentFragment();if(a.createElement)for(;b.length;)a.createElement(b.pop());return a}function Ya(a){var b=a.getAttributeNode("type");return a.type=(b&&b.specified)+"/"+a.type,a}function Za(a){var b=Ub.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function ta(a,b){for(var d,e=0;null!=(d=a[e]);e++)c._data(d,"globalEval",!b||c._data(b[e],"globalEval"))}function $a(a,b){if(1===b.nodeType&&c.hasData(a)){var d,e,f;e=c._data(a);var g=c._data(b,e),h=e.events;if(h)for(d in delete g.handle,
|
||||
g.events={},h){e=0;for(f=h[d].length;f>e;e++)c.event.add(b,d,h[d][e])}g.data&&(g.data=c.extend({},g.data))}}function u(a,b){var d,e,f=0,g=typeof a.getElementsByTagName!==v?a.getElementsByTagName(b||"*"):typeof a.querySelectorAll!==v?a.querySelectorAll(b||"*"):k;if(!g){g=[];for(d=a.childNodes||a;null!=(e=d[f]);f++)!b||c.nodeName(e,b)?g.push(e):c.merge(g,u(e,b))}return b===k||b&&c.nodeName(a,b)?c.merge([a],g):g}function Vb(a){ua.test(a.type)&&(a.defaultChecked=a.checked)}function ab(a,b){if(b in a)return b;
|
||||
for(var c=b.charAt(0).toUpperCase()+b.slice(1),e=b,f=bb.length;f--;)if(b=bb[f]+c,b in a)return b;return e}function V(a,b){return a=b||a,"none"===c.css(a,"display")||!c.contains(a.ownerDocument,a)}function cb(a,b){for(var d,e,f,g=[],h=0,i=a.length;i>h;h++)e=a[h],e.style&&(g[h]=c._data(e,"olddisplay"),d=e.style.display,b?(g[h]||"none"!==d||(e.style.display=""),""===e.style.display&&V(e)&&(g[h]=c._data(e,"olddisplay",db(e.nodeName)))):g[h]||(f=V(e),(d&&"none"!==d||!f)&&c._data(e,"olddisplay",f?d:c.css(e,
|
||||
"display"))));for(h=0;i>h;h++)e=a[h],e.style&&(b&&"none"!==e.style.display&&""!==e.style.display||(e.style.display=b?g[h]||"":"none"));return a}function eb(a,b,c){return(a=Wb.exec(b))?Math.max(0,a[1]-(c||0))+(a[2]||"px"):b}function fb(a,b,d,e,f){for(var b=d===(e?"border":"content")?4:"width"===b?1:0,g=0;4>b;b+=2)"margin"===d&&(g+=c.css(a,d+M[b],!0,f)),e?("content"===d&&(g-=c.css(a,"padding"+M[b],!0,f)),"margin"!==d&&(g-=c.css(a,"border"+M[b]+"Width",!0,f))):(g+=c.css(a,"padding"+M[b],!0,f),"padding"!==
|
||||
d&&(g+=c.css(a,"border"+M[b]+"Width",!0,f)));return g}function gb(a,b,d){var e=!0,f="width"===b?a.offsetWidth:a.offsetHeight,g=F(a),h=c.support.boxSizing&&"border-box"===c.css(a,"boxSizing",!1,g);if(0>=f||null==f){if(f=P(a,b,g),(0>f||null==f)&&(f=a.style[b]),ia.test(f))return f;e=h&&(c.support.boxSizingReliable||f===a.style[b]);f=parseFloat(f)||0}return f+fb(a,b,d||(h?"border":"content"),e,g)+"px"}function db(a){var b=n,d=hb[a];return d||(d=ib(a,b),"none"!==d&&d||(aa=(aa||c("<iframe frameborder='0' width='0' height='0'/>").css("cssText",
|
||||
"display:block !important")).appendTo(b.documentElement),b=(aa[0].contentWindow||aa[0].contentDocument).document,b.write("<!doctype html><html><body>"),b.close(),d=ib(a,b),aa.detach()),hb[a]=d),d}function ib(a,b){var d=c(b.createElement(a)).appendTo(b.body),e=c.css(d[0],"display");return d.remove(),e}function xa(a,b,d,e){var f;if(c.isArray(b))c.each(b,function(b,c){d||Xb.test(a)?e(a,c):xa(a+"["+("object"==typeof c?b:"")+"]",c,d,e)});else if(d||"object"!==c.type(b))e(a,b);else for(f in b)xa(a+"["+
|
||||
f+"]",b[f],d,e)}function jb(a){return function(b,d){"string"!=typeof b&&(d=b,b="*");var e,f=0,g=b.toLowerCase().match(I)||[];if(c.isFunction(d))for(;e=g[f++];)"+"===e[0]?(e=e.slice(1)||"*",(a[e]=a[e]||[]).unshift(d)):(a[e]=a[e]||[]).push(d)}}function kb(a,b,d,e){function f(i){var j;return g[i]=!0,c.each(a[i]||[],function(a,c){var i=c(b,d,e);return"string"!=typeof i||h||g[i]?h?!(j=i):k:(b.dataTypes.unshift(i),f(i),!1)}),j}var g={},h=a===ya;return f(b.dataTypes[0])||!g["*"]&&f("*")}function za(a,b){var d,
|
||||
e,f=c.ajaxSettings.flatOptions||{};for(e in b)b[e]!==k&&((f[e]?a:d||(d={}))[e]=b[e]);return d&&c.extend(!0,a,d),a}function lb(){try{return new q.XMLHttpRequest}catch(a){}}function mb(){return setTimeout(function(){W=k}),W=c.now()}function Yb(a,b){c.each(b,function(b,c){for(var f=(X[b]||[]).concat(X["*"]),g=0,h=f.length;h>g&&!f[g].call(a,b,c);g++);})}function nb(a,b,d){var e,f=0,g=ja.length,h=c.Deferred().always(function(){delete i.elem}),i=function(){if(e)return!1;for(var b=W||mb(),b=Math.max(0,j.startTime+
|
||||
j.duration-b),c=1-(b/j.duration||0),d=0,f=j.tweens.length;f>d;d++)j.tweens[d].run(c);return h.notifyWith(a,[j,c,b]),1>c&&f?b:(h.resolveWith(a,[j]),!1)},j=h.promise({elem:a,props:c.extend({},b),opts:c.extend(!0,{specialEasing:{}},d),originalProperties:b,originalOptions:d,startTime:W||mb(),duration:d.duration,tweens:[],createTween:function(b,d){var e=c.Tween(a,j.opts,b,d,j.opts.specialEasing[b]||j.opts.easing);return j.tweens.push(e),e},stop:function(b){var c=0,d=b?j.tweens.length:0;if(e)return this;
|
||||
for(e=!0;d>c;c++)j.tweens[c].run(1);return b?h.resolveWith(a,[j,b]):h.rejectWith(a,[j,b]),this}}),d=j.props;for(Zb(d,j.opts.specialEasing);g>f;f++)if(b=ja[f].call(j,a,d,j.opts))return b;return Yb(j,d),c.isFunction(j.opts.start)&&j.opts.start.call(a,j),c.fx.timer(c.extend(i,{elem:a,anim:j,queue:j.opts.queue})),j.progress(j.opts.progress).done(j.opts.done,j.opts.complete).fail(j.opts.fail).always(j.opts.always)}function Zb(a,b){var d,e,f,g,h;for(f in a)if(e=c.camelCase(f),g=b[e],d=a[f],c.isArray(d)&&
|
||||
(g=d[1],d=a[f]=d[0]),f!==e&&(a[e]=d,delete a[f]),h=c.cssHooks[e],h&&"expand"in h)for(f in d=h.expand(d),delete a[e],d)f in a||(a[f]=d[f],b[f]=g);else b[e]=g}function w(a,b,c,e,f){return new w.prototype.init(a,b,c,e,f)}function Y(a,b){for(var c,e={height:a},f=0,b=b?1:0;4>f;f+=2-b)c=M[f],e["margin"+c]=e["padding"+c]=a;return b&&(e.opacity=e.width=a),e}function ob(a){return c.isWindow(a)?a:9===a.nodeType?a.defaultView||a.parentWindow:!1}var ba,pb,v=typeof k,n=q.document,$b=q.location,ac=q.jQuery,bc=
|
||||
q.$,ka={},T=[],qb=T.concat,Aa=T.push,B=T.slice,rb=T.indexOf,cc=ka.toString,Q=ka.hasOwnProperty,Ba="1.9.1".trim,c=function(a,b){return new c.fn.init(a,b,pb)},la=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,I=/\S+/g,dc=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,ec=/^(?:(<[\w\W]+>)[^>]*|#([\w-]*))$/,sb=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,fc=/^[\],:{}\s]*$/,gc=/(?:^|:|,)(?:\s*\[)+/g,hc=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,ic=/"[^"\\\r\n]*"|true|false|null|-?(?:\d+\.|)\d+(?:[eE][+-]?\d+|)/g,jc=/^-ms-/,kc=/-([\da-z])/gi,
|
||||
lc=function(a,b){return b.toUpperCase()},N=function(a){(n.addEventListener||"load"===a.type||"complete"===n.readyState)&&(tb(),c.ready())},tb=function(){n.addEventListener?(n.removeEventListener("DOMContentLoaded",N,!1),q.removeEventListener("load",N,!1)):(n.detachEvent("onreadystatechange",N),q.detachEvent("onload",N))};c.fn=c.prototype={jquery:"1.9.1",constructor:c,init:function(a,b,d){var e,f;if(!a)return this;if("string"==typeof a){if(e="<"===a.charAt(0)&&">"===a.charAt(a.length-1)&&3<=a.length?
|
||||
[null,a,null]:ec.exec(a),!e||!e[1]&&b)return!b||b.jquery?(b||d).find(a):this.constructor(b).find(a);if(e[1]){if(b=b instanceof c?b[0]:b,c.merge(this,c.parseHTML(e[1],b&&b.nodeType?b.ownerDocument||b:n,!0)),sb.test(e[1])&&c.isPlainObject(b))for(e in b)c.isFunction(this[e])?this[e](b[e]):this.attr(e,b[e]);return this}if(f=n.getElementById(e[2]),f&&f.parentNode){if(f.id!==e[2])return d.find(a);this.length=1;this[0]=f}return this.context=n,this.selector=a,this}return a.nodeType?(this.context=this[0]=
|
||||
a,this.length=1,this):c.isFunction(a)?d.ready(a):(a.selector!==k&&(this.selector=a.selector,this.context=a.context),c.makeArray(a,this))},selector:"",length:0,size:function(){return this.length},toArray:function(){return B.call(this)},get:function(a){return null==a?this.toArray():0>a?this[this.length+a]:this[a]},pushStack:function(a){a=c.merge(this.constructor(),a);return a.prevObject=this,a.context=this.context,a},each:function(a,b){return c.each(this,a,b)},ready:function(a){return c.ready.promise().done(a),
|
||||
this},slice:function(){return this.pushStack(B.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(a){var b=this.length,a=+a+(0>a?b:0);return this.pushStack(0<=a&&b>a?[this[a]]:[])},map:function(a){return this.pushStack(c.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:Aa,sort:[].sort,splice:[].splice};c.fn.init.prototype=c.fn;c.extend=c.fn.extend=function(){var a,b,d,e,f,g,
|
||||
h=arguments[0]||{},i=1,j=arguments.length,m=!1;"boolean"==typeof h&&(m=h,h=arguments[1]||{},i=2);"object"==typeof h||c.isFunction(h)||(h={});for(j===i&&(h=this,--i);j>i;i++)if(null!=(f=arguments[i]))for(e in f)a=h[e],d=f[e],h!==d&&(m&&d&&(c.isPlainObject(d)||(b=c.isArray(d)))?(b?(b=!1,g=a&&c.isArray(a)?a:[]):g=a&&c.isPlainObject(a)?a:{},h[e]=c.extend(m,g,d)):d!==k&&(h[e]=d));return h};c.extend({noConflict:function(a){return q.$===c&&(q.$=bc),a&&q.jQuery===c&&(q.jQuery=ac),c},isReady:!1,readyWait:1,
|
||||
holdReady:function(a){a?c.readyWait++:c.ready(!0)},ready:function(a){if(!0===a?!--c.readyWait:!c.isReady){if(!n.body)return setTimeout(c.ready);c.isReady=!0;!0!==a&&0<--c.readyWait||(ba.resolveWith(n,[c]),c.fn.trigger&&c(n).trigger("ready").off("ready"))}},isFunction:function(a){return"function"===c.type(a)},isArray:Array.isArray||function(a){return"array"===c.type(a)},isWindow:function(a){return null!=a&&a==a.window},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return null==
|
||||
a?a+"":"object"==typeof a||"function"==typeof a?ka[cc.call(a)]||"object":typeof a},isPlainObject:function(a){if(!a||"object"!==c.type(a)||a.nodeType||c.isWindow(a))return!1;try{if(a.constructor&&!Q.call(a,"constructor")&&!Q.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(b){return!1}for(var d in a);return d===k||Q.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw Error(a);},parseHTML:function(a,b,d){if(!a||"string"!=typeof a)return null;"boolean"==
|
||||
typeof b&&(d=b,b=!1);var b=b||n,e=sb.exec(a),d=!d&&[];return e?[b.createElement(e[1])]:(e=c.buildFragment([a],b,d),d&&c(d).remove(),c.merge([],e.childNodes))},parseJSON:function(a){return q.JSON&&q.JSON.parse?q.JSON.parse(a):null===a?a:"string"==typeof a&&(a=c.trim(a),a&&fc.test(a.replace(hc,"@").replace(ic,"]").replace(gc,"")))?Function("return "+a)():(c.error("Invalid JSON: "+a),k)},parseXML:function(a){var b,d;if(!a||"string"!=typeof a)return null;try{q.DOMParser?(d=new DOMParser,b=d.parseFromString(a,
|
||||
"text/xml")):(b=new ActiveXObject("Microsoft.XMLDOM"),b.async="false",b.loadXML(a))}catch(e){b=k}return b&&b.documentElement&&!b.getElementsByTagName("parsererror").length||c.error("Invalid XML: "+a),b},noop:function(){},globalEval:function(a){a&&c.trim(a)&&(q.execScript||function(a){q.eval.call(q,a)})(a)},camelCase:function(a){return a.replace(jc,"ms-").replace(kc,lc)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,b,c){var e,f=0,g=a.length,
|
||||
h=ra(a);if(c)if(h)for(;g>f&&!(e=b.apply(a[f],c),!1===e);f++);else for(f in a){if(e=b.apply(a[f],c),!1===e)break}else if(h)for(;g>f&&!(e=b.call(a[f],f,a[f]),!1===e);f++);else for(f in a)if(e=b.call(a[f],f,a[f]),!1===e)break;return a},trim:Ba&&!Ba.call(" ")?function(a){return null==a?"":Ba.call(a)}:function(a){return null==a?"":(a+"").replace(dc,"")},makeArray:function(a,b){var d=b||[];return null!=a&&(ra(Object(a))?c.merge(d,"string"==typeof a?[a]:a):Aa.call(d,a)),d},inArray:function(a,b,c){var e;
|
||||
if(b){if(rb)return rb.call(b,a,c);e=b.length;for(c=c?0>c?Math.max(0,e+c):c:0;e>c;c++)if(c in b&&b[c]===a)return c}return-1},merge:function(a,b){var c=b.length,e=a.length,f=0;if("number"==typeof c)for(;c>f;f++)a[e++]=b[f];else for(;b[f]!==k;)a[e++]=b[f++];return a.length=e,a},grep:function(a,b,c){for(var e,f=[],g=0,h=a.length,c=!!c;h>g;g++)e=!!b(a[g],g),c!==e&&f.push(a[g]);return f},map:function(a,b,c){var e,f=0,g=a.length,h=[];if(ra(a))for(;g>f;f++)e=b(a[f],f,c),null!=e&&(h[h.length]=e);else for(f in a)e=
|
||||
b(a[f],f,c),null!=e&&(h[h.length]=e);return qb.apply([],h)},guid:1,proxy:function(a,b){var d,e,f;return"string"==typeof b&&(f=a[b],b=a,a=f),c.isFunction(a)?(d=B.call(arguments,2),e=function(){return a.apply(b||this,d.concat(B.call(arguments)))},e.guid=a.guid=a.guid||c.guid++,e):k},access:function(a,b,d,e,f,g,h){var i=0,j=a.length,m=null==d;if("object"===c.type(d))for(i in f=!0,d)c.access(a,b,i,d[i],!0,g,h);else if(e!==k&&(f=!0,c.isFunction(e)||(h=!0),m&&(h?(b.call(a,e),b=null):(m=b,b=function(a,b,
|
||||
d){return m.call(c(a),d)})),b))for(;j>i;i++)b(a[i],d,h?e:e.call(a[i],i,b(a[i],d)));return f?a:m?b.call(a):j?b(a[0],d):g},now:function(){return(new Date).getTime()}});c.ready.promise=function(a){if(!ba)if(ba=c.Deferred(),"complete"===n.readyState)setTimeout(c.ready);else if(n.addEventListener)n.addEventListener("DOMContentLoaded",N,!1),q.addEventListener("load",N,!1);else{n.attachEvent("onreadystatechange",N);q.attachEvent("onload",N);var b=!1;try{b=null==q.frameElement&&n.documentElement}catch(d){}b&&
|
||||
b.doScroll&&function f(){if(!c.isReady){try{b.doScroll("left")}catch(a){return setTimeout(f,50)}tb();c.ready()}}()}return ba.promise(a)};c.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(a,b){ka["[object "+b+"]"]=b.toLowerCase()});pb=c(n);var Qa={};c.Callbacks=function(a){var a="string"==typeof a?Qa[a]||Qb(a):c.extend({},a),b,d,e,f,g,h,i=[],j=!a.once&&[],m=function(c){d=a.memory&&c;e=!0;g=h||0;h=0;f=i.length;for(b=!0;i&&f>g;g++)if(!1===i[g].apply(c[0],c[1])&&
|
||||
a.stopOnFalse){d=!1;break}b=!1;i&&(j?j.length&&m(j.shift()):d?i=[]:o.disable())},o={add:function(){if(i){var e=i.length;(function p(b){c.each(b,function(b,d){var e=c.type(d);"function"===e?a.unique&&o.has(d)||i.push(d):d&&d.length&&"string"!==e&&p(d)})})(arguments);b?f=i.length:d&&(h=e,m(d))}return this},remove:function(){return i&&c.each(arguments,function(a,d){for(var e;-1<(e=c.inArray(d,i,e));)i.splice(e,1),b&&(f>=e&&f--,g>=e&&g--)}),this},has:function(a){return a?-1<c.inArray(a,i):!(!i||!i.length)},
|
||||
empty:function(){return i=[],this},disable:function(){return i=j=d=k,this},disabled:function(){return!i},lock:function(){return j=k,d||o.disable(),this},locked:function(){return!j},fireWith:function(a,c){return c=c||[],c=[a,c.slice?c.slice():c],!i||e&&!j||(b?j.push(c):m(c)),this},fire:function(){return o.fireWith(this,arguments),this},fired:function(){return!!e}};return o};c.extend({Deferred:function(a){var b=[["resolve","done",c.Callbacks("once memory"),"resolved"],["reject","fail",c.Callbacks("once memory"),
|
||||
"rejected"],["notify","progress",c.Callbacks("memory")]],d="pending",e={state:function(){return d},always:function(){return f.done(arguments).fail(arguments),this},then:function(){var a=arguments;return c.Deferred(function(d){c.each(b,function(b,j){var m=j[0],k=c.isFunction(a[b])&&a[b];f[j[1]](function(){var a=k&&k.apply(this,arguments);a&&c.isFunction(a.promise)?a.promise().done(d.resolve).fail(d.reject).progress(d.notify):d[m+"With"](this===e?d.promise():this,k?[a]:arguments)})});a=null}).promise()},
|
||||
promise:function(a){return null!=a?c.extend(a,e):e}},f={};return e.pipe=e.then,c.each(b,function(a,c){var i=c[2],j=c[3];e[c[1]]=i.add;j&&i.add(function(){d=j},b[1^a][2].disable,b[2][2].lock);f[c[0]]=function(){return f[c[0]+"With"](this===f?e:this,arguments),this};f[c[0]+"With"]=i.fireWith}),e.promise(f),a&&a.call(f,f),f},when:function(a){var b=0,d=B.call(arguments),e=d.length,f=1!==e||a&&c.isFunction(a.promise)?e:0,g=1===f?a:c.Deferred(),h=function(a,b,c){return function(d){b[a]=this;c[a]=1<arguments.length?
|
||||
B.call(arguments):d;c===i?g.notifyWith(b,c):--f||g.resolveWith(b,c)}},i,j,m;if(1<e){i=Array(e);j=Array(e);for(m=Array(e);e>b;b++)d[b]&&c.isFunction(d[b].promise)?d[b].promise().done(h(b,m,d)).fail(g.reject).progress(h(b,j,i)):--f}return f||g.resolveWith(m,d),g.promise()}});c.support=function(){var a,b,d,e,f,g,h,i=n.createElement("div");if(i.setAttribute("className","t"),i.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",b=i.getElementsByTagName("*"),d=i.getElementsByTagName("a")[0],
|
||||
!b||!d||!b.length)return{};e=n.createElement("select");f=e.appendChild(n.createElement("option"));b=i.getElementsByTagName("input")[0];d.style.cssText="top:1px;float:left;opacity:.5";a={getSetAttribute:"t"!==i.className,leadingWhitespace:3===i.firstChild.nodeType,tbody:!i.getElementsByTagName("tbody").length,htmlSerialize:!!i.getElementsByTagName("link").length,style:/top/.test(d.getAttribute("style")),hrefNormalized:"/a"===d.getAttribute("href"),opacity:/^0.5/.test(d.style.opacity),cssFloat:!!d.style.cssFloat,
|
||||
checkOn:!!b.value,optSelected:f.selected,enctype:!!n.createElement("form").enctype,html5Clone:"<:nav></:nav>"!==n.createElement("nav").cloneNode(!0).outerHTML,boxModel:"CSS1Compat"===n.compatMode,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,boxSizingReliable:!0,pixelPosition:!1};b.checked=!0;a.noCloneChecked=b.cloneNode(!0).checked;e.disabled=!0;a.optDisabled=!f.disabled;try{delete i.test}catch(j){a.deleteExpando=!1}b=n.createElement("input");
|
||||
b.setAttribute("value","");a.input=""===b.getAttribute("value");b.value="t";b.setAttribute("type","radio");a.radioValue="t"===b.value;b.setAttribute("checked","t");b.setAttribute("name","t");d=n.createDocumentFragment();d.appendChild(b);a.appendChecked=b.checked;a.checkClone=d.cloneNode(!0).cloneNode(!0).lastChild.checked;i.attachEvent&&(i.attachEvent("onclick",function(){a.noCloneEvent=!1}),i.cloneNode(!0).click());for(h in{submit:!0,change:!0,focusin:!0})i.setAttribute(d="on"+h,"t"),a[h+"Bubbles"]=
|
||||
d in q||!1===i.attributes[d].expando;return i.style.backgroundClip="content-box",i.cloneNode(!0).style.backgroundClip="",a.clearCloneStyle="content-box"===i.style.backgroundClip,c(function(){var b,c,d,e=n.getElementsByTagName("body")[0];e&&(b=n.createElement("div"),b.style.cssText="border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px",e.appendChild(b).appendChild(i),i.innerHTML="<table><tr><td></td><td>t</td></tr></table>",d=i.getElementsByTagName("td"),d[0].style.cssText=
|
||||
"padding:0;margin:0;border:0;display:none",g=0===d[0].offsetHeight,d[0].style.display="",d[1].style.display="none",a.reliableHiddenOffsets=g&&0===d[0].offsetHeight,i.innerHTML="",i.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",a.boxSizing=4===i.offsetWidth,a.doesNotIncludeMarginInBodyOffset=1!==e.offsetTop,q.getComputedStyle&&(a.pixelPosition="1%"!==(q.getComputedStyle(i,
|
||||
null)||{}).top,a.boxSizingReliable="4px"===(q.getComputedStyle(i,null)||{width:"4px"}).width,c=i.appendChild(n.createElement("div")),c.style.cssText=i.style.cssText="padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;",c.style.marginRight=c.style.width="0",i.style.width="1px",a.reliableMarginRight=!parseFloat((q.getComputedStyle(c,null)||{}).marginRight)),typeof i.style.zoom!==v&&(i.innerHTML="",i.style.cssText="padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;width:1px;padding:1px;display:inline;zoom:1",
|
||||
a.inlineBlockNeedsLayout=3===i.offsetWidth,i.style.display="block",i.innerHTML="<div></div>",i.firstChild.style.width="5px",a.shrinkWrapBlocks=3!==i.offsetWidth,a.inlineBlockNeedsLayout&&(e.style.zoom=1)),e.removeChild(b),i=null)}),b=e=d=f=d=b=null,a}();var Sb=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,Rb=/([A-Z])/g;c.extend({cache:{},expando:"jQuery"+("1.9.1"+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){return a=a.nodeType?
|
||||
c.cache[a[c.expando]]:a[c.expando],!!a&&!sa(a)},data:function(a,b,c){return Ra(a,b,c)},removeData:function(a,b){return Sa(a,b)},_data:function(a,b,c){return Ra(a,b,c,!0)},_removeData:function(a,b){return Sa(a,b,!0)},acceptData:function(a){if(a.nodeType&&1!==a.nodeType&&9!==a.nodeType)return!1;var b=a.nodeName&&c.noData[a.nodeName.toLowerCase()];return!b||!0!==b&&a.getAttribute("classid")===b}});c.fn.extend({data:function(a,b){var d,e,f=this[0],g=0,h=null;if(a===k){if(this.length&&(h=c.data(f),1===
|
||||
f.nodeType&&!c._data(f,"parsedAttrs"))){for(d=f.attributes;d.length>g;g++)e=d[g].name,e.indexOf("data-")||(e=c.camelCase(e.slice(5)),Ta(f,e,h[e]));c._data(f,"parsedAttrs",!0)}return h}return"object"==typeof a?this.each(function(){c.data(this,a)}):c.access(this,function(b){return b===k?f?Ta(f,a,c.data(f,a)):null:(this.each(function(){c.data(this,a,b)}),k)},null,b,1<arguments.length,null,!0)},removeData:function(a){return this.each(function(){c.removeData(this,a)})}});c.extend({queue:function(a,b,d){var e;
|
||||
return a?(b=(b||"fx")+"queue",e=c._data(a,b),d&&(!e||c.isArray(d)?e=c._data(a,b,c.makeArray(d)):e.push(d)),e||[]):k},dequeue:function(a,b){var b=b||"fx",d=c.queue(a,b),e=d.length,f=d.shift(),g=c._queueHooks(a,b),h=function(){c.dequeue(a,b)};"inprogress"===f&&(f=d.shift(),e--);(g.cur=f)&&("fx"===b&&d.unshift("inprogress"),delete g.stop,f.call(a,h,g));!e&&g&&g.empty.fire()},_queueHooks:function(a,b){var d=b+"queueHooks";return c._data(a,d)||c._data(a,d,{empty:c.Callbacks("once memory").add(function(){c._removeData(a,
|
||||
b+"queue");c._removeData(a,d)})})}});c.fn.extend({queue:function(a,b){var d=2;return"string"!=typeof a&&(b=a,a="fx",d--),d>arguments.length?c.queue(this[0],a):b===k?this:this.each(function(){var d=c.queue(this,a,b);c._queueHooks(this,a);"fx"===a&&"inprogress"!==d[0]&&c.dequeue(this,a)})},dequeue:function(a){return this.each(function(){c.dequeue(this,a)})},delay:function(a,b){return a=c.fx?c.fx.speeds[a]||a:a,b=b||"fx",this.queue(b,function(b,c){var f=setTimeout(b,a);c.stop=function(){clearTimeout(f)}})},
|
||||
clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,b){var d,e=1,f=c.Deferred(),g=this,h=this.length,i=function(){--e||f.resolveWith(g,[g])};"string"!=typeof a&&(b=a,a=k);for(a=a||"fx";h--;)(d=c._data(g[h],a+"queueHooks"))&&d.empty&&(e++,d.empty.add(i));return i(),f.promise(b)}});var ca,ub,Ca=/[\t\r\n]/g,mc=/\r/g,nc=/^(?:input|select|textarea|button|object)$/i,oc=/^(?:a|area)$/i,vb=/^(?:checked|selected|autofocus|autoplay|async|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped)$/i,
|
||||
Da=/^(?:checked|selected)$/i,Z=c.support.getSetAttribute,Ea=c.support.input;c.fn.extend({attr:function(a,b){return c.access(this,c.attr,a,b,1<arguments.length)},removeAttr:function(a){return this.each(function(){c.removeAttr(this,a)})},prop:function(a,b){return c.access(this,c.prop,a,b,1<arguments.length)},removeProp:function(a){return a=c.propFix[a]||a,this.each(function(){try{this[a]=k,delete this[a]}catch(b){}})},addClass:function(a){var b,d,e,f,g,h=0,i=this.length;b="string"==typeof a&&a;if(c.isFunction(a))return this.each(function(b){c(this).addClass(a.call(this,
|
||||
b,this.className))});if(b)for(b=(a||"").match(I)||[];i>h;h++)if(d=this[h],e=1===d.nodeType&&(d.className?(" "+d.className+" ").replace(Ca," "):" ")){for(g=0;f=b[g++];)0>e.indexOf(" "+f+" ")&&(e+=f+" ");d.className=c.trim(e)}return this},removeClass:function(a){var b,d,e,f,g,h=0,i=this.length;b=0===arguments.length||"string"==typeof a&&a;if(c.isFunction(a))return this.each(function(b){c(this).removeClass(a.call(this,b,this.className))});if(b)for(b=(a||"").match(I)||[];i>h;h++)if(d=this[h],e=1===d.nodeType&&
|
||||
(d.className?(" "+d.className+" ").replace(Ca," "):"")){for(g=0;f=b[g++];)for(;0<=e.indexOf(" "+f+" ");)e=e.replace(" "+f+" "," ");d.className=a?c.trim(e):""}return this},toggleClass:function(a,b){var d=typeof a,e="boolean"==typeof b;return c.isFunction(a)?this.each(function(d){c(this).toggleClass(a.call(this,d,this.className,b),b)}):this.each(function(){if("string"===d)for(var f,g=0,h=c(this),i=b,j=a.match(I)||[];f=j[g++];)i=e?i:!h.hasClass(f),h[i?"addClass":"removeClass"](f);else(d===v||"boolean"===
|
||||
d)&&(this.className&&c._data(this,"__className__",this.className),this.className=this.className||!1===a?"":c._data(this,"__className__")||"")})},hasClass:function(a){for(var a=" "+a+" ",b=0,c=this.length;c>b;b++)if(1===this[b].nodeType&&0<=(" "+this[b].className+" ").replace(Ca," ").indexOf(a))return!0;return!1},val:function(a){var b,d,e,f=this[0];if(arguments.length)return e=c.isFunction(a),this.each(function(b){var f,i=c(this);1===this.nodeType&&(f=e?a.call(this,b,i.val()):a,null==f?f="":"number"==
|
||||
typeof f?f+="":c.isArray(f)&&(f=c.map(f,function(a){return null==a?"":a+""})),d=c.valHooks[this.type]||c.valHooks[this.nodeName.toLowerCase()],d&&"set"in d&&d.set(this,f,"value")!==k||(this.value=f))});if(f)return d=c.valHooks[f.type]||c.valHooks[f.nodeName.toLowerCase()],d&&"get"in d&&(b=d.get(f,"value"))!==k?b:(b=f.value,"string"==typeof b?b.replace(mc,""):null==b?"":b)}});c.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){for(var b,
|
||||
d=a.options,e=a.selectedIndex,f="select-one"===a.type||0>e,g=f?null:[],h=f?e+1:d.length,i=0>e?h:f?e:0;h>i;i++)if(b=d[i],!(!b.selected&&i!==e||(c.support.optDisabled?b.disabled:null!==b.getAttribute("disabled"))||b.parentNode.disabled&&c.nodeName(b.parentNode,"optgroup"))){if(a=c(b).val(),f)return a;g.push(a)}return g},set:function(a,b){var d=c.makeArray(b);return c(a).find("option").each(function(){this.selected=0<=c.inArray(c(this).val(),d)}),d.length||(a.selectedIndex=-1),d}}},attr:function(a,b,
|
||||
d){var e,f,g,h=a.nodeType;if(a&&3!==h&&8!==h&&2!==h)return typeof a.getAttribute===v?c.prop(a,b,d):(f=1!==h||!c.isXMLDoc(a),f&&(b=b.toLowerCase(),e=c.attrHooks[b]||(vb.test(b)?ub:ca)),d===k?e&&f&&"get"in e&&null!==(g=e.get(a,b))?g:(typeof a.getAttribute!==v&&(g=a.getAttribute(b)),null==g?k:g):null!==d?e&&f&&"set"in e&&(g=e.set(a,d,b))!==k?g:(a.setAttribute(b,d+""),d):(c.removeAttr(a,b),k))},removeAttr:function(a,b){var d,e,f=0,g=b&&b.match(I);if(g&&1===a.nodeType)for(;d=g[f++];)e=c.propFix[d]||d,
|
||||
vb.test(d)?!Z&&Da.test(d)?a[c.camelCase("default-"+d)]=a[e]=!1:a[e]=!1:c.attr(a,d,""),a.removeAttribute(Z?d:e)},attrHooks:{type:{set:function(a,b){if(!c.support.radioValue&&"radio"===b&&c.nodeName(a,"input")){var d=a.value;return a.setAttribute("type",b),d&&(a.value=d),b}}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",
|
||||
contenteditable:"contentEditable"},prop:function(a,b,d){var e,f,g,h=a.nodeType;if(a&&3!==h&&8!==h&&2!==h)return g=1!==h||!c.isXMLDoc(a),g&&(b=c.propFix[b]||b,f=c.propHooks[b]),d!==k?f&&"set"in f&&(e=f.set(a,d,b))!==k?e:a[b]=d:f&&"get"in f&&null!==(e=f.get(a,b))?e:a[b]},propHooks:{tabIndex:{get:function(a){var b=a.getAttributeNode("tabindex");return b&&b.specified?parseInt(b.value,10):nc.test(a.nodeName)||oc.test(a.nodeName)&&a.href?0:k}}}});ub={get:function(a,b){var d=c.prop(a,b),e="boolean"==typeof d&&
|
||||
a.getAttribute(b);return(d="boolean"==typeof d?Ea&&Z?null!=e:Da.test(b)?a[c.camelCase("default-"+b)]:!!e:a.getAttributeNode(b))&&!1!==d.value?b.toLowerCase():k},set:function(a,b,d){return!1===b?c.removeAttr(a,d):Ea&&Z||!Da.test(d)?a.setAttribute(!Z&&c.propFix[d]||d,d):a[c.camelCase("default-"+d)]=a[d]=!0,d}};Ea&&Z||(c.attrHooks.value={get:function(a,b){var d=a.getAttributeNode(b);return c.nodeName(a,"input")?a.defaultValue:d&&d.specified?d.value:k},set:function(a,b,d){return c.nodeName(a,"input")?
|
||||
(a.defaultValue=b,k):ca&&ca.set(a,b,d)}});Z||(ca=c.valHooks.button={get:function(a,b){var c=a.getAttributeNode(b);return c&&("id"===b||"name"===b||"coords"===b?""!==c.value:c.specified)?c.value:k},set:function(a,b,c){var e=a.getAttributeNode(c);return e||a.setAttributeNode(e=a.ownerDocument.createAttribute(c)),e.value=b+="","value"===c||b===a.getAttribute(c)?b:k}},c.attrHooks.contenteditable={get:ca.get,set:function(a,b,c){ca.set(a,""===b?!1:b,c)}},c.each(["width","height"],function(a,b){c.attrHooks[b]=
|
||||
c.extend(c.attrHooks[b],{set:function(a,c){return""===c?(a.setAttribute(b,"auto"),c):k}})}));c.support.hrefNormalized||(c.each(["href","src","width","height"],function(a,b){c.attrHooks[b]=c.extend(c.attrHooks[b],{get:function(a){a=a.getAttribute(b,2);return null==a?k:a}})}),c.each(["href","src"],function(a,b){c.propHooks[b]={get:function(a){return a.getAttribute(b,4)}}}));c.support.style||(c.attrHooks.style={get:function(a){return a.style.cssText||k},set:function(a,b){return a.style.cssText=b+""}});
|
||||
c.support.optSelected||(c.propHooks.selected=c.extend(c.propHooks.selected,{get:function(a){a=a.parentNode;return a&&(a.selectedIndex,a.parentNode&&a.parentNode.selectedIndex),null}}));c.support.enctype||(c.propFix.enctype="encoding");c.support.checkOn||c.each(["radio","checkbox"],function(){c.valHooks[this]={get:function(a){return null===a.getAttribute("value")?"on":a.value}}});c.each(["radio","checkbox"],function(){c.valHooks[this]=c.extend(c.valHooks[this],{set:function(a,b){return c.isArray(b)?
|
||||
a.checked=0<=c.inArray(c(a).val(),b):k}})});var Fa=/^(?:input|select|textarea)$/i,pc=/^key/,qc=/^(?:mouse|contextmenu)|click/,wb=/^(?:focusinfocus|focusoutblur)$/,xb=/^([^.]*)(?:\.(.+)|)$/;c.event={global:{},add:function(a,b,d,e,f){var g,h,i,j,m,o,l,x,p;if(i=c._data(a)){d.handler&&(j=d,d=j.handler,f=j.selector);d.guid||(d.guid=c.guid++);(h=i.events)||(h=i.events={});(m=i.handle)||(m=i.handle=function(a){return typeof c===v||a&&c.event.triggered===a.type?k:c.event.dispatch.apply(m.elem,arguments)},
|
||||
m.elem=a);b=(b||"").match(I)||[""];for(i=b.length;i--;)g=xb.exec(b[i])||[],x=o=g[1],p=(g[2]||"").split(".").sort(),g=c.event.special[x]||{},x=(f?g.delegateType:g.bindType)||x,g=c.event.special[x]||{},o=c.extend({type:x,origType:o,data:e,handler:d,guid:d.guid,selector:f,needsContext:f&&c.expr.match.needsContext.test(f),namespace:p.join(".")},j),(l=h[x])||(l=h[x]=[],l.delegateCount=0,g.setup&&!1!==g.setup.call(a,e,p,m)||(a.addEventListener?a.addEventListener(x,m,!1):a.attachEvent&&a.attachEvent("on"+
|
||||
x,m))),g.add&&(g.add.call(a,o),o.handler.guid||(o.handler.guid=d.guid)),f?l.splice(l.delegateCount++,0,o):l.push(o),c.event.global[x]=!0;a=null}},remove:function(a,b,d,e,f){var g,h,i,j,m,k,l,x,p,n,q,u=c.hasData(a)&&c._data(a);if(u&&(k=u.events)){b=(b||"").match(I)||[""];for(m=b.length;m--;)if(i=xb.exec(b[m])||[],p=q=i[1],n=(i[2]||"").split(".").sort(),p){l=c.event.special[p]||{};p=(e?l.delegateType:l.bindType)||p;x=k[p]||[];i=i[2]&&RegExp("(^|\\.)"+n.join("\\.(?:.*\\.|)")+"(\\.|$)");for(j=g=x.length;g--;)h=
|
||||
x[g],!f&&q!==h.origType||d&&d.guid!==h.guid||i&&!i.test(h.namespace)||e&&e!==h.selector&&("**"!==e||!h.selector)||(x.splice(g,1),h.selector&&x.delegateCount--,l.remove&&l.remove.call(a,h));j&&!x.length&&(l.teardown&&!1!==l.teardown.call(a,n,u.handle)||c.removeEvent(a,p,u.handle),delete k[p])}else for(p in k)c.event.remove(a,p+b[m],d,e,!0);c.isEmptyObject(k)&&(delete u.handle,c._removeData(a,"events"))}},trigger:function(a,b,d,e){var f,g,h,i,j,m,o=[d||n],l=Q.call(a,"type")?a.type:a;m=Q.call(a,"namespace")?
|
||||
a.namespace.split("."):[];if(h=f=d=d||n,3!==d.nodeType&&8!==d.nodeType&&!wb.test(l+c.event.triggered)&&(0<=l.indexOf(".")&&(m=l.split("."),l=m.shift(),m.sort()),g=0>l.indexOf(":")&&"on"+l,a=a[c.expando]?a:new c.Event(l,"object"==typeof a&&a),a.isTrigger=!0,a.namespace=m.join("."),a.namespace_re=a.namespace?RegExp("(^|\\.)"+m.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,a.result=k,a.target||(a.target=d),b=null==b?[a]:c.makeArray(b,[a]),j=c.event.special[l]||{},e||!j.trigger||!1!==j.trigger.apply(d,b))){if(!e&&
|
||||
!j.noBubble&&!c.isWindow(d)){i=j.delegateType||l;for(wb.test(i+l)||(h=h.parentNode);h;h=h.parentNode)o.push(h),f=h;f===(d.ownerDocument||n)&&o.push(f.defaultView||f.parentWindow||q)}for(m=0;(h=o[m++])&&!a.isPropagationStopped();)a.type=1<m?i:j.bindType||l,(f=(c._data(h,"events")||{})[a.type]&&c._data(h,"handle"))&&f.apply(h,b),(f=g&&h[g])&&c.acceptData(h)&&f.apply&&!1===f.apply(h,b)&&a.preventDefault();if(a.type=l,!(e||a.isDefaultPrevented()||j._default&&!1!==j._default.apply(d.ownerDocument,b)||
|
||||
"click"===l&&c.nodeName(d,"a")||!c.acceptData(d)||!g||!d[l]||c.isWindow(d))){(f=d[g])&&(d[g]=null);c.event.triggered=l;try{d[l]()}catch(x){}c.event.triggered=k;f&&(d[g]=f)}return a.result}},dispatch:function(a){var a=c.event.fix(a),b,d,e,f,g,h=[],i=B.call(arguments);b=(c._data(this,"events")||{})[a.type]||[];var j=c.event.special[a.type]||{};if(i[0]=a,a.delegateTarget=this,!j.preDispatch||!1!==j.preDispatch.call(this,a)){h=c.event.handlers.call(this,a,b);for(b=0;(f=h[b++])&&!a.isPropagationStopped();){a.currentTarget=
|
||||
f.elem;for(g=0;(e=f.handlers[g++])&&!a.isImmediatePropagationStopped();)(!a.namespace_re||a.namespace_re.test(e.namespace))&&(a.handleObj=e,a.data=e.data,d=((c.event.special[e.origType]||{}).handle||e.handler).apply(f.elem,i),d!==k&&!1===(a.result=d)&&(a.preventDefault(),a.stopPropagation()))}return j.postDispatch&&j.postDispatch.call(this,a),a.result}},handlers:function(a,b){var d,e,f,g,h=[],i=b.delegateCount,j=a.target;if(i&&j.nodeType&&(!a.button||"click"!==a.type))for(;j!=this;j=j.parentNode||
|
||||
this)if(1===j.nodeType&&(!0!==j.disabled||"click"!==a.type)){f=[];for(g=0;i>g;g++)e=b[g],d=e.selector+" ",f[d]===k&&(f[d]=e.needsContext?0<=c(d,this).index(j):c.find(d,this,null,[j]).length),f[d]&&f.push(e);f.length&&h.push({elem:j,handlers:f})}return b.length>i&&h.push({elem:this,handlers:b.slice(i)}),h},fix:function(a){if(a[c.expando])return a;var b,d,e;b=a.type;var f=a,g=this.fixHooks[b];g||(this.fixHooks[b]=g=qc.test(b)?this.mouseHooks:pc.test(b)?this.keyHooks:{});e=g.props?this.props.concat(g.props):
|
||||
this.props;a=new c.Event(f);for(b=e.length;b--;)d=e[b],a[d]=f[d];return a.target||(a.target=f.srcElement||n),3===a.target.nodeType&&(a.target=a.target.parentNode),a.metaKey=!!a.metaKey,g.filter?g.filter(a,f):a},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:["char","charCode","key","keyCode"],filter:function(a,b){return null==a.which&&(a.which=null!=b.charCode?b.charCode:b.keyCode),
|
||||
a}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(a,b){var c,e,f,g=b.button,h=b.fromElement;return null==a.pageX&&null!=b.clientX&&(e=a.target.ownerDocument||n,f=e.documentElement,c=e.body,a.pageX=b.clientX+(f&&f.scrollLeft||c&&c.scrollLeft||0)-(f&&f.clientLeft||c&&c.clientLeft||0),a.pageY=b.clientY+(f&&f.scrollTop||c&&c.scrollTop||0)-(f&&f.clientTop||c&&c.clientTop||0)),!a.relatedTarget&&h&&(a.relatedTarget=
|
||||
h===a.target?b.toElement:h),a.which||g===k||(a.which=1&g?1:2&g?3:4&g?2:0),a}},special:{load:{noBubble:!0},click:{trigger:function(){return c.nodeName(this,"input")&&"checkbox"===this.type&&this.click?(this.click(),!1):k}},focus:{trigger:function(){if(this!==n.activeElement&&this.focus)try{return this.focus(),!1}catch(a){}},delegateType:"focusin"},blur:{trigger:function(){return this===n.activeElement&&this.blur?(this.blur(),!1):k},delegateType:"focusout"},beforeunload:{postDispatch:function(a){a.result!==
|
||||
k&&(a.originalEvent.returnValue=a.result)}}},simulate:function(a,b,d,e){a=c.extend(new c.Event,d,{type:a,isSimulated:!0,originalEvent:{}});e?c.event.trigger(a,null,b):c.event.dispatch.call(b,a);a.isDefaultPrevented()&&d.preventDefault()}};c.removeEvent=n.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){b="on"+b;a.detachEvent&&(typeof a[b]===v&&(a[b]=null),a.detachEvent(b,c))};c.Event=function(a,b){return this instanceof c.Event?(a&&a.type?(this.originalEvent=
|
||||
a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||!1===a.returnValue||a.getPreventDefault&&a.getPreventDefault()?ha:U):this.type=a,b&&c.extend(this,b),this.timeStamp=a&&a.timeStamp||c.now(),this[c.expando]=!0,k):new c.Event(a,b)};c.Event.prototype={isDefaultPrevented:U,isPropagationStopped:U,isImmediatePropagationStopped:U,preventDefault:function(){var a=this.originalEvent;this.isDefaultPrevented=ha;a&&(a.preventDefault?a.preventDefault():a.returnValue=!1)},stopPropagation:function(){var a=
|
||||
this.originalEvent;this.isPropagationStopped=ha;a&&(a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=ha;this.stopPropagation()}};c.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){c.event.special[a]={delegateType:b,bindType:b,handle:function(a){var e,f=a.relatedTarget,g=a.handleObj;return(!f||f!==this&&!c.contains(this,f))&&(a.type=g.origType,e=g.handler.apply(this,arguments),a.type=b),e}}});c.support.submitBubbles||
|
||||
(c.event.special.submit={setup:function(){return c.nodeName(this,"form")?!1:(c.event.add(this,"click._submit keypress._submit",function(a){a=a.target;(a=c.nodeName(a,"input")||c.nodeName(a,"button")?a.form:k)&&!c._data(a,"submitBubbles")&&(c.event.add(a,"submit._submit",function(a){a._submit_bubble=true}),c._data(a,"submitBubbles",true))}),k)},postDispatch:function(a){a._submit_bubble&&(delete a._submit_bubble,this.parentNode&&!a.isTrigger&&c.event.simulate("submit",this.parentNode,a,!0))},teardown:function(){return c.nodeName(this,
|
||||
"form")?!1:(c.event.remove(this,"._submit"),k)}});c.support.changeBubbles||(c.event.special.change={setup:function(){return Fa.test(this.nodeName)?(("checkbox"===this.type||"radio"===this.type)&&(c.event.add(this,"propertychange._change",function(a){"checked"===a.originalEvent.propertyName&&(this._just_changed=!0)}),c.event.add(this,"click._change",function(a){this._just_changed&&!a.isTrigger&&(this._just_changed=!1);c.event.simulate("change",this,a,!0)})),!1):(c.event.add(this,"beforeactivate._change",
|
||||
function(a){a=a.target;Fa.test(a.nodeName)&&!c._data(a,"changeBubbles")&&(c.event.add(a,"change._change",function(a){!this.parentNode||a.isSimulated||a.isTrigger||c.event.simulate("change",this.parentNode,a,!0)}),c._data(a,"changeBubbles",!0))}),k)},handle:function(a){var b=a.target;return this!==b||a.isSimulated||a.isTrigger||"radio"!==b.type&&"checkbox"!==b.type?a.handleObj.handler.apply(this,arguments):k},teardown:function(){return c.event.remove(this,"._change"),!Fa.test(this.nodeName)}});c.support.focusinBubbles||
|
||||
c.each({focus:"focusin",blur:"focusout"},function(a,b){var d=0,e=function(a){c.event.simulate(b,a.target,c.event.fix(a),!0)};c.event.special[b]={setup:function(){0===d++&&n.addEventListener(a,e,!0)},teardown:function(){0===--d&&n.removeEventListener(a,e,!0)}}});c.fn.extend({on:function(a,b,d,e,f){var g,h;if("object"==typeof a){"string"!=typeof b&&(d=d||b,b=k);for(g in a)this.on(g,b,d,a[g],f);return this}if(null==d&&null==e?(e=b,d=b=k):null==e&&("string"==typeof b?(e=d,d=k):(e=d,d=b,b=k)),!1===e)e=
|
||||
U;else if(!e)return this;return 1===f&&(h=e,e=function(a){return c().off(a),h.apply(this,arguments)},e.guid=h.guid||(h.guid=c.guid++)),this.each(function(){c.event.add(this,a,e,d,b)})},one:function(a,b,c,e){return this.on(a,b,c,e,1)},off:function(a,b,d){var e,f;if(a&&a.preventDefault&&a.handleObj)return e=a.handleObj,c(a.delegateTarget).off(e.namespace?e.origType+"."+e.namespace:e.origType,e.selector,e.handler),this;if("object"==typeof a){for(f in a)this.off(f,b,a[f]);return this}return(!1===b||"function"==
|
||||
typeof b)&&(d=b,b=k),!1===d&&(d=U),this.each(function(){c.event.remove(this,a,d,b)})},bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},delegate:function(a,b,c,e){return this.on(b,a,c,e)},undelegate:function(a,b,c){return 1===arguments.length?this.off(a,"**"):this.off(b,a||"**",c)},trigger:function(a,b){return this.each(function(){c.event.trigger(a,b,this)})},triggerHandler:function(a,b){var d=this[0];return d?c.event.trigger(a,b,d,!0):k}});(function(a,
|
||||
b){var d,e,f,g,h,i,j,k,o;function l(a){return ka.test(a+"")}function n(){var a,b=[];return a=function(c,d){return b.push(c+=" ")>r.cacheLength&&delete a[b.shift()],a[c]=d}}function p(a){return a[C]=!0,a}function q(a){var b=z.createElement("div");try{return a(b)}catch(c){return!1}finally{}}function t(a,b,c,f){var g,h,i,j,l;if((b?b.ownerDocument||b:B)!==z&&ma(b),b=b||z,c=c||[],!a||"string"!=typeof a)return c;if(1!==(j=b.nodeType)&&9!==j)return[];if(!G&&!f){if(g=la.exec(a))if(i=g[1])if(9===j){if(h=b.getElementById(i),
|
||||
!h||!h.parentNode)return c;if(h.id===i)return c.push(h),c}else{if(b.ownerDocument&&(h=b.ownerDocument.getElementById(i))&&F(b,h)&&h.id===i)return c.push(h),c}else{if(g[2])return L.apply(c,na.call(b.getElementsByTagName(a),0)),c;if((i=g[3])&&d&&b.getElementsByClassName)return L.apply(c,na.call(b.getElementsByClassName(i),0)),c}if(e&&!A.test(a)){if(g=!0,h=C,i=b,l=9===j&&a,1===j&&"object"!==b.nodeName.toLowerCase()){j=v(a);(g=b.getAttribute("id"))?h=g.replace(sa,"\\$&"):b.setAttribute("id",h);h="[id='"+
|
||||
h+"'] ";for(i=j.length;i--;)j[i]=h+s(j[i]);i=ba.test(a)&&b.parentNode||b;l=j.join(",")}if(l)try{return L.apply(c,na.call(i.querySelectorAll(l),0)),c}catch(k){}finally{g||b.removeAttribute("id")}}}var m;a:{var a=a.replace(Q,"$1"),o,n;h=v(a);if(!f&&1===h.length){if(m=h[0]=h[0].slice(0),2<m.length&&"ID"===(o=m[0]).type&&9===b.nodeType&&!G&&r.relative[m[1].type]){if(b=r.find.ID(o.matches[0].replace(da,ea),b)[0],!b){m=c;break a}a=a.slice(m.shift().value.length)}for(j=Y.needsContext.test(a)?0:m.length;j--&&
|
||||
!(o=m[j],r.relative[g=o.type]);)if((n=r.find[g])&&(f=n(o.matches[0].replace(da,ea),ba.test(m[0].type)&&b.parentNode||b))){if(m.splice(j,1),a=f.length&&s(m),!a){m=(L.apply(c,na.call(f,0)),c);break a}break}}m=(O(a,h)(f,b,G,c,ba.test(a)),c)}return m}function u(a,b){var c=b&&a,d=c&&(~b.sourceIndex||W)-(~a.sourceIndex||W);if(d)return d;if(c)for(;c=c.nextSibling;)if(c===b)return-1;return a?1:-1}function w(a){return function(b){return"input"===b.nodeName.toLowerCase()&&b.type===a}}function y(a){return function(b){var c=
|
||||
b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function H(a){return p(function(b){return b=+b,p(function(c,d){for(var e,f=a([],c.length,b),g=f.length;g--;)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function v(a,b){var c,d,e,f,g,h,i;if(g=T[a+" "])return b?0:g.slice(0);g=a;h=[];for(i=r.preFilter;g;){(!c||(d=ga.exec(g)))&&(d&&(g=g.slice(d[0].length)||g),h.push(e=[]));c=!1;(d=ha.exec(g))&&(c=d.shift(),e.push({value:c,type:d[0].replace(Q," ")}),g=g.slice(c.length));for(f in r.filter)!(d=
|
||||
Y[f].exec(g))||i[f]&&!(d=i[f](d))||(c=d.shift(),e.push({value:c,type:f,matches:d}),g=g.slice(c.length));if(!c)break}return b?g.length:g?t.error(a):T(a,h).slice(0)}function s(a){for(var b=0,c=a.length,d="";c>b;b++)d+=a[b].value;return d}function I(a,b,c){var d=b.dir,e=c&&"parentNode"===d,f=Z++;return b.first?function(b,c,f){for(;b=b[d];)if(1===b.nodeType||e)return a(b,c,f)}:function(b,c,g){var h,i,Ga,j=R+" "+f;if(g)for(;b=b[d];){if((1===b.nodeType||e)&&a(b,c,g))return!0}else for(;b=b[d];)if(1===b.nodeType||
|
||||
e)if(Ga=b[C]||(b[C]={}),(i=Ga[d])&&i[0]===j){if(!0===(h=i[1])||h===va)return!0===h}else if(i=Ga[d]=[j],i[1]=a(b,c,g)||va,!0===i[1])return!0}}function Ha(a){return 1<a.length?function(b,c,d){for(var e=a.length;e--;)if(!a[e](b,c,d))return!1;return!0}:a[0]}function wa(a,b,c,d,e){for(var f,g=[],h=0,i=a.length,j=null!=b;i>h;h++)(f=a[h])&&(!c||c(f,d,e))&&(g.push(f),j&&b.push(h));return g}function Ia(a,b,c,d,e,f){return d&&!d[C]&&(d=Ia(d)),e&&!e[C]&&(e=Ia(e,f)),p(function(f,g,h,i){var j,l,m=[],k=[],o=g.length,
|
||||
n;if(!(n=f)){n=b||"*";for(var p=h.nodeType?[h]:h,q=[],x=0,r=p.length;r>x;x++)t(n,p[x],q);n=q}n=!a||!f&&b?n:wa(n,m,a,h,i);p=c?e||(f?a:o||d)?[]:g:n;if(c&&c(n,p,h,i),d){j=wa(p,k);d(j,[],h,i);for(h=j.length;h--;)(l=j[h])&&(p[k[h]]=!(n[k[h]]=l))}if(f){if(e||a){if(e){j=[];for(h=p.length;h--;)(l=p[h])&&j.push(n[h]=l);e(null,p=[],j,i)}for(h=p.length;h--;)(l=p[h])&&-1<(j=e?V.call(f,l):m[h])&&(f[j]=!(g[j]=l))}}else p=wa(p===g?p.splice(o,p.length):p),e?e(null,g,p,i):L.apply(g,p)})}function N(a){var b,c,d,e=
|
||||
a.length,f=r.relative[a[0].type];c=f||r.relative[" "];for(var g=f?1:0,h=I(function(a){return a===b},c,!0),i=I(function(a){return-1<V.call(b,a)},c,!0),j=[function(a,c,d){return!f&&(d||c!==J)||((b=c).nodeType?h(a,c,d):i(a,c,d))}];e>g;g++)if(c=r.relative[a[g].type])j=[I(Ha(j),c)];else{if(c=r.filter[a[g].type].apply(null,a[g].matches),c[C]){for(d=++g;e>d&&!r.relative[a[d].type];d++);return Ia(1<g&&Ha(j),1<g&&s(a.slice(0,g-1)).replace(Q,"$1"),c,d>g&&N(a.slice(g,d)),e>d&&N(a=a.slice(d)),e>d&&s(a))}j.push(c)}return Ha(j)}
|
||||
function rc(a,b){var c=0,d=0<b.length,e=0<a.length,f=function(f,g,h,i,j){var l,m,k=[],o=0,p="0",n=f&&[],q=null!=j,x=J,s=f||e&&r.find.TAG("*",j&&g.parentNode||g),yb=R+=null==x?1:Math.random()||0.1;for(q&&(J=g!==z&&g,va=c);null!=(j=s[p]);p++){if(e&&j){for(l=0;m=a[l++];)if(m(j,g,h)){i.push(j);break}q&&(R=yb,va=++c)}d&&((j=!m&&j)&&o--,f&&n.push(j))}if(o+=p,d&&p!==o){for(l=0;m=b[l++];)m(n,k,g,h);if(f){if(0<o)for(;p--;)n[p]||k[p]||(k[p]=ca.call(i));k=wa(k)}L.apply(i,k);q&&!f&&0<k.length&&1<o+b.length&&
|
||||
t.uniqueSort(i)}return q&&(R=yb,J=x),n};return d?p(f):f}function zb(){}var D,va,r,E,Ab,O,oa,J,ma,z,K,G,A,pa,M,F,P,C="sizzle"+-new Date,B=a.document;o=k=j=i=h=g=f=e=d=void 0;var R=0,Z=0,S=n(),T=n(),U=n(),$=typeof b,W=-2147483648,fa=[],ca=fa.pop,L=fa.push,na=fa.slice,V=fa.indexOf||function(a){for(var b=0,c=this.length;c>b;b++)if(this[b]===a)return b;return-1},fa="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+".replace("w","w#"),aa="\\[[\\x20\\t\\r\\n\\f]*((?:\\\\.|[\\w-]|[^\\x00-\\xa0])+)[\\x20\\t\\r\\n\\f]*(?:([*^$|!~]?=)[\\x20\\t\\r\\n\\f]*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+
|
||||
fa+")|)|)[\\x20\\t\\r\\n\\f]*\\]",X=":((?:\\\\.|[\\w-]|[^\\x00-\\xa0])+)(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\3|((?:\\\\.|[^\\\\()[\\]]|"+aa.replace(3,8)+")*)|.*)\\)|)",Q=RegExp("^[\\x20\\t\\r\\n\\f]+|((?:^|[^\\\\])(?:\\\\.)*)[\\x20\\t\\r\\n\\f]+$","g"),ga=/^[\x20\t\r\n\f]*,[\x20\t\r\n\f]*/,ha=/^[\x20\t\r\n\f]*([\x20\t\r\n\f>+~])[\x20\t\r\n\f]*/,ia=RegExp(X),ja=RegExp("^"+fa+"$"),Y={ID:/^#((?:\\.|[\w-]|[^\x00-\xa0])+)/,CLASS:/^\.((?:\\.|[\w-]|[^\x00-\xa0])+)/,NAME:/^\[name=['"]?((?:\\.|[\w-]|[^\x00-\xa0])+)['"]?\]/,
|
||||
TAG:RegExp("^("+"(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+".replace("w","w*")+")"),ATTR:RegExp("^"+aa),PSEUDO:RegExp("^"+X),CHILD:RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\([\\x20\\t\\r\\n\\f]*(even|odd|(([+-]|)(\\d*)n|)[\\x20\\t\\r\\n\\f]*(?:([+-]|)[\\x20\\t\\r\\n\\f]*(\\d+)|))[\\x20\\t\\r\\n\\f]*\\)|)","i"),needsContext:RegExp("^[\\x20\\t\\r\\n\\f]*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\([\\x20\\t\\r\\n\\f]*((?:-\\d)?\\d*)[\\x20\\t\\r\\n\\f]*\\)|)(?=[^-]|$)","i")},ba=/[\x20\t\r\n\f]*[+~]/,
|
||||
ka=/^[^{]+\{\s*\[native code/,la=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,qa=/^(?:input|select|textarea|button)$/i,ra=/^h\d$/i,sa=/'|\\/g,ta=/\=[\x20\t\r\n\f]*([^'"\]]*)[\x20\t\r\n\f]*\]/g,da=/\\([\da-fA-F]{1,6}[\x20\t\r\n\f]?|.)/g,ea=function(a,b){var c="0x"+b-65536;return c!==c?b:0>c?String.fromCharCode(c+65536):String.fromCharCode(55296|c>>10,56320|1023&c)};try{na.call(B.documentElement.childNodes,0)[0].nodeType}catch(ua){na=function(a){for(var b,c=[];b=this[a++];)c.push(b);return c}}Ab=t.isXML=function(a){return(a=
|
||||
a&&(a.ownerDocument||a).documentElement)?"HTML"!==a.nodeName:!1};ma=t.setDocument=function(a){var c=a?a.ownerDocument||a:B;return c!==z&&9===c.nodeType&&c.documentElement?(z=c,K=c.documentElement,G=Ab(c),f=q(function(a){return a.appendChild(c.createComment("")),!a.getElementsByTagName("*").length}),g=q(function(a){a.innerHTML="<select></select>";a=typeof a.lastChild.getAttribute("multiple");return"boolean"!==a&&"string"!==a}),d=q(function(a){return a.innerHTML="<div class='hidden e'></div><div class='hidden'></div>",
|
||||
a.getElementsByClassName&&a.getElementsByClassName("e").length?(a.lastChild.className="e",2===a.getElementsByClassName("e").length):!1}),h=q(function(a){a.id=C+0;a.innerHTML="<a name='"+C+"'></a><div name='"+C+"'></div>";K.insertBefore(a,K.firstChild);var b=c.getElementsByName&&c.getElementsByName(C).length===2+c.getElementsByName(C+0).length;return i=!c.getElementById(C),K.removeChild(a),b}),r.attrHandle=q(function(a){return a.innerHTML="<a href='#'></a>",a.firstChild&&typeof a.firstChild.getAttribute!==
|
||||
$&&"#"===a.firstChild.getAttribute("href")})?{}:{href:function(a){return a.getAttribute("href",2)},type:function(a){return a.getAttribute("type")}},i?(r.find.ID=function(a,b){if(typeof b.getElementById!==$&&!G){var c=b.getElementById(a);return c&&c.parentNode?[c]:[]}},r.filter.ID=function(a){var b=a.replace(da,ea);return function(a){return a.getAttribute("id")===b}}):(r.find.ID=function(a,c){if(typeof c.getElementById!==$&&!G){var d=c.getElementById(a);return d?d.id===a||typeof d.getAttributeNode!==
|
||||
$&&d.getAttributeNode("id").value===a?[d]:b:[]}},r.filter.ID=function(a){var b=a.replace(da,ea);return function(a){return(a=typeof a.getAttributeNode!==$&&a.getAttributeNode("id"))&&a.value===b}}),r.find.TAG=f?function(a,c){return typeof c.getElementsByTagName!==$?c.getElementsByTagName(a):b}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){for(;c=f[e++];)1===c.nodeType&&d.push(c);return d}return f},r.find.NAME=h&&function(a,c){return typeof c.getElementsByName!==$?c.getElementsByName(name):
|
||||
b},r.find.CLASS=d&&function(a,c){return typeof c.getElementsByClassName===$||G?b:c.getElementsByClassName(a)},pa=[],A=[":focus"],(e=l(c.querySelectorAll))&&(q(function(a){a.innerHTML="<select><option selected=''></option></select>";a.querySelectorAll("[selected]").length||A.push("\\[[\\x20\\t\\r\\n\\f]*(?:checked|disabled|ismap|multiple|readonly|selected|value)");a.querySelectorAll(":checked").length||A.push(":checked")}),q(function(a){a.innerHTML="<input type='hidden' i=''/>";a.querySelectorAll("[i^='']").length&&
|
||||
A.push("[*^$]=[\\x20\\t\\r\\n\\f]*(?:\"\"|'')");a.querySelectorAll(":enabled").length||A.push(":enabled",":disabled");a.querySelectorAll("*,:x");A.push(",.*:")})),(j=l(M=K.matchesSelector||K.mozMatchesSelector||K.webkitMatchesSelector||K.oMatchesSelector||K.msMatchesSelector))&&q(function(a){k=M.call(a,"div");M.call(a,"[s!='']:x");pa.push("!=",X)}),A=RegExp(A.join("|")),pa=RegExp(pa.join("|")),F=l(K.contains)||K.compareDocumentPosition?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;
|
||||
return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)for(;b=b.parentNode;)if(b===a)return!0;return!1},P=K.compareDocumentPosition?function(a,b){var d;return a===b?(oa=!0,0):(d=b.compareDocumentPosition&&a.compareDocumentPosition&&a.compareDocumentPosition(b))?1&d||a.parentNode&&11===a.parentNode.nodeType?a===c||F(B,a)?-1:b===c||F(B,b)?1:0:4&d?-1:1:a.compareDocumentPosition?-1:1}:function(a,b){var d,e=0;d=a.parentNode;
|
||||
var f=b.parentNode,g=[a],h=[b];if(a===b)return oa=!0,0;if(!d||!f)return a===c?-1:b===c?1:d?-1:f?1:0;if(d===f)return u(a,b);for(d=a;d=d.parentNode;)g.unshift(d);for(d=b;d=d.parentNode;)h.unshift(d);for(;g[e]===h[e];)e++;return e?u(g[e],h[e]):g[e]===B?-1:h[e]===B?1:0},oa=!1,[0,0].sort(P),o=oa,z):z};t.matches=function(a,b){return t(a,null,null,b)};t.matchesSelector=function(a,b){if((a.ownerDocument||a)!==z&&ma(a),b=b.replace(ta,"='$1']"),!(!j||G||pa&&pa.test(b)||A.test(b)))try{var c=M.call(a,b);if(c||
|
||||
k||a.document&&11!==a.document.nodeType)return c}catch(d){}return 0<t(b,z,null,[a]).length};t.contains=function(a,b){return(a.ownerDocument||a)!==z&&ma(a),F(a,b)};t.attr=function(a,b){var c;return(a.ownerDocument||a)!==z&&ma(a),G||(b=b.toLowerCase()),(c=r.attrHandle[b])?c(a):G||g?a.getAttribute(b):((c=a.getAttributeNode(b))||a.getAttribute(b))&&!0===a[b]?b:c&&c.specified?c.value:null};t.error=function(a){throw Error("Syntax error, unrecognized expression: "+a);};t.uniqueSort=function(a){var b,c=[],
|
||||
d=1,e=0;if(oa=!o,a.sort(P),oa){for(;b=a[d];d++)b===a[d-1]&&(e=c.push(d));for(;e--;)a.splice(c[e],1)}return a};E=t.getText=function(a){var b,c="",d=0;if(b=a.nodeType)if(1===b||9===b||11===b){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=E(a)}else{if(3===b||4===b)return a.nodeValue}else for(;b=a[d];d++)c+=E(b);return c};r=t.selectors={cacheLength:50,createPseudo:p,match:Y,find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",
|
||||
first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(da,ea),a[3]=(a[4]||a[5]||"").replace(da,ea),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||t.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&t.error(a[0]),a},PSEUDO:function(a){var b,c=!a[5]&&a[2];return Y.CHILD.test(a[0])?null:(a[4]?a[2]=a[4]:c&&ia.test(c)&&(b=v(c,
|
||||
!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){return"*"===a?function(){return!0}:(a=a.replace(da,ea).toLowerCase(),function(b){return b.nodeName&&b.nodeName.toLowerCase()===a})},CLASS:function(a){var b=S[a+" "];return b||(b=RegExp("(^|[\\x20\\t\\r\\n\\f])"+a+"([\\x20\\t\\r\\n\\f]|$)"))&&S(a,function(a){return b.test(a.className||typeof a.getAttribute!==$&&a.getAttribute("class")||"")})},ATTR:function(a,b,c){return function(d){d=
|
||||
t.attr(d,a);return null==d?"!="===b:b?(d+="","="===b?d===c:"!="===b?d!==c:"^="===b?c&&0===d.indexOf(c):"*="===b?c&&-1<d.indexOf(c):"$="===b?c&&d.slice(-c.length)===c:"~="===b?-1<(" "+d+" ").indexOf(c):"|="===b?d===c||d.slice(0,c.length+1)===c+"-":!1):!0}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,l,m,k,o,c=f!==g?"nextSibling":"previousSibling",p=b.parentNode,n=h&&b.nodeName.toLowerCase(),
|
||||
i=!i&&!h;if(p){if(f){for(;c;){for(l=b;l=l[c];)if(h?l.nodeName.toLowerCase()===n:1===l.nodeType)return!1;o=c="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?p.firstChild:p.lastChild],g&&i){i=p[C]||(p[C]={});j=i[a]||[];k=j[0]===R&&j[1];m=j[0]===R&&j[2];for(l=k&&p.childNodes[k];l=++k&&l&&l[c]||(m=k=0)||o.pop();)if(1===l.nodeType&&++m&&l===b){i[a]=[R,k,m];break}}else if(i&&(j=(b[C]||(b[C]={}))[a])&&j[0]===R)m=j[1];else for(;(l=++k&&l&&l[c]||(m=k=0)||o.pop())&&(!(h?l.nodeName.toLowerCase()===n:1===l.nodeType)||
|
||||
!++m||!(i&&((l[C]||(l[C]={}))[a]=[R,m]),l===b)););return m-=e,m===d||0===m%d&&0<=m/d}}},PSEUDO:function(a,b){var c,d=r.pseudos[a]||r.setFilters[a.toLowerCase()]||t.error("unsupported pseudo: "+a);return d[C]?d(b):1<d.length?(c=[a,a,"",b],r.setFilters.hasOwnProperty(a.toLowerCase())?p(function(a,c){for(var e,f=d(a,b),g=f.length;g--;)e=V.call(a,f[g]),a[e]=!(c[e]=f[g])}):function(a){return d(a,0,c)}):d}},pseudos:{not:p(function(a){var b=[],c=[],d=O(a.replace(Q,"$1"));return d[C]?p(function(a,b,c,e){for(var f,
|
||||
c=d(a,null,e,[]),e=a.length;e--;)(f=c[e])&&(a[e]=!(b[e]=f))}):function(a,e,f){return b[0]=a,d(b,null,f,c),!c.pop()}}),has:p(function(a){return function(b){return 0<t(a,b).length}}),contains:p(function(a){return function(b){return-1<(b.textContent||b.innerText||E(b)).indexOf(a)}}),lang:p(function(a){return ja.test(a||"")||t.error("unsupported lang: "+a),a=a.replace(da,ea).toLowerCase(),function(b){var c;do if(c=G?b.getAttribute("xml:lang")||b.getAttribute("lang"):b.lang)return c=c.toLowerCase(),c===
|
||||
a||0===c.indexOf(a+"-");while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===K},focus:function(a){return a===z.activeElement&&(!z.hasFocus||z.hasFocus())&&!(!a.type&&!a.href&&!~a.tabIndex)},enabled:function(a){return!1===a.disabled},disabled:function(a){return!0===a.disabled},checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&
|
||||
a.parentNode.selectedIndex,!0===a.selected},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if("@"<a.nodeName||3===a.nodeType||4===a.nodeType)return!1;return!0},parent:function(a){return!r.pseudos.empty(a)},header:function(a){return ra.test(a.nodeName)},input:function(a){return qa.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=
|
||||
a.getAttribute("type"))||b.toLowerCase()===a.type)},first:H(function(){return[0]}),last:H(function(a,b){return[b-1]}),eq:H(function(a,b,c){return[0>c?c+b:c]}),even:H(function(a,b){for(var c=0;b>c;c+=2)a.push(c);return a}),odd:H(function(a,b){for(var c=1;b>c;c+=2)a.push(c);return a}),lt:H(function(a,b,c){for(b=0>c?c+b:c;0<=--b;)a.push(b);return a}),gt:H(function(a,b,c){for(c=0>c?c+b:c;b>++c;)a.push(c);return a})}};for(D in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})r.pseudos[D]=w(D);for(D in{submit:!0,
|
||||
reset:!0})r.pseudos[D]=y(D);O=t.compile=function(a,b){var c,d=[],e=[],f=U[a+" "];if(!f){b||(b=v(a));for(c=b.length;c--;)f=N(b[c]),f[C]?d.push(f):e.push(f);f=U(a,rc(e,d))}return f};r.pseudos.nth=r.pseudos.eq;r.filters=zb.prototype=r.pseudos;r.setFilters=new zb;ma();t.attr=c.attr;c.find=t;c.expr=t.selectors;c.expr[":"]=c.expr.pseudos;c.unique=t.uniqueSort;c.text=t.getText;c.isXMLDoc=t.isXML;c.contains=t.contains})(q);var sc=/Until$/,tc=/^(?:parents|prev(?:Until|All))/,Tb=/^.[^:#\[\.,]*$/,Bb=c.expr.match.needsContext,
|
||||
uc={children:!0,contents:!0,next:!0,prev:!0};c.fn.extend({find:function(a){var b,d,e,f=this.length;if("string"!=typeof a)return e=this,this.pushStack(c(a).filter(function(){for(b=0;f>b;b++)if(c.contains(e[b],this))return!0}));d=[];for(b=0;f>b;b++)c.find(a,this[b],d);return d=this.pushStack(1<f?c.unique(d):d),d.selector=(this.selector?this.selector+" ":"")+a,d},has:function(a){var b,d=c(a,this),e=d.length;return this.filter(function(){for(b=0;e>b;b++)if(c.contains(this,d[b]))return!0})},not:function(a){return this.pushStack(Va(this,
|
||||
a,!1))},filter:function(a){return this.pushStack(Va(this,a,!0))},is:function(a){return!!a&&("string"==typeof a?Bb.test(a)?0<=c(a,this.context).index(this[0]):0<c.filter(a,this).length:0<this.filter(a).length)},closest:function(a,b){for(var d,e=0,f=this.length,g=[],h=Bb.test(a)||"string"!=typeof a?c(a,b||this.context):0;f>e;e++)for(d=this[e];d&&d.ownerDocument&&d!==b&&11!==d.nodeType;){if(h?-1<h.index(d):c.find.matchesSelector(d,a)){g.push(d);break}d=d.parentNode}return this.pushStack(1<g.length?c.unique(g):
|
||||
g)},index:function(a){return a?"string"==typeof a?c.inArray(this[0],c(a)):c.inArray(a.jquery?a[0]:a,this):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(a,b){var d="string"==typeof a?c(a,b):c.makeArray(a&&a.nodeType?[a]:a),d=c.merge(this.get(),d);return this.pushStack(c.unique(d))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}});c.fn.andSelf=c.fn.addBack;c.each({parent:function(a){return(a=a.parentNode)&&11!==a.nodeType?a:null},
|
||||
parents:function(a){return c.dir(a,"parentNode")},parentsUntil:function(a,b,d){return c.dir(a,"parentNode",d)},next:function(a){return Ua(a,"nextSibling")},prev:function(a){return Ua(a,"previousSibling")},nextAll:function(a){return c.dir(a,"nextSibling")},prevAll:function(a){return c.dir(a,"previousSibling")},nextUntil:function(a,b,d){return c.dir(a,"nextSibling",d)},prevUntil:function(a,b,d){return c.dir(a,"previousSibling",d)},siblings:function(a){return c.sibling((a.parentNode||{}).firstChild,
|
||||
a)},children:function(a){return c.sibling(a.firstChild)},contents:function(a){return c.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:c.merge([],a.childNodes)}},function(a,b){c.fn[a]=function(d,e){var f=c.map(this,b,d);return sc.test(a)||(e=d),e&&"string"==typeof e&&(f=c.filter(e,f)),f=1<this.length&&!uc[a]?c.unique(f):f,1<this.length&&tc.test(a)&&(f=f.reverse()),this.pushStack(f)}});c.extend({filter:function(a,b,d){return d&&(a=":not("+a+")"),1===b.length?c.find.matchesSelector(b[0],
|
||||
a)?[b[0]]:[]:c.find.matches(a,b)},dir:function(a,b,d){for(var e=[],a=a[b];a&&9!==a.nodeType&&(d===k||1!==a.nodeType||!c(a).is(d));)1===a.nodeType&&e.push(a),a=a[b];return e},sibling:function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c}});var Xa="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",vc=/ jQuery\d+="(?:null|\d+)"/g,Cb=RegExp("<(?:"+Xa+")[\\s/>]","i"),
|
||||
Ja=/^\s+/,Db=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,Eb=/<([\w:]+)/,Fb=/<tbody/i,wc=/<|&#?\w+;/,xc=/<(?:script|style|link)/i,ua=/^(?:checkbox|radio)$/i,yc=/checked\s*(?:[^=]|=\s*.checked.)/i,Gb=/^$|\/(?:java|ecma)script/i,Ub=/^true\/(.*)/,zc=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,y={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],area:[1,"<map>","</map>"],param:[1,"<object>","</object>"],thead:[1,"<table>","</table>"],
|
||||
tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:c.support.htmlSerialize?[0,"",""]:[1,"X<div>","</div>"]},Ka=Wa(n).appendChild(n.createElement("div"));y.optgroup=y.option;y.tbody=y.tfoot=y.colgroup=y.caption=y.thead;y.th=y.td;c.fn.extend({text:function(a){return c.access(this,function(a){return a===k?c.text(this):this.empty().append((this[0]&&this[0].ownerDocument||n).createTextNode(a))},
|
||||
null,a,arguments.length)},wrapAll:function(a){if(c.isFunction(a))return this.each(function(b){c(this).wrapAll(a.call(this,b))});if(this[0]){var b=c(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]);b.map(function(){for(var a=this;a.firstChild&&1===a.firstChild.nodeType;)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){return c.isFunction(a)?this.each(function(b){c(this).wrapInner(a.call(this,b))}):this.each(function(){var b=c(this),d=b.contents();
|
||||
d.length?d.wrapAll(a):b.append(a)})},wrap:function(a){var b=c.isFunction(a);return this.each(function(d){c(this).wrapAll(b?a.call(this,d):a)})},unwrap:function(){return this.parent().each(function(){c.nodeName(this,"body")||c(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){(1===this.nodeType||11===this.nodeType||9===this.nodeType)&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){(1===this.nodeType||
|
||||
11===this.nodeType||9===this.nodeType)&&this.insertBefore(a,this.firstChild)})},before:function(){return this.domManip(arguments,!1,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return this.domManip(arguments,!1,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},remove:function(a,b){for(var d,e=0;null!=(d=this[e]);e++)(!a||0<c.filter(a,[d]).length)&&(b||1!==d.nodeType||c.cleanData(u(d)),d.parentNode&&(b&&c.contains(d.ownerDocument,
|
||||
d)&&ta(u(d,"script")),d.parentNode.removeChild(d)));return this},empty:function(){for(var a,b=0;null!=(a=this[b]);b++){for(1===a.nodeType&&c.cleanData(u(a,!1));a.firstChild;)a.removeChild(a.firstChild);a.options&&c.nodeName(a,"select")&&(a.options.length=0)}return this},clone:function(a,b){return a=null==a?!1:a,b=null==b?a:b,this.map(function(){return c.clone(this,a,b)})},html:function(a){return c.access(this,function(a){var d=this[0]||{},e=0,f=this.length;if(a===k)return 1===d.nodeType?d.innerHTML.replace(vc,
|
||||
""):k;if(!("string"!=typeof a||xc.test(a)||!c.support.htmlSerialize&&Cb.test(a)||!c.support.leadingWhitespace&&Ja.test(a)||y[(Eb.exec(a)||["",""])[1].toLowerCase()])){a=a.replace(Db,"<$1></$2>");try{for(;f>e;e++)d=this[e]||{},1===d.nodeType&&(c.cleanData(u(d,!1)),d.innerHTML=a);d=0}catch(g){}}d&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(a){return c.isFunction(a)||"string"==typeof a||(a=c(a).not(this).detach()),this.domManip([a],!0,function(a){var d=this.nextSibling,e=
|
||||
this.parentNode;e&&(c(this).remove(),e.insertBefore(a,d))})},detach:function(a){return this.remove(a,!0)},domManip:function(a,b,d){var a=qb.apply([],a),e,f,g,h,i=0,j=this.length,m=this,o=j-1,l=a[0],n=c.isFunction(l);if(n||!(1>=j||"string"!=typeof l||c.support.checkClone)&&yc.test(l))return this.each(function(c){var e=m.eq(c);n&&(a[0]=l.call(this,c,b?e.html():k));e.domManip(a,b,d)});if(j&&(h=c.buildFragment(a,this[0].ownerDocument,!1,this),e=h.firstChild,1===h.childNodes.length&&(h=e),e)){b=b&&c.nodeName(e,
|
||||
"tr");g=c.map(u(h,"script"),Ya);for(f=g.length;j>i;i++)e=h,i!==o&&(e=c.clone(e,!0,!0),f&&c.merge(g,u(e,"script"))),d.call(b&&c.nodeName(this[i],"table")?this[i].getElementsByTagName("tbody")[0]||this[i].appendChild(this[i].ownerDocument.createElement("tbody")):this[i],e,i);if(f){h=g[g.length-1].ownerDocument;c.map(g,Za);for(i=0;f>i;i++)e=g[i],Gb.test(e.type||"")&&!c._data(e,"globalEval")&&c.contains(h,e)&&(e.src?c.ajax({url:e.src,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0}):c.globalEval((e.text||
|
||||
e.textContent||e.innerHTML||"").replace(zc,"")))}h=e=null}return this}});c.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){c.fn[a]=function(a){for(var e=0,f=[],g=c(a),h=g.length-1;h>=e;e++)a=e===h?this:this.clone(!0),c(g[e])[b](a),Aa.apply(f,a.get());return this.pushStack(f)}});c.extend({clone:function(a,b,d){var e,f,g,h,i,j=c.contains(a.ownerDocument,a);if(c.support.html5Clone||c.isXMLDoc(a)||!Cb.test("<"+a.nodeName+">")?
|
||||
g=a.cloneNode(!0):(Ka.innerHTML=a.outerHTML,Ka.removeChild(g=Ka.firstChild)),!(c.support.noCloneEvent&&c.support.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||c.isXMLDoc(a))){e=u(g);i=u(a);for(h=0;null!=(f=i[h]);++h)if(e[h]){var m=e[h],k=void 0,l=void 0,n=void 0;if(1===m.nodeType){if(k=m.nodeName.toLowerCase(),!c.support.noCloneEvent&&m[c.expando]){n=c._data(m);for(l in n.events)c.removeEvent(m,l,n.handle);m.removeAttribute(c.expando)}"script"===k&&m.text!==f.text?(Ya(m).text=f.text,Za(m)):"object"===
|
||||
k?(m.parentNode&&(m.outerHTML=f.outerHTML),c.support.html5Clone&&f.innerHTML&&!c.trim(m.innerHTML)&&(m.innerHTML=f.innerHTML)):"input"===k&&ua.test(f.type)?(m.defaultChecked=m.checked=f.checked,m.value!==f.value&&(m.value=f.value)):"option"===k?m.defaultSelected=m.selected=f.defaultSelected:("input"===k||"textarea"===k)&&(m.defaultValue=f.defaultValue)}}}if(b)if(d){i=i||u(a);e=e||u(g);for(h=0;null!=(f=i[h]);h++)$a(f,e[h])}else $a(a,g);return e=u(g,"script"),0<e.length&&ta(e,!j&&u(a,"script")),g},
|
||||
buildFragment:function(a,b,d,e){for(var f,g,h,i,j,k,o,l=a.length,n=Wa(b),p=[],q=0;l>q;q++)if(g=a[q],g||0===g)if("object"===c.type(g))c.merge(p,g.nodeType?[g]:g);else if(wc.test(g)){i=i||n.appendChild(b.createElement("div"));j=(Eb.exec(g)||["",""])[1].toLowerCase();o=y[j]||y._default;i.innerHTML=o[1]+g.replace(Db,"<$1></$2>")+o[2];for(f=o[0];f--;)i=i.lastChild;if(!c.support.leadingWhitespace&&Ja.test(g)&&p.push(b.createTextNode(Ja.exec(g)[0])),!c.support.tbody)for(f=(g="table"!==j||Fb.test(g)?"<table>"!==
|
||||
o[1]||Fb.test(g)?0:i:i.firstChild)&&g.childNodes.length;f--;)c.nodeName(k=g.childNodes[f],"tbody")&&!k.childNodes.length&&g.removeChild(k);c.merge(p,i.childNodes);for(i.textContent="";i.firstChild;)i.removeChild(i.firstChild);i=n.lastChild}else p.push(b.createTextNode(g));i&&n.removeChild(i);c.support.appendChecked||c.grep(u(p,"input"),Vb);for(q=0;g=p[q++];)if((!e||-1===c.inArray(g,e))&&(h=c.contains(g.ownerDocument,g),i=u(n.appendChild(g),"script"),h&&ta(i),d))for(f=0;g=i[f++];)Gb.test(g.type||"")&&
|
||||
d.push(g);return n},cleanData:function(a,b){for(var d,e,f,g,h=0,i=c.expando,j=c.cache,k=c.support.deleteExpando,o=c.event.special;null!=(d=a[h]);h++)if((b||c.acceptData(d))&&(f=d[i],g=f&&j[f])){if(g.events)for(e in g.events)o[e]?c.event.remove(d,e):c.removeEvent(d,e,g.handle);j[f]&&(delete j[f],k?delete d[i]:typeof d.removeAttribute!==v?d.removeAttribute(i):d[i]=null,T.push(f))}}});var aa,F,P,La=/alpha\([^)]*\)/i,Ac=/opacity\s*=\s*([^)]*)/,Bc=/^(top|right|bottom|left)$/,Cc=/^(none|table(?!-c[ea]).+)/,
|
||||
Hb=/^margin/,Wb=RegExp("^("+la+")(.*)$","i"),ia=RegExp("^("+la+")(?!px)[a-z%]+$","i"),Dc=RegExp("^([+-])=("+la+")","i"),hb={BODY:"block"},Ec={position:"absolute",visibility:"hidden",display:"block"},Ib={letterSpacing:0,fontWeight:400},M=["Top","Right","Bottom","Left"],bb=["Webkit","O","Moz","ms"];c.fn.extend({css:function(a,b){return c.access(this,function(a,b,f){var g,h={},i=0;if(c.isArray(b)){g=F(a);for(f=b.length;f>i;i++)h[b[i]]=c.css(a,b[i],!1,g);return h}return f!==k?c.style(a,b,f):c.css(a,b)},
|
||||
a,b,1<arguments.length)},show:function(){return cb(this,!0)},hide:function(){return cb(this)},toggle:function(a){var b="boolean"==typeof a;return this.each(function(){(b?a:V(this))?c(this).show():c(this).hide()})}});c.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=P(a,"opacity");return""===c?"1":c}}}},cssNumber:{columnCount:!0,fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":c.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,
|
||||
b,d,e){if(a&&3!==a.nodeType&&8!==a.nodeType&&a.style){var f,g,h,i=c.camelCase(b),j=a.style;if(b=c.cssProps[i]||(c.cssProps[i]=ab(j,i)),h=c.cssHooks[b]||c.cssHooks[i],d===k)return h&&"get"in h&&(f=h.get(a,!1,e))!==k?f:j[b];if(g=typeof d,"string"===g&&(f=Dc.exec(d))&&(d=(f[1]+1)*f[2]+parseFloat(c.css(a,b)),g="number"),!(null==d||"number"===g&&isNaN(d)||("number"!==g||c.cssNumber[i]||(d+="px"),c.support.clearCloneStyle||""!==d||0!==b.indexOf("background")||(j[b]="inherit"),h&&"set"in h&&(d=h.set(a,d,
|
||||
e))===k)))try{j[b]=d}catch(m){}}},css:function(a,b,d,e){var f,g,h,i=c.camelCase(b);return b=c.cssProps[i]||(c.cssProps[i]=ab(a.style,i)),h=c.cssHooks[b]||c.cssHooks[i],h&&"get"in h&&(g=h.get(a,!0,d)),g===k&&(g=P(a,b,e)),"normal"===g&&b in Ib&&(g=Ib[b]),""===d||d?(f=parseFloat(g),!0===d||c.isNumeric(f)?f||0:g):g},swap:function(a,b,c,e){var f,g={};for(f in b)g[f]=a.style[f],a.style[f]=b[f];c=c.apply(a,e||[]);for(f in b)a.style[f]=g[f];return c}});q.getComputedStyle?(F=function(a){return q.getComputedStyle(a,
|
||||
null)},P=function(a,b,d){var e,f,g,h=(d=d||F(a))?d.getPropertyValue(b)||d[b]:k,i=a.style;return d&&(""!==h||c.contains(a.ownerDocument,a)||(h=c.style(a,b)),ia.test(h)&&Hb.test(b)&&(e=i.width,f=i.minWidth,g=i.maxWidth,i.minWidth=i.maxWidth=i.width=h,h=d.width,i.width=e,i.minWidth=f,i.maxWidth=g)),h}):n.documentElement.currentStyle&&(F=function(a){return a.currentStyle},P=function(a,b,c){var e,f,g,c=(c=c||F(a))?c[b]:k,h=a.style;return null==c&&h&&h[b]&&(c=h[b]),ia.test(c)&&!Bc.test(b)&&(e=h.left,f=
|
||||
a.runtimeStyle,g=f&&f.left,g&&(f.left=a.currentStyle.left),h.left="fontSize"===b?"1em":c,c=h.pixelLeft+"px",h.left=e,g&&(f.left=g)),""===c?"auto":c});c.each(["height","width"],function(a,b){c.cssHooks[b]={get:function(a,e,f){return e?0===a.offsetWidth&&Cc.test(c.css(a,"display"))?c.swap(a,Ec,function(){return gb(a,b,f)}):gb(a,b,f):k},set:function(a,e,f){var g=f&&F(a);return eb(a,e,f?fb(a,b,f,c.support.boxSizing&&"border-box"===c.css(a,"boxSizing",!1,g),g):0)}}});c.support.opacity||(c.cssHooks.opacity=
|
||||
{get:function(a,b){return Ac.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?0.01*parseFloat(RegExp.$1)+"":b?"1":""},set:function(a,b){var d=a.style,e=a.currentStyle,f=c.isNumeric(b)?"alpha(opacity="+100*b+")":"",g=e&&e.filter||d.filter||"";d.zoom=1;(1<=b||""===b)&&""===c.trim(g.replace(La,""))&&d.removeAttribute&&(d.removeAttribute("filter"),""===b||e&&!e.filter)||(d.filter=La.test(g)?g.replace(La,f):g+" "+f)}});c(function(){c.support.reliableMarginRight||(c.cssHooks.marginRight=
|
||||
{get:function(a,b){return b?c.swap(a,{display:"inline-block"},P,[a,"marginRight"]):k}});!c.support.pixelPosition&&c.fn.position&&c.each(["top","left"],function(a,b){c.cssHooks[b]={get:function(a,e){return e?(e=P(a,b),ia.test(e)?c(a).position()[b]+"px":e):k}}})});c.expr&&c.expr.filters&&(c.expr.filters.hidden=function(a){return 0>=a.offsetWidth&&0>=a.offsetHeight||!c.support.reliableHiddenOffsets&&"none"===(a.style&&a.style.display||c.css(a,"display"))},c.expr.filters.visible=function(a){return!c.expr.filters.hidden(a)});
|
||||
c.each({margin:"",padding:"",border:"Width"},function(a,b){c.cssHooks[a+b]={expand:function(c){for(var e=0,f={},c="string"==typeof c?c.split(" "):[c];4>e;e++)f[a+M[e]+b]=c[e]||c[e-2]||c[0];return f}};Hb.test(a)||(c.cssHooks[a+b].set=eb)});var Fc=/%20/g,Xb=/\[\]$/,Jb=/\r?\n/g,Gc=/^(?:submit|button|image|reset|file)$/i,Hc=/^(?:input|select|textarea|keygen)/i;c.fn.extend({serialize:function(){return c.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var a=c.prop(this,
|
||||
"elements");return a?c.makeArray(a):this}).filter(function(){var a=this.type;return this.name&&!c(this).is(":disabled")&&Hc.test(this.nodeName)&&!Gc.test(a)&&(this.checked||!ua.test(a))}).map(function(a,b){var d=c(this).val();return null==d?null:c.isArray(d)?c.map(d,function(a){return{name:b.name,value:a.replace(Jb,"\r\n")}}):{name:b.name,value:d.replace(Jb,"\r\n")}}).get()}});c.param=function(a,b){var d,e=[],f=function(a,b){b=c.isFunction(b)?b():null==b?"":b;e[e.length]=encodeURIComponent(a)+"="+
|
||||
encodeURIComponent(b)};if(b===k&&(b=c.ajaxSettings&&c.ajaxSettings.traditional),c.isArray(a)||a.jquery&&!c.isPlainObject(a))c.each(a,function(){f(this.name,this.value)});else for(d in a)xa(d,a[d],b,f);return e.join("&").replace(Fc,"+")};c.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(a,b){c.fn[b]=function(a,c){return arguments.length>
|
||||
0?this.on(b,null,a,c):this.trigger(b)}});c.fn.hover=function(a,b){return this.mouseenter(a).mouseleave(b||a)};var S,O,Ma=c.now(),Na=/\?/,Ic=/#.*$/,Kb=/([?&])_=[^&]*/,Jc=/^(.*?):[ \t]*([^\r\n]*)\r?$/gm,Kc=/^(?:GET|HEAD)$/,Lc=/^\/\//,Lb=/^([\w.+-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,Mb=c.fn.load,Nb={},ya={},Ob="*/".concat("*");try{O=$b.href}catch(Qc){O=n.createElement("a"),O.href="",O=O.href}S=Lb.exec(O.toLowerCase())||[];c.fn.load=function(a,b,d){if("string"!=typeof a&&Mb)return Mb.apply(this,arguments);
|
||||
var e,f,g,h=this,i=a.indexOf(" ");return 0<=i&&(e=a.slice(i,a.length),a=a.slice(0,i)),c.isFunction(b)?(d=b,b=k):b&&"object"==typeof b&&(g="POST"),0<h.length&&c.ajax({url:a,type:g,dataType:"html",data:b}).done(function(a){f=arguments;h.html(e?c("<div>").append(c.parseHTML(a)).find(e):a)}).complete(d&&function(a,b){h.each(d,f||[a.responseText,b,a])}),this};c.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){c.fn[b]=function(a){return this.on(b,a)}});c.each(["get",
|
||||
"post"],function(a,b){c[b]=function(a,e,f,g){return c.isFunction(e)&&(g=g||f,f=e,e=k),c.ajax({url:a,type:b,dataType:g,data:e,success:f})}});c.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:O,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(S[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Ob,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},
|
||||
contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":q.String,"text html":!0,"text json":c.parseJSON,"text xml":c.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(a,b){return b?za(za(a,c.ajaxSettings),b):za(c.ajaxSettings,a)},ajaxPrefilter:jb(Nb),ajaxTransport:jb(ya),ajax:function(a,b){function d(a,b,d,e){var f,o,D,w,r,E=b;if(2!==H){H=2;i&&clearTimeout(i);m=k;h=e||"";s.readyState=0<a?4:0;if(d){w=l;var e=s,v,B,y,J,I=w.contents,
|
||||
z=w.dataTypes,K=w.responseFields;for(J in K)J in d&&(e[K[J]]=d[J]);for(;"*"===z[0];)z.shift(),B===k&&(B=w.mimeType||e.getResponseHeader("Content-Type"));if(B)for(J in I)if(I[J]&&I[J].test(B)){z.unshift(J);break}if(z[0]in d)y=z[0];else{for(J in d){if(!z[0]||w.converters[J+" "+z[0]]){y=J;break}v||(v=J)}y=y||v}w=y?(y!==z[0]&&z.unshift(y),d[y]):k}if(200<=a&&300>a||304===a)if(l.ifModified&&(r=s.getResponseHeader("Last-Modified"),r&&(c.lastModified[g]=r),r=s.getResponseHeader("etag"),r&&(c.etag[g]=r)),
|
||||
204===a)f=!0,E="nocontent";else if(304===a)f=!0,E="notmodified";else{var G;a:{d=l;f=w;var A,F;D={};r=0;E=d.dataTypes.slice();v=E[0];if(d.dataFilter&&(f=d.dataFilter(f,d.dataType)),E[1])for(A in d.converters)D[A.toLowerCase()]=d.converters[A];for(;o=E[++r];)if("*"!==o){if("*"!==v&&v!==o){if(A=D[v+" "+o]||D["* "+o],!A)for(G in D)if(F=G.split(" "),F[1]===o&&(A=D[v+" "+F[0]]||D["* "+F[0]])){!0===A?A=D[G]:!0!==D[G]&&(o=F[0],E.splice(r--,0,o));break}if(!0!==A)if(A&&d["throws"])f=A(f);else try{f=A(f)}catch(L){G=
|
||||
{state:"parsererror",error:A?L:"No conversion from "+v+" to "+o};break a}}v=o}G={state:"success",data:f}}f=G;E=f.state;o=f.data;D=f.error;f=!D}else D=E,(a||!E)&&(E="error",0>a&&(a=0));s.status=a;s.statusText=(b||E)+"";f?q.resolveWith(n,[o,E,s]):q.rejectWith(n,[s,E,D]);s.statusCode(u);u=k;j&&p.trigger(f?"ajaxSuccess":"ajaxError",[s,l,f?o:D]);t.fireWith(n,[s,E]);j&&(p.trigger("ajaxComplete",[s,l]),--c.active||c.event.trigger("ajaxStop"))}}"object"==typeof a&&(b=a,a=k);var b=b||{},e,f,g,h,i,j,m,o,l=
|
||||
c.ajaxSetup({},b),n=l.context||l,p=l.context&&(n.nodeType||n.jquery)?c(n):c.event,q=c.Deferred(),t=c.Callbacks("once memory"),u=l.statusCode||{},w={},v={},H=0,B="canceled",s={readyState:0,getResponseHeader:function(a){var b;if(2===H){if(!o)for(o={};b=Jc.exec(h);)o[b[1].toLowerCase()]=b[2];b=o[a.toLowerCase()]}return null==b?null:b},getAllResponseHeaders:function(){return 2===H?h:null},setRequestHeader:function(a,b){var c=a.toLowerCase();return H||(a=v[c]=v[c]||a,w[a]=b),this},overrideMimeType:function(a){return H||
|
||||
(l.mimeType=a),this},statusCode:function(a){var b;if(a)if(2>H)for(b in a)u[b]=[u[b],a[b]];else s.always(a[s.status]);return this},abort:function(a){a=a||B;return m&&m.abort(a),d(0,a),this}};if(q.promise(s).complete=t.add,s.success=s.done,s.error=s.fail,l.url=((a||l.url||O)+"").replace(Ic,"").replace(Lc,S[1]+"//"),l.type=b.method||b.type||l.method||l.type,l.dataTypes=c.trim(l.dataType||"*").toLowerCase().match(I)||[""],null==l.crossDomain&&(e=Lb.exec(l.url.toLowerCase()),l.crossDomain=!(!e||e[1]===
|
||||
S[1]&&e[2]===S[2]&&(e[3]||("http:"===e[1]?80:443))==(S[3]||("http:"===S[1]?80:443)))),l.data&&l.processData&&"string"!=typeof l.data&&(l.data=c.param(l.data,l.traditional)),kb(Nb,l,b,s),2===H)return s;(j=l.global)&&0===c.active++&&c.event.trigger("ajaxStart");l.type=l.type.toUpperCase();l.hasContent=!Kc.test(l.type);g=l.url;l.hasContent||(l.data&&(g=l.url+=(Na.test(g)?"&":"?")+l.data,delete l.data),!1===l.cache&&(l.url=Kb.test(g)?g.replace(Kb,"$1_="+Ma++):g+(Na.test(g)?"&":"?")+"_="+Ma++));l.ifModified&&
|
||||
(c.lastModified[g]&&s.setRequestHeader("If-Modified-Since",c.lastModified[g]),c.etag[g]&&s.setRequestHeader("If-None-Match",c.etag[g]));(l.data&&l.hasContent&&!1!==l.contentType||b.contentType)&&s.setRequestHeader("Content-Type",l.contentType);s.setRequestHeader("Accept",l.dataTypes[0]&&l.accepts[l.dataTypes[0]]?l.accepts[l.dataTypes[0]]+("*"!==l.dataTypes[0]?", "+Ob+"; q=0.01":""):l.accepts["*"]);for(f in l.headers)s.setRequestHeader(f,l.headers[f]);if(l.beforeSend&&(!1===l.beforeSend.call(n,s,l)||
|
||||
2===H))return s.abort();B="abort";for(f in{success:1,error:1,complete:1})s[f](l[f]);if(m=kb(ya,l,b,s)){s.readyState=1;j&&p.trigger("ajaxSend",[s,l]);l.async&&0<l.timeout&&(i=setTimeout(function(){s.abort("timeout")},l.timeout));try{H=1,m.send(w,d)}catch(y){if(!(2>H))throw y;d(-1,y)}}else d(-1,"No Transport");return s},getScript:function(a,b){return c.get(a,k,b,"script")},getJSON:function(a,b,d){return c.get(a,b,d,"json")}});c.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},
|
||||
contents:{script:/(?:java|ecma)script/},converters:{"text script":function(a){return c.globalEval(a),a}}});c.ajaxPrefilter("script",function(a){a.cache===k&&(a.cache=!1);a.crossDomain&&(a.type="GET",a.global=!1)});c.ajaxTransport("script",function(a){if(a.crossDomain){var b,d=n.head||c("head")[0]||n.documentElement;return{send:function(c,f){b=n.createElement("script");b.async=!0;a.scriptCharset&&(b.charset=a.scriptCharset);b.src=a.url;b.onload=b.onreadystatechange=function(a,c){(c||!b.readyState||
|
||||
/loaded|complete/.test(b.readyState))&&(b.onload=b.onreadystatechange=null,b.parentNode&&b.parentNode.removeChild(b),b=null,c||f(200,"success"))};d.insertBefore(b,d.firstChild)},abort:function(){b&&b.onload(k,!0)}}}});var Pb=[],Oa=/(=)\?(?=&|$)|\?\?/;c.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var a=Pb.pop()||c.expando+"_"+Ma++;return this[a]=!0,a}});c.ajaxPrefilter("json jsonp",function(a,b,d){var e,f,g,h=!1!==a.jsonp&&(Oa.test(a.url)?"url":"string"==typeof a.data&&!(a.contentType||"").indexOf("application/x-www-form-urlencoded")&&
|
||||
Oa.test(a.data)&&"data");return h||"jsonp"===a.dataTypes[0]?(e=a.jsonpCallback=c.isFunction(a.jsonpCallback)?a.jsonpCallback():a.jsonpCallback,h?a[h]=a[h].replace(Oa,"$1"+e):!1!==a.jsonp&&(a.url+=(Na.test(a.url)?"&":"?")+a.jsonp+"="+e),a.converters["script json"]=function(){return g||c.error(e+" was not called"),g[0]},a.dataTypes[0]="json",f=q[e],q[e]=function(){g=arguments},d.always(function(){q[e]=f;a[e]&&(a.jsonpCallback=b.jsonpCallback,Pb.push(e));g&&c.isFunction(f)&&f(g[0]);g=f=k}),"script"):
|
||||
k});var L,ga,Mc=0,Pa=q.ActiveXObject&&function(){for(var a in L)L[a](k,!0)};c.ajaxSettings.xhr=q.ActiveXObject?function(){var a;if(!(a=!this.isLocal&&lb()))a:{try{a=new q.ActiveXObject("Microsoft.XMLHTTP");break a}catch(b){}a=void 0}return a}:lb;ga=c.ajaxSettings.xhr();c.support.cors=!!ga&&"withCredentials"in ga;(ga=c.support.ajax=!!ga)&&c.ajaxTransport(function(a){if(!a.crossDomain||c.support.cors){var b;return{send:function(d,e){var f,g,h=a.xhr();if(a.username?h.open(a.type,a.url,a.async,a.username,
|
||||
a.password):h.open(a.type,a.url,a.async),a.xhrFields)for(g in a.xhrFields)h[g]=a.xhrFields[g];a.mimeType&&h.overrideMimeType&&h.overrideMimeType(a.mimeType);a.crossDomain||d["X-Requested-With"]||(d["X-Requested-With"]="XMLHttpRequest");try{for(g in d)h.setRequestHeader(g,d[g])}catch(i){}h.send(a.hasContent&&a.data||null);b=function(d,g){var i,l,n,p;try{if(b&&(g||4===h.readyState))if(b=k,f&&(h.onreadystatechange=c.noop,Pa&&delete L[f]),g)4!==h.readyState&&h.abort();else{p={};i=h.status;l=h.getAllResponseHeaders();
|
||||
"string"==typeof h.responseText&&(p.text=h.responseText);try{n=h.statusText}catch(q){n=""}i||!a.isLocal||a.crossDomain?1223===i&&(i=204):i=p.text?200:404}}catch(t){g||e(-1,t)}p&&e(i,n,p,l)};a.async?4===h.readyState?setTimeout(b):(f=++Mc,Pa&&(L||(L={},c(q).unload(Pa)),L[f]=b),h.onreadystatechange=b):b()},abort:function(){b&&b(k,!0)}}}});var W,qa,Nc=/^(?:toggle|show|hide)$/,Oc=RegExp("^(?:([+-])=|)("+la+")([a-z%]*)$","i"),Pc=/queueHooks$/,ja=[function(a,b,d){var e,f,g,h,i,j,k=this,n=a.style,l={},q=
|
||||
[],p=a.nodeType&&V(a);d.queue||(i=c._queueHooks(a,"fx"),null==i.unqueued&&(i.unqueued=0,j=i.empty.fire,i.empty.fire=function(){i.unqueued||j()}),i.unqueued++,k.always(function(){k.always(function(){i.unqueued--;c.queue(a,"fx").length||i.empty.fire()})}));1===a.nodeType&&("height"in b||"width"in b)&&(d.overflow=[n.overflow,n.overflowX,n.overflowY],"inline"===c.css(a,"display")&&"none"===c.css(a,"float")&&(c.support.inlineBlockNeedsLayout&&"inline"!==db(a.nodeName)?n.zoom=1:n.display="inline-block"));
|
||||
d.overflow&&(n.overflow="hidden",c.support.shrinkWrapBlocks||k.always(function(){n.overflow=d.overflow[0];n.overflowX=d.overflow[1];n.overflowY=d.overflow[2]}));for(f in b)if(g=b[f],Nc.exec(g))(delete b[f],e=e||"toggle"===g,g===(p?"hide":"show"))||q.push(f);if(b=q.length){g=c._data(a,"fxshow")||c._data(a,"fxshow",{});"hidden"in g&&(p=g.hidden);e&&(g.hidden=!p);p?c(a).show():k.done(function(){c(a).hide()});k.done(function(){var b;c._removeData(a,"fxshow");for(b in l)c.style(a,b,l[b])});for(f=0;b>f;f++)e=
|
||||
q[f],h=k.createTween(e,p?g[e]:0),l[e]=g[e]||c.style(a,e),e in g||(g[e]=h.start,p&&(h.end=h.start,h.start="width"===e||"height"===e?1:0))}}],X={"*":[function(a,b){var d,e,f=this.createTween(a,b),g=Oc.exec(b),h=f.cur(),i=+h||0,j=1,k=20;if(g){if(d=+g[2],e=g[3]||(c.cssNumber[a]?"":"px"),"px"!==e&&i){i=c.css(f.elem,a,!0)||d||1;do j=j||".5",i/=j,c.style(f.elem,a,i+e);while(j!==(j=f.cur()/h)&&1!==j&&--k)}f.unit=e;f.start=i;f.end=g[1]?i+(g[1]+1)*d:d}return f}]};c.Animation=c.extend(nb,{tweener:function(a,
|
||||
b){c.isFunction(a)?(b=a,a=["*"]):a=a.split(" ");for(var d,e=0,f=a.length;f>e;e++)d=a[e],X[d]=X[d]||[],X[d].unshift(b)},prefilter:function(a,b){b?ja.unshift(a):ja.push(a)}});c.Tween=w;w.prototype={constructor:w,init:function(a,b,d,e,f,g){this.elem=a;this.prop=d;this.easing=f||"swing";this.options=b;this.start=this.now=this.cur();this.end=e;this.unit=g||(c.cssNumber[d]?"":"px")},cur:function(){var a=w.propHooks[this.prop];return a&&a.get?a.get(this):w.propHooks._default.get(this)},run:function(a){var b,
|
||||
d=w.propHooks[this.prop];return this.pos=b=this.options.duration?c.easing[this.easing](a,this.options.duration*a,0,1,this.options.duration):a,this.now=(this.end-this.start)*b+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),d&&d.set?d.set(this):w.propHooks._default.set(this),this}};w.prototype.init.prototype=w.prototype;w.propHooks={_default:{get:function(a){var b;return null==a.elem[a.prop]||a.elem.style&&null!=a.elem.style[a.prop]?(b=c.css(a.elem,a.prop,""),b&&"auto"!==
|
||||
b?b:0):a.elem[a.prop]},set:function(a){c.fx.step[a.prop]?c.fx.step[a.prop](a):a.elem.style&&(null!=a.elem.style[c.cssProps[a.prop]]||c.cssHooks[a.prop])?c.style(a.elem,a.prop,a.now+a.unit):a.elem[a.prop]=a.now}}};w.propHooks.scrollTop=w.propHooks.scrollLeft={set:function(a){a.elem.nodeType&&a.elem.parentNode&&(a.elem[a.prop]=a.now)}};c.each(["toggle","show","hide"],function(a,b){var d=c.fn[b];c.fn[b]=function(a,c,g){return null==a||"boolean"==typeof a?d.apply(this,arguments):this.animate(Y(b,!0),
|
||||
a,c,g)}});c.fn.extend({fadeTo:function(a,b,c,e){return this.filter(V).css("opacity",0).show().end().animate({opacity:b},a,c,e)},animate:function(a,b,d,e){var f=c.isEmptyObject(a),g=c.speed(b,d,e),h=function(){var b=nb(this,c.extend({},a),g);h.finish=function(){b.stop(!0)};(f||c._data(this,"finish"))&&b.stop(!0)};return h.finish=h,f||!1===g.queue?this.each(h):this.queue(g.queue,h)},stop:function(a,b,d){var e=function(a){var b=a.stop;delete a.stop;b(d)};return"string"!=typeof a&&(d=b,b=a,a=k),b&&!1!==
|
||||
a&&this.queue(a||"fx",[]),this.each(function(){var b=!0,g=null!=a&&a+"queueHooks",h=c.timers,i=c._data(this);if(g)i[g]&&i[g].stop&&e(i[g]);else for(g in i)i[g]&&i[g].stop&&Pc.test(g)&&e(i[g]);for(g=h.length;g--;)h[g].elem!==this||null!=a&&h[g].queue!==a||(h[g].anim.stop(d),b=!1,h.splice(g,1));(b||!d)&&c.dequeue(this,a)})},finish:function(a){return!1!==a&&(a=a||"fx"),this.each(function(){var b,d=c._data(this),e=d[a+"queue"];b=d[a+"queueHooks"];var f=c.timers,g=e?e.length:0;d.finish=!0;c.queue(this,
|
||||
a,[]);b&&b.cur&&b.cur.finish&&b.cur.finish.call(this);for(b=f.length;b--;)f[b].elem===this&&f[b].queue===a&&(f[b].anim.stop(!0),f.splice(b,1));for(b=0;g>b;b++)e[b]&&e[b].finish&&e[b].finish.call(this);delete d.finish})}});c.each({slideDown:Y("show"),slideUp:Y("hide"),slideToggle:Y("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){c.fn[a]=function(a,c,f){return this.animate(b,a,c,f)}});c.speed=function(a,b,d){var e=a&&"object"==typeof a?c.extend({},
|
||||
a):{complete:d||!d&&b||c.isFunction(a)&&a,duration:a,easing:d&&b||b&&!c.isFunction(b)&&b};return e.duration=c.fx.off?0:"number"==typeof e.duration?e.duration:e.duration in c.fx.speeds?c.fx.speeds[e.duration]:c.fx.speeds._default,(null==e.queue||!0===e.queue)&&(e.queue="fx"),e.old=e.complete,e.complete=function(){c.isFunction(e.old)&&e.old.call(this);e.queue&&c.dequeue(this,e.queue)},e};c.easing={linear:function(a){return a},swing:function(a){return 0.5-Math.cos(a*Math.PI)/2}};c.timers=[];c.fx=w.prototype.init;
|
||||
c.fx.tick=function(){var a,b=c.timers,d=0;for(W=c.now();b.length>d;d++)a=b[d],a()||b[d]!==a||b.splice(d--,1);b.length||c.fx.stop();W=k};c.fx.timer=function(a){a()&&c.timers.push(a)&&c.fx.start()};c.fx.interval=13;c.fx.start=function(){qa||(qa=setInterval(c.fx.tick,c.fx.interval))};c.fx.stop=function(){clearInterval(qa);qa=null};c.fx.speeds={slow:600,fast:200,_default:400};c.fx.step={};c.expr&&c.expr.filters&&(c.expr.filters.animated=function(a){return c.grep(c.timers,function(b){return a===b.elem}).length});
|
||||
c.fn.offset=function(a){if(arguments.length)return a===k?this:this.each(function(b){c.offset.setOffset(this,a,b)});var b,d,e={top:0,left:0},f=this[0],g=f&&f.ownerDocument;if(g)return b=g.documentElement,c.contains(b,f)?(typeof f.getBoundingClientRect!==v&&(e=f.getBoundingClientRect()),d=ob(g),{top:e.top+(d.pageYOffset||b.scrollTop)-(b.clientTop||0),left:e.left+(d.pageXOffset||b.scrollLeft)-(b.clientLeft||0)}):e};c.offset={setOffset:function(a,b,d){var e=c.css(a,"position");"static"===e&&(a.style.position=
|
||||
"relative");var f=c(a),g=f.offset(),h=c.css(a,"top"),i=c.css(a,"left"),j={},k={},n,l;("absolute"===e||"fixed"===e)&&-1<c.inArray("auto",[h,i])?(k=f.position(),n=k.top,l=k.left):(n=parseFloat(h)||0,l=parseFloat(i)||0);c.isFunction(b)&&(b=b.call(a,d,g));null!=b.top&&(j.top=b.top-g.top+n);null!=b.left&&(j.left=b.left-g.left+l);"using"in b?b.using.call(a,j):f.css(j)}};c.fn.extend({position:function(){if(this[0]){var a,b,d={top:0,left:0},e=this[0];return"fixed"===c.css(e,"position")?b=e.getBoundingClientRect():
|
||||
(a=this.offsetParent(),b=this.offset(),c.nodeName(a[0],"html")||(d=a.offset()),d.top+=c.css(a[0],"borderTopWidth",!0),d.left+=c.css(a[0],"borderLeftWidth",!0)),{top:b.top-d.top-c.css(e,"marginTop",!0),left:b.left-d.left-c.css(e,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var a=this.offsetParent||n.documentElement;a&&!c.nodeName(a,"html")&&"static"===c.css(a,"position");)a=a.offsetParent;return a||n.documentElement})}});c.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},
|
||||
function(a,b){var d=/Y/.test(b);c.fn[a]=function(e){return c.access(this,function(a,e,h){var i=ob(a);return h===k?i?b in i?i[b]:i.document.documentElement[e]:a[e]:(i?i.scrollTo(d?c(i).scrollLeft():h,d?h:c(i).scrollTop()):a[e]=h,k)},a,e,arguments.length,null)}});c.each({Height:"height",Width:"width"},function(a,b){c.each({padding:"inner"+a,content:b,"":"outer"+a},function(d,e){c.fn[e]=function(e,g){var h=arguments.length&&(d||"boolean"!=typeof e),i=d||(!0===e||!0===g?"margin":"border");return c.access(this,
|
||||
function(b,d,e){var f;return c.isWindow(b)?b.document.documentElement["client"+a]:9===b.nodeType?(f=b.documentElement,Math.max(b.body["scroll"+a],f["scroll"+a],b.body["offset"+a],f["offset"+a],f["client"+a])):e===k?c.css(b,d,i):c.style(b,d,e,i)},b,h?e:k,h,null)}})});q.jQuery=q.$=c;"function"==typeof define&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return c})})(window);
|
||||
@@ -1,10 +1,10 @@
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'justify', 'en', {
|
||||
block: 'Justify',
|
||||
center: 'Center',
|
||||
left: 'Align Left',
|
||||
right: 'Align Right'
|
||||
} );
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'justify', 'en', {
|
||||
block: 'Justify',
|
||||
center: 'Center',
|
||||
left: 'Align Left',
|
||||
right: 'Align Right'
|
||||
} );
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'justify', 'hu', {
|
||||
block: 'Sorkizárt',
|
||||
center: 'Középre',
|
||||
left: 'Balra',
|
||||
right: 'Jobbra'
|
||||
} );
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'justify', 'hu', {
|
||||
block: 'Sorkizárt',
|
||||
center: 'Középre',
|
||||
left: 'Balra',
|
||||
right: 'Jobbra'
|
||||
} );
|
||||
|
||||
@@ -1,241 +1,241 @@
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
/**
|
||||
* @fileOverview Justify commands.
|
||||
*/
|
||||
|
||||
( function() {
|
||||
function getAlignment( element, useComputedState ) {
|
||||
useComputedState = useComputedState === undefined || useComputedState;
|
||||
|
||||
var align;
|
||||
if ( useComputedState )
|
||||
align = element.getComputedStyle( 'text-align' );
|
||||
else {
|
||||
while ( !element.hasAttribute || !( element.hasAttribute( 'align' ) || element.getStyle( 'text-align' ) ) ) {
|
||||
var parent = element.getParent();
|
||||
if ( !parent )
|
||||
break;
|
||||
element = parent;
|
||||
}
|
||||
align = element.getStyle( 'text-align' ) || element.getAttribute( 'align' ) || '';
|
||||
}
|
||||
|
||||
// Sometimes computed values doesn't tell.
|
||||
align && ( align = align.replace( /(?:-(?:moz|webkit)-)?(?:start|auto)/i, '' ) );
|
||||
|
||||
!align && useComputedState && ( align = element.getComputedStyle( 'direction' ) == 'rtl' ? 'right' : 'left' );
|
||||
|
||||
return align;
|
||||
}
|
||||
|
||||
function justifyCommand( editor, name, value ) {
|
||||
this.editor = editor;
|
||||
this.name = name;
|
||||
this.value = value;
|
||||
this.context = 'p';
|
||||
|
||||
var classes = editor.config.justifyClasses,
|
||||
blockTag = editor.config.enterMode == CKEDITOR.ENTER_P ? 'p' : 'div';
|
||||
|
||||
if ( classes ) {
|
||||
switch ( value ) {
|
||||
case 'left':
|
||||
this.cssClassName = classes[ 0 ];
|
||||
break;
|
||||
case 'center':
|
||||
this.cssClassName = classes[ 1 ];
|
||||
break;
|
||||
case 'right':
|
||||
this.cssClassName = classes[ 2 ];
|
||||
break;
|
||||
case 'justify':
|
||||
this.cssClassName = classes[ 3 ];
|
||||
break;
|
||||
}
|
||||
|
||||
this.cssClassRegex = new RegExp( '(?:^|\\s+)(?:' + classes.join( '|' ) + ')(?=$|\\s)' );
|
||||
this.requiredContent = blockTag + '(' + this.cssClassName + ')';
|
||||
}
|
||||
else
|
||||
this.requiredContent = blockTag + '{text-align}';
|
||||
|
||||
this.allowedContent = {
|
||||
'caption div h1 h2 h3 h4 h5 h6 p pre td th li': {
|
||||
// Do not add elements, but only text-align style if element is validated by other rule.
|
||||
propertiesOnly: true,
|
||||
styles: this.cssClassName ? null : 'text-align',
|
||||
classes: this.cssClassName || null
|
||||
}
|
||||
};
|
||||
|
||||
// In enter mode BR we need to allow here for div, because when non other
|
||||
// feature allows div justify is the only plugin that uses it.
|
||||
if ( editor.config.enterMode == CKEDITOR.ENTER_BR )
|
||||
this.allowedContent.div = true;
|
||||
}
|
||||
|
||||
function onDirChanged( e ) {
|
||||
var editor = e.editor;
|
||||
|
||||
var range = editor.createRange();
|
||||
range.setStartBefore( e.data.node );
|
||||
range.setEndAfter( e.data.node );
|
||||
|
||||
var walker = new CKEDITOR.dom.walker( range ),
|
||||
node;
|
||||
|
||||
while ( ( node = walker.next() ) ) {
|
||||
if ( node.type == CKEDITOR.NODE_ELEMENT ) {
|
||||
// A child with the defined dir is to be ignored.
|
||||
if ( !node.equals( e.data.node ) && node.getDirection() ) {
|
||||
range.setStartAfter( node );
|
||||
walker = new CKEDITOR.dom.walker( range );
|
||||
continue;
|
||||
}
|
||||
|
||||
// Switch the alignment.
|
||||
var classes = editor.config.justifyClasses;
|
||||
if ( classes ) {
|
||||
// The left align class.
|
||||
if ( node.hasClass( classes[ 0 ] ) ) {
|
||||
node.removeClass( classes[ 0 ] );
|
||||
node.addClass( classes[ 2 ] );
|
||||
}
|
||||
// The right align class.
|
||||
else if ( node.hasClass( classes[ 2 ] ) ) {
|
||||
node.removeClass( classes[ 2 ] );
|
||||
node.addClass( classes[ 0 ] );
|
||||
}
|
||||
}
|
||||
|
||||
// Always switch CSS margins.
|
||||
var style = 'text-align';
|
||||
var align = node.getStyle( style );
|
||||
|
||||
if ( align == 'left' )
|
||||
node.setStyle( style, 'right' );
|
||||
else if ( align == 'right' )
|
||||
node.setStyle( style, 'left' );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
justifyCommand.prototype = {
|
||||
exec: function( editor ) {
|
||||
var selection = editor.getSelection(),
|
||||
enterMode = editor.config.enterMode;
|
||||
|
||||
if ( !selection )
|
||||
return;
|
||||
|
||||
var bookmarks = selection.createBookmarks(),
|
||||
ranges = selection.getRanges();
|
||||
|
||||
var cssClassName = this.cssClassName,
|
||||
iterator, block;
|
||||
|
||||
var useComputedState = editor.config.useComputedState;
|
||||
useComputedState = useComputedState === undefined || useComputedState;
|
||||
|
||||
for ( var i = ranges.length - 1; i >= 0; i-- ) {
|
||||
iterator = ranges[ i ].createIterator();
|
||||
iterator.enlargeBr = enterMode != CKEDITOR.ENTER_BR;
|
||||
|
||||
while ( ( block = iterator.getNextParagraph( enterMode == CKEDITOR.ENTER_P ? 'p' : 'div' ) ) ) {
|
||||
if ( block.isReadOnly() )
|
||||
continue;
|
||||
|
||||
block.removeAttribute( 'align' );
|
||||
block.removeStyle( 'text-align' );
|
||||
|
||||
// Remove any of the alignment classes from the className.
|
||||
var className = cssClassName && ( block.$.className = CKEDITOR.tools.ltrim( block.$.className.replace( this.cssClassRegex, '' ) ) );
|
||||
|
||||
var apply = ( this.state == CKEDITOR.TRISTATE_OFF ) && ( !useComputedState || ( getAlignment( block, true ) != this.value ) );
|
||||
|
||||
if ( cssClassName ) {
|
||||
// Append the desired class name.
|
||||
if ( apply )
|
||||
block.addClass( cssClassName );
|
||||
else if ( !className )
|
||||
block.removeAttribute( 'class' );
|
||||
} else if ( apply )
|
||||
block.setStyle( 'text-align', this.value );
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
editor.focus();
|
||||
editor.forceNextSelectionCheck();
|
||||
selection.selectBookmarks( bookmarks );
|
||||
},
|
||||
|
||||
refresh: function( editor, path ) {
|
||||
var firstBlock = path.block || path.blockLimit;
|
||||
|
||||
this.setState( firstBlock.getName() != 'body' && getAlignment( firstBlock, this.editor.config.useComputedState ) == this.value ? CKEDITOR.TRISTATE_ON : CKEDITOR.TRISTATE_OFF );
|
||||
}
|
||||
};
|
||||
|
||||
CKEDITOR.plugins.add( 'justify', {
|
||||
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: 'justifyblock,justifycenter,justifyleft,justifyright', // %REMOVE_LINE_CORE%
|
||||
hidpi: true, // %REMOVE_LINE_CORE%
|
||||
init: function( editor ) {
|
||||
if ( editor.blockless )
|
||||
return;
|
||||
|
||||
var left = new justifyCommand( editor, 'justifyleft', 'left' ),
|
||||
center = new justifyCommand( editor, 'justifycenter', 'center' ),
|
||||
right = new justifyCommand( editor, 'justifyright', 'right' ),
|
||||
justify = new justifyCommand( editor, 'justifyblock', 'justify' );
|
||||
|
||||
editor.addCommand( 'justifyleft', left );
|
||||
editor.addCommand( 'justifycenter', center );
|
||||
editor.addCommand( 'justifyright', right );
|
||||
editor.addCommand( 'justifyblock', justify );
|
||||
|
||||
if ( editor.ui.addButton ) {
|
||||
editor.ui.addButton( 'JustifyLeft', {
|
||||
label: editor.lang.justify.left,
|
||||
command: 'justifyleft',
|
||||
toolbar: 'align,10'
|
||||
} );
|
||||
editor.ui.addButton( 'JustifyCenter', {
|
||||
label: editor.lang.justify.center,
|
||||
command: 'justifycenter',
|
||||
toolbar: 'align,20'
|
||||
} );
|
||||
editor.ui.addButton( 'JustifyRight', {
|
||||
label: editor.lang.justify.right,
|
||||
command: 'justifyright',
|
||||
toolbar: 'align,30'
|
||||
} );
|
||||
editor.ui.addButton( 'JustifyBlock', {
|
||||
label: editor.lang.justify.block,
|
||||
command: 'justifyblock',
|
||||
toolbar: 'align,40'
|
||||
} );
|
||||
}
|
||||
|
||||
editor.on( 'dirChanged', onDirChanged );
|
||||
}
|
||||
} );
|
||||
} )();
|
||||
|
||||
/**
|
||||
* List of classes to use for aligning the contents. If it's `null`, no classes will be used
|
||||
* and instead the corresponding CSS values will be used.
|
||||
*
|
||||
* The array should contain 4 members, in the following order: left, center, right, justify.
|
||||
*
|
||||
* // Use the classes 'AlignLeft', 'AlignCenter', 'AlignRight', 'AlignJustify'
|
||||
* config.justifyClasses = [ 'AlignLeft', 'AlignCenter', 'AlignRight', 'AlignJustify' ];
|
||||
*
|
||||
* @cfg {Array} [justifyClasses=null]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
/**
|
||||
* @fileOverview Justify commands.
|
||||
*/
|
||||
|
||||
( function() {
|
||||
function getAlignment( element, useComputedState ) {
|
||||
useComputedState = useComputedState === undefined || useComputedState;
|
||||
|
||||
var align;
|
||||
if ( useComputedState )
|
||||
align = element.getComputedStyle( 'text-align' );
|
||||
else {
|
||||
while ( !element.hasAttribute || !( element.hasAttribute( 'align' ) || element.getStyle( 'text-align' ) ) ) {
|
||||
var parent = element.getParent();
|
||||
if ( !parent )
|
||||
break;
|
||||
element = parent;
|
||||
}
|
||||
align = element.getStyle( 'text-align' ) || element.getAttribute( 'align' ) || '';
|
||||
}
|
||||
|
||||
// Sometimes computed values doesn't tell.
|
||||
align && ( align = align.replace( /(?:-(?:moz|webkit)-)?(?:start|auto)/i, '' ) );
|
||||
|
||||
!align && useComputedState && ( align = element.getComputedStyle( 'direction' ) == 'rtl' ? 'right' : 'left' );
|
||||
|
||||
return align;
|
||||
}
|
||||
|
||||
function justifyCommand( editor, name, value ) {
|
||||
this.editor = editor;
|
||||
this.name = name;
|
||||
this.value = value;
|
||||
this.context = 'p';
|
||||
|
||||
var classes = editor.config.justifyClasses,
|
||||
blockTag = editor.config.enterMode == CKEDITOR.ENTER_P ? 'p' : 'div';
|
||||
|
||||
if ( classes ) {
|
||||
switch ( value ) {
|
||||
case 'left':
|
||||
this.cssClassName = classes[ 0 ];
|
||||
break;
|
||||
case 'center':
|
||||
this.cssClassName = classes[ 1 ];
|
||||
break;
|
||||
case 'right':
|
||||
this.cssClassName = classes[ 2 ];
|
||||
break;
|
||||
case 'justify':
|
||||
this.cssClassName = classes[ 3 ];
|
||||
break;
|
||||
}
|
||||
|
||||
this.cssClassRegex = new RegExp( '(?:^|\\s+)(?:' + classes.join( '|' ) + ')(?=$|\\s)' );
|
||||
this.requiredContent = blockTag + '(' + this.cssClassName + ')';
|
||||
}
|
||||
else
|
||||
this.requiredContent = blockTag + '{text-align}';
|
||||
|
||||
this.allowedContent = {
|
||||
'caption div h1 h2 h3 h4 h5 h6 p pre td th li': {
|
||||
// Do not add elements, but only text-align style if element is validated by other rule.
|
||||
propertiesOnly: true,
|
||||
styles: this.cssClassName ? null : 'text-align',
|
||||
classes: this.cssClassName || null
|
||||
}
|
||||
};
|
||||
|
||||
// In enter mode BR we need to allow here for div, because when non other
|
||||
// feature allows div justify is the only plugin that uses it.
|
||||
if ( editor.config.enterMode == CKEDITOR.ENTER_BR )
|
||||
this.allowedContent.div = true;
|
||||
}
|
||||
|
||||
function onDirChanged( e ) {
|
||||
var editor = e.editor;
|
||||
|
||||
var range = editor.createRange();
|
||||
range.setStartBefore( e.data.node );
|
||||
range.setEndAfter( e.data.node );
|
||||
|
||||
var walker = new CKEDITOR.dom.walker( range ),
|
||||
node;
|
||||
|
||||
while ( ( node = walker.next() ) ) {
|
||||
if ( node.type == CKEDITOR.NODE_ELEMENT ) {
|
||||
// A child with the defined dir is to be ignored.
|
||||
if ( !node.equals( e.data.node ) && node.getDirection() ) {
|
||||
range.setStartAfter( node );
|
||||
walker = new CKEDITOR.dom.walker( range );
|
||||
continue;
|
||||
}
|
||||
|
||||
// Switch the alignment.
|
||||
var classes = editor.config.justifyClasses;
|
||||
if ( classes ) {
|
||||
// The left align class.
|
||||
if ( node.hasClass( classes[ 0 ] ) ) {
|
||||
node.removeClass( classes[ 0 ] );
|
||||
node.addClass( classes[ 2 ] );
|
||||
}
|
||||
// The right align class.
|
||||
else if ( node.hasClass( classes[ 2 ] ) ) {
|
||||
node.removeClass( classes[ 2 ] );
|
||||
node.addClass( classes[ 0 ] );
|
||||
}
|
||||
}
|
||||
|
||||
// Always switch CSS margins.
|
||||
var style = 'text-align';
|
||||
var align = node.getStyle( style );
|
||||
|
||||
if ( align == 'left' )
|
||||
node.setStyle( style, 'right' );
|
||||
else if ( align == 'right' )
|
||||
node.setStyle( style, 'left' );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
justifyCommand.prototype = {
|
||||
exec: function( editor ) {
|
||||
var selection = editor.getSelection(),
|
||||
enterMode = editor.config.enterMode;
|
||||
|
||||
if ( !selection )
|
||||
return;
|
||||
|
||||
var bookmarks = selection.createBookmarks(),
|
||||
ranges = selection.getRanges();
|
||||
|
||||
var cssClassName = this.cssClassName,
|
||||
iterator, block;
|
||||
|
||||
var useComputedState = editor.config.useComputedState;
|
||||
useComputedState = useComputedState === undefined || useComputedState;
|
||||
|
||||
for ( var i = ranges.length - 1; i >= 0; i-- ) {
|
||||
iterator = ranges[ i ].createIterator();
|
||||
iterator.enlargeBr = enterMode != CKEDITOR.ENTER_BR;
|
||||
|
||||
while ( ( block = iterator.getNextParagraph( enterMode == CKEDITOR.ENTER_P ? 'p' : 'div' ) ) ) {
|
||||
if ( block.isReadOnly() )
|
||||
continue;
|
||||
|
||||
block.removeAttribute( 'align' );
|
||||
block.removeStyle( 'text-align' );
|
||||
|
||||
// Remove any of the alignment classes from the className.
|
||||
var className = cssClassName && ( block.$.className = CKEDITOR.tools.ltrim( block.$.className.replace( this.cssClassRegex, '' ) ) );
|
||||
|
||||
var apply = ( this.state == CKEDITOR.TRISTATE_OFF ) && ( !useComputedState || ( getAlignment( block, true ) != this.value ) );
|
||||
|
||||
if ( cssClassName ) {
|
||||
// Append the desired class name.
|
||||
if ( apply )
|
||||
block.addClass( cssClassName );
|
||||
else if ( !className )
|
||||
block.removeAttribute( 'class' );
|
||||
} else if ( apply )
|
||||
block.setStyle( 'text-align', this.value );
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
editor.focus();
|
||||
editor.forceNextSelectionCheck();
|
||||
selection.selectBookmarks( bookmarks );
|
||||
},
|
||||
|
||||
refresh: function( editor, path ) {
|
||||
var firstBlock = path.block || path.blockLimit;
|
||||
|
||||
this.setState( firstBlock.getName() != 'body' && getAlignment( firstBlock, this.editor.config.useComputedState ) == this.value ? CKEDITOR.TRISTATE_ON : CKEDITOR.TRISTATE_OFF );
|
||||
}
|
||||
};
|
||||
|
||||
CKEDITOR.plugins.add( 'justify', {
|
||||
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: 'justifyblock,justifycenter,justifyleft,justifyright', // %REMOVE_LINE_CORE%
|
||||
hidpi: true, // %REMOVE_LINE_CORE%
|
||||
init: function( editor ) {
|
||||
if ( editor.blockless )
|
||||
return;
|
||||
|
||||
var left = new justifyCommand( editor, 'justifyleft', 'left' ),
|
||||
center = new justifyCommand( editor, 'justifycenter', 'center' ),
|
||||
right = new justifyCommand( editor, 'justifyright', 'right' ),
|
||||
justify = new justifyCommand( editor, 'justifyblock', 'justify' );
|
||||
|
||||
editor.addCommand( 'justifyleft', left );
|
||||
editor.addCommand( 'justifycenter', center );
|
||||
editor.addCommand( 'justifyright', right );
|
||||
editor.addCommand( 'justifyblock', justify );
|
||||
|
||||
if ( editor.ui.addButton ) {
|
||||
editor.ui.addButton( 'JustifyLeft', {
|
||||
label: editor.lang.justify.left,
|
||||
command: 'justifyleft',
|
||||
toolbar: 'align,10'
|
||||
} );
|
||||
editor.ui.addButton( 'JustifyCenter', {
|
||||
label: editor.lang.justify.center,
|
||||
command: 'justifycenter',
|
||||
toolbar: 'align,20'
|
||||
} );
|
||||
editor.ui.addButton( 'JustifyRight', {
|
||||
label: editor.lang.justify.right,
|
||||
command: 'justifyright',
|
||||
toolbar: 'align,30'
|
||||
} );
|
||||
editor.ui.addButton( 'JustifyBlock', {
|
||||
label: editor.lang.justify.block,
|
||||
command: 'justifyblock',
|
||||
toolbar: 'align,40'
|
||||
} );
|
||||
}
|
||||
|
||||
editor.on( 'dirChanged', onDirChanged );
|
||||
}
|
||||
} );
|
||||
} )();
|
||||
|
||||
/**
|
||||
* List of classes to use for aligning the contents. If it's `null`, no classes will be used
|
||||
* and instead the corresponding CSS values will be used.
|
||||
*
|
||||
* The array should contain 4 members, in the following order: left, center, right, justify.
|
||||
*
|
||||
* // Use the classes 'AlignLeft', 'AlignCenter', 'AlignRight', 'AlignJustify'
|
||||
* config.justifyClasses = [ 'AlignLeft', 'AlignCenter', 'AlignRight', 'AlignJustify' ];
|
||||
*
|
||||
* @cfg {Array} [justifyClasses=null]
|
||||
* @member CKEDITOR.config
|
||||
*/
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.dialog.add("anchor",function(c){function d(a,b){return a.createFakeElement(a.document.createElement("a",{attributes:b}),"cke_anchor","anchor")}return{title:c.lang.link.anchor.title,minWidth:300,minHeight:60,onOk:function(){var a=CKEDITOR.tools.trim(this.getValueOf("info","txtName")),a={id:a,name:a,"data-cke-saved-name":a};if(this._.selectedElement)this._.selectedElement.data("cke-realelement")?(a=d(c,a),a.replace(this._.selectedElement),CKEDITOR.env.ie&&c.getSelection().selectElement(a)):
|
||||
this._.selectedElement.setAttributes(a);else{var b=c.getSelection(),b=b&&b.getRanges()[0];b.collapsed?(a=d(c,a),b.insertNode(a)):(CKEDITOR.env.ie&&9>CKEDITOR.env.version&&(a["class"]="cke_anchor"),a=new CKEDITOR.style({element:"a",attributes:a}),a.type=CKEDITOR.STYLE_INLINE,c.applyStyle(a))}},onHide:function(){delete this._.selectedElement},onShow:function(){var a=c.getSelection(),b=a.getSelectedElement(),d=b&&b.data("cke-realelement"),e=d?CKEDITOR.plugins.link.tryRestoreFakeAnchor(c,b):CKEDITOR.plugins.link.getSelectedLink(c);
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.dialog.add("anchor",function(c){function d(a,b){return a.createFakeElement(a.document.createElement("a",{attributes:b}),"cke_anchor","anchor")}return{title:c.lang.link.anchor.title,minWidth:300,minHeight:60,onOk:function(){var a=CKEDITOR.tools.trim(this.getValueOf("info","txtName")),a={id:a,name:a,"data-cke-saved-name":a};if(this._.selectedElement)this._.selectedElement.data("cke-realelement")?(a=d(c,a),a.replace(this._.selectedElement),CKEDITOR.env.ie&&c.getSelection().selectElement(a)):
|
||||
this._.selectedElement.setAttributes(a);else{var b=c.getSelection(),b=b&&b.getRanges()[0];b.collapsed?(a=d(c,a),b.insertNode(a)):(CKEDITOR.env.ie&&9>CKEDITOR.env.version&&(a["class"]="cke_anchor"),a=new CKEDITOR.style({element:"a",attributes:a}),a.type=CKEDITOR.STYLE_INLINE,c.applyStyle(a))}},onHide:function(){delete this._.selectedElement},onShow:function(){var a=c.getSelection(),b=a.getSelectedElement(),d=b&&b.data("cke-realelement"),e=d?CKEDITOR.plugins.link.tryRestoreFakeAnchor(c,b):CKEDITOR.plugins.link.getSelectedLink(c);
|
||||
e&&(this._.selectedElement=e,this.setValueOf("info","txtName",e.data("cke-saved-name")||""),!d&&a.selectElement(e),b&&(this._.selectedElement=b));this.getContentElement("info","txtName").focus()},contents:[{id:"info",label:c.lang.link.anchor.title,accessKey:"I",elements:[{type:"text",id:"txtName",label:c.lang.link.anchor.name,required:!0,validate:function(){return!this.getValue()?(alert(c.lang.link.anchor.errorName),!1):!0}}]}]}});
|
||||
@@ -1,26 +1,26 @@
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
(function(){CKEDITOR.dialog.add("link",function(g){var l=CKEDITOR.plugins.link,m=function(){var a=this.getDialog(),b=a.getContentElement("target","popupFeatures"),a=a.getContentElement("target","linkTargetName"),k=this.getValue();if(b&&a)switch(b=b.getElement(),b.hide(),a.setValue(""),k){case "frame":a.setLabel(g.lang.link.targetFrameName);a.getElement().show();break;case "popup":b.show();a.setLabel(g.lang.link.targetPopupName);a.getElement().show();break;default:a.setValue(k),a.getElement().hide()}},
|
||||
f=function(a){a.target&&this.setValue(a.target[this.id]||"")},h=function(a){a.advanced&&this.setValue(a.advanced[this.id]||"")},i=function(a){a.target||(a.target={});a.target[this.id]=this.getValue()||""},j=function(a){a.advanced||(a.advanced={});a.advanced[this.id]=this.getValue()||""},c=g.lang.common,b=g.lang.link,d;return{title:b.title,minWidth:350,minHeight:230,contents:[{id:"info",label:b.info,title:b.info,elements:[{id:"linkType",type:"select",label:b.type,"default":"url",items:[[b.toUrl,"url"],
|
||||
[b.toAnchor,"anchor"],[b.toEmail,"email"]],onChange:function(){var a=this.getDialog(),b=["urlOptions","anchorOptions","emailOptions"],k=this.getValue(),e=a.definition.getContents("upload"),e=e&&e.hidden;"url"==k?(g.config.linkShowTargetTab&&a.showPage("target"),e||a.showPage("upload")):(a.hidePage("target"),e||a.hidePage("upload"));for(e=0;e<b.length;e++){var c=a.getContentElement("info",b[e]);c&&(c=c.getElement().getParent().getParent(),b[e]==k+"Options"?c.show():c.hide())}a.layout()},setup:function(a){this.setValue(a.type||
|
||||
"url")},commit:function(a){a.type=this.getValue()}},{type:"vbox",id:"urlOptions",children:[{type:"hbox",widths:["25%","75%"],children:[{id:"protocol",type:"select",label:c.protocol,"default":"http://",items:[["http://","http://"],["https://","https://"],["ftp://","ftp://"],["news://","news://"],[b.other,""]],setup:function(a){a.url&&this.setValue(a.url.protocol||"")},commit:function(a){a.url||(a.url={});a.url.protocol=this.getValue()}},{type:"text",id:"url",label:c.url,required:!0,onLoad:function(){this.allowOnChange=
|
||||
!0},onKeyUp:function(){this.allowOnChange=!1;var a=this.getDialog().getContentElement("info","protocol"),b=this.getValue(),k=/^((javascript:)|[#\/\.\?])/i,c=/^(http|https|ftp|news):\/\/(?=.)/i.exec(b);c?(this.setValue(b.substr(c[0].length)),a.setValue(c[0].toLowerCase())):k.test(b)&&a.setValue("");this.allowOnChange=!0},onChange:function(){if(this.allowOnChange)this.onKeyUp()},validate:function(){var a=this.getDialog();return a.getContentElement("info","linkType")&&"url"!=a.getValueOf("info","linkType")?
|
||||
!0:!g.config.linkJavaScriptLinksAllowed&&/javascript\:/.test(this.getValue())?(alert(c.invalidValue),!1):this.getDialog().fakeObj?!0:CKEDITOR.dialog.validate.notEmpty(b.noUrl).apply(this)},setup:function(a){this.allowOnChange=!1;a.url&&this.setValue(a.url.url);this.allowOnChange=!0},commit:function(a){this.onChange();a.url||(a.url={});a.url.url=this.getValue();this.allowOnChange=!1}}],setup:function(){this.getDialog().getContentElement("info","linkType")||this.getElement().show()}},{type:"button",
|
||||
id:"browse",hidden:"true",filebrowser:"info:url",label:c.browseServer}]},{type:"vbox",id:"anchorOptions",width:260,align:"center",padding:0,children:[{type:"fieldset",id:"selectAnchorText",label:b.selectAnchor,setup:function(){d=l.getEditorAnchors(g);this.getElement()[d&&d.length?"show":"hide"]()},children:[{type:"hbox",id:"selectAnchor",children:[{type:"select",id:"anchorName","default":"",label:b.anchorName,style:"width: 100%;",items:[[""]],setup:function(a){this.clear();this.add("");if(d)for(var b=
|
||||
0;b<d.length;b++)d[b].name&&this.add(d[b].name);a.anchor&&this.setValue(a.anchor.name);(a=this.getDialog().getContentElement("info","linkType"))&&"email"==a.getValue()&&this.focus()},commit:function(a){a.anchor||(a.anchor={});a.anchor.name=this.getValue()}},{type:"select",id:"anchorId","default":"",label:b.anchorId,style:"width: 100%;",items:[[""]],setup:function(a){this.clear();this.add("");if(d)for(var b=0;b<d.length;b++)d[b].id&&this.add(d[b].id);a.anchor&&this.setValue(a.anchor.id)},commit:function(a){a.anchor||
|
||||
(a.anchor={});a.anchor.id=this.getValue()}}],setup:function(){this.getElement()[d&&d.length?"show":"hide"]()}}]},{type:"html",id:"noAnchors",style:"text-align: center;",html:'<div role="note" tabIndex="-1">'+CKEDITOR.tools.htmlEncode(b.noAnchors)+"</div>",focus:!0,setup:function(){this.getElement()[d&&d.length?"hide":"show"]()}}],setup:function(){this.getDialog().getContentElement("info","linkType")||this.getElement().hide()}},{type:"vbox",id:"emailOptions",padding:1,children:[{type:"text",id:"emailAddress",
|
||||
label:b.emailAddress,required:!0,validate:function(){var a=this.getDialog();return!a.getContentElement("info","linkType")||"email"!=a.getValueOf("info","linkType")?!0:CKEDITOR.dialog.validate.notEmpty(b.noEmail).apply(this)},setup:function(a){a.email&&this.setValue(a.email.address);(a=this.getDialog().getContentElement("info","linkType"))&&"email"==a.getValue()&&this.select()},commit:function(a){a.email||(a.email={});a.email.address=this.getValue()}},{type:"text",id:"emailSubject",label:b.emailSubject,
|
||||
setup:function(a){a.email&&this.setValue(a.email.subject)},commit:function(a){a.email||(a.email={});a.email.subject=this.getValue()}},{type:"textarea",id:"emailBody",label:b.emailBody,rows:3,"default":"",setup:function(a){a.email&&this.setValue(a.email.body)},commit:function(a){a.email||(a.email={});a.email.body=this.getValue()}}],setup:function(){this.getDialog().getContentElement("info","linkType")||this.getElement().hide()}}]},{id:"target",requiredContent:"a[target]",label:b.target,title:b.target,
|
||||
elements:[{type:"hbox",widths:["50%","50%"],children:[{type:"select",id:"linkTargetType",label:c.target,"default":"notSet",style:"width : 100%;",items:[[c.notSet,"notSet"],[b.targetFrame,"frame"],[b.targetPopup,"popup"],[c.targetNew,"_blank"],[c.targetTop,"_top"],[c.targetSelf,"_self"],[c.targetParent,"_parent"]],onChange:m,setup:function(a){a.target&&this.setValue(a.target.type||"notSet");m.call(this)},commit:function(a){a.target||(a.target={});a.target.type=this.getValue()}},{type:"text",id:"linkTargetName",
|
||||
label:b.targetFrameName,"default":"",setup:function(a){a.target&&this.setValue(a.target.name)},commit:function(a){a.target||(a.target={});a.target.name=this.getValue().replace(/\W/gi,"")}}]},{type:"vbox",width:"100%",align:"center",padding:2,id:"popupFeatures",children:[{type:"fieldset",label:b.popupFeatures,children:[{type:"hbox",children:[{type:"checkbox",id:"resizable",label:b.popupResizable,setup:f,commit:i},{type:"checkbox",id:"status",label:b.popupStatusBar,setup:f,commit:i}]},{type:"hbox",
|
||||
children:[{type:"checkbox",id:"location",label:b.popupLocationBar,setup:f,commit:i},{type:"checkbox",id:"toolbar",label:b.popupToolbar,setup:f,commit:i}]},{type:"hbox",children:[{type:"checkbox",id:"menubar",label:b.popupMenuBar,setup:f,commit:i},{type:"checkbox",id:"fullscreen",label:b.popupFullScreen,setup:f,commit:i}]},{type:"hbox",children:[{type:"checkbox",id:"scrollbars",label:b.popupScrollBars,setup:f,commit:i},{type:"checkbox",id:"dependent",label:b.popupDependent,setup:f,commit:i}]},{type:"hbox",
|
||||
children:[{type:"text",widths:["50%","50%"],labelLayout:"horizontal",label:c.width,id:"width",setup:f,commit:i},{type:"text",labelLayout:"horizontal",widths:["50%","50%"],label:b.popupLeft,id:"left",setup:f,commit:i}]},{type:"hbox",children:[{type:"text",labelLayout:"horizontal",widths:["50%","50%"],label:c.height,id:"height",setup:f,commit:i},{type:"text",labelLayout:"horizontal",label:b.popupTop,widths:["50%","50%"],id:"top",setup:f,commit:i}]}]}]}]},{id:"upload",label:b.upload,title:b.upload,hidden:!0,
|
||||
filebrowser:"uploadButton",elements:[{type:"file",id:"upload",label:c.upload,style:"height:40px",size:29},{type:"fileButton",id:"uploadButton",label:c.uploadSubmit,filebrowser:"info:url","for":["upload","upload"]}]},{id:"advanced",label:b.advanced,title:b.advanced,elements:[{type:"vbox",padding:1,children:[{type:"hbox",widths:["45%","35%","20%"],children:[{type:"text",id:"advId",requiredContent:"a[id]",label:b.id,setup:h,commit:j},{type:"select",id:"advLangDir",requiredContent:"a[dir]",label:b.langDir,
|
||||
"default":"",style:"width:110px",items:[[c.notSet,""],[b.langDirLTR,"ltr"],[b.langDirRTL,"rtl"]],setup:h,commit:j},{type:"text",id:"advAccessKey",requiredContent:"a[accesskey]",width:"80px",label:b.acccessKey,maxLength:1,setup:h,commit:j}]},{type:"hbox",widths:["45%","35%","20%"],children:[{type:"text",label:b.name,id:"advName",requiredContent:"a[name]",setup:h,commit:j},{type:"text",label:b.langCode,id:"advLangCode",requiredContent:"a[lang]",width:"110px","default":"",setup:h,commit:j},{type:"text",
|
||||
label:b.tabIndex,id:"advTabIndex",requiredContent:"a[tabindex]",width:"80px",maxLength:5,setup:h,commit:j}]}]},{type:"vbox",padding:1,children:[{type:"hbox",widths:["45%","55%"],children:[{type:"text",label:b.advisoryTitle,requiredContent:"a[title]","default":"",id:"advTitle",setup:h,commit:j},{type:"text",label:b.advisoryContentType,requiredContent:"a[type]","default":"",id:"advContentType",setup:h,commit:j}]},{type:"hbox",widths:["45%","55%"],children:[{type:"text",label:b.cssClasses,requiredContent:"a(cke-xyz)",
|
||||
"default":"",id:"advCSSClasses",setup:h,commit:j},{type:"text",label:b.charset,requiredContent:"a[charset]","default":"",id:"advCharset",setup:h,commit:j}]},{type:"hbox",widths:["45%","55%"],children:[{type:"text",label:b.rel,requiredContent:"a[rel]","default":"",id:"advRel",setup:h,commit:j},{type:"text",label:b.styles,requiredContent:"a{cke-xyz}","default":"",id:"advStyles",validate:CKEDITOR.dialog.validate.inlineStyle(g.lang.common.invalidInlineStyle),setup:h,commit:j}]}]}]}],onShow:function(){var a=
|
||||
this.getParentEditor(),b=a.getSelection(),c=null;(c=l.getSelectedLink(a))&&c.hasAttribute("href")?b.getSelectedElement()||b.selectElement(c):c=null;a=l.parseLinkAttributes(a,c);this._.selectedElement=c;this.setupContent(a)},onOk:function(){var a={};this.commitContent(a);var b=g.getSelection(),c=l.getLinkAttributes(g,a);if(this._.selectedElement){var e=this._.selectedElement,d=e.data("cke-saved-href"),f=e.getHtml();e.setAttributes(c.set);e.removeAttributes(c.removed);if(d==f||"email"==a.type&&-1!=
|
||||
f.indexOf("@"))e.setHtml("email"==a.type?a.email.address:c.set["data-cke-saved-href"]),b.selectElement(e);delete this._.selectedElement}else b=b.getRanges()[0],b.collapsed&&(a=new CKEDITOR.dom.text("email"==a.type?a.email.address:c.set["data-cke-saved-href"],g.document),b.insertNode(a),b.selectNodeContents(a)),c=new CKEDITOR.style({element:"a",attributes:c.set}),c.type=CKEDITOR.STYLE_INLINE,c.applyToRange(b,g),b.select()},onLoad:function(){g.config.linkShowAdvancedTab||this.hidePage("advanced");g.config.linkShowTargetTab||
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
(function(){CKEDITOR.dialog.add("link",function(g){var l=CKEDITOR.plugins.link,m=function(){var a=this.getDialog(),b=a.getContentElement("target","popupFeatures"),a=a.getContentElement("target","linkTargetName"),k=this.getValue();if(b&&a)switch(b=b.getElement(),b.hide(),a.setValue(""),k){case "frame":a.setLabel(g.lang.link.targetFrameName);a.getElement().show();break;case "popup":b.show();a.setLabel(g.lang.link.targetPopupName);a.getElement().show();break;default:a.setValue(k),a.getElement().hide()}},
|
||||
f=function(a){a.target&&this.setValue(a.target[this.id]||"")},h=function(a){a.advanced&&this.setValue(a.advanced[this.id]||"")},i=function(a){a.target||(a.target={});a.target[this.id]=this.getValue()||""},j=function(a){a.advanced||(a.advanced={});a.advanced[this.id]=this.getValue()||""},c=g.lang.common,b=g.lang.link,d;return{title:b.title,minWidth:350,minHeight:230,contents:[{id:"info",label:b.info,title:b.info,elements:[{id:"linkType",type:"select",label:b.type,"default":"url",items:[[b.toUrl,"url"],
|
||||
[b.toAnchor,"anchor"],[b.toEmail,"email"]],onChange:function(){var a=this.getDialog(),b=["urlOptions","anchorOptions","emailOptions"],k=this.getValue(),e=a.definition.getContents("upload"),e=e&&e.hidden;"url"==k?(g.config.linkShowTargetTab&&a.showPage("target"),e||a.showPage("upload")):(a.hidePage("target"),e||a.hidePage("upload"));for(e=0;e<b.length;e++){var c=a.getContentElement("info",b[e]);c&&(c=c.getElement().getParent().getParent(),b[e]==k+"Options"?c.show():c.hide())}a.layout()},setup:function(a){this.setValue(a.type||
|
||||
"url")},commit:function(a){a.type=this.getValue()}},{type:"vbox",id:"urlOptions",children:[{type:"hbox",widths:["25%","75%"],children:[{id:"protocol",type:"select",label:c.protocol,"default":"http://",items:[["http://","http://"],["https://","https://"],["ftp://","ftp://"],["news://","news://"],[b.other,""]],setup:function(a){a.url&&this.setValue(a.url.protocol||"")},commit:function(a){a.url||(a.url={});a.url.protocol=this.getValue()}},{type:"text",id:"url",label:c.url,required:!0,onLoad:function(){this.allowOnChange=
|
||||
!0},onKeyUp:function(){this.allowOnChange=!1;var a=this.getDialog().getContentElement("info","protocol"),b=this.getValue(),k=/^((javascript:)|[#\/\.\?])/i,c=/^(http|https|ftp|news):\/\/(?=.)/i.exec(b);c?(this.setValue(b.substr(c[0].length)),a.setValue(c[0].toLowerCase())):k.test(b)&&a.setValue("");this.allowOnChange=!0},onChange:function(){if(this.allowOnChange)this.onKeyUp()},validate:function(){var a=this.getDialog();return a.getContentElement("info","linkType")&&"url"!=a.getValueOf("info","linkType")?
|
||||
!0:!g.config.linkJavaScriptLinksAllowed&&/javascript\:/.test(this.getValue())?(alert(c.invalidValue),!1):this.getDialog().fakeObj?!0:CKEDITOR.dialog.validate.notEmpty(b.noUrl).apply(this)},setup:function(a){this.allowOnChange=!1;a.url&&this.setValue(a.url.url);this.allowOnChange=!0},commit:function(a){this.onChange();a.url||(a.url={});a.url.url=this.getValue();this.allowOnChange=!1}}],setup:function(){this.getDialog().getContentElement("info","linkType")||this.getElement().show()}},{type:"button",
|
||||
id:"browse",hidden:"true",filebrowser:"info:url",label:c.browseServer}]},{type:"vbox",id:"anchorOptions",width:260,align:"center",padding:0,children:[{type:"fieldset",id:"selectAnchorText",label:b.selectAnchor,setup:function(){d=l.getEditorAnchors(g);this.getElement()[d&&d.length?"show":"hide"]()},children:[{type:"hbox",id:"selectAnchor",children:[{type:"select",id:"anchorName","default":"",label:b.anchorName,style:"width: 100%;",items:[[""]],setup:function(a){this.clear();this.add("");if(d)for(var b=
|
||||
0;b<d.length;b++)d[b].name&&this.add(d[b].name);a.anchor&&this.setValue(a.anchor.name);(a=this.getDialog().getContentElement("info","linkType"))&&"email"==a.getValue()&&this.focus()},commit:function(a){a.anchor||(a.anchor={});a.anchor.name=this.getValue()}},{type:"select",id:"anchorId","default":"",label:b.anchorId,style:"width: 100%;",items:[[""]],setup:function(a){this.clear();this.add("");if(d)for(var b=0;b<d.length;b++)d[b].id&&this.add(d[b].id);a.anchor&&this.setValue(a.anchor.id)},commit:function(a){a.anchor||
|
||||
(a.anchor={});a.anchor.id=this.getValue()}}],setup:function(){this.getElement()[d&&d.length?"show":"hide"]()}}]},{type:"html",id:"noAnchors",style:"text-align: center;",html:'<div role="note" tabIndex="-1">'+CKEDITOR.tools.htmlEncode(b.noAnchors)+"</div>",focus:!0,setup:function(){this.getElement()[d&&d.length?"hide":"show"]()}}],setup:function(){this.getDialog().getContentElement("info","linkType")||this.getElement().hide()}},{type:"vbox",id:"emailOptions",padding:1,children:[{type:"text",id:"emailAddress",
|
||||
label:b.emailAddress,required:!0,validate:function(){var a=this.getDialog();return!a.getContentElement("info","linkType")||"email"!=a.getValueOf("info","linkType")?!0:CKEDITOR.dialog.validate.notEmpty(b.noEmail).apply(this)},setup:function(a){a.email&&this.setValue(a.email.address);(a=this.getDialog().getContentElement("info","linkType"))&&"email"==a.getValue()&&this.select()},commit:function(a){a.email||(a.email={});a.email.address=this.getValue()}},{type:"text",id:"emailSubject",label:b.emailSubject,
|
||||
setup:function(a){a.email&&this.setValue(a.email.subject)},commit:function(a){a.email||(a.email={});a.email.subject=this.getValue()}},{type:"textarea",id:"emailBody",label:b.emailBody,rows:3,"default":"",setup:function(a){a.email&&this.setValue(a.email.body)},commit:function(a){a.email||(a.email={});a.email.body=this.getValue()}}],setup:function(){this.getDialog().getContentElement("info","linkType")||this.getElement().hide()}}]},{id:"target",requiredContent:"a[target]",label:b.target,title:b.target,
|
||||
elements:[{type:"hbox",widths:["50%","50%"],children:[{type:"select",id:"linkTargetType",label:c.target,"default":"notSet",style:"width : 100%;",items:[[c.notSet,"notSet"],[b.targetFrame,"frame"],[b.targetPopup,"popup"],[c.targetNew,"_blank"],[c.targetTop,"_top"],[c.targetSelf,"_self"],[c.targetParent,"_parent"]],onChange:m,setup:function(a){a.target&&this.setValue(a.target.type||"notSet");m.call(this)},commit:function(a){a.target||(a.target={});a.target.type=this.getValue()}},{type:"text",id:"linkTargetName",
|
||||
label:b.targetFrameName,"default":"",setup:function(a){a.target&&this.setValue(a.target.name)},commit:function(a){a.target||(a.target={});a.target.name=this.getValue().replace(/\W/gi,"")}}]},{type:"vbox",width:"100%",align:"center",padding:2,id:"popupFeatures",children:[{type:"fieldset",label:b.popupFeatures,children:[{type:"hbox",children:[{type:"checkbox",id:"resizable",label:b.popupResizable,setup:f,commit:i},{type:"checkbox",id:"status",label:b.popupStatusBar,setup:f,commit:i}]},{type:"hbox",
|
||||
children:[{type:"checkbox",id:"location",label:b.popupLocationBar,setup:f,commit:i},{type:"checkbox",id:"toolbar",label:b.popupToolbar,setup:f,commit:i}]},{type:"hbox",children:[{type:"checkbox",id:"menubar",label:b.popupMenuBar,setup:f,commit:i},{type:"checkbox",id:"fullscreen",label:b.popupFullScreen,setup:f,commit:i}]},{type:"hbox",children:[{type:"checkbox",id:"scrollbars",label:b.popupScrollBars,setup:f,commit:i},{type:"checkbox",id:"dependent",label:b.popupDependent,setup:f,commit:i}]},{type:"hbox",
|
||||
children:[{type:"text",widths:["50%","50%"],labelLayout:"horizontal",label:c.width,id:"width",setup:f,commit:i},{type:"text",labelLayout:"horizontal",widths:["50%","50%"],label:b.popupLeft,id:"left",setup:f,commit:i}]},{type:"hbox",children:[{type:"text",labelLayout:"horizontal",widths:["50%","50%"],label:c.height,id:"height",setup:f,commit:i},{type:"text",labelLayout:"horizontal",label:b.popupTop,widths:["50%","50%"],id:"top",setup:f,commit:i}]}]}]}]},{id:"upload",label:b.upload,title:b.upload,hidden:!0,
|
||||
filebrowser:"uploadButton",elements:[{type:"file",id:"upload",label:c.upload,style:"height:40px",size:29},{type:"fileButton",id:"uploadButton",label:c.uploadSubmit,filebrowser:"info:url","for":["upload","upload"]}]},{id:"advanced",label:b.advanced,title:b.advanced,elements:[{type:"vbox",padding:1,children:[{type:"hbox",widths:["45%","35%","20%"],children:[{type:"text",id:"advId",requiredContent:"a[id]",label:b.id,setup:h,commit:j},{type:"select",id:"advLangDir",requiredContent:"a[dir]",label:b.langDir,
|
||||
"default":"",style:"width:110px",items:[[c.notSet,""],[b.langDirLTR,"ltr"],[b.langDirRTL,"rtl"]],setup:h,commit:j},{type:"text",id:"advAccessKey",requiredContent:"a[accesskey]",width:"80px",label:b.acccessKey,maxLength:1,setup:h,commit:j}]},{type:"hbox",widths:["45%","35%","20%"],children:[{type:"text",label:b.name,id:"advName",requiredContent:"a[name]",setup:h,commit:j},{type:"text",label:b.langCode,id:"advLangCode",requiredContent:"a[lang]",width:"110px","default":"",setup:h,commit:j},{type:"text",
|
||||
label:b.tabIndex,id:"advTabIndex",requiredContent:"a[tabindex]",width:"80px",maxLength:5,setup:h,commit:j}]}]},{type:"vbox",padding:1,children:[{type:"hbox",widths:["45%","55%"],children:[{type:"text",label:b.advisoryTitle,requiredContent:"a[title]","default":"",id:"advTitle",setup:h,commit:j},{type:"text",label:b.advisoryContentType,requiredContent:"a[type]","default":"",id:"advContentType",setup:h,commit:j}]},{type:"hbox",widths:["45%","55%"],children:[{type:"text",label:b.cssClasses,requiredContent:"a(cke-xyz)",
|
||||
"default":"",id:"advCSSClasses",setup:h,commit:j},{type:"text",label:b.charset,requiredContent:"a[charset]","default":"",id:"advCharset",setup:h,commit:j}]},{type:"hbox",widths:["45%","55%"],children:[{type:"text",label:b.rel,requiredContent:"a[rel]","default":"",id:"advRel",setup:h,commit:j},{type:"text",label:b.styles,requiredContent:"a{cke-xyz}","default":"",id:"advStyles",validate:CKEDITOR.dialog.validate.inlineStyle(g.lang.common.invalidInlineStyle),setup:h,commit:j}]}]}]}],onShow:function(){var a=
|
||||
this.getParentEditor(),b=a.getSelection(),c=null;(c=l.getSelectedLink(a))&&c.hasAttribute("href")?b.getSelectedElement()||b.selectElement(c):c=null;a=l.parseLinkAttributes(a,c);this._.selectedElement=c;this.setupContent(a)},onOk:function(){var a={};this.commitContent(a);var b=g.getSelection(),c=l.getLinkAttributes(g,a);if(this._.selectedElement){var e=this._.selectedElement,d=e.data("cke-saved-href"),f=e.getHtml();e.setAttributes(c.set);e.removeAttributes(c.removed);if(d==f||"email"==a.type&&-1!=
|
||||
f.indexOf("@"))e.setHtml("email"==a.type?a.email.address:c.set["data-cke-saved-href"]),b.selectElement(e);delete this._.selectedElement}else b=b.getRanges()[0],b.collapsed&&(a=new CKEDITOR.dom.text("email"==a.type?a.email.address:c.set["data-cke-saved-href"],g.document),b.insertNode(a),b.selectNodeContents(a)),c=new CKEDITOR.style({element:"a",attributes:c.set}),c.type=CKEDITOR.STYLE_INLINE,c.applyToRange(b,g),b.select()},onLoad:function(){g.config.linkShowAdvancedTab||this.hidePage("advanced");g.config.linkShowTargetTab||
|
||||
this.hidePage("target")},onFocus:function(){var a=this.getContentElement("info","linkType");a&&"url"==a.getValue()&&(a=this.getContentElement("info","url"),a.select())}}})})();
|
||||
@@ -1,240 +1,240 @@
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.plugins.add( 'listblock', {
|
||||
requires: 'panel',
|
||||
|
||||
onLoad: function() {
|
||||
var list = CKEDITOR.addTemplate( 'panel-list', '<ul role="presentation" class="cke_panel_list">{items}</ul>' ),
|
||||
listItem = CKEDITOR.addTemplate( 'panel-list-item', '<li id="{id}" class="cke_panel_listItem" role=presentation>' +
|
||||
'<a id="{id}_option" _cke_focus=1 hidefocus=true' +
|
||||
' title="{title}"' +
|
||||
' href="javascript:void(\'{val}\')" ' +
|
||||
' {onclick}="CKEDITOR.tools.callFunction({clickFn},\'{val}\'); return false;"' + // #188
|
||||
' role="option">' +
|
||||
'{text}' +
|
||||
'</a>' +
|
||||
'</li>' ),
|
||||
listGroup = CKEDITOR.addTemplate( 'panel-list-group', '<h1 id="{id}" class="cke_panel_grouptitle" role="presentation" >{label}</h1>' ),
|
||||
reSingleQuote = /\'/g,
|
||||
escapeSingleQuotes = function( str ) {
|
||||
return str.replace( reSingleQuote, '\\\'' );
|
||||
};
|
||||
|
||||
CKEDITOR.ui.panel.prototype.addListBlock = function( name, definition ) {
|
||||
return this.addBlock( name, new CKEDITOR.ui.listBlock( this.getHolderElement(), definition ) );
|
||||
};
|
||||
|
||||
CKEDITOR.ui.listBlock = CKEDITOR.tools.createClass( {
|
||||
base: CKEDITOR.ui.panel.block,
|
||||
|
||||
$: function( blockHolder, blockDefinition ) {
|
||||
blockDefinition = blockDefinition || {};
|
||||
|
||||
var attribs = blockDefinition.attributes || ( blockDefinition.attributes = {} );
|
||||
( this.multiSelect = !!blockDefinition.multiSelect ) && ( attribs[ 'aria-multiselectable' ] = true );
|
||||
// Provide default role of 'listbox'.
|
||||
!attribs.role && ( attribs.role = 'listbox' );
|
||||
|
||||
// Call the base contructor.
|
||||
this.base.apply( this, arguments );
|
||||
|
||||
// Set the proper a11y attributes.
|
||||
this.element.setAttribute( 'role', attribs.role );
|
||||
|
||||
var keys = this.keys;
|
||||
keys[ 40 ] = 'next'; // ARROW-DOWN
|
||||
keys[ 9 ] = 'next'; // TAB
|
||||
keys[ 38 ] = 'prev'; // ARROW-UP
|
||||
keys[ CKEDITOR.SHIFT + 9 ] = 'prev'; // SHIFT + TAB
|
||||
keys[ 32 ] = CKEDITOR.env.ie ? 'mouseup' : 'click'; // SPACE
|
||||
CKEDITOR.env.ie && ( keys[ 13 ] = 'mouseup' ); // Manage ENTER, since onclick is blocked in IE (#8041).
|
||||
|
||||
this._.pendingHtml = [];
|
||||
this._.pendingList = [];
|
||||
this._.items = {};
|
||||
this._.groups = {};
|
||||
},
|
||||
|
||||
_: {
|
||||
close: function() {
|
||||
if ( this._.started ) {
|
||||
var output = list.output( { items: this._.pendingList.join( '' ) } );
|
||||
this._.pendingList = [];
|
||||
this._.pendingHtml.push( output );
|
||||
delete this._.started;
|
||||
}
|
||||
},
|
||||
|
||||
getClick: function() {
|
||||
if ( !this._.click ) {
|
||||
this._.click = CKEDITOR.tools.addFunction( function( value ) {
|
||||
var marked = this.toggle( value );
|
||||
if ( this.onClick )
|
||||
this.onClick( value, marked );
|
||||
}, this );
|
||||
}
|
||||
return this._.click;
|
||||
}
|
||||
},
|
||||
|
||||
proto: {
|
||||
add: function( value, html, title ) {
|
||||
var id = CKEDITOR.tools.getNextId();
|
||||
|
||||
if ( !this._.started ) {
|
||||
this._.started = 1;
|
||||
this._.size = this._.size || 0;
|
||||
}
|
||||
|
||||
this._.items[ value ] = id;
|
||||
|
||||
var data = {
|
||||
id: id,
|
||||
val: escapeSingleQuotes( CKEDITOR.tools.htmlEncodeAttr( value ) ),
|
||||
onclick: CKEDITOR.env.ie ? 'onclick="return false;" onmouseup' : 'onclick',
|
||||
clickFn: this._.getClick(),
|
||||
title: CKEDITOR.tools.htmlEncodeAttr( title || value ),
|
||||
text: html || value
|
||||
};
|
||||
|
||||
this._.pendingList.push( listItem.output( data ) );
|
||||
},
|
||||
|
||||
startGroup: function( title ) {
|
||||
this._.close();
|
||||
|
||||
var id = CKEDITOR.tools.getNextId();
|
||||
|
||||
this._.groups[ title ] = id;
|
||||
|
||||
this._.pendingHtml.push( listGroup.output( { id: id, label: title } ) );
|
||||
},
|
||||
|
||||
commit: function() {
|
||||
this._.close();
|
||||
this.element.appendHtml( this._.pendingHtml.join( '' ) );
|
||||
delete this._.size;
|
||||
|
||||
this._.pendingHtml = [];
|
||||
},
|
||||
|
||||
toggle: function( value ) {
|
||||
var isMarked = this.isMarked( value );
|
||||
|
||||
if ( isMarked )
|
||||
this.unmark( value );
|
||||
else
|
||||
this.mark( value );
|
||||
|
||||
return !isMarked;
|
||||
},
|
||||
|
||||
hideGroup: function( groupTitle ) {
|
||||
var group = this.element.getDocument().getById( this._.groups[ groupTitle ] ),
|
||||
list = group && group.getNext();
|
||||
|
||||
if ( group ) {
|
||||
group.setStyle( 'display', 'none' );
|
||||
|
||||
if ( list && list.getName() == 'ul' )
|
||||
list.setStyle( 'display', 'none' );
|
||||
}
|
||||
},
|
||||
|
||||
hideItem: function( value ) {
|
||||
this.element.getDocument().getById( this._.items[ value ] ).setStyle( 'display', 'none' );
|
||||
},
|
||||
|
||||
showAll: function() {
|
||||
var items = this._.items,
|
||||
groups = this._.groups,
|
||||
doc = this.element.getDocument();
|
||||
|
||||
for ( var value in items ) {
|
||||
doc.getById( items[ value ] ).setStyle( 'display', '' );
|
||||
}
|
||||
|
||||
for ( var title in groups ) {
|
||||
var group = doc.getById( groups[ title ] ),
|
||||
list = group.getNext();
|
||||
|
||||
group.setStyle( 'display', '' );
|
||||
|
||||
if ( list && list.getName() == 'ul' )
|
||||
list.setStyle( 'display', '' );
|
||||
}
|
||||
},
|
||||
|
||||
mark: function( value ) {
|
||||
if ( !this.multiSelect )
|
||||
this.unmarkAll();
|
||||
|
||||
var itemId = this._.items[ value ],
|
||||
item = this.element.getDocument().getById( itemId );
|
||||
item.addClass( 'cke_selected' );
|
||||
|
||||
this.element.getDocument().getById( itemId + '_option' ).setAttribute( 'aria-selected', true );
|
||||
this.onMark && this.onMark( item );
|
||||
},
|
||||
|
||||
unmark: function( value ) {
|
||||
var doc = this.element.getDocument(),
|
||||
itemId = this._.items[ value ],
|
||||
item = doc.getById( itemId );
|
||||
|
||||
item.removeClass( 'cke_selected' );
|
||||
doc.getById( itemId + '_option' ).removeAttribute( 'aria-selected' );
|
||||
|
||||
this.onUnmark && this.onUnmark( item );
|
||||
},
|
||||
|
||||
unmarkAll: function() {
|
||||
var items = this._.items,
|
||||
doc = this.element.getDocument();
|
||||
|
||||
for ( var value in items ) {
|
||||
var itemId = items[ value ];
|
||||
|
||||
doc.getById( itemId ).removeClass( 'cke_selected' );
|
||||
doc.getById( itemId + '_option' ).removeAttribute( 'aria-selected' );
|
||||
}
|
||||
|
||||
this.onUnmark && this.onUnmark();
|
||||
},
|
||||
|
||||
isMarked: function( value ) {
|
||||
return this.element.getDocument().getById( this._.items[ value ] ).hasClass( 'cke_selected' );
|
||||
},
|
||||
|
||||
focus: function( value ) {
|
||||
this._.focusIndex = -1;
|
||||
|
||||
var links = this.element.getElementsByTag( 'a' ),
|
||||
link,
|
||||
selected,
|
||||
i = -1;
|
||||
|
||||
if ( value ) {
|
||||
selected = this.element.getDocument().getById( this._.items[ value ] ).getFirst();
|
||||
|
||||
while ( ( link = links.getItem( ++i ) ) ) {
|
||||
if ( link.equals( selected ) ) {
|
||||
this._.focusIndex = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
this.element.focus();
|
||||
|
||||
selected && setTimeout( function() {
|
||||
selected.focus();
|
||||
}, 0 );
|
||||
}
|
||||
}
|
||||
} );
|
||||
}
|
||||
} );
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.plugins.add( 'listblock', {
|
||||
requires: 'panel',
|
||||
|
||||
onLoad: function() {
|
||||
var list = CKEDITOR.addTemplate( 'panel-list', '<ul role="presentation" class="cke_panel_list">{items}</ul>' ),
|
||||
listItem = CKEDITOR.addTemplate( 'panel-list-item', '<li id="{id}" class="cke_panel_listItem" role=presentation>' +
|
||||
'<a id="{id}_option" _cke_focus=1 hidefocus=true' +
|
||||
' title="{title}"' +
|
||||
' href="javascript:void(\'{val}\')" ' +
|
||||
' {onclick}="CKEDITOR.tools.callFunction({clickFn},\'{val}\'); return false;"' + // #188
|
||||
' role="option">' +
|
||||
'{text}' +
|
||||
'</a>' +
|
||||
'</li>' ),
|
||||
listGroup = CKEDITOR.addTemplate( 'panel-list-group', '<h1 id="{id}" class="cke_panel_grouptitle" role="presentation" >{label}</h1>' ),
|
||||
reSingleQuote = /\'/g,
|
||||
escapeSingleQuotes = function( str ) {
|
||||
return str.replace( reSingleQuote, '\\\'' );
|
||||
};
|
||||
|
||||
CKEDITOR.ui.panel.prototype.addListBlock = function( name, definition ) {
|
||||
return this.addBlock( name, new CKEDITOR.ui.listBlock( this.getHolderElement(), definition ) );
|
||||
};
|
||||
|
||||
CKEDITOR.ui.listBlock = CKEDITOR.tools.createClass( {
|
||||
base: CKEDITOR.ui.panel.block,
|
||||
|
||||
$: function( blockHolder, blockDefinition ) {
|
||||
blockDefinition = blockDefinition || {};
|
||||
|
||||
var attribs = blockDefinition.attributes || ( blockDefinition.attributes = {} );
|
||||
( this.multiSelect = !!blockDefinition.multiSelect ) && ( attribs[ 'aria-multiselectable' ] = true );
|
||||
// Provide default role of 'listbox'.
|
||||
!attribs.role && ( attribs.role = 'listbox' );
|
||||
|
||||
// Call the base contructor.
|
||||
this.base.apply( this, arguments );
|
||||
|
||||
// Set the proper a11y attributes.
|
||||
this.element.setAttribute( 'role', attribs.role );
|
||||
|
||||
var keys = this.keys;
|
||||
keys[ 40 ] = 'next'; // ARROW-DOWN
|
||||
keys[ 9 ] = 'next'; // TAB
|
||||
keys[ 38 ] = 'prev'; // ARROW-UP
|
||||
keys[ CKEDITOR.SHIFT + 9 ] = 'prev'; // SHIFT + TAB
|
||||
keys[ 32 ] = CKEDITOR.env.ie ? 'mouseup' : 'click'; // SPACE
|
||||
CKEDITOR.env.ie && ( keys[ 13 ] = 'mouseup' ); // Manage ENTER, since onclick is blocked in IE (#8041).
|
||||
|
||||
this._.pendingHtml = [];
|
||||
this._.pendingList = [];
|
||||
this._.items = {};
|
||||
this._.groups = {};
|
||||
},
|
||||
|
||||
_: {
|
||||
close: function() {
|
||||
if ( this._.started ) {
|
||||
var output = list.output( { items: this._.pendingList.join( '' ) } );
|
||||
this._.pendingList = [];
|
||||
this._.pendingHtml.push( output );
|
||||
delete this._.started;
|
||||
}
|
||||
},
|
||||
|
||||
getClick: function() {
|
||||
if ( !this._.click ) {
|
||||
this._.click = CKEDITOR.tools.addFunction( function( value ) {
|
||||
var marked = this.toggle( value );
|
||||
if ( this.onClick )
|
||||
this.onClick( value, marked );
|
||||
}, this );
|
||||
}
|
||||
return this._.click;
|
||||
}
|
||||
},
|
||||
|
||||
proto: {
|
||||
add: function( value, html, title ) {
|
||||
var id = CKEDITOR.tools.getNextId();
|
||||
|
||||
if ( !this._.started ) {
|
||||
this._.started = 1;
|
||||
this._.size = this._.size || 0;
|
||||
}
|
||||
|
||||
this._.items[ value ] = id;
|
||||
|
||||
var data = {
|
||||
id: id,
|
||||
val: escapeSingleQuotes( CKEDITOR.tools.htmlEncodeAttr( value ) ),
|
||||
onclick: CKEDITOR.env.ie ? 'onclick="return false;" onmouseup' : 'onclick',
|
||||
clickFn: this._.getClick(),
|
||||
title: CKEDITOR.tools.htmlEncodeAttr( title || value ),
|
||||
text: html || value
|
||||
};
|
||||
|
||||
this._.pendingList.push( listItem.output( data ) );
|
||||
},
|
||||
|
||||
startGroup: function( title ) {
|
||||
this._.close();
|
||||
|
||||
var id = CKEDITOR.tools.getNextId();
|
||||
|
||||
this._.groups[ title ] = id;
|
||||
|
||||
this._.pendingHtml.push( listGroup.output( { id: id, label: title } ) );
|
||||
},
|
||||
|
||||
commit: function() {
|
||||
this._.close();
|
||||
this.element.appendHtml( this._.pendingHtml.join( '' ) );
|
||||
delete this._.size;
|
||||
|
||||
this._.pendingHtml = [];
|
||||
},
|
||||
|
||||
toggle: function( value ) {
|
||||
var isMarked = this.isMarked( value );
|
||||
|
||||
if ( isMarked )
|
||||
this.unmark( value );
|
||||
else
|
||||
this.mark( value );
|
||||
|
||||
return !isMarked;
|
||||
},
|
||||
|
||||
hideGroup: function( groupTitle ) {
|
||||
var group = this.element.getDocument().getById( this._.groups[ groupTitle ] ),
|
||||
list = group && group.getNext();
|
||||
|
||||
if ( group ) {
|
||||
group.setStyle( 'display', 'none' );
|
||||
|
||||
if ( list && list.getName() == 'ul' )
|
||||
list.setStyle( 'display', 'none' );
|
||||
}
|
||||
},
|
||||
|
||||
hideItem: function( value ) {
|
||||
this.element.getDocument().getById( this._.items[ value ] ).setStyle( 'display', 'none' );
|
||||
},
|
||||
|
||||
showAll: function() {
|
||||
var items = this._.items,
|
||||
groups = this._.groups,
|
||||
doc = this.element.getDocument();
|
||||
|
||||
for ( var value in items ) {
|
||||
doc.getById( items[ value ] ).setStyle( 'display', '' );
|
||||
}
|
||||
|
||||
for ( var title in groups ) {
|
||||
var group = doc.getById( groups[ title ] ),
|
||||
list = group.getNext();
|
||||
|
||||
group.setStyle( 'display', '' );
|
||||
|
||||
if ( list && list.getName() == 'ul' )
|
||||
list.setStyle( 'display', '' );
|
||||
}
|
||||
},
|
||||
|
||||
mark: function( value ) {
|
||||
if ( !this.multiSelect )
|
||||
this.unmarkAll();
|
||||
|
||||
var itemId = this._.items[ value ],
|
||||
item = this.element.getDocument().getById( itemId );
|
||||
item.addClass( 'cke_selected' );
|
||||
|
||||
this.element.getDocument().getById( itemId + '_option' ).setAttribute( 'aria-selected', true );
|
||||
this.onMark && this.onMark( item );
|
||||
},
|
||||
|
||||
unmark: function( value ) {
|
||||
var doc = this.element.getDocument(),
|
||||
itemId = this._.items[ value ],
|
||||
item = doc.getById( itemId );
|
||||
|
||||
item.removeClass( 'cke_selected' );
|
||||
doc.getById( itemId + '_option' ).removeAttribute( 'aria-selected' );
|
||||
|
||||
this.onUnmark && this.onUnmark( item );
|
||||
},
|
||||
|
||||
unmarkAll: function() {
|
||||
var items = this._.items,
|
||||
doc = this.element.getDocument();
|
||||
|
||||
for ( var value in items ) {
|
||||
var itemId = items[ value ];
|
||||
|
||||
doc.getById( itemId ).removeClass( 'cke_selected' );
|
||||
doc.getById( itemId + '_option' ).removeAttribute( 'aria-selected' );
|
||||
}
|
||||
|
||||
this.onUnmark && this.onUnmark();
|
||||
},
|
||||
|
||||
isMarked: function( value ) {
|
||||
return this.element.getDocument().getById( this._.items[ value ] ).hasClass( 'cke_selected' );
|
||||
},
|
||||
|
||||
focus: function( value ) {
|
||||
this._.focusIndex = -1;
|
||||
|
||||
var links = this.element.getElementsByTag( 'a' ),
|
||||
link,
|
||||
selected,
|
||||
i = -1;
|
||||
|
||||
if ( value ) {
|
||||
selected = this.element.getDocument().getById( this._.items[ value ] ).getFirst();
|
||||
|
||||
while ( ( link = links.getItem( ++i ) ) ) {
|
||||
if ( link.equals( selected ) ) {
|
||||
this._.focusIndex = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
this.element.focus();
|
||||
|
||||
selected && setTimeout( function() {
|
||||
selected.focus();
|
||||
}, 0 );
|
||||
}
|
||||
}
|
||||
} );
|
||||
}
|
||||
} );
|
||||
|
||||
@@ -1,402 +1,402 @@
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
( function() {
|
||||
CKEDITOR.plugins.add( 'panel', {
|
||||
beforeInit: function( editor ) {
|
||||
editor.ui.addHandler( CKEDITOR.UI_PANEL, CKEDITOR.ui.panel.handler );
|
||||
}
|
||||
} );
|
||||
|
||||
/**
|
||||
* Panel UI element.
|
||||
*
|
||||
* @readonly
|
||||
* @property {String} [='panel']
|
||||
* @member CKEDITOR
|
||||
*/
|
||||
CKEDITOR.UI_PANEL = 'panel';
|
||||
|
||||
/**
|
||||
* @class
|
||||
* @constructor Creates a panel class instance.
|
||||
* @param {CKEDITOR.dom.document} document
|
||||
* @param {Object} definition
|
||||
*/
|
||||
CKEDITOR.ui.panel = function( document, definition ) {
|
||||
// Copy all definition properties to this object.
|
||||
if ( definition )
|
||||
CKEDITOR.tools.extend( this, definition );
|
||||
|
||||
// Set defaults.
|
||||
CKEDITOR.tools.extend( this, {
|
||||
className: '',
|
||||
css: []
|
||||
} );
|
||||
|
||||
this.id = CKEDITOR.tools.getNextId();
|
||||
this.document = document;
|
||||
this.isFramed = this.forceIFrame || this.css.length;
|
||||
|
||||
this._ = {
|
||||
blocks: {}
|
||||
};
|
||||
};
|
||||
|
||||
/**
|
||||
* Represents panel handler object.
|
||||
*
|
||||
* @class
|
||||
* @singleton
|
||||
* @extends CKEDITOR.ui.handlerDefinition
|
||||
*/
|
||||
CKEDITOR.ui.panel.handler = {
|
||||
/**
|
||||
* Transforms a panel definition in a {@link CKEDITOR.ui.panel} instance.
|
||||
*
|
||||
* @param {Object} definition
|
||||
* @returns {CKEDITOR.ui.panel}
|
||||
*/
|
||||
create: function( definition ) {
|
||||
return new CKEDITOR.ui.panel( definition );
|
||||
}
|
||||
};
|
||||
|
||||
var panelTpl = CKEDITOR.addTemplate( 'panel', '<div lang="{langCode}" id="{id}" dir={dir}' +
|
||||
' class="cke cke_reset_all {editorId} cke_panel cke_panel {cls} cke_{dir}"' +
|
||||
' style="z-index:{z-index}" role="presentation">' +
|
||||
'{frame}' +
|
||||
'</div>' );
|
||||
|
||||
var frameTpl = CKEDITOR.addTemplate( 'panel-frame', '<iframe id="{id}" class="cke_panel_frame" role="presentation" frameborder="0" src="{src}"></iframe>' );
|
||||
|
||||
var frameDocTpl = CKEDITOR.addTemplate( 'panel-frame-inner', '<!DOCTYPE html>' +
|
||||
'<html class="cke_panel_container {env}" dir="{dir}" lang="{langCode}">' +
|
||||
'<head>{css}</head>' +
|
||||
'<body class="cke_{dir}"' +
|
||||
' style="margin:0;padding:0" onload="{onload}"></body>' +
|
||||
'<\/html>' );
|
||||
|
||||
/** @class CKEDITOR.ui.panel */
|
||||
CKEDITOR.ui.panel.prototype = {
|
||||
/**
|
||||
* Renders the combo.
|
||||
*
|
||||
* @param {CKEDITOR.editor} editor The editor instance which this button is
|
||||
* to be used by.
|
||||
* @param {Array} [output] The output array to which append the HTML relative
|
||||
* to this button.
|
||||
*/
|
||||
render: function( editor, output ) {
|
||||
this.getHolderElement = function() {
|
||||
var holder = this._.holder;
|
||||
|
||||
if ( !holder ) {
|
||||
if ( this.isFramed ) {
|
||||
var iframe = this.document.getById( this.id + '_frame' ),
|
||||
parentDiv = iframe.getParent(),
|
||||
doc = iframe.getFrameDocument();
|
||||
|
||||
// Make it scrollable on iOS. (#8308)
|
||||
CKEDITOR.env.iOS && parentDiv.setStyles( {
|
||||
'overflow': 'scroll',
|
||||
'-webkit-overflow-scrolling': 'touch'
|
||||
} );
|
||||
|
||||
var onLoad = CKEDITOR.tools.addFunction( CKEDITOR.tools.bind( function( ev ) {
|
||||
this.isLoaded = true;
|
||||
if ( this.onLoad )
|
||||
this.onLoad();
|
||||
}, this ) );
|
||||
|
||||
doc.write( frameDocTpl.output( CKEDITOR.tools.extend( {
|
||||
css: CKEDITOR.tools.buildStyleHtml( this.css ),
|
||||
onload: 'window.parent.CKEDITOR.tools.callFunction(' + onLoad + ');'
|
||||
}, data ) ) );
|
||||
|
||||
var win = doc.getWindow();
|
||||
|
||||
// Register the CKEDITOR global.
|
||||
win.$.CKEDITOR = CKEDITOR;
|
||||
|
||||
// Arrow keys for scrolling is only preventable with 'keypress' event in Opera (#4534).
|
||||
doc.on( 'key' + ( CKEDITOR.env.opera ? 'press' : 'down' ), function( evt ) {
|
||||
var keystroke = evt.data.getKeystroke(),
|
||||
dir = this.document.getById( this.id ).getAttribute( 'dir' );
|
||||
|
||||
// Delegate key processing to block.
|
||||
if ( this._.onKeyDown && this._.onKeyDown( keystroke ) === false ) {
|
||||
evt.data.preventDefault();
|
||||
return;
|
||||
}
|
||||
|
||||
// ESC/ARROW-LEFT(ltr) OR ARROW-RIGHT(rtl)
|
||||
if ( keystroke == 27 || keystroke == ( dir == 'rtl' ? 39 : 37 ) ) {
|
||||
if ( this.onEscape && this.onEscape( keystroke ) === false )
|
||||
evt.data.preventDefault();
|
||||
}
|
||||
}, this );
|
||||
|
||||
holder = doc.getBody();
|
||||
holder.unselectable();
|
||||
CKEDITOR.env.air && CKEDITOR.tools.callFunction( onLoad );
|
||||
} else
|
||||
holder = this.document.getById( this.id );
|
||||
|
||||
this._.holder = holder;
|
||||
}
|
||||
|
||||
return holder;
|
||||
};
|
||||
|
||||
var data = {
|
||||
editorId: editor.id,
|
||||
id: this.id,
|
||||
langCode: editor.langCode,
|
||||
dir: editor.lang.dir,
|
||||
cls: this.className,
|
||||
frame: '',
|
||||
env: CKEDITOR.env.cssClass,
|
||||
'z-index': editor.config.baseFloatZIndex + 1
|
||||
};
|
||||
|
||||
if ( this.isFramed ) {
|
||||
// With IE, the custom domain has to be taken care at first,
|
||||
// for other browers, the 'src' attribute should be left empty to
|
||||
// trigger iframe's 'load' event.
|
||||
var src =
|
||||
CKEDITOR.env.air ? 'javascript:void(0)' :
|
||||
CKEDITOR.env.ie ? 'javascript:void(function(){' + encodeURIComponent(
|
||||
'document.open();' +
|
||||
// In IE, the document domain must be set any time we call document.open().
|
||||
'(' + CKEDITOR.tools.fixDomain + ')();' +
|
||||
'document.close();'
|
||||
) + '}())' :
|
||||
'';
|
||||
|
||||
data.frame = frameTpl.output( {
|
||||
id: this.id + '_frame',
|
||||
src: src
|
||||
} );
|
||||
}
|
||||
|
||||
var html = panelTpl.output( data );
|
||||
|
||||
if ( output )
|
||||
output.push( html );
|
||||
|
||||
return html;
|
||||
},
|
||||
|
||||
/**
|
||||
* @todo
|
||||
*/
|
||||
addBlock: function( name, block ) {
|
||||
block = this._.blocks[ name ] = block instanceof CKEDITOR.ui.panel.block ? block : new CKEDITOR.ui.panel.block( this.getHolderElement(), block );
|
||||
|
||||
if ( !this._.currentBlock )
|
||||
this.showBlock( name );
|
||||
|
||||
return block;
|
||||
},
|
||||
|
||||
/**
|
||||
* @todo
|
||||
*/
|
||||
getBlock: function( name ) {
|
||||
return this._.blocks[ name ];
|
||||
},
|
||||
|
||||
/**
|
||||
* @todo
|
||||
*/
|
||||
showBlock: function( name ) {
|
||||
var blocks = this._.blocks,
|
||||
block = blocks[ name ],
|
||||
current = this._.currentBlock;
|
||||
|
||||
// ARIA role works better in IE on the body element, while on the iframe
|
||||
// for FF. (#8864)
|
||||
var holder = !this.forceIFrame || CKEDITOR.env.ie ? this._.holder : this.document.getById( this.id + '_frame' );
|
||||
|
||||
if ( current )
|
||||
current.hide();
|
||||
|
||||
this._.currentBlock = block;
|
||||
|
||||
CKEDITOR.fire( 'ariaWidget', holder );
|
||||
|
||||
// Reset the focus index, so it will always go into the first one.
|
||||
block._.focusIndex = -1;
|
||||
|
||||
this._.onKeyDown = block.onKeyDown && CKEDITOR.tools.bind( block.onKeyDown, block );
|
||||
|
||||
block.show();
|
||||
|
||||
return block;
|
||||
},
|
||||
|
||||
/**
|
||||
* @todo
|
||||
*/
|
||||
destroy: function() {
|
||||
this.element && this.element.remove();
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* @class
|
||||
*
|
||||
* @todo class and all methods
|
||||
*/
|
||||
CKEDITOR.ui.panel.block = CKEDITOR.tools.createClass( {
|
||||
/**
|
||||
* Creates a block class instances.
|
||||
*
|
||||
* @constructor
|
||||
* @todo
|
||||
*/
|
||||
$: function( blockHolder, blockDefinition ) {
|
||||
this.element = blockHolder.append( blockHolder.getDocument().createElement( 'div', {
|
||||
attributes: {
|
||||
'tabindex': -1,
|
||||
'class': 'cke_panel_block'
|
||||
},
|
||||
styles: {
|
||||
display: 'none'
|
||||
}
|
||||
} ) );
|
||||
|
||||
// Copy all definition properties to this object.
|
||||
if ( blockDefinition )
|
||||
CKEDITOR.tools.extend( this, blockDefinition );
|
||||
|
||||
// Set the a11y attributes of this element ...
|
||||
this.element.setAttributes( {
|
||||
'role': this.attributes.role || 'presentation',
|
||||
'aria-label': this.attributes[ 'aria-label' ],
|
||||
'title': this.attributes.title || this.attributes[ 'aria-label' ]
|
||||
} );
|
||||
|
||||
this.keys = {};
|
||||
|
||||
this._.focusIndex = -1;
|
||||
|
||||
// Disable context menu for panels.
|
||||
this.element.disableContextMenu();
|
||||
},
|
||||
|
||||
_: {
|
||||
|
||||
/**
|
||||
* Mark the item specified by the index as current activated.
|
||||
*/
|
||||
markItem: function( index ) {
|
||||
if ( index == -1 )
|
||||
return;
|
||||
var links = this.element.getElementsByTag( 'a' );
|
||||
var item = links.getItem( this._.focusIndex = index );
|
||||
|
||||
// Safari need focus on the iframe window first(#3389), but we need
|
||||
// lock the blur to avoid hiding the panel.
|
||||
if ( CKEDITOR.env.webkit || CKEDITOR.env.opera )
|
||||
item.getDocument().getWindow().focus();
|
||||
item.focus();
|
||||
|
||||
this.onMark && this.onMark( item );
|
||||
}
|
||||
},
|
||||
|
||||
proto: {
|
||||
show: function() {
|
||||
this.element.setStyle( 'display', '' );
|
||||
},
|
||||
|
||||
hide: function() {
|
||||
if ( !this.onHide || this.onHide.call( this ) !== true )
|
||||
this.element.setStyle( 'display', 'none' );
|
||||
},
|
||||
|
||||
onKeyDown: function( keystroke, noCycle ) {
|
||||
var keyAction = this.keys[ keystroke ];
|
||||
switch ( keyAction ) {
|
||||
// Move forward.
|
||||
case 'next':
|
||||
var index = this._.focusIndex,
|
||||
links = this.element.getElementsByTag( 'a' ),
|
||||
link;
|
||||
|
||||
while ( ( link = links.getItem( ++index ) ) ) {
|
||||
// Move the focus only if the element is marked with
|
||||
// the _cke_focus and it it's visible (check if it has
|
||||
// width).
|
||||
if ( link.getAttribute( '_cke_focus' ) && link.$.offsetWidth ) {
|
||||
this._.focusIndex = index;
|
||||
link.focus();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// If no link was found, cycle and restart from the top. (#11125)
|
||||
if ( !link && !noCycle ) {
|
||||
this._.focusIndex = -1;
|
||||
return this.onKeyDown( keystroke, 1 );
|
||||
}
|
||||
|
||||
return false;
|
||||
|
||||
// Move backward.
|
||||
case 'prev':
|
||||
index = this._.focusIndex;
|
||||
links = this.element.getElementsByTag( 'a' );
|
||||
|
||||
while ( index > 0 && ( link = links.getItem( --index ) ) ) {
|
||||
// Move the focus only if the element is marked with
|
||||
// the _cke_focus and it it's visible (check if it has
|
||||
// width).
|
||||
if ( link.getAttribute( '_cke_focus' ) && link.$.offsetWidth ) {
|
||||
this._.focusIndex = index;
|
||||
link.focus();
|
||||
break;
|
||||
}
|
||||
|
||||
// Make sure link is null when the loop ends and nothing was
|
||||
// found (#11125).
|
||||
link = null;
|
||||
}
|
||||
|
||||
// If no link was found, cycle and restart from the bottom. (#11125)
|
||||
if ( !link && !noCycle ) {
|
||||
this._.focusIndex = links.count();
|
||||
return this.onKeyDown( keystroke, 1 );
|
||||
}
|
||||
|
||||
return false;
|
||||
|
||||
case 'click':
|
||||
case 'mouseup':
|
||||
index = this._.focusIndex;
|
||||
link = index >= 0 && this.element.getElementsByTag( 'a' ).getItem( index );
|
||||
|
||||
if ( link )
|
||||
link.$[ keyAction ] ? link.$[ keyAction ]() : link.$[ 'on' + keyAction ]();
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
} );
|
||||
|
||||
} )();
|
||||
|
||||
/**
|
||||
* Fired when a panel is added to the document.
|
||||
*
|
||||
* @event ariaWidget
|
||||
* @member CKEDITOR
|
||||
* @param {Object} data The element wrapping the panel.
|
||||
*/
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
( function() {
|
||||
CKEDITOR.plugins.add( 'panel', {
|
||||
beforeInit: function( editor ) {
|
||||
editor.ui.addHandler( CKEDITOR.UI_PANEL, CKEDITOR.ui.panel.handler );
|
||||
}
|
||||
} );
|
||||
|
||||
/**
|
||||
* Panel UI element.
|
||||
*
|
||||
* @readonly
|
||||
* @property {String} [='panel']
|
||||
* @member CKEDITOR
|
||||
*/
|
||||
CKEDITOR.UI_PANEL = 'panel';
|
||||
|
||||
/**
|
||||
* @class
|
||||
* @constructor Creates a panel class instance.
|
||||
* @param {CKEDITOR.dom.document} document
|
||||
* @param {Object} definition
|
||||
*/
|
||||
CKEDITOR.ui.panel = function( document, definition ) {
|
||||
// Copy all definition properties to this object.
|
||||
if ( definition )
|
||||
CKEDITOR.tools.extend( this, definition );
|
||||
|
||||
// Set defaults.
|
||||
CKEDITOR.tools.extend( this, {
|
||||
className: '',
|
||||
css: []
|
||||
} );
|
||||
|
||||
this.id = CKEDITOR.tools.getNextId();
|
||||
this.document = document;
|
||||
this.isFramed = this.forceIFrame || this.css.length;
|
||||
|
||||
this._ = {
|
||||
blocks: {}
|
||||
};
|
||||
};
|
||||
|
||||
/**
|
||||
* Represents panel handler object.
|
||||
*
|
||||
* @class
|
||||
* @singleton
|
||||
* @extends CKEDITOR.ui.handlerDefinition
|
||||
*/
|
||||
CKEDITOR.ui.panel.handler = {
|
||||
/**
|
||||
* Transforms a panel definition in a {@link CKEDITOR.ui.panel} instance.
|
||||
*
|
||||
* @param {Object} definition
|
||||
* @returns {CKEDITOR.ui.panel}
|
||||
*/
|
||||
create: function( definition ) {
|
||||
return new CKEDITOR.ui.panel( definition );
|
||||
}
|
||||
};
|
||||
|
||||
var panelTpl = CKEDITOR.addTemplate( 'panel', '<div lang="{langCode}" id="{id}" dir={dir}' +
|
||||
' class="cke cke_reset_all {editorId} cke_panel cke_panel {cls} cke_{dir}"' +
|
||||
' style="z-index:{z-index}" role="presentation">' +
|
||||
'{frame}' +
|
||||
'</div>' );
|
||||
|
||||
var frameTpl = CKEDITOR.addTemplate( 'panel-frame', '<iframe id="{id}" class="cke_panel_frame" role="presentation" frameborder="0" src="{src}"></iframe>' );
|
||||
|
||||
var frameDocTpl = CKEDITOR.addTemplate( 'panel-frame-inner', '<!DOCTYPE html>' +
|
||||
'<html class="cke_panel_container {env}" dir="{dir}" lang="{langCode}">' +
|
||||
'<head>{css}</head>' +
|
||||
'<body class="cke_{dir}"' +
|
||||
' style="margin:0;padding:0" onload="{onload}"></body>' +
|
||||
'<\/html>' );
|
||||
|
||||
/** @class CKEDITOR.ui.panel */
|
||||
CKEDITOR.ui.panel.prototype = {
|
||||
/**
|
||||
* Renders the combo.
|
||||
*
|
||||
* @param {CKEDITOR.editor} editor The editor instance which this button is
|
||||
* to be used by.
|
||||
* @param {Array} [output] The output array to which append the HTML relative
|
||||
* to this button.
|
||||
*/
|
||||
render: function( editor, output ) {
|
||||
this.getHolderElement = function() {
|
||||
var holder = this._.holder;
|
||||
|
||||
if ( !holder ) {
|
||||
if ( this.isFramed ) {
|
||||
var iframe = this.document.getById( this.id + '_frame' ),
|
||||
parentDiv = iframe.getParent(),
|
||||
doc = iframe.getFrameDocument();
|
||||
|
||||
// Make it scrollable on iOS. (#8308)
|
||||
CKEDITOR.env.iOS && parentDiv.setStyles( {
|
||||
'overflow': 'scroll',
|
||||
'-webkit-overflow-scrolling': 'touch'
|
||||
} );
|
||||
|
||||
var onLoad = CKEDITOR.tools.addFunction( CKEDITOR.tools.bind( function( ev ) {
|
||||
this.isLoaded = true;
|
||||
if ( this.onLoad )
|
||||
this.onLoad();
|
||||
}, this ) );
|
||||
|
||||
doc.write( frameDocTpl.output( CKEDITOR.tools.extend( {
|
||||
css: CKEDITOR.tools.buildStyleHtml( this.css ),
|
||||
onload: 'window.parent.CKEDITOR.tools.callFunction(' + onLoad + ');'
|
||||
}, data ) ) );
|
||||
|
||||
var win = doc.getWindow();
|
||||
|
||||
// Register the CKEDITOR global.
|
||||
win.$.CKEDITOR = CKEDITOR;
|
||||
|
||||
// Arrow keys for scrolling is only preventable with 'keypress' event in Opera (#4534).
|
||||
doc.on( 'key' + ( CKEDITOR.env.opera ? 'press' : 'down' ), function( evt ) {
|
||||
var keystroke = evt.data.getKeystroke(),
|
||||
dir = this.document.getById( this.id ).getAttribute( 'dir' );
|
||||
|
||||
// Delegate key processing to block.
|
||||
if ( this._.onKeyDown && this._.onKeyDown( keystroke ) === false ) {
|
||||
evt.data.preventDefault();
|
||||
return;
|
||||
}
|
||||
|
||||
// ESC/ARROW-LEFT(ltr) OR ARROW-RIGHT(rtl)
|
||||
if ( keystroke == 27 || keystroke == ( dir == 'rtl' ? 39 : 37 ) ) {
|
||||
if ( this.onEscape && this.onEscape( keystroke ) === false )
|
||||
evt.data.preventDefault();
|
||||
}
|
||||
}, this );
|
||||
|
||||
holder = doc.getBody();
|
||||
holder.unselectable();
|
||||
CKEDITOR.env.air && CKEDITOR.tools.callFunction( onLoad );
|
||||
} else
|
||||
holder = this.document.getById( this.id );
|
||||
|
||||
this._.holder = holder;
|
||||
}
|
||||
|
||||
return holder;
|
||||
};
|
||||
|
||||
var data = {
|
||||
editorId: editor.id,
|
||||
id: this.id,
|
||||
langCode: editor.langCode,
|
||||
dir: editor.lang.dir,
|
||||
cls: this.className,
|
||||
frame: '',
|
||||
env: CKEDITOR.env.cssClass,
|
||||
'z-index': editor.config.baseFloatZIndex + 1
|
||||
};
|
||||
|
||||
if ( this.isFramed ) {
|
||||
// With IE, the custom domain has to be taken care at first,
|
||||
// for other browers, the 'src' attribute should be left empty to
|
||||
// trigger iframe's 'load' event.
|
||||
var src =
|
||||
CKEDITOR.env.air ? 'javascript:void(0)' :
|
||||
CKEDITOR.env.ie ? 'javascript:void(function(){' + encodeURIComponent(
|
||||
'document.open();' +
|
||||
// In IE, the document domain must be set any time we call document.open().
|
||||
'(' + CKEDITOR.tools.fixDomain + ')();' +
|
||||
'document.close();'
|
||||
) + '}())' :
|
||||
'';
|
||||
|
||||
data.frame = frameTpl.output( {
|
||||
id: this.id + '_frame',
|
||||
src: src
|
||||
} );
|
||||
}
|
||||
|
||||
var html = panelTpl.output( data );
|
||||
|
||||
if ( output )
|
||||
output.push( html );
|
||||
|
||||
return html;
|
||||
},
|
||||
|
||||
/**
|
||||
* @todo
|
||||
*/
|
||||
addBlock: function( name, block ) {
|
||||
block = this._.blocks[ name ] = block instanceof CKEDITOR.ui.panel.block ? block : new CKEDITOR.ui.panel.block( this.getHolderElement(), block );
|
||||
|
||||
if ( !this._.currentBlock )
|
||||
this.showBlock( name );
|
||||
|
||||
return block;
|
||||
},
|
||||
|
||||
/**
|
||||
* @todo
|
||||
*/
|
||||
getBlock: function( name ) {
|
||||
return this._.blocks[ name ];
|
||||
},
|
||||
|
||||
/**
|
||||
* @todo
|
||||
*/
|
||||
showBlock: function( name ) {
|
||||
var blocks = this._.blocks,
|
||||
block = blocks[ name ],
|
||||
current = this._.currentBlock;
|
||||
|
||||
// ARIA role works better in IE on the body element, while on the iframe
|
||||
// for FF. (#8864)
|
||||
var holder = !this.forceIFrame || CKEDITOR.env.ie ? this._.holder : this.document.getById( this.id + '_frame' );
|
||||
|
||||
if ( current )
|
||||
current.hide();
|
||||
|
||||
this._.currentBlock = block;
|
||||
|
||||
CKEDITOR.fire( 'ariaWidget', holder );
|
||||
|
||||
// Reset the focus index, so it will always go into the first one.
|
||||
block._.focusIndex = -1;
|
||||
|
||||
this._.onKeyDown = block.onKeyDown && CKEDITOR.tools.bind( block.onKeyDown, block );
|
||||
|
||||
block.show();
|
||||
|
||||
return block;
|
||||
},
|
||||
|
||||
/**
|
||||
* @todo
|
||||
*/
|
||||
destroy: function() {
|
||||
this.element && this.element.remove();
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* @class
|
||||
*
|
||||
* @todo class and all methods
|
||||
*/
|
||||
CKEDITOR.ui.panel.block = CKEDITOR.tools.createClass( {
|
||||
/**
|
||||
* Creates a block class instances.
|
||||
*
|
||||
* @constructor
|
||||
* @todo
|
||||
*/
|
||||
$: function( blockHolder, blockDefinition ) {
|
||||
this.element = blockHolder.append( blockHolder.getDocument().createElement( 'div', {
|
||||
attributes: {
|
||||
'tabindex': -1,
|
||||
'class': 'cke_panel_block'
|
||||
},
|
||||
styles: {
|
||||
display: 'none'
|
||||
}
|
||||
} ) );
|
||||
|
||||
// Copy all definition properties to this object.
|
||||
if ( blockDefinition )
|
||||
CKEDITOR.tools.extend( this, blockDefinition );
|
||||
|
||||
// Set the a11y attributes of this element ...
|
||||
this.element.setAttributes( {
|
||||
'role': this.attributes.role || 'presentation',
|
||||
'aria-label': this.attributes[ 'aria-label' ],
|
||||
'title': this.attributes.title || this.attributes[ 'aria-label' ]
|
||||
} );
|
||||
|
||||
this.keys = {};
|
||||
|
||||
this._.focusIndex = -1;
|
||||
|
||||
// Disable context menu for panels.
|
||||
this.element.disableContextMenu();
|
||||
},
|
||||
|
||||
_: {
|
||||
|
||||
/**
|
||||
* Mark the item specified by the index as current activated.
|
||||
*/
|
||||
markItem: function( index ) {
|
||||
if ( index == -1 )
|
||||
return;
|
||||
var links = this.element.getElementsByTag( 'a' );
|
||||
var item = links.getItem( this._.focusIndex = index );
|
||||
|
||||
// Safari need focus on the iframe window first(#3389), but we need
|
||||
// lock the blur to avoid hiding the panel.
|
||||
if ( CKEDITOR.env.webkit || CKEDITOR.env.opera )
|
||||
item.getDocument().getWindow().focus();
|
||||
item.focus();
|
||||
|
||||
this.onMark && this.onMark( item );
|
||||
}
|
||||
},
|
||||
|
||||
proto: {
|
||||
show: function() {
|
||||
this.element.setStyle( 'display', '' );
|
||||
},
|
||||
|
||||
hide: function() {
|
||||
if ( !this.onHide || this.onHide.call( this ) !== true )
|
||||
this.element.setStyle( 'display', 'none' );
|
||||
},
|
||||
|
||||
onKeyDown: function( keystroke, noCycle ) {
|
||||
var keyAction = this.keys[ keystroke ];
|
||||
switch ( keyAction ) {
|
||||
// Move forward.
|
||||
case 'next':
|
||||
var index = this._.focusIndex,
|
||||
links = this.element.getElementsByTag( 'a' ),
|
||||
link;
|
||||
|
||||
while ( ( link = links.getItem( ++index ) ) ) {
|
||||
// Move the focus only if the element is marked with
|
||||
// the _cke_focus and it it's visible (check if it has
|
||||
// width).
|
||||
if ( link.getAttribute( '_cke_focus' ) && link.$.offsetWidth ) {
|
||||
this._.focusIndex = index;
|
||||
link.focus();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// If no link was found, cycle and restart from the top. (#11125)
|
||||
if ( !link && !noCycle ) {
|
||||
this._.focusIndex = -1;
|
||||
return this.onKeyDown( keystroke, 1 );
|
||||
}
|
||||
|
||||
return false;
|
||||
|
||||
// Move backward.
|
||||
case 'prev':
|
||||
index = this._.focusIndex;
|
||||
links = this.element.getElementsByTag( 'a' );
|
||||
|
||||
while ( index > 0 && ( link = links.getItem( --index ) ) ) {
|
||||
// Move the focus only if the element is marked with
|
||||
// the _cke_focus and it it's visible (check if it has
|
||||
// width).
|
||||
if ( link.getAttribute( '_cke_focus' ) && link.$.offsetWidth ) {
|
||||
this._.focusIndex = index;
|
||||
link.focus();
|
||||
break;
|
||||
}
|
||||
|
||||
// Make sure link is null when the loop ends and nothing was
|
||||
// found (#11125).
|
||||
link = null;
|
||||
}
|
||||
|
||||
// If no link was found, cycle and restart from the bottom. (#11125)
|
||||
if ( !link && !noCycle ) {
|
||||
this._.focusIndex = links.count();
|
||||
return this.onKeyDown( keystroke, 1 );
|
||||
}
|
||||
|
||||
return false;
|
||||
|
||||
case 'click':
|
||||
case 'mouseup':
|
||||
index = this._.focusIndex;
|
||||
link = index >= 0 && this.element.getElementsByTag( 'a' ).getItem( index );
|
||||
|
||||
if ( link )
|
||||
link.$[ keyAction ] ? link.$[ keyAction ]() : link.$[ 'on' + keyAction ]();
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
} );
|
||||
|
||||
} )();
|
||||
|
||||
/**
|
||||
* Fired when a panel is added to the document.
|
||||
*
|
||||
* @event ariaWidget
|
||||
* @member CKEDITOR
|
||||
* @param {Object} data The element wrapping the panel.
|
||||
*/
|
||||
|
||||
@@ -1,65 +1,65 @@
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.plugins.add( 'popup' );
|
||||
|
||||
CKEDITOR.tools.extend( CKEDITOR.editor.prototype, {
|
||||
/**
|
||||
* Opens Browser in a popup. The `width` and `height` parameters accept
|
||||
* numbers (pixels) or percent (of screen size) values.
|
||||
*
|
||||
* @member CKEDITOR.editor
|
||||
* @param {String} url The url of the external file browser.
|
||||
* @param {Number/String} [width='80%'] Popup window width.
|
||||
* @param {Number/String} [height='70%'] Popup window height.
|
||||
* @param {String} [options='location=no,menubar=no,toolbar=no,dependent=yes,minimizable=no,modal=yes,alwaysRaised=yes,resizable=yes,scrollbars=yes']
|
||||
* Popup window features.
|
||||
*/
|
||||
popup: function( url, width, height, options ) {
|
||||
width = width || '80%';
|
||||
height = height || '70%';
|
||||
|
||||
if ( typeof width == 'string' && width.length > 1 && width.substr( width.length - 1, 1 ) == '%' )
|
||||
width = parseInt( window.screen.width * parseInt( width, 10 ) / 100, 10 );
|
||||
|
||||
if ( typeof height == 'string' && height.length > 1 && height.substr( height.length - 1, 1 ) == '%' )
|
||||
height = parseInt( window.screen.height * parseInt( height, 10 ) / 100, 10 );
|
||||
|
||||
if ( width < 640 )
|
||||
width = 640;
|
||||
|
||||
if ( height < 420 )
|
||||
height = 420;
|
||||
|
||||
var top = parseInt( ( window.screen.height - height ) / 2, 10 ),
|
||||
left = parseInt( ( window.screen.width - width ) / 2, 10 );
|
||||
|
||||
options = ( options || 'location=no,menubar=no,toolbar=no,dependent=yes,minimizable=no,modal=yes,alwaysRaised=yes,resizable=yes,scrollbars=yes' ) + ',width=' + width +
|
||||
',height=' + height +
|
||||
',top=' + top +
|
||||
',left=' + left;
|
||||
|
||||
var popupWindow = window.open( '', null, options, true );
|
||||
|
||||
// Blocked by a popup blocker.
|
||||
if ( !popupWindow )
|
||||
return false;
|
||||
|
||||
try {
|
||||
// Chrome is problematic with moveTo/resizeTo, but it's not really needed here (#8855).
|
||||
var ua = navigator.userAgent.toLowerCase();
|
||||
if ( ua.indexOf( ' chrome/' ) == -1 ) {
|
||||
popupWindow.moveTo( left, top );
|
||||
popupWindow.resizeTo( width, height );
|
||||
}
|
||||
popupWindow.focus();
|
||||
popupWindow.location.href = url;
|
||||
} catch ( e ) {
|
||||
popupWindow = window.open( url, null, options, true );
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
} );
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.plugins.add( 'popup' );
|
||||
|
||||
CKEDITOR.tools.extend( CKEDITOR.editor.prototype, {
|
||||
/**
|
||||
* Opens Browser in a popup. The `width` and `height` parameters accept
|
||||
* numbers (pixels) or percent (of screen size) values.
|
||||
*
|
||||
* @member CKEDITOR.editor
|
||||
* @param {String} url The url of the external file browser.
|
||||
* @param {Number/String} [width='80%'] Popup window width.
|
||||
* @param {Number/String} [height='70%'] Popup window height.
|
||||
* @param {String} [options='location=no,menubar=no,toolbar=no,dependent=yes,minimizable=no,modal=yes,alwaysRaised=yes,resizable=yes,scrollbars=yes']
|
||||
* Popup window features.
|
||||
*/
|
||||
popup: function( url, width, height, options ) {
|
||||
width = width || '80%';
|
||||
height = height || '70%';
|
||||
|
||||
if ( typeof width == 'string' && width.length > 1 && width.substr( width.length - 1, 1 ) == '%' )
|
||||
width = parseInt( window.screen.width * parseInt( width, 10 ) / 100, 10 );
|
||||
|
||||
if ( typeof height == 'string' && height.length > 1 && height.substr( height.length - 1, 1 ) == '%' )
|
||||
height = parseInt( window.screen.height * parseInt( height, 10 ) / 100, 10 );
|
||||
|
||||
if ( width < 640 )
|
||||
width = 640;
|
||||
|
||||
if ( height < 420 )
|
||||
height = 420;
|
||||
|
||||
var top = parseInt( ( window.screen.height - height ) / 2, 10 ),
|
||||
left = parseInt( ( window.screen.width - width ) / 2, 10 );
|
||||
|
||||
options = ( options || 'location=no,menubar=no,toolbar=no,dependent=yes,minimizable=no,modal=yes,alwaysRaised=yes,resizable=yes,scrollbars=yes' ) + ',width=' + width +
|
||||
',height=' + height +
|
||||
',top=' + top +
|
||||
',left=' + left;
|
||||
|
||||
var popupWindow = window.open( '', null, options, true );
|
||||
|
||||
// Blocked by a popup blocker.
|
||||
if ( !popupWindow )
|
||||
return false;
|
||||
|
||||
try {
|
||||
// Chrome is problematic with moveTo/resizeTo, but it's not really needed here (#8855).
|
||||
var ua = navigator.userAgent.toLowerCase();
|
||||
if ( ua.indexOf( ' chrome/' ) == -1 ) {
|
||||
popupWindow.moveTo( left, top );
|
||||
popupWindow.resizeTo( width, height );
|
||||
}
|
||||
popupWindow.focus();
|
||||
popupWindow.location.href = url;
|
||||
} catch ( e ) {
|
||||
popupWindow = window.open( url, null, options, true );
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
} );
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
(function(){
|
||||
//Section 1 : Code to execute when the toolbar button is pressed
|
||||
var a= {
|
||||
exec:function(editor){
|
||||
editor.insertHtml('[[MORE]]');
|
||||
}
|
||||
},
|
||||
|
||||
//Section 2 : Create the button and add the functionality to it
|
||||
b='readmorebtn';
|
||||
CKEDITOR.plugins.add(b,{
|
||||
init:function(editor){
|
||||
editor.addCommand(b,a);
|
||||
editor.ui.addButton("readmorebtn",{
|
||||
label:'Insert "Read more" link',
|
||||
icon:this.path+"readmore.png",
|
||||
command:b
|
||||
});
|
||||
}
|
||||
});
|
||||
(function(){
|
||||
//Section 1 : Code to execute when the toolbar button is pressed
|
||||
var a= {
|
||||
exec:function(editor){
|
||||
editor.insertHtml('[[MORE]]');
|
||||
}
|
||||
},
|
||||
|
||||
//Section 2 : Create the button and add the functionality to it
|
||||
b='readmorebtn';
|
||||
CKEDITOR.plugins.add(b,{
|
||||
init:function(editor){
|
||||
editor.addCommand(b,a);
|
||||
editor.ui.addButton("readmorebtn",{
|
||||
label:'Insert "Read more" link',
|
||||
icon:this.path+"readmore.png",
|
||||
command:b
|
||||
});
|
||||
}
|
||||
});
|
||||
})();
|
||||
@@ -1,441 +1,441 @@
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.plugins.add( 'richcombo', {
|
||||
requires: 'floatpanel,listblock,button',
|
||||
|
||||
beforeInit: function( editor ) {
|
||||
editor.ui.addHandler( CKEDITOR.UI_RICHCOMBO, CKEDITOR.ui.richCombo.handler );
|
||||
}
|
||||
} );
|
||||
|
||||
( function() {
|
||||
var template = '<span id="{id}"' +
|
||||
' class="cke_combo cke_combo__{name} {cls}"' +
|
||||
' role="presentation">' +
|
||||
'<span id="{id}_label" class="cke_combo_label">{label}</span>' +
|
||||
'<a class="cke_combo_button" hidefocus=true title="{title}" tabindex="-1"' +
|
||||
( CKEDITOR.env.gecko && CKEDITOR.env.version >= 10900 && !CKEDITOR.env.hc ? '' : '" href="javascript:void(\'{titleJs}\')"' ) +
|
||||
' hidefocus="true"' +
|
||||
' role="button"' +
|
||||
' aria-labelledby="{id}_label"' +
|
||||
' aria-haspopup="true"';
|
||||
|
||||
// Some browsers don't cancel key events in the keydown but in the
|
||||
// keypress.
|
||||
// TODO: Check if really needed for Gecko+Mac.
|
||||
if ( CKEDITOR.env.opera || ( CKEDITOR.env.gecko && CKEDITOR.env.mac ) )
|
||||
template += ' onkeypress="return false;"';
|
||||
|
||||
// With Firefox, we need to force the button to redraw, otherwise it
|
||||
// will remain in the focus state.
|
||||
if ( CKEDITOR.env.gecko )
|
||||
template += ' onblur="this.style.cssText = this.style.cssText;"';
|
||||
|
||||
template +=
|
||||
' onkeydown="return CKEDITOR.tools.callFunction({keydownFn},event,this);"' +
|
||||
' onmousedown="return CKEDITOR.tools.callFunction({mousedownFn},event);" ' +
|
||||
' onfocus="return CKEDITOR.tools.callFunction({focusFn},event);" ' +
|
||||
( CKEDITOR.env.ie ? 'onclick="return false;" onmouseup' : 'onclick' ) + // #188
|
||||
'="CKEDITOR.tools.callFunction({clickFn},this);return false;">' +
|
||||
'<span id="{id}_text" class="cke_combo_text cke_combo_inlinelabel">{label}</span>' +
|
||||
'<span class="cke_combo_open">' +
|
||||
'<span class="cke_combo_arrow">' +
|
||||
// BLACK DOWN-POINTING TRIANGLE
|
||||
( CKEDITOR.env.hc ? '▼' : CKEDITOR.env.air ? ' ' : '' ) +
|
||||
'</span>' +
|
||||
'</span>' +
|
||||
'</a>' +
|
||||
'</span>';
|
||||
|
||||
var rcomboTpl = CKEDITOR.addTemplate( 'combo', template );
|
||||
|
||||
/**
|
||||
* Button UI element.
|
||||
*
|
||||
* @readonly
|
||||
* @property {String} [='richcombo']
|
||||
* @member CKEDITOR
|
||||
*/
|
||||
CKEDITOR.UI_RICHCOMBO = 'richcombo';
|
||||
|
||||
/**
|
||||
* @class
|
||||
* @todo
|
||||
*/
|
||||
CKEDITOR.ui.richCombo = CKEDITOR.tools.createClass( {
|
||||
$: function( definition ) {
|
||||
// Copy all definition properties to this object.
|
||||
CKEDITOR.tools.extend( this, definition,
|
||||
// Set defaults.
|
||||
{
|
||||
// The combo won't participate in toolbar grouping.
|
||||
canGroup: false,
|
||||
title: definition.label,
|
||||
modes: { wysiwyg: 1 },
|
||||
editorFocus: 1
|
||||
} );
|
||||
|
||||
// We don't want the panel definition in this object.
|
||||
var panelDefinition = this.panel || {};
|
||||
delete this.panel;
|
||||
|
||||
this.id = CKEDITOR.tools.getNextNumber();
|
||||
|
||||
this.document = ( panelDefinition.parent && panelDefinition.parent.getDocument() ) || CKEDITOR.document;
|
||||
|
||||
panelDefinition.className = 'cke_combopanel';
|
||||
panelDefinition.block = {
|
||||
multiSelect: panelDefinition.multiSelect,
|
||||
attributes: panelDefinition.attributes
|
||||
};
|
||||
panelDefinition.toolbarRelated = true;
|
||||
|
||||
this._ = {
|
||||
panelDefinition: panelDefinition,
|
||||
items: {}
|
||||
};
|
||||
},
|
||||
|
||||
proto: {
|
||||
renderHtml: function( editor ) {
|
||||
var output = [];
|
||||
this.render( editor, output );
|
||||
return output.join( '' );
|
||||
},
|
||||
|
||||
/**
|
||||
* Renders the combo.
|
||||
*
|
||||
* @param {CKEDITOR.editor} editor The editor instance which this button is
|
||||
* to be used by.
|
||||
* @param {Array} output The output array to which append the HTML relative
|
||||
* to this button.
|
||||
*/
|
||||
render: function( editor, output ) {
|
||||
var env = CKEDITOR.env;
|
||||
|
||||
var id = 'cke_' + this.id;
|
||||
var clickFn = CKEDITOR.tools.addFunction( function( el ) {
|
||||
// Restore locked selection in Opera.
|
||||
if ( selLocked ) {
|
||||
editor.unlockSelection( 1 );
|
||||
selLocked = 0;
|
||||
}
|
||||
instance.execute( el );
|
||||
}, this );
|
||||
|
||||
var combo = this;
|
||||
var instance = {
|
||||
id: id,
|
||||
combo: this,
|
||||
focus: function() {
|
||||
var element = CKEDITOR.document.getById( id ).getChild( 1 );
|
||||
element.focus();
|
||||
},
|
||||
execute: function( el ) {
|
||||
var _ = combo._;
|
||||
|
||||
if ( _.state == CKEDITOR.TRISTATE_DISABLED )
|
||||
return;
|
||||
|
||||
combo.createPanel( editor );
|
||||
|
||||
if ( _.on ) {
|
||||
_.panel.hide();
|
||||
return;
|
||||
}
|
||||
|
||||
combo.commit();
|
||||
var value = combo.getValue();
|
||||
if ( value )
|
||||
_.list.mark( value );
|
||||
else
|
||||
_.list.unmarkAll();
|
||||
|
||||
_.panel.showBlock( combo.id, new CKEDITOR.dom.element( el ), 4 );
|
||||
},
|
||||
clickFn: clickFn
|
||||
};
|
||||
|
||||
function updateState() {
|
||||
var state = this.modes[ editor.mode ] ? CKEDITOR.TRISTATE_OFF : CKEDITOR.TRISTATE_DISABLED;
|
||||
|
||||
if ( editor.readOnly && !this.readOnly )
|
||||
state = CKEDITOR.TRISTATE_DISABLED;
|
||||
|
||||
this.setState( state );
|
||||
this.setValue( '' );
|
||||
|
||||
// Let plugin to disable button.
|
||||
if ( state != CKEDITOR.TRISTATE_DISABLED && this.refresh )
|
||||
this.refresh();
|
||||
}
|
||||
|
||||
// Update status when activeFilter, mode, selection or readOnly changes.
|
||||
editor.on( 'activeFilterChange', updateState, this );
|
||||
editor.on( 'mode', updateState, this );
|
||||
editor.on( 'selectionChange', updateState, this );
|
||||
// If this combo is sensitive to readOnly state, update it accordingly.
|
||||
!this.readOnly && editor.on( 'readOnly', updateState, this );
|
||||
|
||||
var keyDownFn = CKEDITOR.tools.addFunction( function( ev, element ) {
|
||||
ev = new CKEDITOR.dom.event( ev );
|
||||
|
||||
var keystroke = ev.getKeystroke();
|
||||
|
||||
// ARROW-DOWN
|
||||
// This call is duplicated in plugins/toolbar/plugin.js in itemKeystroke().
|
||||
// Move focus to the first element after drop down was opened by the arrow down key.
|
||||
if ( keystroke == 40 ) {
|
||||
editor.once( 'panelShow', function( evt ) {
|
||||
evt.data._.panel._.currentBlock.onKeyDown( 40 );
|
||||
} );
|
||||
}
|
||||
|
||||
switch ( keystroke ) {
|
||||
case 13: // ENTER
|
||||
case 32: // SPACE
|
||||
case 40: // ARROW-DOWN
|
||||
// Show panel
|
||||
CKEDITOR.tools.callFunction( clickFn, element );
|
||||
break;
|
||||
default:
|
||||
// Delegate the default behavior to toolbar button key handling.
|
||||
instance.onkey( instance, keystroke );
|
||||
}
|
||||
|
||||
// Avoid subsequent focus grab on editor document.
|
||||
ev.preventDefault();
|
||||
} );
|
||||
|
||||
var focusFn = CKEDITOR.tools.addFunction( function() {
|
||||
instance.onfocus && instance.onfocus();
|
||||
} );
|
||||
|
||||
var selLocked = 0;
|
||||
var mouseDownFn = CKEDITOR.tools.addFunction( function() {
|
||||
// Opera: lock to prevent loosing editable text selection when clicking on button.
|
||||
if ( CKEDITOR.env.opera ) {
|
||||
var edt = editor.editable();
|
||||
if ( edt.isInline() && edt.hasFocus ) {
|
||||
editor.lockSelection();
|
||||
selLocked = 1;
|
||||
}
|
||||
}
|
||||
} );
|
||||
|
||||
// For clean up
|
||||
instance.keyDownFn = keyDownFn;
|
||||
|
||||
var params = {
|
||||
id: id,
|
||||
name: this.name || this.command,
|
||||
label: this.label,
|
||||
title: this.title,
|
||||
cls: this.className || '',
|
||||
titleJs: env.gecko && env.version >= 10900 && !env.hc ? '' : ( this.title || '' ).replace( "'", '' ),
|
||||
keydownFn: keyDownFn,
|
||||
mousedownFn: mouseDownFn,
|
||||
focusFn: focusFn,
|
||||
clickFn: clickFn
|
||||
};
|
||||
|
||||
rcomboTpl.output( params, output );
|
||||
|
||||
if ( this.onRender )
|
||||
this.onRender();
|
||||
|
||||
return instance;
|
||||
},
|
||||
|
||||
createPanel: function( editor ) {
|
||||
if ( this._.panel )
|
||||
return;
|
||||
|
||||
var panelDefinition = this._.panelDefinition,
|
||||
panelBlockDefinition = this._.panelDefinition.block,
|
||||
panelParentElement = panelDefinition.parent || CKEDITOR.document.getBody(),
|
||||
namedPanelCls = 'cke_combopanel__' + this.name,
|
||||
panel = new CKEDITOR.ui.floatPanel( editor, panelParentElement, panelDefinition ),
|
||||
list = panel.addListBlock( this.id, panelBlockDefinition ),
|
||||
me = this;
|
||||
|
||||
panel.onShow = function() {
|
||||
this.element.addClass( namedPanelCls );
|
||||
|
||||
me.setState( CKEDITOR.TRISTATE_ON );
|
||||
|
||||
me._.on = 1;
|
||||
|
||||
me.editorFocus && !editor.focusManager.hasFocus && editor.focus();
|
||||
|
||||
if ( me.onOpen )
|
||||
me.onOpen();
|
||||
|
||||
// The "panelShow" event is fired assinchronously, after the
|
||||
// onShow method call.
|
||||
editor.once( 'panelShow', function() {
|
||||
list.focus( !list.multiSelect && me.getValue() );
|
||||
} );
|
||||
};
|
||||
|
||||
panel.onHide = function( preventOnClose ) {
|
||||
this.element.removeClass( namedPanelCls );
|
||||
|
||||
me.setState( me.modes && me.modes[ editor.mode ] ? CKEDITOR.TRISTATE_OFF : CKEDITOR.TRISTATE_DISABLED );
|
||||
|
||||
me._.on = 0;
|
||||
|
||||
if ( !preventOnClose && me.onClose )
|
||||
me.onClose();
|
||||
};
|
||||
|
||||
panel.onEscape = function() {
|
||||
// Hide drop-down with focus returned.
|
||||
panel.hide( 1 );
|
||||
};
|
||||
|
||||
list.onClick = function( value, marked ) {
|
||||
|
||||
if ( me.onClick )
|
||||
me.onClick.call( me, value, marked );
|
||||
|
||||
panel.hide();
|
||||
};
|
||||
|
||||
this._.panel = panel;
|
||||
this._.list = list;
|
||||
|
||||
panel.getBlock( this.id ).onHide = function() {
|
||||
me._.on = 0;
|
||||
me.setState( CKEDITOR.TRISTATE_OFF );
|
||||
};
|
||||
|
||||
if ( this.init )
|
||||
this.init();
|
||||
},
|
||||
|
||||
setValue: function( value, text ) {
|
||||
this._.value = value;
|
||||
|
||||
var textElement = this.document.getById( 'cke_' + this.id + '_text' );
|
||||
if ( textElement ) {
|
||||
if ( !( value || text ) ) {
|
||||
text = this.label;
|
||||
textElement.addClass( 'cke_combo_inlinelabel' );
|
||||
} else
|
||||
textElement.removeClass( 'cke_combo_inlinelabel' );
|
||||
|
||||
textElement.setText( typeof text != 'undefined' ? text : value );
|
||||
}
|
||||
},
|
||||
|
||||
getValue: function() {
|
||||
return this._.value || '';
|
||||
},
|
||||
|
||||
unmarkAll: function() {
|
||||
this._.list.unmarkAll();
|
||||
},
|
||||
|
||||
mark: function( value ) {
|
||||
this._.list.mark( value );
|
||||
},
|
||||
|
||||
hideItem: function( value ) {
|
||||
this._.list.hideItem( value );
|
||||
},
|
||||
|
||||
hideGroup: function( groupTitle ) {
|
||||
this._.list.hideGroup( groupTitle );
|
||||
},
|
||||
|
||||
showAll: function() {
|
||||
this._.list.showAll();
|
||||
},
|
||||
|
||||
add: function( value, html, text ) {
|
||||
this._.items[ value ] = text || value;
|
||||
this._.list.add( value, html, text );
|
||||
},
|
||||
|
||||
startGroup: function( title ) {
|
||||
this._.list.startGroup( title );
|
||||
},
|
||||
|
||||
commit: function() {
|
||||
if ( !this._.committed ) {
|
||||
this._.list.commit();
|
||||
this._.committed = 1;
|
||||
CKEDITOR.ui.fire( 'ready', this );
|
||||
}
|
||||
this._.committed = 1;
|
||||
},
|
||||
|
||||
setState: function( state ) {
|
||||
if ( this._.state == state )
|
||||
return;
|
||||
|
||||
var el = this.document.getById( 'cke_' + this.id );
|
||||
el.setState( state, 'cke_combo' );
|
||||
|
||||
state == CKEDITOR.TRISTATE_DISABLED ?
|
||||
el.setAttribute( 'aria-disabled', true ) :
|
||||
el.removeAttribute( 'aria-disabled' );
|
||||
|
||||
this._.state = state;
|
||||
},
|
||||
|
||||
getState: function() {
|
||||
return this._.state;
|
||||
},
|
||||
|
||||
enable: function() {
|
||||
if ( this._.state == CKEDITOR.TRISTATE_DISABLED )
|
||||
this.setState( this._.lastState );
|
||||
},
|
||||
|
||||
disable: function() {
|
||||
if ( this._.state != CKEDITOR.TRISTATE_DISABLED ) {
|
||||
this._.lastState = this._.state;
|
||||
this.setState( CKEDITOR.TRISTATE_DISABLED );
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* Represents richCombo handler object.
|
||||
*
|
||||
* @class CKEDITOR.ui.richCombo.handler
|
||||
* @singleton
|
||||
* @extends CKEDITOR.ui.handlerDefinition
|
||||
*/
|
||||
statics: {
|
||||
handler: {
|
||||
/**
|
||||
* Transforms a richCombo definition in a {@link CKEDITOR.ui.richCombo} instance.
|
||||
*
|
||||
* @param {Object} definition
|
||||
* @returns {CKEDITOR.ui.richCombo}
|
||||
*/
|
||||
create: function( definition ) {
|
||||
return new CKEDITOR.ui.richCombo( definition );
|
||||
}
|
||||
}
|
||||
}
|
||||
} );
|
||||
|
||||
/**
|
||||
* @param {String} name
|
||||
* @param {Object} definition
|
||||
* @member CKEDITOR.ui
|
||||
* @todo
|
||||
*/
|
||||
CKEDITOR.ui.prototype.addRichCombo = function( name, definition ) {
|
||||
this.add( name, CKEDITOR.UI_RICHCOMBO, definition );
|
||||
};
|
||||
|
||||
} )();
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.plugins.add( 'richcombo', {
|
||||
requires: 'floatpanel,listblock,button',
|
||||
|
||||
beforeInit: function( editor ) {
|
||||
editor.ui.addHandler( CKEDITOR.UI_RICHCOMBO, CKEDITOR.ui.richCombo.handler );
|
||||
}
|
||||
} );
|
||||
|
||||
( function() {
|
||||
var template = '<span id="{id}"' +
|
||||
' class="cke_combo cke_combo__{name} {cls}"' +
|
||||
' role="presentation">' +
|
||||
'<span id="{id}_label" class="cke_combo_label">{label}</span>' +
|
||||
'<a class="cke_combo_button" hidefocus=true title="{title}" tabindex="-1"' +
|
||||
( CKEDITOR.env.gecko && CKEDITOR.env.version >= 10900 && !CKEDITOR.env.hc ? '' : '" href="javascript:void(\'{titleJs}\')"' ) +
|
||||
' hidefocus="true"' +
|
||||
' role="button"' +
|
||||
' aria-labelledby="{id}_label"' +
|
||||
' aria-haspopup="true"';
|
||||
|
||||
// Some browsers don't cancel key events in the keydown but in the
|
||||
// keypress.
|
||||
// TODO: Check if really needed for Gecko+Mac.
|
||||
if ( CKEDITOR.env.opera || ( CKEDITOR.env.gecko && CKEDITOR.env.mac ) )
|
||||
template += ' onkeypress="return false;"';
|
||||
|
||||
// With Firefox, we need to force the button to redraw, otherwise it
|
||||
// will remain in the focus state.
|
||||
if ( CKEDITOR.env.gecko )
|
||||
template += ' onblur="this.style.cssText = this.style.cssText;"';
|
||||
|
||||
template +=
|
||||
' onkeydown="return CKEDITOR.tools.callFunction({keydownFn},event,this);"' +
|
||||
' onmousedown="return CKEDITOR.tools.callFunction({mousedownFn},event);" ' +
|
||||
' onfocus="return CKEDITOR.tools.callFunction({focusFn},event);" ' +
|
||||
( CKEDITOR.env.ie ? 'onclick="return false;" onmouseup' : 'onclick' ) + // #188
|
||||
'="CKEDITOR.tools.callFunction({clickFn},this);return false;">' +
|
||||
'<span id="{id}_text" class="cke_combo_text cke_combo_inlinelabel">{label}</span>' +
|
||||
'<span class="cke_combo_open">' +
|
||||
'<span class="cke_combo_arrow">' +
|
||||
// BLACK DOWN-POINTING TRIANGLE
|
||||
( CKEDITOR.env.hc ? '▼' : CKEDITOR.env.air ? ' ' : '' ) +
|
||||
'</span>' +
|
||||
'</span>' +
|
||||
'</a>' +
|
||||
'</span>';
|
||||
|
||||
var rcomboTpl = CKEDITOR.addTemplate( 'combo', template );
|
||||
|
||||
/**
|
||||
* Button UI element.
|
||||
*
|
||||
* @readonly
|
||||
* @property {String} [='richcombo']
|
||||
* @member CKEDITOR
|
||||
*/
|
||||
CKEDITOR.UI_RICHCOMBO = 'richcombo';
|
||||
|
||||
/**
|
||||
* @class
|
||||
* @todo
|
||||
*/
|
||||
CKEDITOR.ui.richCombo = CKEDITOR.tools.createClass( {
|
||||
$: function( definition ) {
|
||||
// Copy all definition properties to this object.
|
||||
CKEDITOR.tools.extend( this, definition,
|
||||
// Set defaults.
|
||||
{
|
||||
// The combo won't participate in toolbar grouping.
|
||||
canGroup: false,
|
||||
title: definition.label,
|
||||
modes: { wysiwyg: 1 },
|
||||
editorFocus: 1
|
||||
} );
|
||||
|
||||
// We don't want the panel definition in this object.
|
||||
var panelDefinition = this.panel || {};
|
||||
delete this.panel;
|
||||
|
||||
this.id = CKEDITOR.tools.getNextNumber();
|
||||
|
||||
this.document = ( panelDefinition.parent && panelDefinition.parent.getDocument() ) || CKEDITOR.document;
|
||||
|
||||
panelDefinition.className = 'cke_combopanel';
|
||||
panelDefinition.block = {
|
||||
multiSelect: panelDefinition.multiSelect,
|
||||
attributes: panelDefinition.attributes
|
||||
};
|
||||
panelDefinition.toolbarRelated = true;
|
||||
|
||||
this._ = {
|
||||
panelDefinition: panelDefinition,
|
||||
items: {}
|
||||
};
|
||||
},
|
||||
|
||||
proto: {
|
||||
renderHtml: function( editor ) {
|
||||
var output = [];
|
||||
this.render( editor, output );
|
||||
return output.join( '' );
|
||||
},
|
||||
|
||||
/**
|
||||
* Renders the combo.
|
||||
*
|
||||
* @param {CKEDITOR.editor} editor The editor instance which this button is
|
||||
* to be used by.
|
||||
* @param {Array} output The output array to which append the HTML relative
|
||||
* to this button.
|
||||
*/
|
||||
render: function( editor, output ) {
|
||||
var env = CKEDITOR.env;
|
||||
|
||||
var id = 'cke_' + this.id;
|
||||
var clickFn = CKEDITOR.tools.addFunction( function( el ) {
|
||||
// Restore locked selection in Opera.
|
||||
if ( selLocked ) {
|
||||
editor.unlockSelection( 1 );
|
||||
selLocked = 0;
|
||||
}
|
||||
instance.execute( el );
|
||||
}, this );
|
||||
|
||||
var combo = this;
|
||||
var instance = {
|
||||
id: id,
|
||||
combo: this,
|
||||
focus: function() {
|
||||
var element = CKEDITOR.document.getById( id ).getChild( 1 );
|
||||
element.focus();
|
||||
},
|
||||
execute: function( el ) {
|
||||
var _ = combo._;
|
||||
|
||||
if ( _.state == CKEDITOR.TRISTATE_DISABLED )
|
||||
return;
|
||||
|
||||
combo.createPanel( editor );
|
||||
|
||||
if ( _.on ) {
|
||||
_.panel.hide();
|
||||
return;
|
||||
}
|
||||
|
||||
combo.commit();
|
||||
var value = combo.getValue();
|
||||
if ( value )
|
||||
_.list.mark( value );
|
||||
else
|
||||
_.list.unmarkAll();
|
||||
|
||||
_.panel.showBlock( combo.id, new CKEDITOR.dom.element( el ), 4 );
|
||||
},
|
||||
clickFn: clickFn
|
||||
};
|
||||
|
||||
function updateState() {
|
||||
var state = this.modes[ editor.mode ] ? CKEDITOR.TRISTATE_OFF : CKEDITOR.TRISTATE_DISABLED;
|
||||
|
||||
if ( editor.readOnly && !this.readOnly )
|
||||
state = CKEDITOR.TRISTATE_DISABLED;
|
||||
|
||||
this.setState( state );
|
||||
this.setValue( '' );
|
||||
|
||||
// Let plugin to disable button.
|
||||
if ( state != CKEDITOR.TRISTATE_DISABLED && this.refresh )
|
||||
this.refresh();
|
||||
}
|
||||
|
||||
// Update status when activeFilter, mode, selection or readOnly changes.
|
||||
editor.on( 'activeFilterChange', updateState, this );
|
||||
editor.on( 'mode', updateState, this );
|
||||
editor.on( 'selectionChange', updateState, this );
|
||||
// If this combo is sensitive to readOnly state, update it accordingly.
|
||||
!this.readOnly && editor.on( 'readOnly', updateState, this );
|
||||
|
||||
var keyDownFn = CKEDITOR.tools.addFunction( function( ev, element ) {
|
||||
ev = new CKEDITOR.dom.event( ev );
|
||||
|
||||
var keystroke = ev.getKeystroke();
|
||||
|
||||
// ARROW-DOWN
|
||||
// This call is duplicated in plugins/toolbar/plugin.js in itemKeystroke().
|
||||
// Move focus to the first element after drop down was opened by the arrow down key.
|
||||
if ( keystroke == 40 ) {
|
||||
editor.once( 'panelShow', function( evt ) {
|
||||
evt.data._.panel._.currentBlock.onKeyDown( 40 );
|
||||
} );
|
||||
}
|
||||
|
||||
switch ( keystroke ) {
|
||||
case 13: // ENTER
|
||||
case 32: // SPACE
|
||||
case 40: // ARROW-DOWN
|
||||
// Show panel
|
||||
CKEDITOR.tools.callFunction( clickFn, element );
|
||||
break;
|
||||
default:
|
||||
// Delegate the default behavior to toolbar button key handling.
|
||||
instance.onkey( instance, keystroke );
|
||||
}
|
||||
|
||||
// Avoid subsequent focus grab on editor document.
|
||||
ev.preventDefault();
|
||||
} );
|
||||
|
||||
var focusFn = CKEDITOR.tools.addFunction( function() {
|
||||
instance.onfocus && instance.onfocus();
|
||||
} );
|
||||
|
||||
var selLocked = 0;
|
||||
var mouseDownFn = CKEDITOR.tools.addFunction( function() {
|
||||
// Opera: lock to prevent loosing editable text selection when clicking on button.
|
||||
if ( CKEDITOR.env.opera ) {
|
||||
var edt = editor.editable();
|
||||
if ( edt.isInline() && edt.hasFocus ) {
|
||||
editor.lockSelection();
|
||||
selLocked = 1;
|
||||
}
|
||||
}
|
||||
} );
|
||||
|
||||
// For clean up
|
||||
instance.keyDownFn = keyDownFn;
|
||||
|
||||
var params = {
|
||||
id: id,
|
||||
name: this.name || this.command,
|
||||
label: this.label,
|
||||
title: this.title,
|
||||
cls: this.className || '',
|
||||
titleJs: env.gecko && env.version >= 10900 && !env.hc ? '' : ( this.title || '' ).replace( "'", '' ),
|
||||
keydownFn: keyDownFn,
|
||||
mousedownFn: mouseDownFn,
|
||||
focusFn: focusFn,
|
||||
clickFn: clickFn
|
||||
};
|
||||
|
||||
rcomboTpl.output( params, output );
|
||||
|
||||
if ( this.onRender )
|
||||
this.onRender();
|
||||
|
||||
return instance;
|
||||
},
|
||||
|
||||
createPanel: function( editor ) {
|
||||
if ( this._.panel )
|
||||
return;
|
||||
|
||||
var panelDefinition = this._.panelDefinition,
|
||||
panelBlockDefinition = this._.panelDefinition.block,
|
||||
panelParentElement = panelDefinition.parent || CKEDITOR.document.getBody(),
|
||||
namedPanelCls = 'cke_combopanel__' + this.name,
|
||||
panel = new CKEDITOR.ui.floatPanel( editor, panelParentElement, panelDefinition ),
|
||||
list = panel.addListBlock( this.id, panelBlockDefinition ),
|
||||
me = this;
|
||||
|
||||
panel.onShow = function() {
|
||||
this.element.addClass( namedPanelCls );
|
||||
|
||||
me.setState( CKEDITOR.TRISTATE_ON );
|
||||
|
||||
me._.on = 1;
|
||||
|
||||
me.editorFocus && !editor.focusManager.hasFocus && editor.focus();
|
||||
|
||||
if ( me.onOpen )
|
||||
me.onOpen();
|
||||
|
||||
// The "panelShow" event is fired assinchronously, after the
|
||||
// onShow method call.
|
||||
editor.once( 'panelShow', function() {
|
||||
list.focus( !list.multiSelect && me.getValue() );
|
||||
} );
|
||||
};
|
||||
|
||||
panel.onHide = function( preventOnClose ) {
|
||||
this.element.removeClass( namedPanelCls );
|
||||
|
||||
me.setState( me.modes && me.modes[ editor.mode ] ? CKEDITOR.TRISTATE_OFF : CKEDITOR.TRISTATE_DISABLED );
|
||||
|
||||
me._.on = 0;
|
||||
|
||||
if ( !preventOnClose && me.onClose )
|
||||
me.onClose();
|
||||
};
|
||||
|
||||
panel.onEscape = function() {
|
||||
// Hide drop-down with focus returned.
|
||||
panel.hide( 1 );
|
||||
};
|
||||
|
||||
list.onClick = function( value, marked ) {
|
||||
|
||||
if ( me.onClick )
|
||||
me.onClick.call( me, value, marked );
|
||||
|
||||
panel.hide();
|
||||
};
|
||||
|
||||
this._.panel = panel;
|
||||
this._.list = list;
|
||||
|
||||
panel.getBlock( this.id ).onHide = function() {
|
||||
me._.on = 0;
|
||||
me.setState( CKEDITOR.TRISTATE_OFF );
|
||||
};
|
||||
|
||||
if ( this.init )
|
||||
this.init();
|
||||
},
|
||||
|
||||
setValue: function( value, text ) {
|
||||
this._.value = value;
|
||||
|
||||
var textElement = this.document.getById( 'cke_' + this.id + '_text' );
|
||||
if ( textElement ) {
|
||||
if ( !( value || text ) ) {
|
||||
text = this.label;
|
||||
textElement.addClass( 'cke_combo_inlinelabel' );
|
||||
} else
|
||||
textElement.removeClass( 'cke_combo_inlinelabel' );
|
||||
|
||||
textElement.setText( typeof text != 'undefined' ? text : value );
|
||||
}
|
||||
},
|
||||
|
||||
getValue: function() {
|
||||
return this._.value || '';
|
||||
},
|
||||
|
||||
unmarkAll: function() {
|
||||
this._.list.unmarkAll();
|
||||
},
|
||||
|
||||
mark: function( value ) {
|
||||
this._.list.mark( value );
|
||||
},
|
||||
|
||||
hideItem: function( value ) {
|
||||
this._.list.hideItem( value );
|
||||
},
|
||||
|
||||
hideGroup: function( groupTitle ) {
|
||||
this._.list.hideGroup( groupTitle );
|
||||
},
|
||||
|
||||
showAll: function() {
|
||||
this._.list.showAll();
|
||||
},
|
||||
|
||||
add: function( value, html, text ) {
|
||||
this._.items[ value ] = text || value;
|
||||
this._.list.add( value, html, text );
|
||||
},
|
||||
|
||||
startGroup: function( title ) {
|
||||
this._.list.startGroup( title );
|
||||
},
|
||||
|
||||
commit: function() {
|
||||
if ( !this._.committed ) {
|
||||
this._.list.commit();
|
||||
this._.committed = 1;
|
||||
CKEDITOR.ui.fire( 'ready', this );
|
||||
}
|
||||
this._.committed = 1;
|
||||
},
|
||||
|
||||
setState: function( state ) {
|
||||
if ( this._.state == state )
|
||||
return;
|
||||
|
||||
var el = this.document.getById( 'cke_' + this.id );
|
||||
el.setState( state, 'cke_combo' );
|
||||
|
||||
state == CKEDITOR.TRISTATE_DISABLED ?
|
||||
el.setAttribute( 'aria-disabled', true ) :
|
||||
el.removeAttribute( 'aria-disabled' );
|
||||
|
||||
this._.state = state;
|
||||
},
|
||||
|
||||
getState: function() {
|
||||
return this._.state;
|
||||
},
|
||||
|
||||
enable: function() {
|
||||
if ( this._.state == CKEDITOR.TRISTATE_DISABLED )
|
||||
this.setState( this._.lastState );
|
||||
},
|
||||
|
||||
disable: function() {
|
||||
if ( this._.state != CKEDITOR.TRISTATE_DISABLED ) {
|
||||
this._.lastState = this._.state;
|
||||
this.setState( CKEDITOR.TRISTATE_DISABLED );
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* Represents richCombo handler object.
|
||||
*
|
||||
* @class CKEDITOR.ui.richCombo.handler
|
||||
* @singleton
|
||||
* @extends CKEDITOR.ui.handlerDefinition
|
||||
*/
|
||||
statics: {
|
||||
handler: {
|
||||
/**
|
||||
* Transforms a richCombo definition in a {@link CKEDITOR.ui.richCombo} instance.
|
||||
*
|
||||
* @param {Object} definition
|
||||
* @returns {CKEDITOR.ui.richCombo}
|
||||
*/
|
||||
create: function( definition ) {
|
||||
return new CKEDITOR.ui.richCombo( definition );
|
||||
}
|
||||
}
|
||||
}
|
||||
} );
|
||||
|
||||
/**
|
||||
* @param {String} name
|
||||
* @param {Object} definition
|
||||
* @member CKEDITOR.ui
|
||||
* @todo
|
||||
*/
|
||||
CKEDITOR.ui.prototype.addRichCombo = function( name, definition ) {
|
||||
this.add( name, CKEDITOR.UI_RICHCOMBO, definition );
|
||||
};
|
||||
|
||||
} )();
|
||||
|
||||
@@ -1,79 +1,79 @@
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.dialog.add( 'sourcedialog', function( editor ) {
|
||||
var size = CKEDITOR.document.getWindow().getViewPaneSize();
|
||||
|
||||
// Make it maximum 800px wide, but still fully visible in the viewport.
|
||||
var width = Math.min( size.width - 70, 800 );
|
||||
|
||||
// Make it use 2/3 of the viewport height.
|
||||
var height = size.height / 1.5;
|
||||
|
||||
// Store old editor data to avoid unnecessary setData.
|
||||
var oldData;
|
||||
|
||||
return {
|
||||
title: editor.lang.sourcedialog.title,
|
||||
minWidth: 100,
|
||||
minHeight: 100,
|
||||
|
||||
onShow: function() {
|
||||
this.setValueOf( 'main', 'data', oldData = editor.getData() );
|
||||
},
|
||||
|
||||
onOk: ( function() {
|
||||
function setData( dialog, newData ) {
|
||||
// [IE8] Focus editor before setting selection to avoid setting data on
|
||||
// locked selection, because in case of inline editor, it won't be
|
||||
// unlocked before editable's HTML is altered. (#11585)
|
||||
editor.focus();
|
||||
editor.setData( newData, function() {
|
||||
dialog.hide();
|
||||
|
||||
// Ensure correct selection.
|
||||
var range = editor.createRange();
|
||||
range.moveToElementEditStart( editor.editable() );
|
||||
range.select();
|
||||
} );
|
||||
}
|
||||
|
||||
return function( event ) {
|
||||
// Remove CR from input data for reliable comparison with editor data.
|
||||
var newData = this.getValueOf( 'main', 'data' ).replace( /\r/g, '' ),
|
||||
that = this;
|
||||
|
||||
// Avoid unnecessary setData. Also preserve selection
|
||||
// when user changed his mind and goes back to wysiwyg editing.
|
||||
if ( newData === oldData )
|
||||
return true;
|
||||
|
||||
setTimeout( function() {
|
||||
setData( that, newData );
|
||||
} );
|
||||
|
||||
// Don't let the dialog close before setData is over, to hide
|
||||
// from user blinking caused by selection restoring and setting new data.
|
||||
return false;
|
||||
};
|
||||
} )(),
|
||||
|
||||
contents: [ {
|
||||
id: 'main',
|
||||
label: editor.lang.sourcedialog.title,
|
||||
elements: [ {
|
||||
type: 'textarea',
|
||||
id: 'data',
|
||||
dir: 'ltr',
|
||||
inputStyle: 'cursor:auto;' +
|
||||
'width:' + width + 'px;' +
|
||||
'height:' + height + 'px;' +
|
||||
'tab-size:4;' +
|
||||
'text-align:left;',
|
||||
'class': 'cke_source'
|
||||
} ]
|
||||
} ]
|
||||
};
|
||||
} );
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.dialog.add( 'sourcedialog', function( editor ) {
|
||||
var size = CKEDITOR.document.getWindow().getViewPaneSize();
|
||||
|
||||
// Make it maximum 800px wide, but still fully visible in the viewport.
|
||||
var width = Math.min( size.width - 70, 800 );
|
||||
|
||||
// Make it use 2/3 of the viewport height.
|
||||
var height = size.height / 1.5;
|
||||
|
||||
// Store old editor data to avoid unnecessary setData.
|
||||
var oldData;
|
||||
|
||||
return {
|
||||
title: editor.lang.sourcedialog.title,
|
||||
minWidth: 100,
|
||||
minHeight: 100,
|
||||
|
||||
onShow: function() {
|
||||
this.setValueOf( 'main', 'data', oldData = editor.getData() );
|
||||
},
|
||||
|
||||
onOk: ( function() {
|
||||
function setData( dialog, newData ) {
|
||||
// [IE8] Focus editor before setting selection to avoid setting data on
|
||||
// locked selection, because in case of inline editor, it won't be
|
||||
// unlocked before editable's HTML is altered. (#11585)
|
||||
editor.focus();
|
||||
editor.setData( newData, function() {
|
||||
dialog.hide();
|
||||
|
||||
// Ensure correct selection.
|
||||
var range = editor.createRange();
|
||||
range.moveToElementEditStart( editor.editable() );
|
||||
range.select();
|
||||
} );
|
||||
}
|
||||
|
||||
return function( event ) {
|
||||
// Remove CR from input data for reliable comparison with editor data.
|
||||
var newData = this.getValueOf( 'main', 'data' ).replace( /\r/g, '' ),
|
||||
that = this;
|
||||
|
||||
// Avoid unnecessary setData. Also preserve selection
|
||||
// when user changed his mind and goes back to wysiwyg editing.
|
||||
if ( newData === oldData )
|
||||
return true;
|
||||
|
||||
setTimeout( function() {
|
||||
setData( that, newData );
|
||||
} );
|
||||
|
||||
// Don't let the dialog close before setData is over, to hide
|
||||
// from user blinking caused by selection restoring and setting new data.
|
||||
return false;
|
||||
};
|
||||
} )(),
|
||||
|
||||
contents: [ {
|
||||
id: 'main',
|
||||
label: editor.lang.sourcedialog.title,
|
||||
elements: [ {
|
||||
type: 'textarea',
|
||||
id: 'data',
|
||||
dir: 'ltr',
|
||||
inputStyle: 'cursor:auto;' +
|
||||
'width:' + width + 'px;' +
|
||||
'height:' + height + 'px;' +
|
||||
'tab-size:4;' +
|
||||
'text-align:left;',
|
||||
'class': 'cke_source'
|
||||
} ]
|
||||
} ]
|
||||
};
|
||||
} );
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.plugins.setLang( 'sourcedialog', 'en', {
|
||||
toolbar: 'Source',
|
||||
title: 'Source'
|
||||
} );
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.plugins.setLang( 'sourcedialog', 'en', {
|
||||
toolbar: 'Source',
|
||||
title: 'Source'
|
||||
} );
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.plugins.setLang( 'sourcedialog', 'hu', {
|
||||
toolbar: 'Forráskód',
|
||||
title: 'Forráskód'
|
||||
} );
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.plugins.setLang( 'sourcedialog', 'hu', {
|
||||
toolbar: 'Forráskód',
|
||||
title: 'Forráskód'
|
||||
} );
|
||||
|
||||
@@ -1,27 +1,27 @@
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.plugins.add( 'sourcedialog', {
|
||||
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,mn,ms,nb,nl,no,pl,pt,pt-br,ro,ru,si,sk,sl,sq,sr,sr-latn,sv,th,tr,ug,uk,vi,zh,zh-cn', // %REMOVE_LINE_CORE%
|
||||
icons: 'sourcedialog,sourcedialog-rtl', // %REMOVE_LINE_CORE%
|
||||
hidpi: true, // %REMOVE_LINE_CORE%
|
||||
|
||||
init: function( editor ) {
|
||||
// Register the "source" command, which simply opens the "source" dialog.
|
||||
editor.addCommand( 'sourcedialog', new CKEDITOR.dialogCommand( 'sourcedialog' ) );
|
||||
|
||||
// Register the "source" dialog.
|
||||
CKEDITOR.dialog.add( 'sourcedialog', this.path + 'dialogs/sourcedialog.js' );
|
||||
|
||||
// If the toolbar is available, create the "Source" button.
|
||||
if ( editor.ui.addButton ) {
|
||||
editor.ui.addButton( 'Sourcedialog', {
|
||||
label: editor.lang.sourcedialog.toolbar,
|
||||
command: 'sourcedialog',
|
||||
toolbar: 'mode,10'
|
||||
} );
|
||||
}
|
||||
}
|
||||
} );
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.plugins.add( 'sourcedialog', {
|
||||
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,mn,ms,nb,nl,no,pl,pt,pt-br,ro,ru,si,sk,sl,sq,sr,sr-latn,sv,th,tr,ug,uk,vi,zh,zh-cn', // %REMOVE_LINE_CORE%
|
||||
icons: 'sourcedialog,sourcedialog-rtl', // %REMOVE_LINE_CORE%
|
||||
hidpi: true, // %REMOVE_LINE_CORE%
|
||||
|
||||
init: function( editor ) {
|
||||
// Register the "source" command, which simply opens the "source" dialog.
|
||||
editor.addCommand( 'sourcedialog', new CKEDITOR.dialogCommand( 'sourcedialog' ) );
|
||||
|
||||
// Register the "source" dialog.
|
||||
CKEDITOR.dialog.add( 'sourcedialog', this.path + 'dialogs/sourcedialog.js' );
|
||||
|
||||
// If the toolbar is available, create the "Source" button.
|
||||
if ( editor.ui.addButton ) {
|
||||
editor.ui.addButton( 'Sourcedialog', {
|
||||
label: editor.lang.sourcedialog.toolbar,
|
||||
command: 'sourcedialog',
|
||||
toolbar: 'mode,10'
|
||||
} );
|
||||
}
|
||||
}
|
||||
} );
|
||||
|
||||
@@ -1,118 +1,118 @@
|
||||
<!DOCTYPE html>
|
||||
<!--
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
-->
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Editing source code in a dialog — CKEditor Sample</title>
|
||||
<script src="../../../ckeditor.js"></script>
|
||||
<link rel="stylesheet" href="../../../samples/sample.css">
|
||||
<meta name="ckeditor-sample-name" content="Editing source code in a dialog">
|
||||
<meta name="ckeditor-sample-group" content="Plugins">
|
||||
<meta name="ckeditor-sample-description" content="Editing HTML content of both inline and classic editor instances.">
|
||||
<meta name="ckeditor-sample-isnew" content="1">
|
||||
<style>
|
||||
|
||||
#editable
|
||||
{
|
||||
padding: 10px;
|
||||
float: left;
|
||||
}
|
||||
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h1 class="samples">
|
||||
<a href="../../../samples/index.html">CKEditor Samples</a> » Editing source code in a dialog
|
||||
</h1>
|
||||
<div class="description">
|
||||
<p>
|
||||
<strong>Sourcedialog</strong> plugin provides an easy way to edit raw HTML content
|
||||
of an editor, similarly to what is possible with <strong>Sourcearea</strong>
|
||||
plugin for classic (<code>iframe</code>-based) instances but using dialogs. Thanks to that, it's also possible
|
||||
to manipulate raw content of inline editor instances.
|
||||
</p>
|
||||
<p>
|
||||
This plugin extends the toolbar with a button,
|
||||
which opens a dialog window with a source code editor. It works with both classic
|
||||
and inline instances. To enable this
|
||||
plugin, basically add <code>extraPlugins: 'sourcedialog'</code> to editor's
|
||||
config:
|
||||
</p>
|
||||
<pre class="samples">
|
||||
// Inline editor.
|
||||
CKEDITOR.inline( 'editable', {
|
||||
<strong>extraPlugins: 'sourcedialog'</strong>
|
||||
});
|
||||
|
||||
// Classic (iframe-based) editor.
|
||||
CKEDITOR.replace( 'textarea_id', {
|
||||
<strong>extraPlugins: 'sourcedialog'</strong>,
|
||||
removePlugins: 'sourcearea'
|
||||
});
|
||||
</pre>
|
||||
<p>
|
||||
Note that you may want to include <code>removePlugins: 'sourcearea'</code>
|
||||
in your config when using <strong>Sourcedialog</strong> in classic editor instances.
|
||||
This prevents feature redundancy.
|
||||
</p>
|
||||
<p>
|
||||
Note that <code>editable</code> in the code above is the <code>id</code>
|
||||
attribute of the <code><div></code> element to be converted into an inline instance.
|
||||
</p>
|
||||
<p>
|
||||
Note that <code><em>textarea_id</em></code> in the code above is the <code>id</code> attribute of
|
||||
the <code><textarea></code> element to be replaced with CKEditor.
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<label for="editor1">
|
||||
Inline editor:
|
||||
</label>
|
||||
<div id="editor1" contenteditable="true" style="padding: 5px 20px;">
|
||||
<p>This is some <strong>sample text</strong>. You are using <a href="http://ckeditor.com/">CKEditor</a>.</p>
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
<div>
|
||||
<label for="editor2">
|
||||
Classic editor:
|
||||
</label>
|
||||
<textarea cols="80" id="editor2" name="editor2" rows="10">
|
||||
This is some <strong>sample text</strong>. You are using <a href="http://ckeditor.com/">CKEditor</a>.
|
||||
</textarea>
|
||||
</div>
|
||||
<script>
|
||||
|
||||
// We need to turn off the automatic editor creation first.
|
||||
CKEDITOR.disableAutoInline = true;
|
||||
|
||||
var config = {
|
||||
toolbarGroups: [
|
||||
{ name: 'mode' },
|
||||
{ name: 'basicstyles' },
|
||||
{ name: 'links' }
|
||||
],
|
||||
extraPlugins: 'sourcedialog',
|
||||
removePlugins: 'sourcearea'
|
||||
}
|
||||
|
||||
CKEDITOR.inline( 'editor1', config );
|
||||
CKEDITOR.replace( 'editor2', config );
|
||||
|
||||
</script>
|
||||
<div id="footer">
|
||||
<hr>
|
||||
<p>
|
||||
CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">
|
||||
http://ckeditor.com</a>
|
||||
</p>
|
||||
<p id="copy">
|
||||
Copyright © 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a>
|
||||
- Frederico Knabben. All rights reserved.
|
||||
</p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
<!DOCTYPE html>
|
||||
<!--
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
-->
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Editing source code in a dialog — CKEditor Sample</title>
|
||||
<script src="../../../ckeditor.js"></script>
|
||||
<link rel="stylesheet" href="../../../samples/sample.css">
|
||||
<meta name="ckeditor-sample-name" content="Editing source code in a dialog">
|
||||
<meta name="ckeditor-sample-group" content="Plugins">
|
||||
<meta name="ckeditor-sample-description" content="Editing HTML content of both inline and classic editor instances.">
|
||||
<meta name="ckeditor-sample-isnew" content="1">
|
||||
<style>
|
||||
|
||||
#editable
|
||||
{
|
||||
padding: 10px;
|
||||
float: left;
|
||||
}
|
||||
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h1 class="samples">
|
||||
<a href="../../../samples/index.html">CKEditor Samples</a> » Editing source code in a dialog
|
||||
</h1>
|
||||
<div class="description">
|
||||
<p>
|
||||
<strong>Sourcedialog</strong> plugin provides an easy way to edit raw HTML content
|
||||
of an editor, similarly to what is possible with <strong>Sourcearea</strong>
|
||||
plugin for classic (<code>iframe</code>-based) instances but using dialogs. Thanks to that, it's also possible
|
||||
to manipulate raw content of inline editor instances.
|
||||
</p>
|
||||
<p>
|
||||
This plugin extends the toolbar with a button,
|
||||
which opens a dialog window with a source code editor. It works with both classic
|
||||
and inline instances. To enable this
|
||||
plugin, basically add <code>extraPlugins: 'sourcedialog'</code> to editor's
|
||||
config:
|
||||
</p>
|
||||
<pre class="samples">
|
||||
// Inline editor.
|
||||
CKEDITOR.inline( 'editable', {
|
||||
<strong>extraPlugins: 'sourcedialog'</strong>
|
||||
});
|
||||
|
||||
// Classic (iframe-based) editor.
|
||||
CKEDITOR.replace( 'textarea_id', {
|
||||
<strong>extraPlugins: 'sourcedialog'</strong>,
|
||||
removePlugins: 'sourcearea'
|
||||
});
|
||||
</pre>
|
||||
<p>
|
||||
Note that you may want to include <code>removePlugins: 'sourcearea'</code>
|
||||
in your config when using <strong>Sourcedialog</strong> in classic editor instances.
|
||||
This prevents feature redundancy.
|
||||
</p>
|
||||
<p>
|
||||
Note that <code>editable</code> in the code above is the <code>id</code>
|
||||
attribute of the <code><div></code> element to be converted into an inline instance.
|
||||
</p>
|
||||
<p>
|
||||
Note that <code><em>textarea_id</em></code> in the code above is the <code>id</code> attribute of
|
||||
the <code><textarea></code> element to be replaced with CKEditor.
|
||||
</p>
|
||||
</div>
|
||||
<div>
|
||||
<label for="editor1">
|
||||
Inline editor:
|
||||
</label>
|
||||
<div id="editor1" contenteditable="true" style="padding: 5px 20px;">
|
||||
<p>This is some <strong>sample text</strong>. You are using <a href="http://ckeditor.com/">CKEditor</a>.</p>
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
<div>
|
||||
<label for="editor2">
|
||||
Classic editor:
|
||||
</label>
|
||||
<textarea cols="80" id="editor2" name="editor2" rows="10">
|
||||
This is some <strong>sample text</strong>. You are using <a href="http://ckeditor.com/">CKEditor</a>.
|
||||
</textarea>
|
||||
</div>
|
||||
<script>
|
||||
|
||||
// We need to turn off the automatic editor creation first.
|
||||
CKEDITOR.disableAutoInline = true;
|
||||
|
||||
var config = {
|
||||
toolbarGroups: [
|
||||
{ name: 'mode' },
|
||||
{ name: 'basicstyles' },
|
||||
{ name: 'links' }
|
||||
],
|
||||
extraPlugins: 'sourcedialog',
|
||||
removePlugins: 'sourcearea'
|
||||
}
|
||||
|
||||
CKEDITOR.inline( 'editor1', config );
|
||||
CKEDITOR.replace( 'editor2', config );
|
||||
|
||||
</script>
|
||||
<div id="footer">
|
||||
<hr>
|
||||
<p>
|
||||
CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">
|
||||
http://ckeditor.com</a>
|
||||
</p>
|
||||
<p id="copy">
|
||||
Copyright © 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a>
|
||||
- Frederico Knabben. All rights reserved.
|
||||
</p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,74 +1,74 @@
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'table', 'en', {
|
||||
border: 'Border size',
|
||||
caption: 'Caption',
|
||||
cell: {
|
||||
menu: 'Cell',
|
||||
insertBefore: 'Insert Cell Before',
|
||||
insertAfter: 'Insert Cell After',
|
||||
deleteCell: 'Delete Cells',
|
||||
merge: 'Merge Cells',
|
||||
mergeRight: 'Merge Right',
|
||||
mergeDown: 'Merge Down',
|
||||
splitHorizontal: 'Split Cell Horizontally',
|
||||
splitVertical: 'Split Cell Vertically',
|
||||
title: 'Cell Properties',
|
||||
cellType: 'Cell Type',
|
||||
rowSpan: 'Rows Span',
|
||||
colSpan: 'Columns Span',
|
||||
wordWrap: 'Word Wrap',
|
||||
hAlign: 'Horizontal Alignment',
|
||||
vAlign: 'Vertical Alignment',
|
||||
alignBaseline: 'Baseline',
|
||||
bgColor: 'Background Color',
|
||||
borderColor: 'Border Color',
|
||||
data: 'Data',
|
||||
header: 'Header',
|
||||
yes: 'Yes',
|
||||
no: 'No',
|
||||
invalidWidth: 'Cell width must be a number.',
|
||||
invalidHeight: 'Cell height must be a number.',
|
||||
invalidRowSpan: 'Rows span must be a whole number.',
|
||||
invalidColSpan: 'Columns span must be a whole number.',
|
||||
chooseColor: 'Choose'
|
||||
},
|
||||
cellPad: 'Cell padding',
|
||||
cellSpace: 'Cell spacing',
|
||||
column: {
|
||||
menu: 'Column',
|
||||
insertBefore: 'Insert Column Before',
|
||||
insertAfter: 'Insert Column After',
|
||||
deleteColumn: 'Delete Columns'
|
||||
},
|
||||
columns: 'Columns',
|
||||
deleteTable: 'Delete Table',
|
||||
headers: 'Headers',
|
||||
headersBoth: 'Both',
|
||||
headersColumn: 'First column',
|
||||
headersNone: 'None',
|
||||
headersRow: 'First Row',
|
||||
invalidBorder: 'Border size must be a number.',
|
||||
invalidCellPadding: 'Cell padding must be a positive number.',
|
||||
invalidCellSpacing: 'Cell spacing must be a positive number.',
|
||||
invalidCols: 'Number of columns must be a number greater than 0.',
|
||||
invalidHeight: 'Table height must be a number.',
|
||||
invalidRows: 'Number of rows must be a number greater than 0.',
|
||||
invalidWidth: 'Table width must be a number.',
|
||||
menu: 'Table Properties',
|
||||
row: {
|
||||
menu: 'Row',
|
||||
insertBefore: 'Insert Row Before',
|
||||
insertAfter: 'Insert Row After',
|
||||
deleteRow: 'Delete Rows'
|
||||
},
|
||||
rows: 'Rows',
|
||||
summary: 'Summary',
|
||||
title: 'Table Properties',
|
||||
toolbar: 'Table',
|
||||
widthPc: 'percent',
|
||||
widthPx: 'pixels',
|
||||
widthUnit: 'width unit'
|
||||
} );
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'table', 'en', {
|
||||
border: 'Border size',
|
||||
caption: 'Caption',
|
||||
cell: {
|
||||
menu: 'Cell',
|
||||
insertBefore: 'Insert Cell Before',
|
||||
insertAfter: 'Insert Cell After',
|
||||
deleteCell: 'Delete Cells',
|
||||
merge: 'Merge Cells',
|
||||
mergeRight: 'Merge Right',
|
||||
mergeDown: 'Merge Down',
|
||||
splitHorizontal: 'Split Cell Horizontally',
|
||||
splitVertical: 'Split Cell Vertically',
|
||||
title: 'Cell Properties',
|
||||
cellType: 'Cell Type',
|
||||
rowSpan: 'Rows Span',
|
||||
colSpan: 'Columns Span',
|
||||
wordWrap: 'Word Wrap',
|
||||
hAlign: 'Horizontal Alignment',
|
||||
vAlign: 'Vertical Alignment',
|
||||
alignBaseline: 'Baseline',
|
||||
bgColor: 'Background Color',
|
||||
borderColor: 'Border Color',
|
||||
data: 'Data',
|
||||
header: 'Header',
|
||||
yes: 'Yes',
|
||||
no: 'No',
|
||||
invalidWidth: 'Cell width must be a number.',
|
||||
invalidHeight: 'Cell height must be a number.',
|
||||
invalidRowSpan: 'Rows span must be a whole number.',
|
||||
invalidColSpan: 'Columns span must be a whole number.',
|
||||
chooseColor: 'Choose'
|
||||
},
|
||||
cellPad: 'Cell padding',
|
||||
cellSpace: 'Cell spacing',
|
||||
column: {
|
||||
menu: 'Column',
|
||||
insertBefore: 'Insert Column Before',
|
||||
insertAfter: 'Insert Column After',
|
||||
deleteColumn: 'Delete Columns'
|
||||
},
|
||||
columns: 'Columns',
|
||||
deleteTable: 'Delete Table',
|
||||
headers: 'Headers',
|
||||
headersBoth: 'Both',
|
||||
headersColumn: 'First column',
|
||||
headersNone: 'None',
|
||||
headersRow: 'First Row',
|
||||
invalidBorder: 'Border size must be a number.',
|
||||
invalidCellPadding: 'Cell padding must be a positive number.',
|
||||
invalidCellSpacing: 'Cell spacing must be a positive number.',
|
||||
invalidCols: 'Number of columns must be a number greater than 0.',
|
||||
invalidHeight: 'Table height must be a number.',
|
||||
invalidRows: 'Number of rows must be a number greater than 0.',
|
||||
invalidWidth: 'Table width must be a number.',
|
||||
menu: 'Table Properties',
|
||||
row: {
|
||||
menu: 'Row',
|
||||
insertBefore: 'Insert Row Before',
|
||||
insertAfter: 'Insert Row After',
|
||||
deleteRow: 'Delete Rows'
|
||||
},
|
||||
rows: 'Rows',
|
||||
summary: 'Summary',
|
||||
title: 'Table Properties',
|
||||
toolbar: 'Table',
|
||||
widthPc: 'percent',
|
||||
widthPx: 'pixels',
|
||||
widthUnit: 'width unit'
|
||||
} );
|
||||
|
||||
@@ -1,74 +1,74 @@
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'table', 'hu', {
|
||||
border: 'Szegélyméret',
|
||||
caption: 'Felirat',
|
||||
cell: {
|
||||
menu: 'Cella',
|
||||
insertBefore: 'Beszúrás balra',
|
||||
insertAfter: 'Beszúrás jobbra',
|
||||
deleteCell: 'Cellák törlése',
|
||||
merge: 'Cellák egyesítése',
|
||||
mergeRight: 'Cellák egyesítése jobbra',
|
||||
mergeDown: 'Cellák egyesítése lefelé',
|
||||
splitHorizontal: 'Cellák szétválasztása vízszintesen',
|
||||
splitVertical: 'Cellák szétválasztása függőlegesen',
|
||||
title: 'Cella tulajdonságai',
|
||||
cellType: 'Cella típusa',
|
||||
rowSpan: 'Függőleges egyesítés',
|
||||
colSpan: 'Vízszintes egyesítés',
|
||||
wordWrap: 'Hosszú sorok törése',
|
||||
hAlign: 'Vízszintes igazítás',
|
||||
vAlign: 'Függőleges igazítás',
|
||||
alignBaseline: 'Alapvonalra',
|
||||
bgColor: 'Háttér színe',
|
||||
borderColor: 'Keret színe',
|
||||
data: 'Adat',
|
||||
header: 'Fejléc',
|
||||
yes: 'Igen',
|
||||
no: 'Nem',
|
||||
invalidWidth: 'A szélesség mezőbe csak számokat írhat.',
|
||||
invalidHeight: 'A magasság mezőbe csak számokat írhat.',
|
||||
invalidRowSpan: 'A függőleges egyesítés mezőbe csak számokat írhat.',
|
||||
invalidColSpan: 'A vízszintes egyesítés mezőbe csak számokat írhat.',
|
||||
chooseColor: 'Válasszon'
|
||||
},
|
||||
cellPad: 'Cella belső margó',
|
||||
cellSpace: 'Cella térköz',
|
||||
column: {
|
||||
menu: 'Oszlop',
|
||||
insertBefore: 'Beszúrás balra',
|
||||
insertAfter: 'Beszúrás jobbra',
|
||||
deleteColumn: 'Oszlopok törlése'
|
||||
},
|
||||
columns: 'Oszlopok',
|
||||
deleteTable: 'Táblázat törlése',
|
||||
headers: 'Fejlécek',
|
||||
headersBoth: 'Mindkettő',
|
||||
headersColumn: 'Első oszlop',
|
||||
headersNone: 'Nincsenek',
|
||||
headersRow: 'Első sor',
|
||||
invalidBorder: 'A szegélyméret mezőbe csak számokat írhat.',
|
||||
invalidCellPadding: 'A cella belső margó mezőbe csak számokat írhat.',
|
||||
invalidCellSpacing: 'A cella térköz mezőbe csak számokat írhat.',
|
||||
invalidCols: 'Az oszlopok számának nagyobbnak kell lenni mint 0.',
|
||||
invalidHeight: 'A magasság mezőbe csak számokat írhat.',
|
||||
invalidRows: 'A sorok számának nagyobbnak kell lenni mint 0.',
|
||||
invalidWidth: 'A szélesség mezőbe csak számokat írhat.',
|
||||
menu: 'Táblázat tulajdonságai',
|
||||
row: {
|
||||
menu: 'Sor',
|
||||
insertBefore: 'Beszúrás fölé',
|
||||
insertAfter: 'Beszúrás alá',
|
||||
deleteRow: 'Sorok törlése'
|
||||
},
|
||||
rows: 'Sorok',
|
||||
summary: 'Leírás',
|
||||
title: 'Táblázat tulajdonságai',
|
||||
toolbar: 'Táblázat',
|
||||
widthPc: 'százalék',
|
||||
widthPx: 'képpont',
|
||||
widthUnit: 'Szélesség egység'
|
||||
} );
|
||||
/*
|
||||
Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
CKEDITOR.plugins.setLang( 'table', 'hu', {
|
||||
border: 'Szegélyméret',
|
||||
caption: 'Felirat',
|
||||
cell: {
|
||||
menu: 'Cella',
|
||||
insertBefore: 'Beszúrás balra',
|
||||
insertAfter: 'Beszúrás jobbra',
|
||||
deleteCell: 'Cellák törlése',
|
||||
merge: 'Cellák egyesítése',
|
||||
mergeRight: 'Cellák egyesítése jobbra',
|
||||
mergeDown: 'Cellák egyesítése lefelé',
|
||||
splitHorizontal: 'Cellák szétválasztása vízszintesen',
|
||||
splitVertical: 'Cellák szétválasztása függőlegesen',
|
||||
title: 'Cella tulajdonságai',
|
||||
cellType: 'Cella típusa',
|
||||
rowSpan: 'Függőleges egyesítés',
|
||||
colSpan: 'Vízszintes egyesítés',
|
||||
wordWrap: 'Hosszú sorok törése',
|
||||
hAlign: 'Vízszintes igazítás',
|
||||
vAlign: 'Függőleges igazítás',
|
||||
alignBaseline: 'Alapvonalra',
|
||||
bgColor: 'Háttér színe',
|
||||
borderColor: 'Keret színe',
|
||||
data: 'Adat',
|
||||
header: 'Fejléc',
|
||||
yes: 'Igen',
|
||||
no: 'Nem',
|
||||
invalidWidth: 'A szélesség mezőbe csak számokat írhat.',
|
||||
invalidHeight: 'A magasság mezőbe csak számokat írhat.',
|
||||
invalidRowSpan: 'A függőleges egyesítés mezőbe csak számokat írhat.',
|
||||
invalidColSpan: 'A vízszintes egyesítés mezőbe csak számokat írhat.',
|
||||
chooseColor: 'Válasszon'
|
||||
},
|
||||
cellPad: 'Cella belső margó',
|
||||
cellSpace: 'Cella térköz',
|
||||
column: {
|
||||
menu: 'Oszlop',
|
||||
insertBefore: 'Beszúrás balra',
|
||||
insertAfter: 'Beszúrás jobbra',
|
||||
deleteColumn: 'Oszlopok törlése'
|
||||
},
|
||||
columns: 'Oszlopok',
|
||||
deleteTable: 'Táblázat törlése',
|
||||
headers: 'Fejlécek',
|
||||
headersBoth: 'Mindkettő',
|
||||
headersColumn: 'Első oszlop',
|
||||
headersNone: 'Nincsenek',
|
||||
headersRow: 'Első sor',
|
||||
invalidBorder: 'A szegélyméret mezőbe csak számokat írhat.',
|
||||
invalidCellPadding: 'A cella belső margó mezőbe csak számokat írhat.',
|
||||
invalidCellSpacing: 'A cella térköz mezőbe csak számokat írhat.',
|
||||
invalidCols: 'Az oszlopok számának nagyobbnak kell lenni mint 0.',
|
||||
invalidHeight: 'A magasság mezőbe csak számokat írhat.',
|
||||
invalidRows: 'A sorok számának nagyobbnak kell lenni mint 0.',
|
||||
invalidWidth: 'A szélesség mezőbe csak számokat írhat.',
|
||||
menu: 'Táblázat tulajdonságai',
|
||||
row: {
|
||||
menu: 'Sor',
|
||||
insertBefore: 'Beszúrás fölé',
|
||||
insertAfter: 'Beszúrás alá',
|
||||
deleteRow: 'Sorok törlése'
|
||||
},
|
||||
rows: 'Sorok',
|
||||
summary: 'Leírás',
|
||||
title: 'Táblázat tulajdonságai',
|
||||
toolbar: 'Táblázat',
|
||||
widthPc: 'százalék',
|
||||
widthPx: 'képpont',
|
||||
widthUnit: 'Szélesség egység'
|
||||
} );
|
||||
|
||||
@@ -1,106 +1,106 @@
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.plugins.add( 'table', {
|
||||
requires: 'dialog',
|
||||
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: 'table', // %REMOVE_LINE_CORE%
|
||||
hidpi: true, // %REMOVE_LINE_CORE%
|
||||
init: function( editor ) {
|
||||
if ( editor.blockless )
|
||||
return;
|
||||
|
||||
var table = CKEDITOR.plugins.table,
|
||||
lang = editor.lang.table;
|
||||
|
||||
editor.addCommand( 'table', new CKEDITOR.dialogCommand( 'table', {
|
||||
context: 'table',
|
||||
allowedContent: 'table{width,height}[align,border,cellpadding,cellspacing,summary];' +
|
||||
'caption tbody thead tfoot;' +
|
||||
'th td tr[scope];' +
|
||||
( editor.plugins.dialogadvtab ? 'table' + editor.plugins.dialogadvtab.allowedContent() : '' ),
|
||||
requiredContent: 'table',
|
||||
contentTransformations: [
|
||||
[ 'table{width}: sizeToStyle', 'table[width]: sizeToAttribute' ]
|
||||
]
|
||||
} ) );
|
||||
|
||||
function createDef( def ) {
|
||||
return CKEDITOR.tools.extend( def || {}, {
|
||||
contextSensitive: 1,
|
||||
refresh: function( editor, path ) {
|
||||
this.setState( path.contains( 'table', 1 ) ? CKEDITOR.TRISTATE_OFF : CKEDITOR.TRISTATE_DISABLED );
|
||||
}
|
||||
} );
|
||||
}
|
||||
|
||||
editor.addCommand( 'tableProperties', new CKEDITOR.dialogCommand( 'tableProperties', createDef() ) );
|
||||
editor.addCommand( 'tableDelete', createDef( {
|
||||
exec: function( editor ) {
|
||||
var path = editor.elementPath(),
|
||||
table = path.contains( 'table', 1 );
|
||||
|
||||
if ( !table )
|
||||
return;
|
||||
|
||||
// If the table's parent has only one child remove it as well (unless it's the body or a table cell) (#5416, #6289)
|
||||
var parent = table.getParent();
|
||||
if ( parent.getChildCount() == 1 && !parent.is( 'body', 'td', 'th' ) )
|
||||
table = parent;
|
||||
|
||||
var range = editor.createRange();
|
||||
range.moveToPosition( table, CKEDITOR.POSITION_BEFORE_START );
|
||||
table.remove();
|
||||
range.select();
|
||||
}
|
||||
} ) );
|
||||
|
||||
editor.ui.addButton && editor.ui.addButton( 'Table', {
|
||||
label: lang.toolbar,
|
||||
command: 'table',
|
||||
toolbar: 'insert,30'
|
||||
} );
|
||||
|
||||
CKEDITOR.dialog.add( 'table', this.path + 'dialogs/table.js' );
|
||||
CKEDITOR.dialog.add( 'tableProperties', this.path + 'dialogs/table.js' );
|
||||
|
||||
// If the "menu" plugin is loaded, register the menu items.
|
||||
if ( editor.addMenuItems ) {
|
||||
editor.addMenuItems( {
|
||||
table: {
|
||||
label: lang.menu,
|
||||
command: 'tableProperties',
|
||||
group: 'table',
|
||||
order: 5
|
||||
},
|
||||
|
||||
tabledelete: {
|
||||
label: lang.deleteTable,
|
||||
command: 'tableDelete',
|
||||
group: 'table',
|
||||
order: 1
|
||||
}
|
||||
} );
|
||||
}
|
||||
|
||||
editor.on( 'doubleclick', function( evt ) {
|
||||
var element = evt.data.element;
|
||||
|
||||
if ( element.is( 'table' ) )
|
||||
evt.data.dialog = 'tableProperties';
|
||||
} );
|
||||
|
||||
// If the "contextmenu" plugin is loaded, register the listeners.
|
||||
if ( editor.contextMenu ) {
|
||||
editor.contextMenu.addListener( function() {
|
||||
// menu item state is resolved on commands.
|
||||
return {
|
||||
tabledelete: CKEDITOR.TRISTATE_OFF,
|
||||
table: CKEDITOR.TRISTATE_OFF
|
||||
};
|
||||
} );
|
||||
}
|
||||
}
|
||||
} );
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.plugins.add( 'table', {
|
||||
requires: 'dialog',
|
||||
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: 'table', // %REMOVE_LINE_CORE%
|
||||
hidpi: true, // %REMOVE_LINE_CORE%
|
||||
init: function( editor ) {
|
||||
if ( editor.blockless )
|
||||
return;
|
||||
|
||||
var table = CKEDITOR.plugins.table,
|
||||
lang = editor.lang.table;
|
||||
|
||||
editor.addCommand( 'table', new CKEDITOR.dialogCommand( 'table', {
|
||||
context: 'table',
|
||||
allowedContent: 'table{width,height}[align,border,cellpadding,cellspacing,summary];' +
|
||||
'caption tbody thead tfoot;' +
|
||||
'th td tr[scope];' +
|
||||
( editor.plugins.dialogadvtab ? 'table' + editor.plugins.dialogadvtab.allowedContent() : '' ),
|
||||
requiredContent: 'table',
|
||||
contentTransformations: [
|
||||
[ 'table{width}: sizeToStyle', 'table[width]: sizeToAttribute' ]
|
||||
]
|
||||
} ) );
|
||||
|
||||
function createDef( def ) {
|
||||
return CKEDITOR.tools.extend( def || {}, {
|
||||
contextSensitive: 1,
|
||||
refresh: function( editor, path ) {
|
||||
this.setState( path.contains( 'table', 1 ) ? CKEDITOR.TRISTATE_OFF : CKEDITOR.TRISTATE_DISABLED );
|
||||
}
|
||||
} );
|
||||
}
|
||||
|
||||
editor.addCommand( 'tableProperties', new CKEDITOR.dialogCommand( 'tableProperties', createDef() ) );
|
||||
editor.addCommand( 'tableDelete', createDef( {
|
||||
exec: function( editor ) {
|
||||
var path = editor.elementPath(),
|
||||
table = path.contains( 'table', 1 );
|
||||
|
||||
if ( !table )
|
||||
return;
|
||||
|
||||
// If the table's parent has only one child remove it as well (unless it's the body or a table cell) (#5416, #6289)
|
||||
var parent = table.getParent();
|
||||
if ( parent.getChildCount() == 1 && !parent.is( 'body', 'td', 'th' ) )
|
||||
table = parent;
|
||||
|
||||
var range = editor.createRange();
|
||||
range.moveToPosition( table, CKEDITOR.POSITION_BEFORE_START );
|
||||
table.remove();
|
||||
range.select();
|
||||
}
|
||||
} ) );
|
||||
|
||||
editor.ui.addButton && editor.ui.addButton( 'Table', {
|
||||
label: lang.toolbar,
|
||||
command: 'table',
|
||||
toolbar: 'insert,30'
|
||||
} );
|
||||
|
||||
CKEDITOR.dialog.add( 'table', this.path + 'dialogs/table.js' );
|
||||
CKEDITOR.dialog.add( 'tableProperties', this.path + 'dialogs/table.js' );
|
||||
|
||||
// If the "menu" plugin is loaded, register the menu items.
|
||||
if ( editor.addMenuItems ) {
|
||||
editor.addMenuItems( {
|
||||
table: {
|
||||
label: lang.menu,
|
||||
command: 'tableProperties',
|
||||
group: 'table',
|
||||
order: 5
|
||||
},
|
||||
|
||||
tabledelete: {
|
||||
label: lang.deleteTable,
|
||||
command: 'tableDelete',
|
||||
group: 'table',
|
||||
order: 1
|
||||
}
|
||||
} );
|
||||
}
|
||||
|
||||
editor.on( 'doubleclick', function( evt ) {
|
||||
var element = evt.data.element;
|
||||
|
||||
if ( element.is( 'table' ) )
|
||||
evt.data.dialog = 'tableProperties';
|
||||
} );
|
||||
|
||||
// If the "contextmenu" plugin is loaded, register the listeners.
|
||||
if ( editor.contextMenu ) {
|
||||
editor.contextMenu.addListener( function() {
|
||||
// menu item state is resolved on commands.
|
||||
return {
|
||||
tabledelete: CKEDITOR.TRISTATE_OFF,
|
||||
table: CKEDITOR.TRISTATE_OFF
|
||||
};
|
||||
} );
|
||||
}
|
||||
}
|
||||
} );
|
||||
|
||||
@@ -1,493 +1,493 @@
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.dialog.add( 'cellProperties', function( editor ) {
|
||||
var langTable = editor.lang.table,
|
||||
langCell = langTable.cell,
|
||||
langCommon = editor.lang.common,
|
||||
validate = CKEDITOR.dialog.validate,
|
||||
widthPattern = /^(\d+(?:\.\d+)?)(px|%)$/,
|
||||
heightPattern = /^(\d+(?:\.\d+)?)px$/,
|
||||
bind = CKEDITOR.tools.bind,
|
||||
spacer = { type: 'html', html: ' ' },
|
||||
rtl = editor.lang.dir == 'rtl',
|
||||
colorDialog = editor.plugins.colordialog;
|
||||
|
||||
// Returns a function, which runs regular "setup" for all selected cells to find out
|
||||
// whether the initial value of the field would be the same for all cells. If so,
|
||||
// the value is displayed just as if a regular "setup" was executed. Otherwise,
|
||||
// i.e. when there are several cells of different value of the property, a field
|
||||
// gets empty value.
|
||||
//
|
||||
// * @param {Function} setup Setup function which returns a value instead of setting it.
|
||||
// * @returns {Function} A function to be used in dialog definition.
|
||||
function setupCells( setup ) {
|
||||
return function( cells ) {
|
||||
var fieldValue = setup( cells[ 0 ] );
|
||||
|
||||
// If one of the cells would have a different value of the
|
||||
// property, set the empty value for a field.
|
||||
for ( var i = 1; i < cells.length; i++ ) {
|
||||
if ( setup( cells[ i ] ) !== fieldValue ) {
|
||||
fieldValue = null;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// Setting meaningful or empty value only makes sense
|
||||
// when setup returns some value. Otherwise, a *default* value
|
||||
// is used for that field.
|
||||
if ( typeof fieldValue != 'undefined' ) {
|
||||
this.setValue( fieldValue );
|
||||
|
||||
// The only way to have an empty select value in Firefox is
|
||||
// to set a negative selectedIndex.
|
||||
if ( CKEDITOR.env.gecko && this.type == 'select' && !fieldValue )
|
||||
this.getInputElement().$.selectedIndex = -1;
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
// Reads the unit of width property of the table cell.
|
||||
//
|
||||
// * @param {CKEDITOR.dom.element} cell An element representing table cell.
|
||||
// * @returns {String} A unit of width: 'px', '%' or undefined if none.
|
||||
function getCellWidthType( cell ) {
|
||||
var match = widthPattern.exec(
|
||||
cell.getStyle( 'width' ) || cell.getAttribute( 'width' ) );
|
||||
|
||||
if ( match )
|
||||
return match[ 2 ];
|
||||
}
|
||||
|
||||
return {
|
||||
title: langCell.title,
|
||||
minWidth: CKEDITOR.env.ie && CKEDITOR.env.quirks ? 450 : 410,
|
||||
minHeight: CKEDITOR.env.ie && ( CKEDITOR.env.ie7Compat || CKEDITOR.env.quirks ) ? 230 : 220,
|
||||
contents: [
|
||||
{
|
||||
id: 'info',
|
||||
label: langCell.title,
|
||||
accessKey: 'I',
|
||||
elements: [
|
||||
{
|
||||
type: 'hbox',
|
||||
widths: [ '40%', '5%', '40%' ],
|
||||
children: [
|
||||
{
|
||||
type: 'vbox',
|
||||
padding: 0,
|
||||
children: [
|
||||
{
|
||||
type: 'hbox',
|
||||
widths: [ '70%', '30%' ],
|
||||
children: [
|
||||
{
|
||||
type: 'text',
|
||||
id: 'width',
|
||||
width: '100px',
|
||||
label: langCommon.width,
|
||||
validate: validate[ 'number' ]( langCell.invalidWidth ),
|
||||
|
||||
// Extra labelling of width unit type.
|
||||
onLoad: function() {
|
||||
var widthType = this.getDialog().getContentElement( 'info', 'widthType' ),
|
||||
labelElement = widthType.getElement(),
|
||||
inputElement = this.getInputElement(),
|
||||
ariaLabelledByAttr = inputElement.getAttribute( 'aria-labelledby' );
|
||||
|
||||
inputElement.setAttribute( 'aria-labelledby', [ ariaLabelledByAttr, labelElement.$.id ].join( ' ' ) );
|
||||
},
|
||||
|
||||
setup: setupCells( function( element ) {
|
||||
var widthAttr = parseInt( element.getAttribute( 'width' ), 10 ),
|
||||
widthStyle = parseInt( element.getStyle( 'width' ), 10 );
|
||||
|
||||
return !isNaN( widthStyle ) ? widthStyle :
|
||||
!isNaN( widthAttr ) ? widthAttr : '';
|
||||
} ),
|
||||
commit: function( element ) {
|
||||
var value = parseInt( this.getValue(), 10 ),
|
||||
|
||||
// There might be no widthType value, i.e. when multiple cells are
|
||||
// selected but some of them have width expressed in pixels and some
|
||||
// of them in percent. Try to re-read the unit from the cell in such
|
||||
// case (#11439).
|
||||
unit = this.getDialog().getValueOf( 'info', 'widthType' ) || getCellWidthType( element );
|
||||
|
||||
if ( !isNaN( value ) )
|
||||
element.setStyle( 'width', value + unit );
|
||||
else
|
||||
element.removeStyle( 'width' );
|
||||
|
||||
element.removeAttribute( 'width' );
|
||||
},
|
||||
'default': ''
|
||||
},
|
||||
{
|
||||
type: 'select',
|
||||
id: 'widthType',
|
||||
label: editor.lang.table.widthUnit,
|
||||
labelStyle: 'visibility:hidden',
|
||||
'default': 'px',
|
||||
items: [
|
||||
[ langTable.widthPx, 'px' ],
|
||||
[ langTable.widthPc, '%' ]
|
||||
],
|
||||
setup: setupCells( getCellWidthType )
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
type: 'hbox',
|
||||
widths: [ '70%', '30%' ],
|
||||
children: [
|
||||
{
|
||||
type: 'text',
|
||||
id: 'height',
|
||||
label: langCommon.height,
|
||||
width: '100px',
|
||||
'default': '',
|
||||
validate: validate[ 'number' ]( langCell.invalidHeight ),
|
||||
|
||||
// Extra labelling of height unit type.
|
||||
onLoad: function() {
|
||||
var heightType = this.getDialog().getContentElement( 'info', 'htmlHeightType' ),
|
||||
labelElement = heightType.getElement(),
|
||||
inputElement = this.getInputElement(),
|
||||
ariaLabelledByAttr = inputElement.getAttribute( 'aria-labelledby' );
|
||||
|
||||
inputElement.setAttribute( 'aria-labelledby', [ ariaLabelledByAttr, labelElement.$.id ].join( ' ' ) );
|
||||
},
|
||||
|
||||
setup: setupCells( function( element ) {
|
||||
var heightAttr = parseInt( element.getAttribute( 'height' ), 10 ),
|
||||
heightStyle = parseInt( element.getStyle( 'height' ), 10 );
|
||||
|
||||
return !isNaN( heightStyle ) ? heightStyle :
|
||||
!isNaN( heightAttr ) ? heightAttr : '';
|
||||
} ),
|
||||
commit: function( element ) {
|
||||
var value = parseInt( this.getValue(), 10 );
|
||||
|
||||
if ( !isNaN( value ) )
|
||||
element.setStyle( 'height', CKEDITOR.tools.cssLength( value ) );
|
||||
else
|
||||
element.removeStyle( 'height' );
|
||||
|
||||
element.removeAttribute( 'height' );
|
||||
}
|
||||
},
|
||||
{
|
||||
id: 'htmlHeightType',
|
||||
type: 'html',
|
||||
html: '<br />' + langTable.widthPx
|
||||
}
|
||||
]
|
||||
},
|
||||
spacer,
|
||||
{
|
||||
type: 'select',
|
||||
id: 'wordWrap',
|
||||
label: langCell.wordWrap,
|
||||
'default': 'yes',
|
||||
items: [
|
||||
[ langCell.yes, 'yes' ],
|
||||
[ langCell.no, 'no' ]
|
||||
],
|
||||
setup: setupCells( function( element ) {
|
||||
var wordWrapAttr = element.getAttribute( 'noWrap' ),
|
||||
wordWrapStyle = element.getStyle( 'white-space' );
|
||||
|
||||
if ( wordWrapStyle == 'nowrap' || wordWrapAttr )
|
||||
return 'no';
|
||||
} ),
|
||||
commit: function( element ) {
|
||||
if ( this.getValue() == 'no' )
|
||||
element.setStyle( 'white-space', 'nowrap' );
|
||||
else
|
||||
element.removeStyle( 'white-space' );
|
||||
|
||||
element.removeAttribute( 'noWrap' );
|
||||
}
|
||||
},
|
||||
spacer,
|
||||
{
|
||||
type: 'select',
|
||||
id: 'hAlign',
|
||||
label: langCell.hAlign,
|
||||
'default': '',
|
||||
items: [
|
||||
[ langCommon.notSet, '' ],
|
||||
[ langCommon.alignLeft, 'left' ],
|
||||
[ langCommon.alignCenter, 'center' ],
|
||||
[ langCommon.alignRight, 'right' ]
|
||||
],
|
||||
setup: setupCells( function( element ) {
|
||||
var alignAttr = element.getAttribute( 'align' ),
|
||||
textAlignStyle = element.getStyle( 'text-align' );
|
||||
|
||||
return textAlignStyle || alignAttr || '';
|
||||
} ),
|
||||
commit: function( selectedCell ) {
|
||||
var value = this.getValue();
|
||||
|
||||
if ( value )
|
||||
selectedCell.setStyle( 'text-align', value );
|
||||
else
|
||||
selectedCell.removeStyle( 'text-align' );
|
||||
|
||||
selectedCell.removeAttribute( 'align' );
|
||||
}
|
||||
},
|
||||
{
|
||||
type: 'select',
|
||||
id: 'vAlign',
|
||||
label: langCell.vAlign,
|
||||
'default': '',
|
||||
items: [
|
||||
[ langCommon.notSet, '' ],
|
||||
[ langCommon.alignTop, 'top' ],
|
||||
[ langCommon.alignMiddle, 'middle' ],
|
||||
[ langCommon.alignBottom, 'bottom' ],
|
||||
[ langCell.alignBaseline, 'baseline' ]
|
||||
],
|
||||
setup: setupCells( function( element ) {
|
||||
var vAlignAttr = element.getAttribute( 'vAlign' ),
|
||||
vAlignStyle = element.getStyle( 'vertical-align' );
|
||||
|
||||
switch ( vAlignStyle ) {
|
||||
// Ignore all other unrelated style values..
|
||||
case 'top':
|
||||
case 'middle':
|
||||
case 'bottom':
|
||||
case 'baseline':
|
||||
break;
|
||||
default:
|
||||
vAlignStyle = '';
|
||||
}
|
||||
|
||||
return vAlignStyle || vAlignAttr || '';
|
||||
} ),
|
||||
commit: function( element ) {
|
||||
var value = this.getValue();
|
||||
|
||||
if ( value )
|
||||
element.setStyle( 'vertical-align', value );
|
||||
else
|
||||
element.removeStyle( 'vertical-align' );
|
||||
|
||||
element.removeAttribute( 'vAlign' );
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
spacer,
|
||||
{
|
||||
type: 'vbox',
|
||||
padding: 0,
|
||||
children: [
|
||||
{
|
||||
type: 'select',
|
||||
id: 'cellType',
|
||||
label: langCell.cellType,
|
||||
'default': 'td',
|
||||
items: [
|
||||
[ langCell.data, 'td' ],
|
||||
[ langCell.header, 'th' ]
|
||||
],
|
||||
setup: setupCells( function( selectedCell ) {
|
||||
return selectedCell.getName();
|
||||
} ),
|
||||
commit: function( selectedCell ) {
|
||||
selectedCell.renameNode( this.getValue() );
|
||||
}
|
||||
},
|
||||
spacer,
|
||||
{
|
||||
type: 'text',
|
||||
id: 'rowSpan',
|
||||
label: langCell.rowSpan,
|
||||
'default': '',
|
||||
validate: validate.integer( langCell.invalidRowSpan ),
|
||||
setup: setupCells( function( selectedCell ) {
|
||||
var attrVal = parseInt( selectedCell.getAttribute( 'rowSpan' ), 10 );
|
||||
if ( attrVal && attrVal != 1 )
|
||||
return attrVal;
|
||||
} ),
|
||||
commit: function( selectedCell ) {
|
||||
var value = parseInt( this.getValue(), 10 );
|
||||
if ( value && value != 1 )
|
||||
selectedCell.setAttribute( 'rowSpan', this.getValue() );
|
||||
else
|
||||
selectedCell.removeAttribute( 'rowSpan' );
|
||||
}
|
||||
},
|
||||
{
|
||||
type: 'text',
|
||||
id: 'colSpan',
|
||||
label: langCell.colSpan,
|
||||
'default': '',
|
||||
validate: validate.integer( langCell.invalidColSpan ),
|
||||
setup: setupCells( function( element ) {
|
||||
var attrVal = parseInt( element.getAttribute( 'colSpan' ), 10 );
|
||||
if ( attrVal && attrVal != 1 )
|
||||
return attrVal;
|
||||
} ),
|
||||
commit: function( selectedCell ) {
|
||||
var value = parseInt( this.getValue(), 10 );
|
||||
if ( value && value != 1 )
|
||||
selectedCell.setAttribute( 'colSpan', this.getValue() );
|
||||
else
|
||||
selectedCell.removeAttribute( 'colSpan' );
|
||||
}
|
||||
},
|
||||
spacer,
|
||||
{
|
||||
type: 'hbox',
|
||||
padding: 0,
|
||||
widths: [ '60%', '40%' ],
|
||||
children: [
|
||||
{
|
||||
type: 'text',
|
||||
id: 'bgColor',
|
||||
label: langCell.bgColor,
|
||||
'default': '',
|
||||
setup: setupCells( function( element ) {
|
||||
var bgColorAttr = element.getAttribute( 'bgColor' ),
|
||||
bgColorStyle = element.getStyle( 'background-color' );
|
||||
|
||||
return bgColorStyle || bgColorAttr;
|
||||
} ),
|
||||
commit: function( selectedCell ) {
|
||||
var value = this.getValue();
|
||||
|
||||
if ( value )
|
||||
selectedCell.setStyle( 'background-color', this.getValue() );
|
||||
else
|
||||
selectedCell.removeStyle( 'background-color' );
|
||||
|
||||
selectedCell.removeAttribute( 'bgColor' );
|
||||
}
|
||||
},
|
||||
colorDialog ? {
|
||||
type: 'button',
|
||||
id: 'bgColorChoose',
|
||||
"class": 'colorChooser',
|
||||
label: langCell.chooseColor,
|
||||
onLoad: function() {
|
||||
// Stick the element to the bottom (#5587)
|
||||
this.getElement().getParent().setStyle( 'vertical-align', 'bottom' );
|
||||
},
|
||||
onClick: function() {
|
||||
editor.getColorFromDialog( function( color ) {
|
||||
if ( color )
|
||||
this.getDialog().getContentElement( 'info', 'bgColor' ).setValue( color );
|
||||
this.focus();
|
||||
}, this );
|
||||
}
|
||||
} : spacer
|
||||
]
|
||||
},
|
||||
spacer,
|
||||
{
|
||||
type: 'hbox',
|
||||
padding: 0,
|
||||
widths: [ '60%', '40%' ],
|
||||
children: [
|
||||
{
|
||||
type: 'text',
|
||||
id: 'borderColor',
|
||||
label: langCell.borderColor,
|
||||
'default': '',
|
||||
setup: setupCells( function( element ) {
|
||||
var borderColorAttr = element.getAttribute( 'borderColor' ),
|
||||
borderColorStyle = element.getStyle( 'border-color' );
|
||||
|
||||
return borderColorStyle || borderColorAttr;
|
||||
} ),
|
||||
commit: function( selectedCell ) {
|
||||
var value = this.getValue();
|
||||
if ( value )
|
||||
selectedCell.setStyle( 'border-color', this.getValue() );
|
||||
else
|
||||
selectedCell.removeStyle( 'border-color' );
|
||||
|
||||
selectedCell.removeAttribute( 'borderColor' );
|
||||
}
|
||||
},
|
||||
|
||||
colorDialog ? {
|
||||
type: 'button',
|
||||
id: 'borderColorChoose',
|
||||
"class": 'colorChooser',
|
||||
label: langCell.chooseColor,
|
||||
style: ( rtl ? 'margin-right' : 'margin-left' ) + ': 10px',
|
||||
onLoad: function() {
|
||||
// Stick the element to the bottom (#5587)
|
||||
this.getElement().getParent().setStyle( 'vertical-align', 'bottom' );
|
||||
},
|
||||
onClick: function() {
|
||||
editor.getColorFromDialog( function( color ) {
|
||||
if ( color )
|
||||
this.getDialog().getContentElement( 'info', 'borderColor' ).setValue( color );
|
||||
this.focus();
|
||||
}, this );
|
||||
}
|
||||
} : spacer
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
onShow: function() {
|
||||
this.cells = CKEDITOR.plugins.tabletools.getSelectedCells( this._.editor.getSelection() );
|
||||
this.setupContent( this.cells );
|
||||
},
|
||||
onOk: function() {
|
||||
var selection = this._.editor.getSelection(),
|
||||
bookmarks = selection.createBookmarks();
|
||||
|
||||
var cells = this.cells;
|
||||
for ( var i = 0; i < cells.length; i++ )
|
||||
this.commitContent( cells[ i ] );
|
||||
|
||||
this._.editor.forceNextSelectionCheck();
|
||||
selection.selectBookmarks( bookmarks );
|
||||
this._.editor.selectionChange();
|
||||
},
|
||||
onLoad: function() {
|
||||
var saved = {};
|
||||
|
||||
// Prevent from changing cell properties when the field's value
|
||||
// remains unaltered, i.e. when selected multiple cells and dialog loaded
|
||||
// only the properties of the first cell (#11439).
|
||||
this.foreach( function( field ) {
|
||||
if ( !field.setup || !field.commit )
|
||||
return;
|
||||
|
||||
// Save field's value every time after "setup" is called.
|
||||
field.setup = CKEDITOR.tools.override( field.setup, function( orgSetup ) {
|
||||
return function() {
|
||||
orgSetup.apply( this, arguments );
|
||||
saved[ field.id ] = field.getValue();
|
||||
};
|
||||
} );
|
||||
|
||||
// Compare saved value with actual value. Update cell only if value has changed.
|
||||
field.commit = CKEDITOR.tools.override( field.commit, function( orgCommit ) {
|
||||
return function() {
|
||||
if ( saved[ field.id ] !== field.getValue() )
|
||||
orgCommit.apply( this, arguments );
|
||||
};
|
||||
} );
|
||||
} );
|
||||
}
|
||||
};
|
||||
} );
|
||||
/**
|
||||
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
CKEDITOR.dialog.add( 'cellProperties', function( editor ) {
|
||||
var langTable = editor.lang.table,
|
||||
langCell = langTable.cell,
|
||||
langCommon = editor.lang.common,
|
||||
validate = CKEDITOR.dialog.validate,
|
||||
widthPattern = /^(\d+(?:\.\d+)?)(px|%)$/,
|
||||
heightPattern = /^(\d+(?:\.\d+)?)px$/,
|
||||
bind = CKEDITOR.tools.bind,
|
||||
spacer = { type: 'html', html: ' ' },
|
||||
rtl = editor.lang.dir == 'rtl',
|
||||
colorDialog = editor.plugins.colordialog;
|
||||
|
||||
// Returns a function, which runs regular "setup" for all selected cells to find out
|
||||
// whether the initial value of the field would be the same for all cells. If so,
|
||||
// the value is displayed just as if a regular "setup" was executed. Otherwise,
|
||||
// i.e. when there are several cells of different value of the property, a field
|
||||
// gets empty value.
|
||||
//
|
||||
// * @param {Function} setup Setup function which returns a value instead of setting it.
|
||||
// * @returns {Function} A function to be used in dialog definition.
|
||||
function setupCells( setup ) {
|
||||
return function( cells ) {
|
||||
var fieldValue = setup( cells[ 0 ] );
|
||||
|
||||
// If one of the cells would have a different value of the
|
||||
// property, set the empty value for a field.
|
||||
for ( var i = 1; i < cells.length; i++ ) {
|
||||
if ( setup( cells[ i ] ) !== fieldValue ) {
|
||||
fieldValue = null;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// Setting meaningful or empty value only makes sense
|
||||
// when setup returns some value. Otherwise, a *default* value
|
||||
// is used for that field.
|
||||
if ( typeof fieldValue != 'undefined' ) {
|
||||
this.setValue( fieldValue );
|
||||
|
||||
// The only way to have an empty select value in Firefox is
|
||||
// to set a negative selectedIndex.
|
||||
if ( CKEDITOR.env.gecko && this.type == 'select' && !fieldValue )
|
||||
this.getInputElement().$.selectedIndex = -1;
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
// Reads the unit of width property of the table cell.
|
||||
//
|
||||
// * @param {CKEDITOR.dom.element} cell An element representing table cell.
|
||||
// * @returns {String} A unit of width: 'px', '%' or undefined if none.
|
||||
function getCellWidthType( cell ) {
|
||||
var match = widthPattern.exec(
|
||||
cell.getStyle( 'width' ) || cell.getAttribute( 'width' ) );
|
||||
|
||||
if ( match )
|
||||
return match[ 2 ];
|
||||
}
|
||||
|
||||
return {
|
||||
title: langCell.title,
|
||||
minWidth: CKEDITOR.env.ie && CKEDITOR.env.quirks ? 450 : 410,
|
||||
minHeight: CKEDITOR.env.ie && ( CKEDITOR.env.ie7Compat || CKEDITOR.env.quirks ) ? 230 : 220,
|
||||
contents: [
|
||||
{
|
||||
id: 'info',
|
||||
label: langCell.title,
|
||||
accessKey: 'I',
|
||||
elements: [
|
||||
{
|
||||
type: 'hbox',
|
||||
widths: [ '40%', '5%', '40%' ],
|
||||
children: [
|
||||
{
|
||||
type: 'vbox',
|
||||
padding: 0,
|
||||
children: [
|
||||
{
|
||||
type: 'hbox',
|
||||
widths: [ '70%', '30%' ],
|
||||
children: [
|
||||
{
|
||||
type: 'text',
|
||||
id: 'width',
|
||||
width: '100px',
|
||||
label: langCommon.width,
|
||||
validate: validate[ 'number' ]( langCell.invalidWidth ),
|
||||
|
||||
// Extra labelling of width unit type.
|
||||
onLoad: function() {
|
||||
var widthType = this.getDialog().getContentElement( 'info', 'widthType' ),
|
||||
labelElement = widthType.getElement(),
|
||||
inputElement = this.getInputElement(),
|
||||
ariaLabelledByAttr = inputElement.getAttribute( 'aria-labelledby' );
|
||||
|
||||
inputElement.setAttribute( 'aria-labelledby', [ ariaLabelledByAttr, labelElement.$.id ].join( ' ' ) );
|
||||
},
|
||||
|
||||
setup: setupCells( function( element ) {
|
||||
var widthAttr = parseInt( element.getAttribute( 'width' ), 10 ),
|
||||
widthStyle = parseInt( element.getStyle( 'width' ), 10 );
|
||||
|
||||
return !isNaN( widthStyle ) ? widthStyle :
|
||||
!isNaN( widthAttr ) ? widthAttr : '';
|
||||
} ),
|
||||
commit: function( element ) {
|
||||
var value = parseInt( this.getValue(), 10 ),
|
||||
|
||||
// There might be no widthType value, i.e. when multiple cells are
|
||||
// selected but some of them have width expressed in pixels and some
|
||||
// of them in percent. Try to re-read the unit from the cell in such
|
||||
// case (#11439).
|
||||
unit = this.getDialog().getValueOf( 'info', 'widthType' ) || getCellWidthType( element );
|
||||
|
||||
if ( !isNaN( value ) )
|
||||
element.setStyle( 'width', value + unit );
|
||||
else
|
||||
element.removeStyle( 'width' );
|
||||
|
||||
element.removeAttribute( 'width' );
|
||||
},
|
||||
'default': ''
|
||||
},
|
||||
{
|
||||
type: 'select',
|
||||
id: 'widthType',
|
||||
label: editor.lang.table.widthUnit,
|
||||
labelStyle: 'visibility:hidden',
|
||||
'default': 'px',
|
||||
items: [
|
||||
[ langTable.widthPx, 'px' ],
|
||||
[ langTable.widthPc, '%' ]
|
||||
],
|
||||
setup: setupCells( getCellWidthType )
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
type: 'hbox',
|
||||
widths: [ '70%', '30%' ],
|
||||
children: [
|
||||
{
|
||||
type: 'text',
|
||||
id: 'height',
|
||||
label: langCommon.height,
|
||||
width: '100px',
|
||||
'default': '',
|
||||
validate: validate[ 'number' ]( langCell.invalidHeight ),
|
||||
|
||||
// Extra labelling of height unit type.
|
||||
onLoad: function() {
|
||||
var heightType = this.getDialog().getContentElement( 'info', 'htmlHeightType' ),
|
||||
labelElement = heightType.getElement(),
|
||||
inputElement = this.getInputElement(),
|
||||
ariaLabelledByAttr = inputElement.getAttribute( 'aria-labelledby' );
|
||||
|
||||
inputElement.setAttribute( 'aria-labelledby', [ ariaLabelledByAttr, labelElement.$.id ].join( ' ' ) );
|
||||
},
|
||||
|
||||
setup: setupCells( function( element ) {
|
||||
var heightAttr = parseInt( element.getAttribute( 'height' ), 10 ),
|
||||
heightStyle = parseInt( element.getStyle( 'height' ), 10 );
|
||||
|
||||
return !isNaN( heightStyle ) ? heightStyle :
|
||||
!isNaN( heightAttr ) ? heightAttr : '';
|
||||
} ),
|
||||
commit: function( element ) {
|
||||
var value = parseInt( this.getValue(), 10 );
|
||||
|
||||
if ( !isNaN( value ) )
|
||||
element.setStyle( 'height', CKEDITOR.tools.cssLength( value ) );
|
||||
else
|
||||
element.removeStyle( 'height' );
|
||||
|
||||
element.removeAttribute( 'height' );
|
||||
}
|
||||
},
|
||||
{
|
||||
id: 'htmlHeightType',
|
||||
type: 'html',
|
||||
html: '<br />' + langTable.widthPx
|
||||
}
|
||||
]
|
||||
},
|
||||
spacer,
|
||||
{
|
||||
type: 'select',
|
||||
id: 'wordWrap',
|
||||
label: langCell.wordWrap,
|
||||
'default': 'yes',
|
||||
items: [
|
||||
[ langCell.yes, 'yes' ],
|
||||
[ langCell.no, 'no' ]
|
||||
],
|
||||
setup: setupCells( function( element ) {
|
||||
var wordWrapAttr = element.getAttribute( 'noWrap' ),
|
||||
wordWrapStyle = element.getStyle( 'white-space' );
|
||||
|
||||
if ( wordWrapStyle == 'nowrap' || wordWrapAttr )
|
||||
return 'no';
|
||||
} ),
|
||||
commit: function( element ) {
|
||||
if ( this.getValue() == 'no' )
|
||||
element.setStyle( 'white-space', 'nowrap' );
|
||||
else
|
||||
element.removeStyle( 'white-space' );
|
||||
|
||||
element.removeAttribute( 'noWrap' );
|
||||
}
|
||||
},
|
||||
spacer,
|
||||
{
|
||||
type: 'select',
|
||||
id: 'hAlign',
|
||||
label: langCell.hAlign,
|
||||
'default': '',
|
||||
items: [
|
||||
[ langCommon.notSet, '' ],
|
||||
[ langCommon.alignLeft, 'left' ],
|
||||
[ langCommon.alignCenter, 'center' ],
|
||||
[ langCommon.alignRight, 'right' ]
|
||||
],
|
||||
setup: setupCells( function( element ) {
|
||||
var alignAttr = element.getAttribute( 'align' ),
|
||||
textAlignStyle = element.getStyle( 'text-align' );
|
||||
|
||||
return textAlignStyle || alignAttr || '';
|
||||
} ),
|
||||
commit: function( selectedCell ) {
|
||||
var value = this.getValue();
|
||||
|
||||
if ( value )
|
||||
selectedCell.setStyle( 'text-align', value );
|
||||
else
|
||||
selectedCell.removeStyle( 'text-align' );
|
||||
|
||||
selectedCell.removeAttribute( 'align' );
|
||||
}
|
||||
},
|
||||
{
|
||||
type: 'select',
|
||||
id: 'vAlign',
|
||||
label: langCell.vAlign,
|
||||
'default': '',
|
||||
items: [
|
||||
[ langCommon.notSet, '' ],
|
||||
[ langCommon.alignTop, 'top' ],
|
||||
[ langCommon.alignMiddle, 'middle' ],
|
||||
[ langCommon.alignBottom, 'bottom' ],
|
||||
[ langCell.alignBaseline, 'baseline' ]
|
||||
],
|
||||
setup: setupCells( function( element ) {
|
||||
var vAlignAttr = element.getAttribute( 'vAlign' ),
|
||||
vAlignStyle = element.getStyle( 'vertical-align' );
|
||||
|
||||
switch ( vAlignStyle ) {
|
||||
// Ignore all other unrelated style values..
|
||||
case 'top':
|
||||
case 'middle':
|
||||
case 'bottom':
|
||||
case 'baseline':
|
||||
break;
|
||||
default:
|
||||
vAlignStyle = '';
|
||||
}
|
||||
|
||||
return vAlignStyle || vAlignAttr || '';
|
||||
} ),
|
||||
commit: function( element ) {
|
||||
var value = this.getValue();
|
||||
|
||||
if ( value )
|
||||
element.setStyle( 'vertical-align', value );
|
||||
else
|
||||
element.removeStyle( 'vertical-align' );
|
||||
|
||||
element.removeAttribute( 'vAlign' );
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
spacer,
|
||||
{
|
||||
type: 'vbox',
|
||||
padding: 0,
|
||||
children: [
|
||||
{
|
||||
type: 'select',
|
||||
id: 'cellType',
|
||||
label: langCell.cellType,
|
||||
'default': 'td',
|
||||
items: [
|
||||
[ langCell.data, 'td' ],
|
||||
[ langCell.header, 'th' ]
|
||||
],
|
||||
setup: setupCells( function( selectedCell ) {
|
||||
return selectedCell.getName();
|
||||
} ),
|
||||
commit: function( selectedCell ) {
|
||||
selectedCell.renameNode( this.getValue() );
|
||||
}
|
||||
},
|
||||
spacer,
|
||||
{
|
||||
type: 'text',
|
||||
id: 'rowSpan',
|
||||
label: langCell.rowSpan,
|
||||
'default': '',
|
||||
validate: validate.integer( langCell.invalidRowSpan ),
|
||||
setup: setupCells( function( selectedCell ) {
|
||||
var attrVal = parseInt( selectedCell.getAttribute( 'rowSpan' ), 10 );
|
||||
if ( attrVal && attrVal != 1 )
|
||||
return attrVal;
|
||||
} ),
|
||||
commit: function( selectedCell ) {
|
||||
var value = parseInt( this.getValue(), 10 );
|
||||
if ( value && value != 1 )
|
||||
selectedCell.setAttribute( 'rowSpan', this.getValue() );
|
||||
else
|
||||
selectedCell.removeAttribute( 'rowSpan' );
|
||||
}
|
||||
},
|
||||
{
|
||||
type: 'text',
|
||||
id: 'colSpan',
|
||||
label: langCell.colSpan,
|
||||
'default': '',
|
||||
validate: validate.integer( langCell.invalidColSpan ),
|
||||
setup: setupCells( function( element ) {
|
||||
var attrVal = parseInt( element.getAttribute( 'colSpan' ), 10 );
|
||||
if ( attrVal && attrVal != 1 )
|
||||
return attrVal;
|
||||
} ),
|
||||
commit: function( selectedCell ) {
|
||||
var value = parseInt( this.getValue(), 10 );
|
||||
if ( value && value != 1 )
|
||||
selectedCell.setAttribute( 'colSpan', this.getValue() );
|
||||
else
|
||||
selectedCell.removeAttribute( 'colSpan' );
|
||||
}
|
||||
},
|
||||
spacer,
|
||||
{
|
||||
type: 'hbox',
|
||||
padding: 0,
|
||||
widths: [ '60%', '40%' ],
|
||||
children: [
|
||||
{
|
||||
type: 'text',
|
||||
id: 'bgColor',
|
||||
label: langCell.bgColor,
|
||||
'default': '',
|
||||
setup: setupCells( function( element ) {
|
||||
var bgColorAttr = element.getAttribute( 'bgColor' ),
|
||||
bgColorStyle = element.getStyle( 'background-color' );
|
||||
|
||||
return bgColorStyle || bgColorAttr;
|
||||
} ),
|
||||
commit: function( selectedCell ) {
|
||||
var value = this.getValue();
|
||||
|
||||
if ( value )
|
||||
selectedCell.setStyle( 'background-color', this.getValue() );
|
||||
else
|
||||
selectedCell.removeStyle( 'background-color' );
|
||||
|
||||
selectedCell.removeAttribute( 'bgColor' );
|
||||
}
|
||||
},
|
||||
colorDialog ? {
|
||||
type: 'button',
|
||||
id: 'bgColorChoose',
|
||||
"class": 'colorChooser',
|
||||
label: langCell.chooseColor,
|
||||
onLoad: function() {
|
||||
// Stick the element to the bottom (#5587)
|
||||
this.getElement().getParent().setStyle( 'vertical-align', 'bottom' );
|
||||
},
|
||||
onClick: function() {
|
||||
editor.getColorFromDialog( function( color ) {
|
||||
if ( color )
|
||||
this.getDialog().getContentElement( 'info', 'bgColor' ).setValue( color );
|
||||
this.focus();
|
||||
}, this );
|
||||
}
|
||||
} : spacer
|
||||
]
|
||||
},
|
||||
spacer,
|
||||
{
|
||||
type: 'hbox',
|
||||
padding: 0,
|
||||
widths: [ '60%', '40%' ],
|
||||
children: [
|
||||
{
|
||||
type: 'text',
|
||||
id: 'borderColor',
|
||||
label: langCell.borderColor,
|
||||
'default': '',
|
||||
setup: setupCells( function( element ) {
|
||||
var borderColorAttr = element.getAttribute( 'borderColor' ),
|
||||
borderColorStyle = element.getStyle( 'border-color' );
|
||||
|
||||
return borderColorStyle || borderColorAttr;
|
||||
} ),
|
||||
commit: function( selectedCell ) {
|
||||
var value = this.getValue();
|
||||
if ( value )
|
||||
selectedCell.setStyle( 'border-color', this.getValue() );
|
||||
else
|
||||
selectedCell.removeStyle( 'border-color' );
|
||||
|
||||
selectedCell.removeAttribute( 'borderColor' );
|
||||
}
|
||||
},
|
||||
|
||||
colorDialog ? {
|
||||
type: 'button',
|
||||
id: 'borderColorChoose',
|
||||
"class": 'colorChooser',
|
||||
label: langCell.chooseColor,
|
||||
style: ( rtl ? 'margin-right' : 'margin-left' ) + ': 10px',
|
||||
onLoad: function() {
|
||||
// Stick the element to the bottom (#5587)
|
||||
this.getElement().getParent().setStyle( 'vertical-align', 'bottom' );
|
||||
},
|
||||
onClick: function() {
|
||||
editor.getColorFromDialog( function( color ) {
|
||||
if ( color )
|
||||
this.getDialog().getContentElement( 'info', 'borderColor' ).setValue( color );
|
||||
this.focus();
|
||||
}, this );
|
||||
}
|
||||
} : spacer
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
onShow: function() {
|
||||
this.cells = CKEDITOR.plugins.tabletools.getSelectedCells( this._.editor.getSelection() );
|
||||
this.setupContent( this.cells );
|
||||
},
|
||||
onOk: function() {
|
||||
var selection = this._.editor.getSelection(),
|
||||
bookmarks = selection.createBookmarks();
|
||||
|
||||
var cells = this.cells;
|
||||
for ( var i = 0; i < cells.length; i++ )
|
||||
this.commitContent( cells[ i ] );
|
||||
|
||||
this._.editor.forceNextSelectionCheck();
|
||||
selection.selectBookmarks( bookmarks );
|
||||
this._.editor.selectionChange();
|
||||
},
|
||||
onLoad: function() {
|
||||
var saved = {};
|
||||
|
||||
// Prevent from changing cell properties when the field's value
|
||||
// remains unaltered, i.e. when selected multiple cells and dialog loaded
|
||||
// only the properties of the first cell (#11439).
|
||||
this.foreach( function( field ) {
|
||||
if ( !field.setup || !field.commit )
|
||||
return;
|
||||
|
||||
// Save field's value every time after "setup" is called.
|
||||
field.setup = CKEDITOR.tools.override( field.setup, function( orgSetup ) {
|
||||
return function() {
|
||||
orgSetup.apply( this, arguments );
|
||||
saved[ field.id ] = field.getValue();
|
||||
};
|
||||
} );
|
||||
|
||||
// Compare saved value with actual value. Update cell only if value has changed.
|
||||
field.commit = CKEDITOR.tools.override( field.commit, function( orgCommit ) {
|
||||
return function() {
|
||||
if ( saved[ field.id ] !== field.getValue() )
|
||||
orgCommit.apply( this, arguments );
|
||||
};
|
||||
} );
|
||||
} );
|
||||
}
|
||||
};
|
||||
} );
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+111
-111
@@ -1,111 +1,111 @@
|
||||
/**
|
||||
* Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
// This file contains style definitions that can be used by CKEditor plugins.
|
||||
//
|
||||
// The most common use for it is the "stylescombo" plugin, which shows a combo
|
||||
// in the editor toolbar, containing all styles. Other plugins instead, like
|
||||
// the div plugin, use a subset of the styles on their feature.
|
||||
//
|
||||
// If you don't have plugins that depend on this file, you can simply ignore it.
|
||||
// Otherwise it is strongly recommended to customize this file to match your
|
||||
// website requirements and design properly.
|
||||
|
||||
CKEDITOR.stylesSet.add( 'default', [
|
||||
/* Block Styles */
|
||||
|
||||
// These styles are already available in the "Format" combo ("format" plugin),
|
||||
// so they are not needed here by default. You may enable them to avoid
|
||||
// placing the "Format" combo in the toolbar, maintaining the same features.
|
||||
/*
|
||||
{ name: 'Paragraph', element: 'p' },
|
||||
{ name: 'Heading 1', element: 'h1' },
|
||||
{ name: 'Heading 2', element: 'h2' },
|
||||
{ name: 'Heading 3', element: 'h3' },
|
||||
{ name: 'Heading 4', element: 'h4' },
|
||||
{ name: 'Heading 5', element: 'h5' },
|
||||
{ name: 'Heading 6', element: 'h6' },
|
||||
{ name: 'Preformatted Text',element: 'pre' },
|
||||
{ name: 'Address', element: 'address' },
|
||||
*/
|
||||
|
||||
{ name: 'Italic Title', element: 'h2', styles: { 'font-style': 'italic' } },
|
||||
{ name: 'Subtitle', element: 'h3', styles: { 'color': '#aaa', 'font-style': 'italic' } },
|
||||
{
|
||||
name: 'Special Container',
|
||||
element: 'div',
|
||||
styles: {
|
||||
padding: '5px 10px',
|
||||
background: '#eee',
|
||||
border: '1px solid #ccc'
|
||||
}
|
||||
},
|
||||
|
||||
/* Inline Styles */
|
||||
|
||||
// These are core styles available as toolbar buttons. You may opt enabling
|
||||
// some of them in the Styles combo, removing them from the toolbar.
|
||||
// (This requires the "stylescombo" plugin)
|
||||
/*
|
||||
{ name: 'Strong', element: 'strong', overrides: 'b' },
|
||||
{ name: 'Emphasis', element: 'em' , overrides: 'i' },
|
||||
{ name: 'Underline', element: 'u' },
|
||||
{ name: 'Strikethrough', element: 'strike' },
|
||||
{ name: 'Subscript', element: 'sub' },
|
||||
{ name: 'Superscript', element: 'sup' },
|
||||
*/
|
||||
|
||||
{ name: 'Marker', element: 'span', attributes: { 'class': 'marker' } },
|
||||
|
||||
{ name: 'Big', element: 'big' },
|
||||
{ name: 'Small', element: 'small' },
|
||||
{ name: 'Typewriter', element: 'tt' },
|
||||
|
||||
{ name: 'Computer Code', element: 'code' },
|
||||
{ name: 'Keyboard Phrase', element: 'kbd' },
|
||||
{ name: 'Sample Text', element: 'samp' },
|
||||
{ name: 'Variable', element: 'var' },
|
||||
|
||||
{ name: 'Deleted Text', element: 'del' },
|
||||
{ name: 'Inserted Text', element: 'ins' },
|
||||
|
||||
{ name: 'Cited Work', element: 'cite' },
|
||||
{ name: 'Inline Quotation', element: 'q' },
|
||||
|
||||
{ name: 'Language: RTL', element: 'span', attributes: { 'dir': 'rtl' } },
|
||||
{ name: 'Language: LTR', element: 'span', attributes: { 'dir': 'ltr' } },
|
||||
|
||||
/* Object Styles */
|
||||
|
||||
{
|
||||
name: 'Styled image (left)',
|
||||
element: 'img',
|
||||
attributes: { 'class': 'left' }
|
||||
},
|
||||
|
||||
{
|
||||
name: 'Styled image (right)',
|
||||
element: 'img',
|
||||
attributes: { 'class': 'right' }
|
||||
},
|
||||
|
||||
{
|
||||
name: 'Compact table',
|
||||
element: 'table',
|
||||
attributes: {
|
||||
cellpadding: '5',
|
||||
cellspacing: '0',
|
||||
border: '1',
|
||||
bordercolor: '#ccc'
|
||||
},
|
||||
styles: {
|
||||
'border-collapse': 'collapse'
|
||||
}
|
||||
},
|
||||
|
||||
{ name: 'Borderless Table', element: 'table', styles: { 'border-style': 'hidden', 'background-color': '#E6E6FA' } },
|
||||
{ name: 'Square Bulleted List', element: 'ul', styles: { 'list-style-type': 'square' } }
|
||||
] );
|
||||
|
||||
/**
|
||||
* Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
||||
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
||||
*/
|
||||
|
||||
// This file contains style definitions that can be used by CKEditor plugins.
|
||||
//
|
||||
// The most common use for it is the "stylescombo" plugin, which shows a combo
|
||||
// in the editor toolbar, containing all styles. Other plugins instead, like
|
||||
// the div plugin, use a subset of the styles on their feature.
|
||||
//
|
||||
// If you don't have plugins that depend on this file, you can simply ignore it.
|
||||
// Otherwise it is strongly recommended to customize this file to match your
|
||||
// website requirements and design properly.
|
||||
|
||||
CKEDITOR.stylesSet.add( 'default', [
|
||||
/* Block Styles */
|
||||
|
||||
// These styles are already available in the "Format" combo ("format" plugin),
|
||||
// so they are not needed here by default. You may enable them to avoid
|
||||
// placing the "Format" combo in the toolbar, maintaining the same features.
|
||||
/*
|
||||
{ name: 'Paragraph', element: 'p' },
|
||||
{ name: 'Heading 1', element: 'h1' },
|
||||
{ name: 'Heading 2', element: 'h2' },
|
||||
{ name: 'Heading 3', element: 'h3' },
|
||||
{ name: 'Heading 4', element: 'h4' },
|
||||
{ name: 'Heading 5', element: 'h5' },
|
||||
{ name: 'Heading 6', element: 'h6' },
|
||||
{ name: 'Preformatted Text',element: 'pre' },
|
||||
{ name: 'Address', element: 'address' },
|
||||
*/
|
||||
|
||||
{ name: 'Italic Title', element: 'h2', styles: { 'font-style': 'italic' } },
|
||||
{ name: 'Subtitle', element: 'h3', styles: { 'color': '#aaa', 'font-style': 'italic' } },
|
||||
{
|
||||
name: 'Special Container',
|
||||
element: 'div',
|
||||
styles: {
|
||||
padding: '5px 10px',
|
||||
background: '#eee',
|
||||
border: '1px solid #ccc'
|
||||
}
|
||||
},
|
||||
|
||||
/* Inline Styles */
|
||||
|
||||
// These are core styles available as toolbar buttons. You may opt enabling
|
||||
// some of them in the Styles combo, removing them from the toolbar.
|
||||
// (This requires the "stylescombo" plugin)
|
||||
/*
|
||||
{ name: 'Strong', element: 'strong', overrides: 'b' },
|
||||
{ name: 'Emphasis', element: 'em' , overrides: 'i' },
|
||||
{ name: 'Underline', element: 'u' },
|
||||
{ name: 'Strikethrough', element: 'strike' },
|
||||
{ name: 'Subscript', element: 'sub' },
|
||||
{ name: 'Superscript', element: 'sup' },
|
||||
*/
|
||||
|
||||
{ name: 'Marker', element: 'span', attributes: { 'class': 'marker' } },
|
||||
|
||||
{ name: 'Big', element: 'big' },
|
||||
{ name: 'Small', element: 'small' },
|
||||
{ name: 'Typewriter', element: 'tt' },
|
||||
|
||||
{ name: 'Computer Code', element: 'code' },
|
||||
{ name: 'Keyboard Phrase', element: 'kbd' },
|
||||
{ name: 'Sample Text', element: 'samp' },
|
||||
{ name: 'Variable', element: 'var' },
|
||||
|
||||
{ name: 'Deleted Text', element: 'del' },
|
||||
{ name: 'Inserted Text', element: 'ins' },
|
||||
|
||||
{ name: 'Cited Work', element: 'cite' },
|
||||
{ name: 'Inline Quotation', element: 'q' },
|
||||
|
||||
{ name: 'Language: RTL', element: 'span', attributes: { 'dir': 'rtl' } },
|
||||
{ name: 'Language: LTR', element: 'span', attributes: { 'dir': 'ltr' } },
|
||||
|
||||
/* Object Styles */
|
||||
|
||||
{
|
||||
name: 'Styled image (left)',
|
||||
element: 'img',
|
||||
attributes: { 'class': 'left' }
|
||||
},
|
||||
|
||||
{
|
||||
name: 'Styled image (right)',
|
||||
element: 'img',
|
||||
attributes: { 'class': 'right' }
|
||||
},
|
||||
|
||||
{
|
||||
name: 'Compact table',
|
||||
element: 'table',
|
||||
attributes: {
|
||||
cellpadding: '5',
|
||||
cellspacing: '0',
|
||||
border: '1',
|
||||
bordercolor: '#ccc'
|
||||
},
|
||||
styles: {
|
||||
'border-collapse': 'collapse'
|
||||
}
|
||||
},
|
||||
|
||||
{ name: 'Borderless Table', element: 'table', styles: { 'border-style': 'hidden', 'background-color': '#E6E6FA' } },
|
||||
{ name: 'Square Bulleted List', element: 'ul', styles: { 'list-style-type': 'square' } }
|
||||
] );
|
||||
|
||||
|
||||
Reference in New Issue
Block a user