From 5d88fad3d436bc8bc7d828c7b7ad2fc61f18eef4 Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Sat, 13 Jun 2015 23:06:08 -0700 Subject: UI spring cleaning --- httemplate/elements/freeside.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'httemplate/elements') diff --git a/httemplate/elements/freeside.css b/httemplate/elements/freeside.css index d1e22f903..6a1d23839 100644 --- a/httemplate/elements/freeside.css +++ b/httemplate/elements/freeside.css @@ -230,7 +230,7 @@ div.fstabcontainer { .fsinnerbox { /* background-color:#cccccc; */ padding:2px; - border: 1px solid #dddddd; + border: 1px solid #cccccc; border-radius: 2px; } -- cgit v1.2.1 From f4d9fff3c3925e9c4637fbfbc22b824a3539f39c Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Sat, 13 Jun 2015 23:08:41 -0700 Subject: UI spring cleaning: menu/search bar --- httemplate/elements/freeside-menu.css | 14 +++++--------- httemplate/elements/header.html | 22 +++++++++++----------- httemplate/elements/xmenu.css | 2 +- httemplate/elements/xmenu.top.css | 4 ++-- 4 files changed, 19 insertions(+), 23 deletions(-) (limited to 'httemplate/elements') diff --git a/httemplate/elements/freeside-menu.css b/httemplate/elements/freeside-menu.css index 9533f1950..a66ebc0db 100644 --- a/httemplate/elements/freeside-menu.css +++ b/httemplate/elements/freeside-menu.css @@ -1,11 +1,9 @@ input.fsblackbutton { - background-color:#aaaaaa; + background-color:#cccccc; color: #333333; border:1px solid #888888; - -moz-border-radius: 4px; - -webkit-border-radius: 4px; - border-radius: 4px; + border-radius: 2px; font-family: Arial, Verdana, Helvetica, sans-serif; font-weight:bold; @@ -20,17 +18,15 @@ input.fsblackbutton { input.fsblackbutton:hover,input.fsblackbutton:focus, input.fsblackbuttonselected:hover, input.fsblackbuttonselected:focus { - background:#aaaaaa; + background:#cccccc; } input.fsblackbuttonselected { - background-color:#aaaaaa; + background-color:#cccccc; color: #7e0079; border:1px solid #7e0079; - -moz-border-radius: 4px; - -webkit-border-radius: 4px; - border-radius: 4px; + border-radius: 2px; font-family: Arial, Verdana, Helvetica, sans-serif; font-weight:bold; diff --git a/httemplate/elements/header.html b/httemplate/elements/header.html index a9e74babf..014ac6e5e 100644 --- a/httemplate/elements/header.html +++ b/httemplate/elements/header.html @@ -75,18 +75,18 @@ Example: % if ( $mobile ) { - + - + <% include('searchbar-combined.html') |n %> % } else { - + @@ -96,27 +96,27 @@ Example: - + <% include('searchbar-prospect.html') |n %> - + <% include('searchbar-cust_main.html') |n %> - + <% include('searchbar-address2.html') |n %> - + <% include('searchbar-cust_bill.html') |n %> - + <% include('searchbar-cust_svc.html') |n %> - + <% include('searchbar-ticket.html') |n %> % } @@ -128,7 +128,7 @@ Example: - + @@ -142,7 +142,7 @@ Example: % if ( $menu_position eq 'left' ) { - + diff --git a/httemplate/elements/xmenu.css b/httemplate/elements/xmenu.css index e6a39f675..afd9e919d 100644 --- a/httemplate/elements/xmenu.css +++ b/httemplate/elements/xmenu.css @@ -101,7 +101,7 @@ /* background: rgb(120,172,255);/*rgb(255,128,0);*/ /* background: #a097ed; */ - background: #cccccc; + background: #dddddd; /* border: 1px solid #7E0079; */ /* border: 1px solid #000000; */ /* border: none */ diff --git a/httemplate/elements/xmenu.top.css b/httemplate/elements/xmenu.top.css index 7a42254e4..4b6f151d6 100644 --- a/httemplate/elements/xmenu.top.css +++ b/httemplate/elements/xmenu.top.css @@ -98,7 +98,7 @@ .webfx-menu-bar { /* background: rgb(120,172,255);/*rgb(255,128,0);*/ /* background: #a097ed; */ - background: #cccccc; + background: #dddddd; /* border: 1px solid #7E0079; */ /* border: 1px solid #000000; */ /* border: none */ @@ -126,7 +126,7 @@ /* IE5.0 Does not paint borders and padding on inline elements without a height/width */ height: expression(constExpression(ie50 ? "17px" : "auto")); - border: 1px solid #cccccc; + border: 1px solid #dddddd; margin-right: 4px -- cgit v1.2.1 From e8bd43487a32b56508d1ddcea7c46949daec825d Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Sat, 13 Jun 2015 23:45:52 -0700 Subject: UI spring cleaning: customer menus, and some consistency with top menus --- httemplate/elements/freeside.css | 10 ++++------ httemplate/elements/xmenu.css | 6 +++--- httemplate/elements/xmenu.top.css | 8 ++------ 3 files changed, 9 insertions(+), 15 deletions(-) (limited to 'httemplate/elements') diff --git a/httemplate/elements/freeside.css b/httemplate/elements/freeside.css index 6a1d23839..7e8ae872d 100644 --- a/httemplate/elements/freeside.css +++ b/httemplate/elements/freeside.css @@ -179,13 +179,11 @@ div.fstabcontainer { background-color:#ffffff; padding:8px; clear: left; - border-left: thin solid #CFDEFF; - border-right: thin solid #CFDEFF; - border-bottom: thin solid #CFDEFF; + border-left: thin solid #7e0079; + border-right: thin solid #7e0079; + border-bottom: thin solid #7e0079; + border-top: thin solid #7e0079; /* - border-left:1px solid #7e0079; - border-right:1px solid #7e0079; - border-bottom:1px solid #7e0079; border-top:1px solid #7e0079; */ } diff --git a/httemplate/elements/xmenu.css b/httemplate/elements/xmenu.css index afd9e919d..79990d35c 100644 --- a/httemplate/elements/xmenu.css +++ b/httemplate/elements/xmenu.css @@ -28,9 +28,9 @@ border-radius: 4px; padding: 1px; background: white; - -moz-box-shadow: #000000 1px 1px 4px; - -webkit-box-shadow: #000000 1px 1px 4px; - box-shadow: #000000 1px 1px 4px; + -moz-box-shadow: #333333 1px 1px 2px; + -webkit-box-shadow: #333333 1px 1px 2px; + box-shadow: #333333 1px 1px 2px; } .webfx-menu-empty { diff --git a/httemplate/elements/xmenu.top.css b/httemplate/elements/xmenu.top.css index 4b6f151d6..b72276852 100644 --- a/httemplate/elements/xmenu.top.css +++ b/httemplate/elements/xmenu.top.css @@ -23,14 +23,10 @@ z-index: 9999; visibility: hidden; border: 1px solid #7e0079; - -moz-border-radius: 4px; - -webkit-border-radius: 4px; - border-radius: 4px; + border-radius: 2px; padding: 1px; background: white; - -moz-box-shadow: #000000 1px 1px 4px; - -webkit-box-shadow: #000000 1px 1px 4px; - box-shadow: #000000 1px 1px 4px; + box-shadow: #333333 1px 1px 2px; } .webfx-menu-empty { -- cgit v1.2.1 From 6c23a2c53a897f1f18087b49a627ae3d83c6e52b Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Sun, 14 Jun 2015 00:13:02 -0700 Subject: UI spring cleaning: space title from top menu --- httemplate/elements/header.html | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'httemplate/elements') diff --git a/httemplate/elements/header.html b/httemplate/elements/header.html index 014ac6e5e..fd8a03d99 100644 --- a/httemplate/elements/header.html +++ b/httemplate/elements/header.html @@ -157,6 +157,8 @@ Example: +% } else { #$menu_position eq 'top' +
% } %# page content starts here @@ -166,7 +168,7 @@ Example: % unless ( $nobr ) { -

+
% } <% $menubar !~ /^\s*$/ ? "$menubar

" : '' %> -- cgit v1.2.1 From 3ba0c846a46231a732c18a95cca54f719e0fd7d5 Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Sun, 14 Jun 2015 11:49:46 -0700 Subject: UI spring cleaning: THEAD headers --- httemplate/elements/freeside.css | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'httemplate/elements') diff --git a/httemplate/elements/freeside.css b/httemplate/elements/freeside.css index 7e8ae872d..8e493eb54 100644 --- a/httemplate/elements/freeside.css +++ b/httemplate/elements/freeside.css @@ -264,12 +264,11 @@ thead th.grid { padding-bottom: 2px; border: none; empty-cells: show; - font-weight:normal; +/* font-weight:normal; */ font-size:90%; valign: bottom; - color: #666666; - background: #ffffff; - border-bottom: 1px solid #666666; +/* color: #666666; */ + border-bottom: 1px solid #999999; } td.grid { -- cgit v1.2.1 From b6260b4f39cf34b9e0e5b8560ef88c8881ba0766 Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Sun, 14 Jun 2015 13:59:11 -0700 Subject: UI spring cleaning: customer edit --- httemplate/elements/freeside.css | 4 ++-- httemplate/elements/location.html | 12 ++++++------ httemplate/elements/tr-select-agent.html | 4 ++-- httemplate/elements/tr-select-cust_class.html | 2 +- httemplate/elements/tr-select-cust_tag.html | 2 +- httemplate/elements/tr-td-label.html | 7 ++++++- 6 files changed, 18 insertions(+), 13 deletions(-) (limited to 'httemplate/elements') diff --git a/httemplate/elements/freeside.css b/httemplate/elements/freeside.css index 8e493eb54..ece57a053 100644 --- a/httemplate/elements/freeside.css +++ b/httemplate/elements/freeside.css @@ -228,13 +228,13 @@ div.fstabcontainer { .fsinnerbox { /* background-color:#cccccc; */ padding:2px; - border: 1px solid #cccccc; + border: 1px solid #999999; border-radius: 2px; } .fsinnerbox th { font-weight:normal; - font-size:75%; + font-size:80%; valign: bottom; color: #666666; } diff --git a/httemplate/elements/location.html b/httemplate/elements/location.html index 357a91db7..a7803c875 100644 --- a/httemplate/elements/location.html +++ b/httemplate/elements/location.html @@ -44,7 +44,7 @@ Example: % if ( $label_prefix eq '_location' ) { - <% $opt{'locationname_label'} || emt('Location ID') %> + <% $opt{'locationname_label'} || emt('Location ID') %> - >* >Unit # + >* >Unit # - <% mt('Latitude') |h %> + <% mt('Latitude') |h %> <% $style %> > - <% mt('Longitude') |h %> + <% mt('Longitude') |h %> - Census tract + Census tract - <% '(automatic)' %> + <% '(automatic)' %> % } diff --git a/httemplate/elements/tr-select-agent.html b/httemplate/elements/tr-select-agent.html index 321bd6b32..04600fa8d 100644 --- a/httemplate/elements/tr-select-agent.html +++ b/httemplate/elements/tr-select-agent.html @@ -32,7 +32,7 @@ Example: % if ( scalar(@agents) != 1 ) { - <% $opt{'label'} || emt('Agent') %> + <% $opt{'label'} || emt('Agent') %> > % my $agent = qsearchs('agent', { 'agentnum' => $agentnum }); <% $agent ? $agent->agent : '(all)' |h %> @@ -47,7 +47,7 @@ Example: % } else { - <% $opt{'label'} || emt('Agent') %> + <% $opt{'label'} || emt('Agent') %> > <& /elements/select-agent.html, 'curr_value' => $agentnum, diff --git a/httemplate/elements/tr-select-cust_class.html b/httemplate/elements/tr-select-cust_class.html index 54a11d79e..7a2321560 100644 --- a/httemplate/elements/tr-select-cust_class.html +++ b/httemplate/elements/tr-select-cust_class.html @@ -5,7 +5,7 @@ % } else { - <% $opt{'label'} || 'Customer class' %> + <% $opt{'label'} || 'Customer class' %> <% include( '/elements/select-cust_class.html', 'curr_value' => $classnum, diff --git a/httemplate/elements/tr-select-cust_tag.html b/httemplate/elements/tr-select-cust_tag.html index 76b1b715d..b133dcc15 100644 --- a/httemplate/elements/tr-select-cust_tag.html +++ b/httemplate/elements/tr-select-cust_tag.html @@ -1,7 +1,7 @@ % if ( ($curuser->access_right('Edit customer tags') && @part_tag) || $is_report ) { - <% $opt{'label'} || 'Tags' %> + <% $opt{'label'} || 'Tags' %> <% include( '/elements/select-cust_tag.html', 'curr_value' => \@curr_tagnum, diff --git a/httemplate/elements/tr-td-label.html b/httemplate/elements/tr-td-label.html index c318722dc..78690f1fb 100644 --- a/httemplate/elements/tr-td-label.html +++ b/httemplate/elements/tr-td-label.html @@ -1,6 +1,11 @@ +<%doc> + +Actually $label + + - Date: Sun, 14 Jun 2015 14:57:49 -0700 Subject: UI spring cleaning: customer menu --- httemplate/elements/quotations.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'httemplate/elements') diff --git a/httemplate/elements/quotations.html b/httemplate/elements/quotations.html index 2af101652..0c4dcdc38 100644 --- a/httemplate/elements/quotations.html +++ b/httemplate/elements/quotations.html @@ -1,7 +1,7 @@ % if ( $curuser->access_right('Generate quotation') ) { <% mt( 'Quotations' ) |h %> - New quotation + Create new quotation % if ( @quotations ) { <& /elements/table-grid.html &> -- cgit v1.2.1 From 430d18b5829416a186ce554846ba68cde4ad6750 Mon Sep 17 00:00:00 2001 From: Jonathan Prykop Date: Tue, 16 Jun 2015 01:25:51 -0500 Subject: RT#33484: Delete lines from quick payment entry [removed prefix, documented, added color handling] --- httemplate/elements/customer-table.html | 153 +++++++++++++++++++------------- 1 file changed, 90 insertions(+), 63 deletions(-) (limited to 'httemplate/elements') diff --git a/httemplate/elements/customer-table.html b/httemplate/elements/customer-table.html index 090623ff9..76a7f12f6 100644 --- a/httemplate/elements/customer-table.html +++ b/httemplate/elements/customer-table.html @@ -37,6 +37,34 @@ Example: ) +Some incomplete notes for javascript programmers: + +On page load, existing rows are initialized by passing values to addRow +based on existing cgi values. An empty row (marked with the 'emptyrow' +attribute) is created by invoking addRow without values. After that, +to keep the non-empty row count (totalrows) accurate, use newEmptyRow to +create the next row. There should only be one empty row at a time. + +Global vars: +total_el - element for displaying total number of rows +totalrows - total number of non-empty rows +rownum - really more of a "next row" value, used by addRow +allrows - array of tr elements, one for each row + +Don't confuse the global rownum with the element attribute rownum +that is set as a reference point on some of the elements generated +by this script. They have different values. + +Some of the functions: +updateTotalRow() - updates total_el based on value of totalrows +addDeleteButton(searchrow) - adds delete button to searchrow +newEmptyRow() - replaces old empty row +deleteRow() - removes the row specified by this.rownum +addRow(values) - adds a new row (marked as empty if values aren't specified) + +This mason element is currently only used by misc/batch-cust_pay.html, +and probably should be cleaned up more before being used by anything else. + - +
@@ -680,7 +711,7 @@ Example: % my @rownums = sort { $a <=> $b } map /^custnum(\d+)$/, keys %$param; - @@ -702,17 +733,17 @@ Example: <% $head %> > diff --git a/httemplate/elements/header.html b/httemplate/elements/header.html index fd8a03d99..55b4fca83 100644 --- a/httemplate/elements/header.html +++ b/httemplate/elements/header.html @@ -42,6 +42,7 @@ Example: ) |n %> + <% include('init_overlib.html') |n %> <% include('rs_init_object.html') |n %> -- cgit v1.2.1 From 395b48e2a32e90ae0edf2e45a31758dc78181f04 Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Tue, 16 Jun 2015 20:47:57 -0700 Subject: disable virtual field access by default until it is working, RT#35178 --- httemplate/elements/menu.html | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'httemplate/elements') diff --git a/httemplate/elements/menu.html b/httemplate/elements/menu.html index 7d34d427e..4d0d97958 100644 --- a/httemplate/elements/menu.html +++ b/httemplate/elements/menu.html @@ -755,10 +755,10 @@ $config_misc{'Message templates'} = [ $fsurl.'browse/msg_template.html', 'Templa $config_misc{'Advertising sources'} = [ $fsurl.'browse/part_referral.html', 'Where a customer heard about your service.' ] if $curuser->access_right('Edit advertising sources') || $curuser->access_right('Edit global advertising sources'); -if ( $curuser->access_right('Configuration') ) { - $config_misc{'Custom fields'} = [ $fsurl.'browse/part_virtual_field.html', 'Locally defined fields', ]; - $config_misc{'Translation strings'} = [ $fsurl.'browse/msgcat.html', 'Translations and other customizable labels for each locale' ]; -} +$config_misc{'Custom fields'} = [ $fsurl.'browse/part_virtual_field.html', 'Locally defined fields', ] + if $curuser->access_right('Edit custom fields'); +$config_misc{'Translation strings'} = [ $fsurl.'browse/msgcat.html', 'Translations and other customizable labels for each locale' ] + if $curuser->access_right('Configuration'); $config_misc{'Inventory classes and inventory'} = [ $fsurl.'browse/inventory_class.html', 'Setup inventory classes and stock inventory' ] if $curuser->access_right('Edit inventory') || $curuser->access_right('Edit global inventory') -- cgit v1.2.1 From c6ab4d567c978cbe616c8cb5201c61bde212b3a0 Mon Sep 17 00:00:00 2001 From: Mark Wells Date: Wed, 17 Jun 2015 17:44:23 -0700 Subject: fix interaction of agent choice, agent-ship_address, and "same" checkbox, #21327 and #27545 --- httemplate/elements/location.html | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'httemplate/elements') diff --git a/httemplate/elements/location.html b/httemplate/elements/location.html index a7803c875..90f20265a 100644 --- a/httemplate/elements/location.html +++ b/httemplate/elements/location.html @@ -262,8 +262,9 @@ Example: %# For address standardization: %# keep a clean copy of the address so we know if we need %# to re-standardize -% foreach (qw(address1 city state country zip latitude -% longitude censustract district addr_clean) ) { +% foreach (qw(locationname address1 city state country zip latitude +% longitude censustract district addr_clean +% ) ) { <& hidden.html, field => 'old_'.$pre.$_, value => $object->get($_) &> % } %# Placeholders -- cgit v1.2.1 From 3b46d452696901ff2dec41125f68c689ecffd5b9 Mon Sep 17 00:00:00 2001 From: Jonathan Prykop Date: Thu, 25 Jun 2015 00:51:02 -0500 Subject: RT#34078: Payment History Report / Statement [refactor to not use msg_template] --- httemplate/elements/customer-statement.html | 45 +++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 httemplate/elements/customer-statement.html (limited to 'httemplate/elements') diff --git a/httemplate/elements/customer-statement.html b/httemplate/elements/customer-statement.html new file mode 100644 index 000000000..63c21cba3 --- /dev/null +++ b/httemplate/elements/customer-statement.html @@ -0,0 +1,45 @@ +<%doc> + +Formats customer payment history into a table. + + include('/elements/customer-statement.html', + 'history' => \@history + ); + +Option 'history' should be of the form returned by $cust_main->payment_history. +This element might be used directly by selfservice, so it does not (and should not) +pull data from the database. + + + +% my $style = 'text-align: left; margin: 0; padding: 0 1em 0 0;'; +% my $moneystyle = 'text-align: right; margin: 0; padding: 0 1em 0 0;'; + +
Inv #
+ Total <% @rownums || 0 %> <% PL($opt{name_singular} || 'customer', ( @rownums || 0 ) ) %>
+ + + + + + + +% my $col1 = "#ffffff"; +% my $col2 = "#dddddd"; +% my $col = $col1; +% foreach my $item (@{$opt{'history'}}) { + + + + + + +% $col = $col eq $col1 ? $col2 : $col1; +% } + +
DateDescriptionAmountBalance
<% $$item{'date_pretty'} %><% $$item{'description'} %><% $$item{'amount_pretty'} %><% $$item{'balance_pretty'} %>
+ +<%init> +my %opt = @_; + +die "Invalid type for history" unless ref($opt{'history'}) eq 'ARRAY'; + -- cgit v1.2.1 From 1af14d92fb2615909fc974d8233faac1c4b5d84f Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Thu, 25 Jun 2015 12:06:00 -0700 Subject: UI spring cleaning: include jquery in all pages --- httemplate/elements/header.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'httemplate/elements') diff --git a/httemplate/elements/header.html b/httemplate/elements/header.html index 55b4fca83..374bfa63f 100644 --- a/httemplate/elements/header.html +++ b/httemplate/elements/header.html @@ -42,7 +42,7 @@ Example: ) |n %> - + <% include('init_overlib.html') |n %> <% include('rs_init_object.html') |n %> -- cgit v1.2.1 From 189cfca44d46995b19bc367297024f253793eaa3 Mon Sep 17 00:00:00 2001 From: Mark Wells Date: Thu, 25 Jun 2015 13:04:07 -0700 Subject: jquery in header-popup --- httemplate/elements/header-popup.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'httemplate/elements') diff --git a/httemplate/elements/header-popup.html b/httemplate/elements/header-popup.html index dc60ae67f..307252afb 100644 --- a/httemplate/elements/header-popup.html +++ b/httemplate/elements/header-popup.html @@ -28,7 +28,7 @@ Example: - + <% $head %> > -- cgit v1.2.1 From 9531335fb25595f8883967c21f9692d4331f54ce Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Fri, 26 Jun 2015 12:26:31 -0700 Subject: support and unclassified time per customer for a date range --- httemplate/elements/menu.html | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'httemplate/elements') diff --git a/httemplate/elements/menu.html b/httemplate/elements/menu.html index 4d0d97958..a01530e2f 100644 --- a/httemplate/elements/menu.html +++ b/httemplate/elements/menu.html @@ -291,7 +291,8 @@ $report_rating{'Unrateable CDRs'} = [ $fsurl.'search/cdr.html?freesidestatus=fai if $curuser->access_right("Usage: Unrateable CDRs"); if ( $curuser->access_right("Usage: Time worked") ) { $report_rating{'Time worked'} = [ $fsurl.'search/report_rt_transaction.html', '' ]; - $report_rating{'Time worked summary'} = [ $fsurl.'search/report_rt_ticket.html', '' ]; + $report_rating{'Time worked summary per ticket'} = [ $fsurl.'search/report_rt_ticket.html', '' ]; + $report_rating{'Time worked summary per customer'} = [ $fsurl.'search/report_rt_cust.html', '' ]; } tie my %report_ticketing_statistics, 'Tie::IxHash', -- cgit v1.2.1 From 062f38f2f5d0da64c6fd0702d4df2e805473a1f5 Mon Sep 17 00:00:00 2001 From: Mark Wells Date: Sat, 27 Jun 2015 15:51:29 -0700 Subject: reports with row grouping for payment/refund search, #25944 --- httemplate/elements/freeside.css | 18 ++++++++++++++++++ httemplate/elements/select.html | 3 +++ 2 files changed, 21 insertions(+) (limited to 'httemplate/elements') diff --git a/httemplate/elements/freeside.css b/httemplate/elements/freeside.css index ece57a053..3dc344cbf 100644 --- a/httemplate/elements/freeside.css +++ b/httemplate/elements/freeside.css @@ -254,6 +254,24 @@ table.grid { border-radius: 2px; } +tr.row0 { + background-color: #eeeeee; +} + +tr.row1 { + background-color: #ffffff; +} + +.grid tfoot tr { + background-color: #dddddd; + font-style: italic; +} + +/* border at the top of the footer, but not between footer rows */ +.grid tfoot tr:first-child td { + border-top: 1px dashed black; +} + th, td { vertical-align: top; } diff --git a/httemplate/elements/select.html b/httemplate/elements/select.html index 67ef51418..4492681de 100644 --- a/httemplate/elements/select.html +++ b/httemplate/elements/select.html @@ -4,6 +4,7 @@ ID = "<% $opt{id} %>" previousValue = "<% $curr_value %>" previousText = "<% $labels->{$curr_value} || $curr_value %>" + <% $multiple %> <% $size %> <% $style %> <% $opt{disabled} %> @@ -74,4 +75,6 @@ my $style = scalar(@style) ? 'STYLE="'. join(';', @style). '"' : ''; my $size = $opt{'size'} ? 'SIZE='.$opt{'size'} : ''; +my $multiple = $opt{'multiple'} ? 'MULTIPLE' : ''; + -- cgit v1.2.1 From d13dae1c37c36c27f1ac9fd134c5d8b3a4fb9754 Mon Sep 17 00:00:00 2001 From: Jonathan Prykop Date: Tue, 30 Jun 2015 03:24:08 -0500 Subject: RT#29285: State field not needed for New Zealand --- httemplate/elements/city.html | 5 +++++ httemplate/elements/location.html | 13 ++++++------- httemplate/elements/standardize_locations.js | 4 ++-- 3 files changed, 13 insertions(+), 9 deletions(-) (limited to 'httemplate/elements') diff --git a/httemplate/elements/city.html b/httemplate/elements/city.html index 5f4d4e09e..4e9a60940 100644 --- a/httemplate/elements/city.html +++ b/httemplate/elements/city.html @@ -159,6 +159,11 @@ my $disable_select = 1 if $conf->config('tax_district_method'); $opt{'disable_empty'} = 1 unless exists($opt{'disable_empty'}); +if ($conf->exists('cust_main-no_city_in_address')) { + $opt{'disable_text'} = 1; + $disable_select = 1; +} + my $text_style = $opt{'style'} ? [ @{ $opt{'style'} } ] : []; my $select_style = $opt{'style'} ? [ @{ $opt{'style'} } ] : []; diff --git a/httemplate/elements/location.html b/httemplate/elements/location.html index 90f20265a..b5f0a963c 100644 --- a/httemplate/elements/location.html +++ b/httemplate/elements/location.html @@ -169,15 +169,14 @@ Example: -% if ($conf->exists('city_not_required')) { - -%} else { - <<%$th%> ALIGN="right"><%$r%><% mt('City') |h %>> + <<%$th%> ALIGN="right"> +% unless ($conf->exists('cust_main-no_city_in_address')) { + <% $r %><% mt('City') |h %> +% } + > <% include('/elements/city.html', %select_hash, 'text_style' => \@style ) %> - <<%$th%> ALIGN="right" WIDTH="1" ID="<%$pre%>countylabel" <%$county_style%>><%$r%>County> <% include('/elements/select-county.html', %select_hash ) %> -% } <<%$th%> ALIGN="right" WIDTH="1"><%$r%><% mt('State') |h %>> <% include('/elements/select-state.html', %select_hash ) %> @@ -291,7 +290,7 @@ Example: var clear_coords_on_change = [ '<%$pre%>address1', '<%$pre%>address2', - '<%$pre%>city', + <% $conf->exists('cust_main-no_city_in_address') ? '' : qq('${pre}city',) %> '<%$pre%>state', '<%$pre%>zip', '<%$pre%>country' diff --git a/httemplate/elements/standardize_locations.js b/httemplate/elements/standardize_locations.js index ff7183b26..1a01daa6f 100644 --- a/httemplate/elements/standardize_locations.js +++ b/httemplate/elements/standardize_locations.js @@ -13,7 +13,7 @@ function form_address_info() { % } % for my $pre (@prefixes) { % # normal case -% for my $field (qw(address1 address2 city state zip country)) { +% for my $field (qw(address1 address2 state zip country), ($conf->exists('cust_main-no_city_in_address') ? () : 'city')) { returnobj['<% $pre %><% $field %>'] = cf.elements['<% $pre %><% $field %>'].value; % } #for $field % if ( $withcensus ) { @@ -145,7 +145,7 @@ function replace_address() { var clean = newaddr['<% $pre %>addr_clean'] == 'Y'; var error = newaddr['<% $pre %>error']; if ( clean ) { -% foreach my $field (qw(address1 address2 city state zip addr_clean )) { +% foreach my $field (qw(address1 address2 state zip addr_clean ),($conf->exists('cust_main-no_city_in_address') ? () : 'city')) { cf.elements['<% $pre %><% $field %>'].value = newaddr['<% $pre %><% $field %>']; % } #foreach $field -- cgit v1.2.1 From 4b1eb1861b9dce418af41b88e9b5d58342d4a3d6 Mon Sep 17 00:00:00 2001 From: Mark Wells Date: Wed, 8 Jul 2015 14:40:59 -0700 Subject: fix package def creation under SureTax --- httemplate/elements/tr-part_pkg-taxproducts.html | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'httemplate/elements') diff --git a/httemplate/elements/tr-part_pkg-taxproducts.html b/httemplate/elements/tr-part_pkg-taxproducts.html index 274dc3b48..ad464ca77 100644 --- a/httemplate/elements/tr-part_pkg-taxproducts.html +++ b/httemplate/elements/tr-part_pkg-taxproducts.html @@ -21,9 +21,12 @@ my %opt = @_; my $field = delete($opt{field}) || 'taxproductnum'; my $pkgpart = delete($opt{pkgpart}); -my $part_pkg = FS::part_pkg->by_key($pkgpart); -my %pkg_options = $part_pkg->options; -$pkg_options{'usage_taxproductnum_'} = $part_pkg->taxproductnum; +my %pkg_options; +if ($pkgpart) { + my $part_pkg = FS::part_pkg->by_key($pkgpart); + my %pkg_options = $part_pkg->options; + $pkg_options{'usage_taxproductnum_'} = $part_pkg->taxproductnum; +} my @classes = qsearch('usage_class', { 'disabled' => '' }); unshift @classes, -- cgit v1.2.1 From e1675f79af01255e7bfa0e1ce8d55b25369ee047 Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Fri, 10 Jul 2015 04:46:52 -0700 Subject: UI: style RT a little more like FS, RT#36799 --- httemplate/elements/freeside.css | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'httemplate/elements') diff --git a/httemplate/elements/freeside.css b/httemplate/elements/freeside.css index 3dc344cbf..1e2491eb2 100644 --- a/httemplate/elements/freeside.css +++ b/httemplate/elements/freeside.css @@ -228,8 +228,8 @@ div.fstabcontainer { .fsinnerbox { /* background-color:#cccccc; */ padding:2px; - border: 1px solid #999999; - border-radius: 2px; + border: .1em solid #999999; + border-radius: .25em; } .fsinnerbox th { -- cgit v1.2.1 From c930bec5dd98dc4d28e6dc68047cf2b80996f6d4 Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Fri, 10 Jul 2015 05:03:10 -0700 Subject: UI: style RT a little more like FS, RT#36799 --- httemplate/elements/freeside.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'httemplate/elements') diff --git a/httemplate/elements/freeside.css b/httemplate/elements/freeside.css index 1e2491eb2..750da74b8 100644 --- a/httemplate/elements/freeside.css +++ b/httemplate/elements/freeside.css @@ -228,7 +228,7 @@ div.fstabcontainer { .fsinnerbox { /* background-color:#cccccc; */ padding:2px; - border: .1em solid #999999; + border: thin solid #999999; border-radius: .25em; } -- cgit v1.2.1 From 45121e05ad3e284386826ae53d41845bfa8eb0f1 Mon Sep 17 00:00:00 2001 From: Mark Wells Date: Fri, 10 Jul 2015 11:56:45 -0700 Subject: mark tax status as mandatory when using a tax vendor --- httemplate/elements/tr-select-tax_status.html | 1 + 1 file changed, 1 insertion(+) (limited to 'httemplate/elements') diff --git a/httemplate/elements/tr-select-tax_status.html b/httemplate/elements/tr-select-tax_status.html index 1e0ea8a98..387e49e1f 100644 --- a/httemplate/elements/tr-select-tax_status.html +++ b/httemplate/elements/tr-select-tax_status.html @@ -10,6 +10,7 @@ name_col => 'description', hashref => { data_vendor => $vendor }, order_by => 'order by taxstatus', + required => 1, %opt &> -- cgit v1.2.1 From df4a68099abfa067014f36f92874fccefdea662e Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Fri, 10 Jul 2015 14:19:24 -0700 Subject: fix title escaping --- httemplate/elements/header.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'httemplate/elements') diff --git a/httemplate/elements/header.html b/httemplate/elements/header.html index 374bfa63f..0174e1f92 100644 --- a/httemplate/elements/header.html +++ b/httemplate/elements/header.html @@ -23,7 +23,7 @@ Example: - <% $title %> + <% $title_noescape || encode_entities($title) %> -- cgit v1.2.1 From 5376c66e2e5c1849763777f9d44ad013405c1d9e Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Fri, 10 Jul 2015 21:42:43 -0700 Subject: include agent and restore cust-level status in small_custview --- httemplate/elements/header.html | 34 ++++++++++++++++++++-------------- 1 file changed, 20 insertions(+), 14 deletions(-) (limited to 'httemplate/elements') diff --git a/httemplate/elements/header.html b/httemplate/elements/header.html index 0174e1f92..98a8d7c5e 100644 --- a/httemplate/elements/header.html +++ b/httemplate/elements/header.html @@ -4,11 +4,12 @@ Example: <& /elements/header.html', { - 'title' => 'Title', - 'menubar' => \@menubar, - 'etc' => '', #included in tag, for things like onLoad= - 'head' => '', #included before closing tag - 'nobr' => 0, #1 for no

after the title + 'title' => 'Title', + 'menubar' => \@menubar, + 'etc' => '', #included in tag, for things like onLoad= + 'head' => '', #included before closing tag + 'nobr' => 0, #1 for no

after the title + 'no_jquery' => #for use from RT, which loads its own } &> @@ -23,7 +24,7 @@ Example: - <% $title_noescape || encode_entities($title) %> + <% encode_entities($title) || $title_noescape %> @@ -42,7 +43,11 @@ Example: ) |n %> - +% unless ( $no_jquery ) { + + + +% } <% include('init_overlib.html') |n %> <% include('rs_init_object.html') |n %> @@ -176,7 +181,7 @@ Example: <%init> my( $title, $title_noescape, $menubar, $etc, $head ) = ( '', '', '', '', '' ); -my( $nobr, $nocss ) = ( 0, 0 ); +my( $nobr, $nocss, $no_jquery ) = ( 0, 0, 0 ); my $mobile; @@ -184,12 +189,13 @@ if ( ref($_[0]) ) { my $opt = shift; $title = $opt->{title}; $title_noescape = $opt->{title_noescape}; - $menubar = $opt->{menubar}; - $etc = $opt->{etc}; - $head = $opt->{head}; - $nobr = $opt->{nobr}; - $nocss = $opt->{nocss}; - $mobile = $opt->{mobile}; + $menubar = $opt->{menubar}; + $etc = $opt->{etc}; + $head = $opt->{head}; + $nobr = $opt->{nobr}; + $nocss = $opt->{nocss}; + $mobile = $opt->{mobile}; + $no_jquery = $opt->{no_jquery}; } else { ($title, $menubar) = ( shift, shift ); $etc = @_ ? shift : ''; #$etc is for things like onLoad= etc. -- cgit v1.2.1 From a5148c7aabd33464432f9355d7cddf12c2147054 Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Sat, 11 Jul 2015 00:23:40 -0700 Subject: UI for emailing customer statements on v4, RT#34078 --- httemplate/elements/tr-fixed.html | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'httemplate/elements') diff --git a/httemplate/elements/tr-fixed.html b/httemplate/elements/tr-fixed.html index 373c0ab3a..dad8da03f 100644 --- a/httemplate/elements/tr-fixed.html +++ b/httemplate/elements/tr-fixed.html @@ -1,6 +1,6 @@ <% include('tr-td-label.html', @_ ) %> - <% $colspan %>><% $value %> + <% $colspan %>><% $value %> @@ -10,7 +10,9 @@ my %opt = @_; -my $style = $opt{'cell_style'} ? ' STYLE="'. $opt{'cell_style'}. '" ' : ''; +my $style = $opt{'cell_style'} + ? ' STYLE="'. $opt{'cell_style'}. '" ' + : ' STYLE="color:#666666" '; my $colspan = $opt{'colspan'} ? ' COLSPAN="'. $opt{'colspan'}. '" ' : ''; -- cgit v1.2.1 From c94eff6021ef963f08f67da501e756d53a61c50d Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Sat, 11 Jul 2015 15:26:48 -0700 Subject: update CKeditor --- httemplate/elements/ckeditor/CHANGES.md | 897 ++++++++++ httemplate/elements/ckeditor/LICENSE.md | 1416 +++++++++++++++ httemplate/elements/ckeditor/README.md | 39 + httemplate/elements/ckeditor/adapters/jquery.js | 10 + httemplate/elements/ckeditor/build-config.js | 125 +- httemplate/elements/ckeditor/ckeditor.js | 1847 +++++++++++--------- httemplate/elements/ckeditor/config.js | 4 +- httemplate/elements/ckeditor/contents.css | 71 +- httemplate/elements/ckeditor/lang/af.js | 6 +- httemplate/elements/ckeditor/lang/ar.js | 6 +- httemplate/elements/ckeditor/lang/bg.js | 6 +- httemplate/elements/ckeditor/lang/bn.js | 6 +- httemplate/elements/ckeditor/lang/bs.js | 6 +- httemplate/elements/ckeditor/lang/ca.js | 6 +- httemplate/elements/ckeditor/lang/cs.js | 6 +- httemplate/elements/ckeditor/lang/cy.js | 6 +- httemplate/elements/ckeditor/lang/da.js | 6 +- httemplate/elements/ckeditor/lang/de.js | 6 +- httemplate/elements/ckeditor/lang/el.js | 6 +- httemplate/elements/ckeditor/lang/en-au.js | 6 +- httemplate/elements/ckeditor/lang/en-ca.js | 6 +- httemplate/elements/ckeditor/lang/en-gb.js | 6 +- httemplate/elements/ckeditor/lang/en.js | 6 +- httemplate/elements/ckeditor/lang/eo.js | 6 +- httemplate/elements/ckeditor/lang/es.js | 6 +- httemplate/elements/ckeditor/lang/et.js | 6 +- httemplate/elements/ckeditor/lang/eu.js | 6 +- httemplate/elements/ckeditor/lang/fa.js | 6 +- httemplate/elements/ckeditor/lang/fi.js | 6 +- httemplate/elements/ckeditor/lang/fo.js | 6 +- httemplate/elements/ckeditor/lang/fr-ca.js | 6 +- httemplate/elements/ckeditor/lang/fr.js | 6 +- httemplate/elements/ckeditor/lang/gl.js | 6 +- httemplate/elements/ckeditor/lang/gu.js | 6 +- httemplate/elements/ckeditor/lang/he.js | 6 +- httemplate/elements/ckeditor/lang/hi.js | 6 +- httemplate/elements/ckeditor/lang/hr.js | 6 +- httemplate/elements/ckeditor/lang/hu.js | 6 +- httemplate/elements/ckeditor/lang/id.js | 5 + httemplate/elements/ckeditor/lang/is.js | 6 +- httemplate/elements/ckeditor/lang/it.js | 6 +- httemplate/elements/ckeditor/lang/ja.js | 6 +- httemplate/elements/ckeditor/lang/ka.js | 6 +- httemplate/elements/ckeditor/lang/km.js | 6 +- httemplate/elements/ckeditor/lang/ko.js | 6 +- httemplate/elements/ckeditor/lang/ku.js | 6 +- httemplate/elements/ckeditor/lang/lt.js | 6 +- httemplate/elements/ckeditor/lang/lv.js | 6 +- httemplate/elements/ckeditor/lang/mk.js | 6 +- httemplate/elements/ckeditor/lang/mn.js | 6 +- httemplate/elements/ckeditor/lang/ms.js | 6 +- httemplate/elements/ckeditor/lang/nb.js | 6 +- httemplate/elements/ckeditor/lang/nl.js | 6 +- httemplate/elements/ckeditor/lang/no.js | 6 +- httemplate/elements/ckeditor/lang/pl.js | 6 +- httemplate/elements/ckeditor/lang/pt-br.js | 6 +- httemplate/elements/ckeditor/lang/pt.js | 6 +- httemplate/elements/ckeditor/lang/ro.js | 6 +- httemplate/elements/ckeditor/lang/ru.js | 6 +- httemplate/elements/ckeditor/lang/si.js | 5 + httemplate/elements/ckeditor/lang/sk.js | 6 +- httemplate/elements/ckeditor/lang/sl.js | 6 +- httemplate/elements/ckeditor/lang/sq.js | 6 +- httemplate/elements/ckeditor/lang/sr-latn.js | 6 +- httemplate/elements/ckeditor/lang/sr.js | 6 +- httemplate/elements/ckeditor/lang/sv.js | 6 +- httemplate/elements/ckeditor/lang/th.js | 6 +- httemplate/elements/ckeditor/lang/tr.js | 6 +- httemplate/elements/ckeditor/lang/tt.js | 5 + httemplate/elements/ckeditor/lang/ug.js | 6 +- httemplate/elements/ckeditor/lang/uk.js | 6 +- httemplate/elements/ckeditor/lang/vi.js | 6 +- httemplate/elements/ckeditor/lang/zh-cn.js | 6 +- httemplate/elements/ckeditor/lang/zh.js | 6 +- .../ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js | 14 +- .../a11yhelp/dialogs/lang/_translationstatus.txt | 4 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/af.js | 11 + .../ckeditor/plugins/a11yhelp/dialogs/lang/ar.js | 14 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/bg.js | 14 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/ca.js | 18 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/cs.js | 18 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/cy.js | 16 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/da.js | 16 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/de.js | 18 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/el.js | 18 +- .../plugins/a11yhelp/dialogs/lang/en-gb.js | 11 + .../ckeditor/plugins/a11yhelp/dialogs/lang/en.js | 14 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/eo.js | 18 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/es.js | 16 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/et.js | 14 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/fa.js | 16 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/fi.js | 17 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/fo.js | 11 + .../plugins/a11yhelp/dialogs/lang/fr-ca.js | 15 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/fr.js | 18 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/gl.js | 12 + .../ckeditor/plugins/a11yhelp/dialogs/lang/gu.js | 14 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/he.js | 14 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/hi.js | 14 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/hr.js | 16 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/hu.js | 17 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/id.js | 11 + .../ckeditor/plugins/a11yhelp/dialogs/lang/it.js | 17 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/ja.js | 14 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/km.js | 16 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/ko.js | 11 + .../ckeditor/plugins/a11yhelp/dialogs/lang/ku.js | 17 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/lt.js | 14 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/lv.js | 15 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/mk.js | 14 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/mn.js | 14 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/nb.js | 17 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/nl.js | 17 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/no.js | 16 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/pl.js | 15 +- .../plugins/a11yhelp/dialogs/lang/pt-br.js | 17 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/pt.js | 17 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/ro.js | 16 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/ru.js | 16 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/si.js | 10 + .../ckeditor/plugins/a11yhelp/dialogs/lang/sk.js | 17 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/sl.js | 16 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/sq.js | 14 +- .../plugins/a11yhelp/dialogs/lang/sr-latn.js | 11 + .../ckeditor/plugins/a11yhelp/dialogs/lang/sr.js | 11 + .../ckeditor/plugins/a11yhelp/dialogs/lang/sv.js | 17 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/th.js | 14 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/tr.js | 17 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/tt.js | 11 + .../ckeditor/plugins/a11yhelp/dialogs/lang/ug.js | 16 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/uk.js | 16 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/vi.js | 16 +- .../plugins/a11yhelp/dialogs/lang/zh-cn.js | 12 +- .../ckeditor/plugins/a11yhelp/dialogs/lang/zh.js | 9 + .../ckeditor/plugins/about/dialogs/about.js | 9 +- .../plugins/about/dialogs/hidpi/logo_ckeditor.png | Bin 0 -> 13339 bytes .../plugins/about/dialogs/logo_ckeditor.png | Bin 2759 -> 6757 bytes .../ckeditor/plugins/blockprotect/plugin.js | 139 -- .../ckeditor/plugins/clipboard/dialogs/paste.js | 18 +- .../plugins/colordialog/dialogs/colordialog.js | 22 +- .../ckeditor/plugins/dialog/dialogDefinition.js | 4 +- .../elements/ckeditor/plugins/div/dialogs/div.js | 16 +- .../ckeditor/plugins/fakeobjects/images/spacer.gif | Bin 43 -> 0 bytes .../elements/ckeditor/plugins/find/dialogs/find.js | 44 +- .../ckeditor/plugins/flash/dialogs/flash.js | 18 +- .../ckeditor/plugins/forms/dialogs/button.js | 6 +- .../ckeditor/plugins/forms/dialogs/checkbox.js | 7 +- .../ckeditor/plugins/forms/dialogs/form.js | 12 +- .../ckeditor/plugins/forms/dialogs/hiddenfield.js | 11 +- .../ckeditor/plugins/forms/dialogs/radio.js | 13 +- .../ckeditor/plugins/forms/dialogs/select.js | 12 +- .../ckeditor/plugins/forms/dialogs/textarea.js | 6 +- .../ckeditor/plugins/forms/dialogs/textfield.js | 13 +- httemplate/elements/ckeditor/plugins/icons.png | Bin 20881 -> 20833 bytes .../elements/ckeditor/plugins/icons_hidpi.png | Bin 0 -> 67753 bytes .../ckeditor/plugins/iframe/dialogs/iframe.js | 4 +- .../ckeditor/plugins/iframe/images/placeholder.png | Bin 449 -> 265 bytes .../ckeditor/plugins/image/dialogs/image.js | 82 +- .../ckeditor/plugins/link/dialogs/anchor.js | 11 +- .../elements/ckeditor/plugins/link/dialogs/link.js | 58 +- .../ckeditor/plugins/link/images/anchor.png | Bin 566 -> 589 bytes .../ckeditor/plugins/link/images/hidpi/anchor.png | Bin 0 -> 1379 bytes .../plugins/liststyle/dialogs/liststyle.js | 4 +- .../plugins/magicline/images/hidpi/icon-rtl.png | Bin 0 -> 176 bytes .../plugins/magicline/images/hidpi/icon.png | Bin 0 -> 199 bytes .../ckeditor/plugins/magicline/images/icon-rtl.png | Bin 0 -> 138 bytes .../ckeditor/plugins/magicline/images/icon.png | Bin 172 -> 133 bytes .../plugins/pastefromword/filter/default.js | 57 +- .../elements/ckeditor/plugins/preview/preview.html | 13 +- .../elements/ckeditor/plugins/scayt/README.md | 2 +- .../ckeditor/plugins/scayt/dialogs/options.js | 37 +- .../plugins/showblocks/images/block_address.png | Bin 171 -> 152 bytes .../plugins/showblocks/images/block_blockquote.png | Bin 181 -> 154 bytes .../plugins/showblocks/images/block_div.png | Bin 136 -> 127 bytes .../plugins/showblocks/images/block_h1.png | Bin 127 -> 120 bytes .../plugins/showblocks/images/block_h2.png | Bin 134 -> 127 bytes .../plugins/showblocks/images/block_h3.png | Bin 131 -> 123 bytes .../plugins/showblocks/images/block_h4.png | Bin 133 -> 123 bytes .../plugins/showblocks/images/block_h5.png | Bin 133 -> 126 bytes .../plugins/showblocks/images/block_h6.png | Bin 129 -> 123 bytes .../ckeditor/plugins/showblocks/images/block_p.png | Bin 119 -> 115 bytes .../plugins/showblocks/images/block_pre.png | Bin 136 -> 128 bytes .../ckeditor/plugins/smiley/dialogs/smiley.js | 4 +- .../ckeditor/plugins/smiley/images/angel_smile.gif | Bin 465 -> 1245 bytes .../ckeditor/plugins/smiley/images/angel_smile.png | Bin 0 -> 1172 bytes .../ckeditor/plugins/smiley/images/angry_smile.gif | Bin 443 -> 1219 bytes .../ckeditor/plugins/smiley/images/angry_smile.png | Bin 0 -> 1220 bytes .../plugins/smiley/images/broken_heart.gif | Bin 192 -> 732 bytes .../plugins/smiley/images/broken_heart.png | Bin 0 -> 1139 bytes .../plugins/smiley/images/confused_smile.gif | Bin 464 -> 1202 bytes .../plugins/smiley/images/confused_smile.png | Bin 0 -> 1101 bytes .../ckeditor/plugins/smiley/images/cry_smile.gif | Bin 468 -> 795 bytes .../ckeditor/plugins/smiley/images/cry_smile.png | Bin 0 -> 1214 bytes .../ckeditor/plugins/smiley/images/devil_smile.gif | Bin 436 -> 1239 bytes .../ckeditor/plugins/smiley/images/devil_smile.png | Bin 0 -> 1220 bytes .../plugins/smiley/images/embaressed_smile.gif | Bin 442 -> 786 bytes .../plugins/smiley/images/embarrassed_smile.gif | Bin 442 -> 786 bytes .../plugins/smiley/images/embarrassed_smile.png | Bin 0 -> 1145 bytes .../ckeditor/plugins/smiley/images/envelope.gif | Bin 426 -> 506 bytes .../ckeditor/plugins/smiley/images/envelope.png | Bin 0 -> 760 bytes .../ckeditor/plugins/smiley/images/heart.gif | Bin 183 -> 692 bytes .../ckeditor/plugins/smiley/images/heart.png | Bin 0 -> 999 bytes .../ckeditor/plugins/smiley/images/kiss.gif | Bin 241 -> 683 bytes .../ckeditor/plugins/smiley/images/kiss.png | Bin 0 -> 1003 bytes .../ckeditor/plugins/smiley/images/lightbulb.gif | Bin 368 -> 660 bytes .../ckeditor/plugins/smiley/images/lightbulb.png | Bin 0 -> 919 bytes .../ckeditor/plugins/smiley/images/omg_smile.gif | Bin 451 -> 820 bytes .../ckeditor/plugins/smiley/images/omg_smile.png | Bin 0 -> 1122 bytes .../plugins/smiley/images/regular_smile.gif | Bin 450 -> 1209 bytes .../plugins/smiley/images/regular_smile.png | Bin 0 -> 1084 bytes .../ckeditor/plugins/smiley/images/sad_smile.gif | Bin 460 -> 782 bytes .../ckeditor/plugins/smiley/images/sad_smile.png | Bin 0 -> 1115 bytes .../plugins/smiley/images/shades_smile.gif | Bin 449 -> 1231 bytes .../plugins/smiley/images/shades_smile.png | Bin 0 -> 1204 bytes .../ckeditor/plugins/smiley/images/teeth_smile.gif | Bin 442 -> 1201 bytes .../ckeditor/plugins/smiley/images/teeth_smile.png | Bin 0 -> 1183 bytes .../ckeditor/plugins/smiley/images/thumbs_down.gif | Bin 408 -> 715 bytes .../ckeditor/plugins/smiley/images/thumbs_down.png | Bin 0 -> 985 bytes .../ckeditor/plugins/smiley/images/thumbs_up.gif | Bin 396 -> 714 bytes .../ckeditor/plugins/smiley/images/thumbs_up.png | Bin 0 -> 959 bytes .../plugins/smiley/images/tongue_smile.gif | Bin 446 -> 1210 bytes .../plugins/smiley/images/tongue_smile.png | Bin 0 -> 1132 bytes .../plugins/smiley/images/tounge_smile.gif | Bin 446 -> 1210 bytes .../smiley/images/whatchutalkingabout_smile.gif | Bin 452 -> 775 bytes .../smiley/images/whatchutalkingabout_smile.png | Bin 0 -> 1039 bytes .../ckeditor/plugins/smiley/images/wink_smile.gif | Bin 458 -> 1202 bytes .../ckeditor/plugins/smiley/images/wink_smile.png | Bin 0 -> 1114 bytes .../dialogs/lang/_translationstatus.txt | 4 +- .../plugins/specialchar/dialogs/lang/af.js | 13 + .../plugins/specialchar/dialogs/lang/ar.js | 13 + .../plugins/specialchar/dialogs/lang/bg.js | 13 + .../plugins/specialchar/dialogs/lang/ca.js | 4 +- .../plugins/specialchar/dialogs/lang/cs.js | 4 +- .../plugins/specialchar/dialogs/lang/cy.js | 6 +- .../plugins/specialchar/dialogs/lang/da.js | 11 + .../plugins/specialchar/dialogs/lang/de.js | 22 +- .../plugins/specialchar/dialogs/lang/el.js | 22 +- .../plugins/specialchar/dialogs/lang/en-gb.js | 13 + .../plugins/specialchar/dialogs/lang/en.js | 4 +- .../plugins/specialchar/dialogs/lang/eo.js | 4 +- .../plugins/specialchar/dialogs/lang/es.js | 4 +- .../plugins/specialchar/dialogs/lang/et.js | 10 +- .../plugins/specialchar/dialogs/lang/fa.js | 4 +- .../plugins/specialchar/dialogs/lang/fi.js | 4 +- .../plugins/specialchar/dialogs/lang/fr-ca.js | 4 +- .../plugins/specialchar/dialogs/lang/fr.js | 4 +- .../plugins/specialchar/dialogs/lang/gl.js | 13 + .../plugins/specialchar/dialogs/lang/he.js | 21 +- .../plugins/specialchar/dialogs/lang/hr.js | 8 +- .../plugins/specialchar/dialogs/lang/hu.js | 12 + .../plugins/specialchar/dialogs/lang/id.js | 13 + .../plugins/specialchar/dialogs/lang/it.js | 4 +- .../plugins/specialchar/dialogs/lang/ja.js | 9 + .../plugins/specialchar/dialogs/lang/km.js | 13 + .../plugins/specialchar/dialogs/lang/ko.js | 10 + .../plugins/specialchar/dialogs/lang/ku.js | 4 +- .../plugins/specialchar/dialogs/lang/lt.js | 13 + .../plugins/specialchar/dialogs/lang/lv.js | 4 +- .../plugins/specialchar/dialogs/lang/nb.js | 4 +- .../plugins/specialchar/dialogs/lang/nl.js | 6 +- .../plugins/specialchar/dialogs/lang/no.js | 4 +- .../plugins/specialchar/dialogs/lang/pl.js | 4 +- .../plugins/specialchar/dialogs/lang/pt-br.js | 4 +- .../plugins/specialchar/dialogs/lang/pt.js | 13 + .../plugins/specialchar/dialogs/lang/ru.js | 13 + .../plugins/specialchar/dialogs/lang/si.js | 13 + .../plugins/specialchar/dialogs/lang/sk.js | 4 +- .../plugins/specialchar/dialogs/lang/sl.js | 12 + .../plugins/specialchar/dialogs/lang/sq.js | 8 +- .../plugins/specialchar/dialogs/lang/sv.js | 4 +- .../plugins/specialchar/dialogs/lang/th.js | 4 +- .../plugins/specialchar/dialogs/lang/tr.js | 4 +- .../plugins/specialchar/dialogs/lang/tt.js | 13 + .../plugins/specialchar/dialogs/lang/ug.js | 10 +- .../plugins/specialchar/dialogs/lang/uk.js | 12 + .../plugins/specialchar/dialogs/lang/vi.js | 14 + .../plugins/specialchar/dialogs/lang/zh-cn.js | 6 +- .../plugins/specialchar/dialogs/lang/zh.js | 9 + .../plugins/specialchar/dialogs/specialchar.js | 4 +- .../ckeditor/plugins/table/dialogs/table.js | 14 +- .../plugins/tabletools/dialogs/tableCell.js | 29 +- .../plugins/templates/dialogs/templates.css | 14 +- .../plugins/templates/dialogs/templates.js | 4 +- .../plugins/templates/templates/default.js | 8 +- .../ckeditor/plugins/wsc/dialogs/ciframe.html | 19 +- .../ckeditor/plugins/wsc/dialogs/tmpFrameset.html | 2 +- .../elements/ckeditor/plugins/wsc/dialogs/wsc.css | 2 +- .../elements/ckeditor/plugins/wsc/dialogs/wsc.js | 96 +- .../ckeditor/plugins/wsc/dialogs/wsc_ie.js | 11 + .../elements/ckeditor/samples/css/samples.css | 1651 +++++++++++++++++ .../elements/ckeditor/samples/img/github-top.png | Bin 0 -> 383 bytes .../elements/ckeditor/samples/img/header-bg.png | Bin 0 -> 13086 bytes .../ckeditor/samples/img/header-separator.png | Bin 0 -> 123 bytes httemplate/elements/ckeditor/samples/img/logo.png | Bin 0 -> 5891 bytes .../ckeditor/samples/img/navigation-tip.png | Bin 0 -> 12029 bytes httemplate/elements/ckeditor/samples/index.html | 128 ++ httemplate/elements/ckeditor/samples/js/sample.js | 53 + httemplate/elements/ckeditor/samples/js/sf.js | 17 + httemplate/elements/ckeditor/samples/old/ajax.html | 85 + httemplate/elements/ckeditor/samples/old/api.html | 210 +++ .../elements/ckeditor/samples/old/appendto.html | 59 + .../ckeditor/samples/old/assets/inlineall/logo.png | Bin 0 -> 4283 bytes .../samples/old/assets/outputxhtml/outputxhtml.css | 204 +++ .../ckeditor/samples/old/assets/posteddata.php | 59 + .../ckeditor/samples/old/assets/sample.jpg | Bin 0 -> 14449 bytes .../samples/old/assets/uilanguages/languages.js | 7 + .../ckeditor/samples/old/datafiltering.html | 508 ++++++ .../samples/old/dialog/assets/my_dialog.js | 48 + .../ckeditor/samples/old/dialog/dialog.html | 190 ++ .../elements/ckeditor/samples/old/divreplace.html | 144 ++ .../ckeditor/samples/old/enterkey/enterkey.html | 106 ++ .../assets/outputforflash/outputforflash.fla | Bin 0 -> 85504 bytes .../assets/outputforflash/outputforflash.swf | Bin 0 -> 15571 bytes .../htmlwriter/assets/outputforflash/swfobject.js | 18 + .../samples/old/htmlwriter/outputforflash.html | 283 +++ .../samples/old/htmlwriter/outputhtml.html | 224 +++ .../elements/ckeditor/samples/old/index.html | 131 ++ .../elements/ckeditor/samples/old/inlineall.html | 314 ++++ .../ckeditor/samples/old/inlinebycode.html | 124 ++ .../ckeditor/samples/old/inlinetextarea.html | 113 ++ .../elements/ckeditor/samples/old/jquery.html | 103 ++ .../ckeditor/samples/old/magicline/magicline.html | 209 +++ .../elements/ckeditor/samples/old/readonly.html | 76 + .../ckeditor/samples/old/replacebyclass.html | 60 + .../ckeditor/samples/old/replacebycode.html | 59 + .../elements/ckeditor/samples/old/sample.css | 357 ++++ httemplate/elements/ckeditor/samples/old/sample.js | 50 + .../ckeditor/samples/old/sample_posteddata.php | 16 + .../elements/ckeditor/samples/old/tabindex.html | 78 + .../ckeditor/samples/old/toolbar/toolbar.html | 235 +++ .../elements/ckeditor/samples/old/uicolor.html | 72 + .../elements/ckeditor/samples/old/uilanguages.html | 122 ++ .../ckeditor/samples/old/wysiwygarea/fullpage.html | 80 + .../elements/ckeditor/samples/old/xhtmlstyle.html | 234 +++ .../samples/toolbarconfigurator/css/fontello.css | 55 + .../samples/toolbarconfigurator/font/LICENSE.txt | 10 + .../samples/toolbarconfigurator/font/config.json | 28 + .../samples/toolbarconfigurator/font/fontello.eot | Bin 0 -> 4988 bytes .../samples/toolbarconfigurator/font/fontello.svg | 14 + .../samples/toolbarconfigurator/font/fontello.ttf | Bin 0 -> 4820 bytes .../samples/toolbarconfigurator/font/fontello.woff | Bin 0 -> 2904 bytes .../samples/toolbarconfigurator/index.html | 446 +++++ .../js/abstracttoolbarmodifier.js | 14 + .../toolbarconfigurator/js/fulltoolbareditor.js | 9 + .../toolbarconfigurator/js/toolbarmodifier.js | 31 + .../toolbarconfigurator/js/toolbartextmodifier.js | 14 + .../toolbarconfigurator/lib/codemirror/LICENSE | 19 + .../lib/codemirror/codemirror.css | 325 ++++ .../lib/codemirror/codemirror.js | 290 +++ .../lib/codemirror/javascript.js | 24 + .../toolbarconfigurator/lib/codemirror/neo.css | 36 + .../lib/codemirror/show-hint.css | 38 + .../lib/codemirror/show-hint.js | 16 + httemplate/elements/ckeditor/skins/kama/dialog.css | 6 +- .../elements/ckeditor/skins/kama/dialog_ie.css | 6 +- .../elements/ckeditor/skins/kama/dialog_ie7.css | 6 +- .../elements/ckeditor/skins/kama/dialog_ie8.css | 6 +- .../ckeditor/skins/kama/dialog_iequirks.css | 6 +- .../elements/ckeditor/skins/kama/dialog_opera.css | 5 - httemplate/elements/ckeditor/skins/kama/editor.css | 6 +- .../elements/ckeditor/skins/kama/editor_ie.css | 6 +- .../elements/ckeditor/skins/kama/editor_ie7.css | 6 +- .../elements/ckeditor/skins/kama/editor_ie8.css | 6 +- .../ckeditor/skins/kama/editor_iequirks.css | 6 +- httemplate/elements/ckeditor/skins/kama/icons.png | Bin 13034 -> 7546 bytes .../elements/ckeditor/skins/kama/icons_hidpi.png | Bin 0 -> 7811 bytes .../ckeditor/skins/kama/images/dialog_sides.gif | Bin 48 -> 47 bytes .../ckeditor/skins/kama/images/dialog_sides.png | Bin 178 -> 125 bytes .../skins/kama/images/dialog_sides_rtl.png | Bin 181 -> 128 bytes .../elements/ckeditor/skins/kama/images/mini.gif | Bin 183 -> 181 bytes .../ckeditor/skins/kama/images/spinner.gif | Bin 0 -> 2984 bytes .../ckeditor/skins/kama/images/sprites.png | Bin 7086 -> 6117 bytes .../ckeditor/skins/kama/images/sprites_ie6.png | Bin 2724 -> 2658 bytes .../ckeditor/skins/kama/images/toolbar_start.gif | Bin 105 -> 102 bytes httemplate/elements/ckeditor/skins/kama/readme.md | 2 +- httemplate/elements/ckeditor/skins/kama/skin.js | 12 +- .../elements/ckeditor/skins/moono/dialog.css | 6 +- .../elements/ckeditor/skins/moono/dialog_ie.css | 6 +- .../elements/ckeditor/skins/moono/dialog_ie7.css | 6 +- .../elements/ckeditor/skins/moono/dialog_ie8.css | 6 +- .../ckeditor/skins/moono/dialog_iequirks.css | 6 +- .../elements/ckeditor/skins/moono/dialog_opera.css | 5 - .../elements/ckeditor/skins/moono/editor.css | 6 +- .../elements/ckeditor/skins/moono/editor_gecko.css | 6 +- .../elements/ckeditor/skins/moono/editor_ie.css | 6 +- .../elements/ckeditor/skins/moono/editor_ie7.css | 6 +- .../elements/ckeditor/skins/moono/editor_ie8.css | 6 +- .../ckeditor/skins/moono/editor_iequirks.css | 6 +- httemplate/elements/ckeditor/skins/moono/icons.png | Bin 20881 -> 20833 bytes .../elements/ckeditor/skins/moono/icons_hidpi.png | Bin 0 -> 67753 bytes .../elements/ckeditor/skins/moono/images/arrow.png | Bin 261 -> 191 bytes .../elements/ckeditor/skins/moono/images/close.png | Bin 389 -> 468 bytes .../ckeditor/skins/moono/images/hidpi/close.png | Bin 0 -> 1271 bytes .../skins/moono/images/hidpi/lock-open.png | Bin 0 -> 1329 bytes .../ckeditor/skins/moono/images/hidpi/lock.png | Bin 0 -> 1299 bytes .../ckeditor/skins/moono/images/hidpi/refresh.png | Bin 0 -> 1842 bytes .../ckeditor/skins/moono/images/lock-open.png | Bin 0 -> 349 bytes .../elements/ckeditor/skins/moono/images/lock.png | Bin 0 -> 475 bytes .../elements/ckeditor/skins/moono/images/mini.png | Bin 818 -> 0 bytes .../ckeditor/skins/moono/images/refresh.png | Bin 0 -> 422 bytes .../ckeditor/skins/moono/images/spinner.gif | Bin 0 -> 2984 bytes httemplate/elements/ckeditor/skins/moono/readme.md | 2 +- .../elements/ckeditor/skins/moonocolor/dialog.css | 5 - .../ckeditor/skins/moonocolor/dialog_ie.css | 5 - .../ckeditor/skins/moonocolor/dialog_ie7.css | 5 - .../ckeditor/skins/moonocolor/dialog_ie8.css | 5 - .../ckeditor/skins/moonocolor/dialog_iequirks.css | 5 - .../ckeditor/skins/moonocolor/dialog_opera.css | 5 - .../elements/ckeditor/skins/moonocolor/editor.css | 5 - .../ckeditor/skins/moonocolor/editor_gecko.css | 5 - .../ckeditor/skins/moonocolor/editor_ie.css | 5 - .../ckeditor/skins/moonocolor/editor_ie7.css | 5 - .../ckeditor/skins/moonocolor/editor_ie8.css | 5 - .../ckeditor/skins/moonocolor/editor_iequirks.css | 5 - .../elements/ckeditor/skins/moonocolor/icons.png | Bin 28072 -> 0 bytes .../ckeditor/skins/moonocolor/icons/about.png | Bin 776 -> 0 bytes .../ckeditor/skins/moonocolor/icons/anchor-rtl.png | Bin 751 -> 0 bytes .../ckeditor/skins/moonocolor/icons/anchor.png | Bin 769 -> 0 bytes .../ckeditor/skins/moonocolor/icons/bgcolor.png | Bin 156 -> 0 bytes .../ckeditor/skins/moonocolor/icons/bidiltr.png | Bin 485 -> 0 bytes .../ckeditor/skins/moonocolor/icons/bidirtl.png | Bin 485 -> 0 bytes .../ckeditor/skins/moonocolor/icons/blockquote.png | Bin 462 -> 0 bytes .../ckeditor/skins/moonocolor/icons/bold.png | Bin 405 -> 0 bytes .../skins/moonocolor/icons/bulletedlist-rtl.png | Bin 337 -> 0 bytes .../skins/moonocolor/icons/bulletedlist.png | Bin 335 -> 0 bytes .../ckeditor/skins/moonocolor/icons/button.png | Bin 341 -> 0 bytes .../ckeditor/skins/moonocolor/icons/checkbox.png | Bin 424 -> 0 bytes .../ckeditor/skins/moonocolor/icons/copy-rtl.png | Bin 745 -> 0 bytes .../ckeditor/skins/moonocolor/icons/copy.png | Bin 774 -> 0 bytes .../ckeditor/skins/moonocolor/icons/creatediv.png | Bin 426 -> 0 bytes .../ckeditor/skins/moonocolor/icons/cut-rtl.png | Bin 677 -> 0 bytes .../ckeditor/skins/moonocolor/icons/cut.png | Bin 662 -> 0 bytes .../ckeditor/skins/moonocolor/icons/find-rtl.png | Bin 605 -> 0 bytes .../ckeditor/skins/moonocolor/icons/find.png | Bin 608 -> 0 bytes .../ckeditor/skins/moonocolor/icons/flash.png | Bin 729 -> 0 bytes .../ckeditor/skins/moonocolor/icons/form.png | Bin 560 -> 0 bytes .../skins/moonocolor/icons/hiddenfield.png | Bin 465 -> 0 bytes .../skins/moonocolor/icons/horizontalrule.png | Bin 307 -> 0 bytes .../ckeditor/skins/moonocolor/icons/iframe.png | Bin 827 -> 0 bytes .../ckeditor/skins/moonocolor/icons/image.png | Bin 663 -> 0 bytes .../skins/moonocolor/icons/imagebutton.png | Bin 501 -> 0 bytes .../ckeditor/skins/moonocolor/icons/indent-rtl.png | Bin 341 -> 0 bytes .../ckeditor/skins/moonocolor/icons/indent.png | Bin 341 -> 0 bytes .../ckeditor/skins/moonocolor/icons/italic.png | Bin 297 -> 0 bytes .../skins/moonocolor/icons/justifyblock.png | Bin 236 -> 0 bytes .../skins/moonocolor/icons/justifycenter.png | Bin 251 -> 0 bytes .../skins/moonocolor/icons/justifyleft.png | Bin 240 -> 0 bytes .../skins/moonocolor/icons/justifyright.png | Bin 234 -> 0 bytes .../ckeditor/skins/moonocolor/icons/link.png | Bin 652 -> 0 bytes .../ckeditor/skins/moonocolor/icons/maximize.png | Bin 615 -> 0 bytes .../skins/moonocolor/icons/newpage-rtl.png | Bin 428 -> 0 bytes .../ckeditor/skins/moonocolor/icons/newpage.png | Bin 430 -> 0 bytes .../skins/moonocolor/icons/numberedlist-rtl.png | Bin 363 -> 0 bytes .../skins/moonocolor/icons/numberedlist.png | Bin 366 -> 0 bytes .../skins/moonocolor/icons/outdent-rtl.png | Bin 346 -> 0 bytes .../ckeditor/skins/moonocolor/icons/outdent.png | Bin 338 -> 0 bytes .../skins/moonocolor/icons/pagebreak-rtl.png | Bin 408 -> 0 bytes .../ckeditor/skins/moonocolor/icons/pagebreak.png | Bin 410 -> 0 bytes .../ckeditor/skins/moonocolor/icons/paste-rtl.png | Bin 793 -> 0 bytes .../ckeditor/skins/moonocolor/icons/paste.png | Bin 808 -> 0 bytes .../skins/moonocolor/icons/pastefromword-rtl.png | Bin 822 -> 0 bytes .../skins/moonocolor/icons/pastefromword.png | Bin 822 -> 0 bytes .../skins/moonocolor/icons/pastetext-rtl.png | Bin 848 -> 0 bytes .../ckeditor/skins/moonocolor/icons/pastetext.png | Bin 834 -> 0 bytes .../skins/moonocolor/icons/preview-rtl.png | Bin 623 -> 0 bytes .../ckeditor/skins/moonocolor/icons/preview.png | Bin 638 -> 0 bytes .../ckeditor/skins/moonocolor/icons/print.png | Bin 834 -> 0 bytes .../ckeditor/skins/moonocolor/icons/radio.png | Bin 548 -> 0 bytes .../ckeditor/skins/moonocolor/icons/redo-rtl.png | Bin 628 -> 0 bytes .../ckeditor/skins/moonocolor/icons/redo.png | Bin 632 -> 0 bytes .../skins/moonocolor/icons/removeformat.png | Bin 691 -> 0 bytes .../ckeditor/skins/moonocolor/icons/replace.png | Bin 745 -> 0 bytes .../ckeditor/skins/moonocolor/icons/save.png | Bin 728 -> 0 bytes .../ckeditor/skins/moonocolor/icons/scayt.png | Bin 679 -> 0 bytes .../ckeditor/skins/moonocolor/icons/select-rtl.png | Bin 358 -> 0 bytes .../ckeditor/skins/moonocolor/icons/select.png | Bin 354 -> 0 bytes .../ckeditor/skins/moonocolor/icons/selectall.png | Bin 530 -> 0 bytes .../skins/moonocolor/icons/showblocks-rtl.png | Bin 340 -> 0 bytes .../ckeditor/skins/moonocolor/icons/showblocks.png | Bin 354 -> 0 bytes .../ckeditor/skins/moonocolor/icons/smiley.png | Bin 732 -> 0 bytes .../ckeditor/skins/moonocolor/icons/source-rtl.png | Bin 650 -> 0 bytes .../ckeditor/skins/moonocolor/icons/source.png | Bin 647 -> 0 bytes .../skins/moonocolor/icons/specialchar.png | Bin 565 -> 0 bytes .../skins/moonocolor/icons/spellchecker.png | Bin 679 -> 0 bytes .../ckeditor/skins/moonocolor/icons/strike.png | Bin 389 -> 0 bytes .../ckeditor/skins/moonocolor/icons/subscript.png | Bin 438 -> 0 bytes .../skins/moonocolor/icons/superscript.png | Bin 446 -> 0 bytes .../ckeditor/skins/moonocolor/icons/table.png | Bin 568 -> 0 bytes .../skins/moonocolor/icons/templates-rtl.png | Bin 608 -> 0 bytes .../ckeditor/skins/moonocolor/icons/templates.png | Bin 610 -> 0 bytes .../skins/moonocolor/icons/textarea-rtl.png | Bin 431 -> 0 bytes .../ckeditor/skins/moonocolor/icons/textarea.png | Bin 433 -> 0 bytes .../ckeditor/skins/moonocolor/icons/textcolor.png | Bin 218 -> 0 bytes .../skins/moonocolor/icons/textfield-rtl.png | Bin 323 -> 0 bytes .../ckeditor/skins/moonocolor/icons/textfield.png | Bin 324 -> 0 bytes .../ckeditor/skins/moonocolor/icons/underline.png | Bin 338 -> 0 bytes .../ckeditor/skins/moonocolor/icons/undo-rtl.png | Bin 632 -> 0 bytes .../ckeditor/skins/moonocolor/icons/undo.png | Bin 628 -> 0 bytes .../ckeditor/skins/moonocolor/icons/unlink.png | Bin 662 -> 0 bytes .../ckeditor/skins/moonocolor/images/arrow.png | Bin 342 -> 0 bytes .../ckeditor/skins/moonocolor/images/close.png | Bin 375 -> 0 bytes .../ckeditor/skins/moonocolor/images/mini.png | Bin 1190 -> 0 bytes .../elements/ckeditor/skins/moonocolor/readme.md | 51 - .../elements/ckeditor/skins/moonocolor/skin.js | 10 - httemplate/elements/ckeditor/styles.js | 6 +- 505 files changed, 12841 insertions(+), 2188 deletions(-) create mode 100644 httemplate/elements/ckeditor/CHANGES.md create mode 100644 httemplate/elements/ckeditor/LICENSE.md create mode 100644 httemplate/elements/ckeditor/README.md create mode 100644 httemplate/elements/ckeditor/adapters/jquery.js create mode 100644 httemplate/elements/ckeditor/lang/id.js create mode 100644 httemplate/elements/ckeditor/lang/si.js create mode 100644 httemplate/elements/ckeditor/lang/tt.js create mode 100644 httemplate/elements/ckeditor/plugins/a11yhelp/dialogs/lang/af.js create mode 100644 httemplate/elements/ckeditor/plugins/a11yhelp/dialogs/lang/en-gb.js create mode 100644 httemplate/elements/ckeditor/plugins/a11yhelp/dialogs/lang/fo.js create mode 100644 httemplate/elements/ckeditor/plugins/a11yhelp/dialogs/lang/gl.js create mode 100644 httemplate/elements/ckeditor/plugins/a11yhelp/dialogs/lang/id.js create mode 100644 httemplate/elements/ckeditor/plugins/a11yhelp/dialogs/lang/ko.js create mode 100644 httemplate/elements/ckeditor/plugins/a11yhelp/dialogs/lang/si.js create mode 100644 httemplate/elements/ckeditor/plugins/a11yhelp/dialogs/lang/sr-latn.js create mode 100644 httemplate/elements/ckeditor/plugins/a11yhelp/dialogs/lang/sr.js create mode 100644 httemplate/elements/ckeditor/plugins/a11yhelp/dialogs/lang/tt.js create mode 100644 httemplate/elements/ckeditor/plugins/a11yhelp/dialogs/lang/zh.js create mode 100644 httemplate/elements/ckeditor/plugins/about/dialogs/hidpi/logo_ckeditor.png delete mode 100644 httemplate/elements/ckeditor/plugins/blockprotect/plugin.js delete mode 100644 httemplate/elements/ckeditor/plugins/fakeobjects/images/spacer.gif create mode 100644 httemplate/elements/ckeditor/plugins/icons_hidpi.png create mode 100644 httemplate/elements/ckeditor/plugins/link/images/hidpi/anchor.png create mode 100644 httemplate/elements/ckeditor/plugins/magicline/images/hidpi/icon-rtl.png create mode 100644 httemplate/elements/ckeditor/plugins/magicline/images/hidpi/icon.png create mode 100644 httemplate/elements/ckeditor/plugins/magicline/images/icon-rtl.png create mode 100644 httemplate/elements/ckeditor/plugins/smiley/images/angel_smile.png create mode 100644 httemplate/elements/ckeditor/plugins/smiley/images/angry_smile.png create mode 100644 httemplate/elements/ckeditor/plugins/smiley/images/broken_heart.png create mode 100644 httemplate/elements/ckeditor/plugins/smiley/images/confused_smile.png create mode 100644 httemplate/elements/ckeditor/plugins/smiley/images/cry_smile.png create mode 100644 httemplate/elements/ckeditor/plugins/smiley/images/devil_smile.png create mode 100644 httemplate/elements/ckeditor/plugins/smiley/images/embarrassed_smile.png create mode 100644 httemplate/elements/ckeditor/plugins/smiley/images/envelope.png create mode 100644 httemplate/elements/ckeditor/plugins/smiley/images/heart.png create mode 100644 httemplate/elements/ckeditor/plugins/smiley/images/kiss.png create mode 100644 httemplate/elements/ckeditor/plugins/smiley/images/lightbulb.png create mode 100644 httemplate/elements/ckeditor/plugins/smiley/images/omg_smile.png create mode 100644 httemplate/elements/ckeditor/plugins/smiley/images/regular_smile.png create mode 100644 httemplate/elements/ckeditor/plugins/smiley/images/sad_smile.png create mode 100644 httemplate/elements/ckeditor/plugins/smiley/images/shades_smile.png create mode 100644 httemplate/elements/ckeditor/plugins/smiley/images/teeth_smile.png create mode 100644 httemplate/elements/ckeditor/plugins/smiley/images/thumbs_down.png create mode 100644 httemplate/elements/ckeditor/plugins/smiley/images/thumbs_up.png create mode 100644 httemplate/elements/ckeditor/plugins/smiley/images/tongue_smile.png create mode 100644 httemplate/elements/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.png create mode 100644 httemplate/elements/ckeditor/plugins/smiley/images/wink_smile.png create mode 100644 httemplate/elements/ckeditor/plugins/specialchar/dialogs/lang/af.js create mode 100644 httemplate/elements/ckeditor/plugins/specialchar/dialogs/lang/ar.js create mode 100644 httemplate/elements/ckeditor/plugins/specialchar/dialogs/lang/bg.js create mode 100644 httemplate/elements/ckeditor/plugins/specialchar/dialogs/lang/da.js create mode 100644 httemplate/elements/ckeditor/plugins/specialchar/dialogs/lang/en-gb.js create mode 100644 httemplate/elements/ckeditor/plugins/specialchar/dialogs/lang/gl.js create mode 100644 httemplate/elements/ckeditor/plugins/specialchar/dialogs/lang/hu.js create mode 100644 httemplate/elements/ckeditor/plugins/specialchar/dialogs/lang/id.js create mode 100644 httemplate/elements/ckeditor/plugins/specialchar/dialogs/lang/ja.js create mode 100644 httemplate/elements/ckeditor/plugins/specialchar/dialogs/lang/km.js create mode 100644 httemplate/elements/ckeditor/plugins/specialchar/dialogs/lang/ko.js create mode 100644 httemplate/elements/ckeditor/plugins/specialchar/dialogs/lang/lt.js create mode 100644 httemplate/elements/ckeditor/plugins/specialchar/dialogs/lang/pt.js create mode 100644 httemplate/elements/ckeditor/plugins/specialchar/dialogs/lang/ru.js create mode 100644 httemplate/elements/ckeditor/plugins/specialchar/dialogs/lang/si.js create mode 100644 httemplate/elements/ckeditor/plugins/specialchar/dialogs/lang/sl.js create mode 100644 httemplate/elements/ckeditor/plugins/specialchar/dialogs/lang/tt.js create mode 100644 httemplate/elements/ckeditor/plugins/specialchar/dialogs/lang/uk.js create mode 100644 httemplate/elements/ckeditor/plugins/specialchar/dialogs/lang/vi.js create mode 100644 httemplate/elements/ckeditor/plugins/specialchar/dialogs/lang/zh.js create mode 100644 httemplate/elements/ckeditor/plugins/wsc/dialogs/wsc_ie.js create mode 100644 httemplate/elements/ckeditor/samples/css/samples.css create mode 100644 httemplate/elements/ckeditor/samples/img/github-top.png create mode 100644 httemplate/elements/ckeditor/samples/img/header-bg.png create mode 100644 httemplate/elements/ckeditor/samples/img/header-separator.png create mode 100644 httemplate/elements/ckeditor/samples/img/logo.png create mode 100644 httemplate/elements/ckeditor/samples/img/navigation-tip.png create mode 100644 httemplate/elements/ckeditor/samples/index.html create mode 100644 httemplate/elements/ckeditor/samples/js/sample.js create mode 100644 httemplate/elements/ckeditor/samples/js/sf.js create mode 100644 httemplate/elements/ckeditor/samples/old/ajax.html create mode 100644 httemplate/elements/ckeditor/samples/old/api.html create mode 100644 httemplate/elements/ckeditor/samples/old/appendto.html create mode 100644 httemplate/elements/ckeditor/samples/old/assets/inlineall/logo.png create mode 100644 httemplate/elements/ckeditor/samples/old/assets/outputxhtml/outputxhtml.css create mode 100644 httemplate/elements/ckeditor/samples/old/assets/posteddata.php create mode 100644 httemplate/elements/ckeditor/samples/old/assets/sample.jpg create mode 100644 httemplate/elements/ckeditor/samples/old/assets/uilanguages/languages.js create mode 100644 httemplate/elements/ckeditor/samples/old/datafiltering.html create mode 100644 httemplate/elements/ckeditor/samples/old/dialog/assets/my_dialog.js create mode 100644 httemplate/elements/ckeditor/samples/old/dialog/dialog.html create mode 100644 httemplate/elements/ckeditor/samples/old/divreplace.html create mode 100644 httemplate/elements/ckeditor/samples/old/enterkey/enterkey.html create mode 100644 httemplate/elements/ckeditor/samples/old/htmlwriter/assets/outputforflash/outputforflash.fla create mode 100644 httemplate/elements/ckeditor/samples/old/htmlwriter/assets/outputforflash/outputforflash.swf create mode 100644 httemplate/elements/ckeditor/samples/old/htmlwriter/assets/outputforflash/swfobject.js create mode 100644 httemplate/elements/ckeditor/samples/old/htmlwriter/outputforflash.html create mode 100644 httemplate/elements/ckeditor/samples/old/htmlwriter/outputhtml.html create mode 100644 httemplate/elements/ckeditor/samples/old/index.html create mode 100644 httemplate/elements/ckeditor/samples/old/inlineall.html create mode 100644 httemplate/elements/ckeditor/samples/old/inlinebycode.html create mode 100644 httemplate/elements/ckeditor/samples/old/inlinetextarea.html create mode 100644 httemplate/elements/ckeditor/samples/old/jquery.html create mode 100644 httemplate/elements/ckeditor/samples/old/magicline/magicline.html create mode 100644 httemplate/elements/ckeditor/samples/old/readonly.html create mode 100644 httemplate/elements/ckeditor/samples/old/replacebyclass.html create mode 100644 httemplate/elements/ckeditor/samples/old/replacebycode.html create mode 100644 httemplate/elements/ckeditor/samples/old/sample.css create mode 100644 httemplate/elements/ckeditor/samples/old/sample.js create mode 100644 httemplate/elements/ckeditor/samples/old/sample_posteddata.php create mode 100644 httemplate/elements/ckeditor/samples/old/tabindex.html create mode 100644 httemplate/elements/ckeditor/samples/old/toolbar/toolbar.html create mode 100644 httemplate/elements/ckeditor/samples/old/uicolor.html create mode 100644 httemplate/elements/ckeditor/samples/old/uilanguages.html create mode 100644 httemplate/elements/ckeditor/samples/old/wysiwygarea/fullpage.html create mode 100644 httemplate/elements/ckeditor/samples/old/xhtmlstyle.html create mode 100644 httemplate/elements/ckeditor/samples/toolbarconfigurator/css/fontello.css create mode 100644 httemplate/elements/ckeditor/samples/toolbarconfigurator/font/LICENSE.txt create mode 100644 httemplate/elements/ckeditor/samples/toolbarconfigurator/font/config.json create mode 100644 httemplate/elements/ckeditor/samples/toolbarconfigurator/font/fontello.eot create mode 100644 httemplate/elements/ckeditor/samples/toolbarconfigurator/font/fontello.svg create mode 100644 httemplate/elements/ckeditor/samples/toolbarconfigurator/font/fontello.ttf create mode 100644 httemplate/elements/ckeditor/samples/toolbarconfigurator/font/fontello.woff create mode 100644 httemplate/elements/ckeditor/samples/toolbarconfigurator/index.html create mode 100644 httemplate/elements/ckeditor/samples/toolbarconfigurator/js/abstracttoolbarmodifier.js create mode 100644 httemplate/elements/ckeditor/samples/toolbarconfigurator/js/fulltoolbareditor.js create mode 100644 httemplate/elements/ckeditor/samples/toolbarconfigurator/js/toolbarmodifier.js create mode 100644 httemplate/elements/ckeditor/samples/toolbarconfigurator/js/toolbartextmodifier.js create mode 100644 httemplate/elements/ckeditor/samples/toolbarconfigurator/lib/codemirror/LICENSE create mode 100644 httemplate/elements/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.css create mode 100644 httemplate/elements/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.js create mode 100644 httemplate/elements/ckeditor/samples/toolbarconfigurator/lib/codemirror/javascript.js create mode 100644 httemplate/elements/ckeditor/samples/toolbarconfigurator/lib/codemirror/neo.css create mode 100644 httemplate/elements/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.css create mode 100644 httemplate/elements/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.js delete mode 100644 httemplate/elements/ckeditor/skins/kama/dialog_opera.css create mode 100644 httemplate/elements/ckeditor/skins/kama/icons_hidpi.png create mode 100644 httemplate/elements/ckeditor/skins/kama/images/spinner.gif delete mode 100644 httemplate/elements/ckeditor/skins/moono/dialog_opera.css create mode 100644 httemplate/elements/ckeditor/skins/moono/icons_hidpi.png create mode 100644 httemplate/elements/ckeditor/skins/moono/images/hidpi/close.png create mode 100644 httemplate/elements/ckeditor/skins/moono/images/hidpi/lock-open.png create mode 100644 httemplate/elements/ckeditor/skins/moono/images/hidpi/lock.png create mode 100644 httemplate/elements/ckeditor/skins/moono/images/hidpi/refresh.png create mode 100644 httemplate/elements/ckeditor/skins/moono/images/lock-open.png create mode 100644 httemplate/elements/ckeditor/skins/moono/images/lock.png delete mode 100644 httemplate/elements/ckeditor/skins/moono/images/mini.png create mode 100644 httemplate/elements/ckeditor/skins/moono/images/refresh.png create mode 100644 httemplate/elements/ckeditor/skins/moono/images/spinner.gif delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/dialog.css delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/dialog_ie.css delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/dialog_ie7.css delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/dialog_ie8.css delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/dialog_iequirks.css delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/dialog_opera.css delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/editor.css delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/editor_gecko.css delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/editor_ie.css delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/editor_ie7.css delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/editor_ie8.css delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/editor_iequirks.css delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/about.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/anchor-rtl.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/anchor.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/bgcolor.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/bidiltr.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/bidirtl.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/blockquote.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/bold.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/bulletedlist-rtl.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/bulletedlist.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/button.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/checkbox.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/copy-rtl.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/copy.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/creatediv.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/cut-rtl.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/cut.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/find-rtl.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/find.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/flash.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/form.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/hiddenfield.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/horizontalrule.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/iframe.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/image.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/imagebutton.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/indent-rtl.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/indent.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/italic.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/justifyblock.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/justifycenter.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/justifyleft.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/justifyright.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/link.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/maximize.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/newpage-rtl.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/newpage.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/numberedlist-rtl.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/numberedlist.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/outdent-rtl.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/outdent.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/pagebreak-rtl.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/pagebreak.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/paste-rtl.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/paste.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/pastefromword-rtl.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/pastefromword.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/pastetext-rtl.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/pastetext.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/preview-rtl.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/preview.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/print.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/radio.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/redo-rtl.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/redo.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/removeformat.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/replace.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/save.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/scayt.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/select-rtl.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/select.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/selectall.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/showblocks-rtl.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/showblocks.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/smiley.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/source-rtl.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/source.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/specialchar.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/spellchecker.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/strike.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/subscript.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/superscript.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/table.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/templates-rtl.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/templates.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/textarea-rtl.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/textarea.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/textcolor.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/textfield-rtl.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/textfield.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/underline.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/undo-rtl.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/undo.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/icons/unlink.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/images/arrow.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/images/close.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/images/mini.png delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/readme.md delete mode 100644 httemplate/elements/ckeditor/skins/moonocolor/skin.js (limited to 'httemplate/elements') diff --git a/httemplate/elements/ckeditor/CHANGES.md b/httemplate/elements/ckeditor/CHANGES.md new file mode 100644 index 000000000..0b079eee4 --- /dev/null +++ b/httemplate/elements/ckeditor/CHANGES.md @@ -0,0 +1,897 @@ +CKEditor 4 Changelog +==================== + +## CKEditor 4.5.1 + +Fixed Issues: + +* [#13486](http://dev.ckeditor.com/ticket/13486): Fixed: The [Upload Image](http://ckeditor.com/addon/uploadimage) plugin should log an error, not throw an error when upload URL is not set. + +## CKEditor 4.5 + +New Features: + +* [#13304](http://dev.ckeditor.com/ticket/13304): Added support for passing DOM elements to [`config.sharedSpaces`](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-sharedSpaces). Thanks to [Undergrounder](https://github.com/Undergrounder)! +* [#13215](http://dev.ckeditor.com/ticket/13215): Added ability to cancel fetching a resource by the Embed plugins. +* [#13213](http://dev.ckeditor.com/ticket/13213): Added the [`dialog#setState()`](http://docs.ckeditor.com/#!/api/CKEDITOR.dialog-method-setState) method and used it in the [Embed](http://ckeditor.com/addon/embed) dialog to indicate that a resource is being loaded. +* [#13337](http://dev.ckeditor.com/ticket/13337): Added the [`repository.onWidget()`](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.widget.repository-method-onWidget) method — a convenient way to listen to [widget](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.widget) events through the [repository](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.widget.repository). +* [#13214](http://dev.ckeditor.com/ticket/13214): Added support for pasting links that convert into embeddable resources on the fly. + +Fixed Issues: + +* [#13334](http://dev.ckeditor.com/ticket/13334): Fixed: Error after nesting widgets and playing with undo/redo. +* [#13118](http://dev.ckeditor.com/ticket/13118): Fixed: The [`editor.getSelectedHtml()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-getSelectedHtml) method throws an error when called in the source mode. +* [#13158](http://dev.ckeditor.com/ticket/13158): Fixed: Error after canceling a dialog when creating a widget. +* [#13197](http://dev.ckeditor.com/ticket/13197): Fixed: Linked inline [Enhanced Image](http://ckeditor.com/addon/image2) alignment class is not transferred to the widget wrapper. +* [#13199](http://dev.ckeditor.com/ticket/13199): Fixed: [Semantic Embed](http://ckeditor.com/addon/embedsemantic) does not support widget classes. +* [#13003](http://dev.ckeditor.com/ticket/13003): Fixed: Anchors are uploaded when moving them by drag and drop. +* [#13032](http://dev.ckeditor.com/ticket/13032): Fixed: When upload is done, notification update should be marked as important. +* [#13300](http://dev.ckeditor.com/ticket/13300): Fixed: The `internalCommit` argument in the [Image](http://ckeditor.com/addon/image) dialog seems to be never used. +* [#13036](http://dev.ckeditor.com/ticket/13036): Fixed: Notifications are moved 10px to the right. +* [#13280](http://dev.ckeditor.com/ticket/13280): [IE8] Fixed: Undo after inline widget drag&drop throws an error. +* [#13186](http://dev.ckeditor.com/ticket/13186): Fixed: Content dropped into a nested editable is not filtered by [Advanced Content Filter](http://docs.ckeditor.com/#!/guide/dev_acf). +* [#13140](http://dev.ckeditor.com/ticket/13140): Fixed: Error thrown when dropping a block widget right after itself. +* [#13176](http://dev.ckeditor.com/ticket/13176): [IE8] Fixed: Errors on drag&drop of embed widgets. +* [#13015](http://dev.ckeditor.com/ticket/13015): Fixed: Dropping an image file on [Enhanced Image](http://ckeditor.com/addon/image2) causes a page reload. +* [#13080](http://dev.ckeditor.com/ticket/13080): Fixed: Ugly notification shown when the response contains HTML content. +* [#13011](http://dev.ckeditor.com/ticket/13011): [IE8] Fixed: Anchors are duplicated on drag&drop in specific locations. +* [#13105](http://dev.ckeditor.com/ticket/13105): Fixed: Various issues related to [`CKEDITOR.tools.htmlEncode()`](http://docs.ckeditor.com/#!/api/CKEDITOR.tools-method-htmlEncode) and [`CKEDITOR.tools.htmlDecode()`](http://docs.ckeditor.com/#!/api/CKEDITOR.tools-method-htmlDecode) methods. +* [#11976](http://dev.ckeditor.com/ticket/11976): [Chrome] Fixed: Copy&paste and drag&drop lists from Microsoft Word. +* [#13128](http://dev.ckeditor.com/ticket/13128): Fixed: Various issues with cloning element IDs: + * Fixed the default behavior of [`range.cloneContents()`](http://docs.ckeditor.com/#!/api/CKEDITOR.dom.range-method-cloneContents) and [`range.extractContents()`](http://docs.ckeditor.com/#!/api/CKEDITOR.dom.range-method-extractContents) methods which now clone IDs similarly to their native counterparts. + * Added `cloneId` arguments to the above methods, [`range.splitBlock()`](http://docs.ckeditor.com/#!/api/CKEDITOR.dom.range-method-splitBlock) and [`element.breakParent()`](http://docs.ckeditor.com/#!/api/CKEDITOR.dom.element-method-breakParent). Mind the default values and special behavior in the `extractContents()` method! + * Fixed issues where IDs were lost on copy&paste and drag&drop. +* Toolbar configurators: + * [#13185](http://dev.ckeditor.com/ticket/13185): Fixed: Wrong position of the suggestion box if there is not enough space below the caret. + * [#13138](http://dev.ckeditor.com/ticket/13138): Fixed: The "Toggle empty elements" button label is unclear. + * [#13136](http://dev.ckeditor.com/ticket/13136): Fixed: Autocompleter is far too intrusive. + * [#13133](http://dev.ckeditor.com/ticket/13133): Fixed: Tab leaves the editor. + * [#13173](http://dev.ckeditor.com/ticket/13173): Fixed: [`config.removeButtons`](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-removeButtons) is ignored by the advanced toolbar configurator. + +Other Changes: + +* [#13119](http://dev.ckeditor.com/ticket/13119): Improved compatibility of editor skins ([Moono](http://ckeditor.com/addon/moono) and [Kama](http://ckeditor.com/addon/kama)) with external web page style sheets. +* Toolbar configurators: + * [#13147](http://dev.ckeditor.com/ticket/13147): Added buttons to the sticky toolbar. + * [#13207](http://dev.ckeditor.com/ticket/13207): Used modal window to display toolbar configurator help. +* [#13316](http://dev.ckeditor.com/ticket/13316): Made [`CKEDITOR.env.isCompatible`](http://docs.ckeditor.com/#!/api/CKEDITOR.env-property-isCompatible) a blacklist rather than a whitelist. More about the change in the [Browser Compatibility](http://docs.ckeditor.com/#!/guide/dev_browsers) guide. +* [#13398](http://dev.ckeditor.com/ticket/13398): Renamed `CKEDITOR.fileTools.UploadsRepository` to [`CKEDITOR.fileTools.UploadRepository`](http://docs.ckeditor.com/#!/api/CKEDITOR.fileTools.uploadRepository) and changed all related properties. +* [#13279](http://dev.ckeditor.com/ticket/13279): Reviewed CSS vendor prefixes. +* [#13454](http://dev.ckeditor.com/ticket/13454): Removed unused `lang.image.alertUrl` token from the [Image](http://ckeditor.com/addon/image) plugin. + +## CKEditor 4.5 Beta + +New Features: + +* Clipboard (copy&paste, drag&drop) and file uploading features and improvements ([#11437](http://dev.ckeditor.com/ticket/11437)). + + * Major features: + * Support for dropping and pasting files into the editor was introduced. Through a set of new facades for native APIs it is now possible to easily intercept and process inserted files. + * [File upload tools](http://docs.ckeditor.com/#!/api/CKEDITOR.fileTools) were introduced in order to simplify controlling the loading, uploading and handling server response, properly handle [new upload configuration](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-uploadUrl) options, etc. + * [Upload Image](http://ckeditor.com/addon/uploadimage) widget was introduced to upload dropped images. A base class for the [upload widget](http://docs.ckeditor.com/#!/api/CKEDITOR.fileTools.uploadWidgetDefinition) was exposed, too, to make it simple to create new types of upload widgets which can handle any type of dropped file, show the upload progress and update the content when the process is done. It also handles editing and undo/redo operations when a file is being uploaded and integrates with the [notification aggregator](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.notificationAggregator) to show progress and success or error. + * All drag and drop operations were integrated with the editor. All dropped content is passed through the [`editor#paste`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-event-paste) event and a set of new editor events was introduced — [`dragstart`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-event-dragstart), [`drop`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-event-drop), [`dragend`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-event-dragend). + * The [Data Transfer](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.clipboard.dataTransfer) facade was introduced to unify access to data in various types and files. [Data Transfer](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.clipboard.dataTransfer) is now always available in the [`editor#paste`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-event-paste) event. + * Switched from the pastebin to using the native clipboard access whenever possible. This solved many issues related to pastebin such as unnecessary scrolling or data loss. Additionally, on copy and cut from the editor the clipboard data is set. Therefore, on paste the editor has access to clean data, undisturbed by the browsers. + * Drag and drop of inline and block widgets was integrated with the standard clipboard APIs. By listening to drag events you will thus be notified about widgets, too. This opens a possibility to filter pasted and dropped widgets. + * The [`editor#paste`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-event-paste) event can have the `range` parameter so it is possible to change the paste position in the listener or paste in the not selectable position. Also the [`editor.insertHtml()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-insertHtml) method now accepts `range` as an additional parameter. + * [#11621](http://dev.ckeditor.com/ticket/11621): A configurable [paste filter](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-pasteFilter) was introduced. The filter is by default turned to `'semantic-content'` on Webkit and Blink for all pasted content coming from external sources because of the low quality of HTML that these engines put into the clipboard. Internal and cross-editor paste is safe due to the change explained in the previous point. + + * Other changes and related fixes: + * [#12095](http://dev.ckeditor.com/ticket/12095): On drag and copy of widgets [the same method](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-getSelectedHtml) is used to get selected HTML as in the normal case. Thanks to that styles applied to inline widgets are not lost. + * [#11219](http://dev.ckeditor.com/ticket/11219): Fixed: Dragging a [captioned image](http://ckeditor.com/addon/image2) does not fire the [`editor#paste`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-event-paste) event. + * [#9554](http://dev.ckeditor.com/ticket/9554): [Webkit Mac] Fixed: Editor scrolls on paste. + * [#9898](http://dev.ckeditor.com/ticket/9898): [Webkit&Divarea] Fixed: Pasting causes undesirable scrolling. + * [#11993](http://dev.ckeditor.com/ticket/11993): [Chrome] Fixed: Pasting content scrolls the document. + * [#12613](http://dev.ckeditor.com/ticket/12613): Show the user that they can not drop on editor UI (toolbar, bottom bar). + * [#12851](http://dev.ckeditor.com/ticket/12851): [Blink/Webkit] Fixed: Formatting disappears when pasting content into cells. + * [#12914](http://dev.ckeditor.com/ticket/12914): Fixed: Copy/Paste of table broken in `div`-based editor. + + * Browser support.
Browser support for related features varies significantly (see http://caniuse.com/clipboard). + * File APIs needed to operate and file upload is not supported in Internet Explorer 9 and below. + * Only Chrome and Safari on Mac OS support setting custom data items in the clipboard, so currently it is possible to recognize the origin of the copied content in these browsers only. All drag and drop operations can be identified thanks to the new Data Transfer facade. + * No Internet Explorer browser supports the standard clipboard API which results in small glitches like where only plain text can be dropped from outside the editor. Thanks to the new Data Transfer facade, internal and cross-editor drag and drop supports the full range of data. + * Direct access to clipboard could only be implemented in Chrome, Safari on Mac OS, Opera and Firefox. In other browsers the pastebin must still be used. + +* [#12875](http://dev.ckeditor.com/ticket/12875): Samples and toolbar configuration tools. + * The old set of samples shipped with every CKEditor package was replaced with a shiny new single-page sample. This change concluded a long term plan which started from introducing the [CKEditor SDK](http://sdk.ckeditor.com/) and [CKEditor Functionality Overview](http://docs.ckeditor.com/#!/guide/dev_features) section in the documentation which essentially redefined the old samples. + * Toolbar configurators with live previews were introduced. They will be shipped with every CKEditor package and are meant to help in configuring toolbar layouts. + +* [#10925](http://dev.ckeditor.com/ticket/10925): The [Media Embed](http://ckeditor.com/addon/embed) and [Semantic Media Embed](http://ckeditor.com/addon/embedsemantic) plugins were introduced. Read more about the new features in the [Embedding Content](http://docs.ckeditor.com/#!/guide/dev_media_embed) article. +* [#10931](http://dev.ckeditor.com/ticket/10931): Added support for nesting widgets. It is now possible to insert one widget into another widget's nested editable. Note that unless nested editable's [allowed content](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.widget.nestedEditable.definition-property-allowedContent) is defined precisely, starting from CKEditor 4.5 some widget buttons may become enabled. This feature is not supported in IE8. Included issues: + * [#12018](http://dev.ckeditor.com/ticket/12018): Fixed and reviewed: Nested widgets garbage collection. + * [#12024](http://dev.ckeditor.com/ticket/12024): [Firefox] Fixed: Outline is extended to the left by unpositioned drag handlers. + * [#12006](http://dev.ckeditor.com/ticket/12006): Fixed: Drag and drop of nested block widgets. + * [#12008](http://dev.ckeditor.com/ticket/12008): Fixed various cases of inserting a single non-editable element using the [`editor.insertHtml()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-insertHtml) method. Fixes pasting a widget with a nested editable inside another widget's nested editable. + +* Notification system: + * [#11580](http://dev.ckeditor.com/ticket/11580): Introduced the [notification system](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.notification). + * [#12810](http://dev.ckeditor.com/ticket/12810): Introduced a [notification aggregator](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.notificationAggregator) for the [notification system](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.notification) which simplifies displaying progress of many concurrent tasks. +* [#11636](http://dev.ckeditor.com/ticket/11636): Introduced new, UX-focused, methods for getting selected HTML and deleting it — [`editor.getSelectedHtml()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-getSelectedHtml) and [`editor.deleteSelectedHtml()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-getSelectedHtml). +* [#12416](http://dev.ckeditor.com/ticket/12416): Added the [`widget.definition.upcastPriority`](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.widget.definition-property-upcastPriority) property which gives more control over widget upcasting order to the widget author. +* [#12036](http://dev.ckeditor.com/ticket/12036): Initialize the editor in [read-only](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-property-readOnly) mode when the `");return""+encodeURIComponent(a)+""})}function h(a){return a.replace(C,function(a,b){return decodeURIComponent(b)})}function u(a){return a.replace(/<\!--(?!{cke_protected})[\s\S]+?--\>/g, -function(a){return"<\!--"+D+"{C}"+encodeURIComponent(a).replace(/--/g,"%2D%2D")+"--\>"})}function w(a){return a.replace(/<\!--\{cke_protected\}\{C\}([\s\S]+?)--\>/g,function(a,b){return decodeURIComponent(b)})}function k(a,b){var c=b._.dataStore;return a.replace(/<\!--\{cke_protected\}([\s\S]+?)--\>/g,function(a,b){return decodeURIComponent(b)}).replace(/\{cke_protected_(\d+)\}/g,function(a,b){return c&&c[b]||""})}function t(a,b){for(var c=[],g=b.config.protectedSource,d=b._.dataStore||(b._.dataStore= -{id:1}),e=/<\!--\{cke_temp(comment)?\}(\d*?)--\>/g,g=[//gi,//gi].concat(g),a=a.replace(/<\!--[\s\S]*?--\>/g,function(a){return"<\!--{cke_tempcomment}"+(c.push(a)-1)+"--\>"}),h=0;h"});a=a.replace(e,function(a,b,g){return"<\!--"+D+(b?"{C}":"")+encodeURIComponent(c[g]).replace(/--/g,"%2D%2D")+ -"--\>"});return a.replace(/(['"]).*?\1/g,function(a){return a.replace(/<\!--\{cke_protected\}([\s\S]+?)--\>/g,function(a,b){d[d.id]=decodeURIComponent(b);return"{cke_protected_"+d.id++ +"}"})})}CKEDITOR.htmlDataProcessor=function(b){var d,e,f=this;this.editor=b;this.dataFilter=d=new CKEDITOR.htmlParser.filter;this.htmlFilter=e=new CKEDITOR.htmlParser.filter;this.writer=new CKEDITOR.htmlParser.basicWriter;d.addRules(s);d.addRules(a(b,"data"));e.addRules(A);e.addRules(a(b,"html"));b.on("toHtml",function(a){var a= -a.data,d=a.dataValue,d=t(d,b),d=g(d,G),d=p(d),d=g(d,I),d=d.replace(Q,"$1cke:$2"),d=d.replace(E,""),d=CKEDITOR.env.opera?d:d.replace(/(]*>)(\r\n|\n)/g,"$1$2$2"),e=a.context||b.editable().getName(),f;if(CKEDITOR.env.ie&&CKEDITOR.env.version<9&&e=="pre"){e="div";d="
"+d+"
";f=1}e=b.document.createElement(e);e.setHtml("a"+d);d=e.getHtml().substr(1);d=d.replace(RegExp(" data-cke-"+CKEDITOR.rnd+"-","ig")," ");f&&(d=d.replace(/^
|<\/pre>$/gi,""));d=d.replace(L,"$1$2");
-d=h(d);d=w(d);a.dataValue=CKEDITOR.htmlParser.fragment.fromHtml(d,a.context,a.fixForBody===false?false:c(b.config))},null,null,5);b.on("toHtml",function(a){a.data.dataValue.filterChildren(f.dataFilter,true)},null,null,10);b.on("toHtml",function(a){var a=a.data,b=a.dataValue,c=new CKEDITOR.htmlParser.basicWriter;b.writeChildrenHtml(c);b=c.getHtml(true);a.dataValue=u(b)},null,null,15);b.on("toDataFormat",function(a){a.data.dataValue=CKEDITOR.htmlParser.fragment.fromHtml(a.data.dataValue,b.editable().getName(),
-c(b.config))},null,null,5);b.on("toDataFormat",function(a){a.data.dataValue.filterChildren(f.htmlFilter,true)},null,null,10);b.on("toDataFormat",function(a){var c=a.data.dataValue,g=f.writer;g.reset();c.writeChildrenHtml(g);c=g.getHtml(true);c=w(c);c=k(c,b);a.data.dataValue=c},null,null,15)};CKEDITOR.htmlDataProcessor.prototype={toHtml:function(a,b,c,g){var d=this.editor;!b&&b!==null&&(b=d.editable().getName());return d.fire("toHtml",{dataValue:a,context:b,fixForBody:c,dontFilter:!!g}).dataValue},
-toDataFormat:function(a){return this.editor.fire("toDataFormat",{dataValue:a}).dataValue}};var F=/(?: |\xa0)$/,D="{cke_protected}",B=CKEDITOR.dtd,q=["caption","colgroup","col","thead","tfoot","tbody"],z=CKEDITOR.tools.extend({},B.$blockLimit,B.$block),s={elements:{},attributeNames:[[/^on/,"data-cke-pa-on"]]},A={elementNames:[[/^cke:/,""],[/^\?xml:namespace$/,""]],attributeNames:[[/^data-cke-(saved|pa)-/,""],[/^data-cke-.*/,""],["hidefocus",""]],elements:{$:function(a){var b=a.attributes;if(b){if(b["data-cke-temp"])return false;
-for(var c=["name","href","src"],g,d=0;d-1&&g>-1&&c!=g)){c=m(a);g=m(b)}return c>g?1:-1})},embed:function(a){var b=a.parent;if(b&&b.name=="object"){var c=b.attributes.width,b=b.attributes.height;c&&(a.attributes.width=c);b&&(a.attributes.height=
-b)}},param:function(a){a.children=[];a.isEmpty=true;return a},a:function(a){if(!a.children.length&&!a.attributes.name&&!a.attributes["data-cke-saved-name"])return false},span:function(a){a.attributes["class"]=="Apple-style-span"&&delete a.name},html:function(a){delete a.attributes.contenteditable;delete a.attributes["class"]},body:function(a){delete a.attributes.spellcheck;delete a.attributes.contenteditable},style:function(a){var b=a.children[0];b&&b.value&&(b.value=CKEDITOR.tools.trim(b.value));
-if(!a.attributes.type)a.attributes.type="text/css"},title:function(a){var b=a.children[0];!b&&l(a,b=new CKEDITOR.htmlParser.text);b.value=a.attributes["data-cke-title"]||""}},attributes:{"class":function(a){return CKEDITOR.tools.ltrim(a.replace(/(?:^|\s+)cke_[^\s]*/g,""))||false}}};if(CKEDITOR.env.ie)A.attributes.style=function(a){return a.replace(/(^|;)([^\:]+)/g,function(a){return a.toLowerCase()})};for(var v in{input:1,textarea:1}){s.elements[v]=n;A.elements[v]=r}var o=/<(a|area|img|input|source)\b([^>]*)>/gi,
-x=/\b(on\w+|href|src|name)\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|(?:[^ "'>]+))/gi,I=/(?:])[^>]*>[\s\S]*?<\/style>)|(?:<(:?link|meta|base)[^>]*>)/gi,G=/(])[^>]*>)([\s\S]*?)(?:<\/textarea>)/gi,C=/([^<]*)<\/cke:encoded>/gi,Q=/(<\/?)((?:object|embed|param|html|body|head|title)[^>]*>)/gi,L=/(<\/?)cke:((?:html|body|head|title)[^>]*>)/gi,E=/]*?)\/?>(?!\s*<\/cke:\1)/gi})();"use strict";
-CKEDITOR.htmlParser.element=function(a,c){this.name=a;this.attributes=c||{};this.children=[];var b=a||"",f=b.match(/^cke:(.*)/);f&&(b=f[1]);b=!(!CKEDITOR.dtd.$nonBodyContent[b]&&!CKEDITOR.dtd.$block[b]&&!CKEDITOR.dtd.$listItem[b]&&!CKEDITOR.dtd.$tableContent[b]&&!(CKEDITOR.dtd.$nonEditable[b]||b=="br"));this.isEmpty=!!CKEDITOR.dtd.$empty[a];this.isUnknown=!CKEDITOR.dtd[a];this._={isBlockLike:b,hasInlineStarted:this.isEmpty||!b}};
-CKEDITOR.htmlParser.cssStyle=function(a){var c={};((a instanceof CKEDITOR.htmlParser.element?a.attributes.style:a)||"").replace(/"/g,'"').replace(/\s*([^ :;]+)\s*:\s*([^;]+)\s*(?=;|$)/g,function(a,f,e){f=="font-family"&&(e=e.replace(/["']/g,""));c[f.toLowerCase()]=e});return{rules:c,populate:function(a){var c=this.toString();if(c)a instanceof CKEDITOR.dom.element?a.setAttribute("style",c):a instanceof CKEDITOR.htmlParser.element?a.attributes.style=c:a.style=c},toString:function(){var a=[],f;
-for(f in c)c[f]&&a.push(f,":",c[f],";");return a.join("")}}};
-(function(){var a=function(a,c){a=a[0];c=c[0];return ac?1:0},c=CKEDITOR.htmlParser.fragment.prototype;CKEDITOR.htmlParser.element.prototype=CKEDITOR.tools.extend(new CKEDITOR.htmlParser.node,{type:CKEDITOR.NODE_ELEMENT,add:c.add,clone:function(){return new CKEDITOR.htmlParser.element(this.name,this.attributes)},filter:function(a){var c=this,e,d;if(!c.parent)a.onRoot(c);for(;;){e=c.name;if(!(d=a.onElementName(e))){this.remove();return false}c.name=d;if(!(c=a.onElement(c))){this.remove();return false}if(c!==
-this){this.replaceWith(c);return false}if(c.name==e)break;if(c.type!=CKEDITOR.NODE_ELEMENT){this.replaceWith(c);return false}if(!c.name){this.replaceWithChildren();return false}}e=c.attributes;var j,l;for(j in e){l=j;for(d=e[j];;)if(l=a.onAttributeName(j))if(l!=j){delete e[j];j=l}else break;else{delete e[j];break}l&&((d=a.onAttribute(c,l,d))===false?delete e[l]:e[l]=d)}c.isEmpty||this.filterChildren(a);return true},filterChildren:c.filterChildren,writeHtml:function(b,c){c&&this.filter(c);var e=this.name,
-d=[],j=this.attributes,l,i;b.openTag(e,j);for(l in j)d.push([l,j[l]]);b.sortAttributes&&d.sort(a);l=0;for(i=d.length;l0)for(var c=0;c=0;b--)if(a==t[b].name){t.splice(b,1);return}for(var c=[],d=[],e=u;e!=p&&e.name!=a;){e._.isBlockLike||d.unshift(e);c.push(e);e=e.returnPoint||e.parent}if(e!=
+p){for(b=0;b0?this.children[b-1]:null;if(c){if(a._.isBlockLike&&c.type==CKEDITOR.NODE_TEXT){c.value=CKEDITOR.tools.rtrim(c.value);if(c.value.length===
+0){this.children.pop();this.add(a);return}}c.next=a}a.previous=c;a.parent=this;this.children.splice(b,0,a);if(!this._.hasInlineStarted)this._.hasInlineStarted=a.type==CKEDITOR.NODE_TEXT||a.type==CKEDITOR.NODE_ELEMENT&&!a._.isBlockLike},filter:function(a,b){b=this.getFilterContext(b);a.onRoot(b,this);this.filterChildren(a,false,b)},filterChildren:function(a,b,c){if(this.childrenFilteredBy!=a.id){c=this.getFilterContext(c);if(b&&!this.parent)a.onRoot(c,this);this.childrenFilteredBy=a.id;for(b=0;b=0&&a7||e.name in CKEDITOR.dtd.tr||e.name in CKEDITOR.dtd.$listItem))g=false;else{g=b(e);g=!g||e.name=="form"&&g.name=="input"}g&&e.add(k(a))}}}function m(a,b){if((!w||CKEDITOR.env.needsBrFiller)&&a.type==CKEDITOR.NODE_ELEMENT&&a.name=="br"&&!a.attributes["data-cke-eol"])return true;var c;if(a.type==CKEDITOR.NODE_TEXT&&(c=a.value.match(t))){if(c.index){(new CKEDITOR.htmlParser.text(a.value.substring(0,
+c.index))).insertBefore(a);a.value=c[0]}if(!CKEDITOR.env.needsBrFiller&&w&&(!b||a.parent.name in A))return true;if(!w)if((c=a.previous)&&c.name=="br"||!c||f(c))return true}return false}var r={elements:{}},w=d=="html",A=CKEDITOR.tools.extend({},l),D;for(D in A)"#"in u[D]||delete A[D];for(D in A)r.elements[D]=g(w,a.config.fillEmptyBlocks);r.root=g(w,false);r.elements.br=function(a){return function(b){if(b.parent.type!=CKEDITOR.NODE_DOCUMENT_FRAGMENT){var d=b.attributes;if("data-cke-bogus"in d||"data-cke-eol"in
+d)delete d["data-cke-bogus"];else{for(d=b.next;d&&e(d);)d=d.next;var g=c(b);!d&&f(b.parent)?h(b.parent,k(a)):f(d)&&(g&&!f(g))&&k(a).insertBefore(d)}}}}(w);return r}function d(a,b){return a!=CKEDITOR.ENTER_BR&&b!==false?a==CKEDITOR.ENTER_DIV?"div":"p":false}function b(a){for(a=a.children[a.children.length-1];a&&e(a);)a=a.previous;return a}function c(a){for(a=a.previous;a&&e(a);)a=a.previous;return a}function e(a){return a.type==CKEDITOR.NODE_TEXT&&!CKEDITOR.tools.trim(a.value)||a.type==CKEDITOR.NODE_ELEMENT&&
+a.attributes["data-cke-bookmark"]}function f(a){return a&&(a.type==CKEDITOR.NODE_ELEMENT&&a.name in l||a.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT)}function h(a,b){var c=a.children[a.children.length-1];a.children.push(b);b.parent=a;if(c){c.next=b;b.previous=c}}function i(a){a=a.attributes;a.contenteditable!="false"&&(a["data-cke-editable"]=a.contenteditable?"true":1);a.contenteditable="false"}function j(a){a=a.attributes;switch(a["data-cke-editable"]){case "true":a.contenteditable="true";break;case "1":delete a.contenteditable}}
+function n(a){return a.replace(w,function(a,b,c){return"<"+b+c.replace(H,function(a,b){return A.test(b)&&c.indexOf("data-cke-saved-"+b)==-1?" data-cke-saved-"+a+" data-cke-"+CKEDITOR.rnd+"-"+a:a})+">"})}function g(a,b){return a.replace(b,function(a,b,c){a.indexOf("/g,">")+"");return""+encodeURIComponent(a)+""})}function B(a){return a.replace(r,function(a,b){return decodeURIComponent(b)})}function s(a){return a.replace(/<\!--(?!{cke_protected})[\s\S]+?--\>/g,
+function(a){return"<\!--"+x+"{C}"+encodeURIComponent(a).replace(/--/g,"%2D%2D")+"--\>"})}function z(a){return a.replace(/<\!--\{cke_protected\}\{C\}([\s\S]+?)--\>/g,function(a,b){return decodeURIComponent(b)})}function o(a,b){var c=b._.dataStore;return a.replace(/<\!--\{cke_protected\}([\s\S]+?)--\>/g,function(a,b){return decodeURIComponent(b)}).replace(/\{cke_protected_(\d+)\}/g,function(a,b){return c&&c[b]||""})}function p(a,b){for(var c=[],d=b.config.protectedSource,k=b._.dataStore||(b._.dataStore=
+{id:1}),e=/<\!--\{cke_temp(comment)?\}(\d*?)--\>/g,d=[/|$)/gi,//gi,//gi].concat(d),a=a.replace(/<\!--[\s\S]*?--\>/g,function(a){return"<\!--{cke_tempcomment}"+(c.push(a)-1)+"--\>"}),f=0;f"});a=a.replace(e,function(a,b,d){return"<\!--"+x+(b?"{C}":"")+encodeURIComponent(c[d]).replace(/--/g,
+"%2D%2D")+"--\>"});a=a.replace(/<\w+(?:\s+(?:(?:[^\s=>]+\s*=\s*(?:[^'"\s>]+|'[^']*'|"[^"]*"))|[^\s=\/>]+))+\s*\/?>/g,function(a){return a.replace(/<\!--\{cke_protected\}([^>]*)--\>/g,function(a,b){k[k.id]=decodeURIComponent(b);return"{cke_protected_"+k.id++ +"}"})});return a=a.replace(/<(title|iframe|textarea)([^>]*)>([\s\S]*?)<\/\1>/g,function(a,c,d,k){return"<"+c+d+">"+o(z(k),b)+""})}CKEDITOR.htmlDataProcessor=function(b){var c,e,f=this;this.editor=b;this.dataFilter=c=new CKEDITOR.htmlParser.filter;
+this.htmlFilter=e=new CKEDITOR.htmlParser.filter;this.writer=new CKEDITOR.htmlParser.basicWriter;c.addRules(q);c.addRules(k,{applyToAll:true});c.addRules(a(b,"data"),{applyToAll:true});e.addRules(m);e.addRules(F,{applyToAll:true});e.addRules(a(b,"html"),{applyToAll:true});b.on("toHtml",function(a){var a=a.data,c=a.dataValue,k,c=p(c,b),c=g(c,E),c=n(c),c=g(c,K),c=c.replace(J,"$1cke:$2"),c=c.replace(y,""),c=c.replace(/(]*>)(\r\n|\n)/g,"$1$2$2"),c=c.replace(/([^a-z0-9<\-])(on\w{3,})(?!>)/gi,
+"$1data-cke-"+CKEDITOR.rnd+"-$2");k=a.context||b.editable().getName();var e;if(CKEDITOR.env.ie&&CKEDITOR.env.version<9&&k=="pre"){k="div";c="
"+c+"
";e=1}k=b.document.createElement(k);k.setHtml("a"+c);c=k.getHtml().substr(1);c=c.replace(RegExp("data-cke-"+CKEDITOR.rnd+"-","ig"),"");e&&(c=c.replace(/^
|<\/pre>$/gi,""));c=c.replace(D,"$1$2");c=B(c);c=z(c);k=a.fixForBody===false?false:d(a.enterMode,b.config.autoParagraph);c=CKEDITOR.htmlParser.fragment.fromHtml(c,a.context,k);if(k){e=c;
+if(!e.children.length&&CKEDITOR.dtd[e.name][k]){k=new CKEDITOR.htmlParser.element(k);e.add(k)}}a.dataValue=c},null,null,5);b.on("toHtml",function(a){a.data.filter.applyTo(a.data.dataValue,true,a.data.dontFilter,a.data.enterMode)&&b.fire("dataFiltered")},null,null,6);b.on("toHtml",function(a){a.data.dataValue.filterChildren(f.dataFilter,true)},null,null,10);b.on("toHtml",function(a){var a=a.data,b=a.dataValue,c=new CKEDITOR.htmlParser.basicWriter;b.writeChildrenHtml(c);b=c.getHtml(true);a.dataValue=
+s(b)},null,null,15);b.on("toDataFormat",function(a){var c=a.data.dataValue;a.data.enterMode!=CKEDITOR.ENTER_BR&&(c=c.replace(/^
/i,""));a.data.dataValue=CKEDITOR.htmlParser.fragment.fromHtml(c,a.data.context,d(a.data.enterMode,b.config.autoParagraph))},null,null,5);b.on("toDataFormat",function(a){a.data.dataValue.filterChildren(f.htmlFilter,true)},null,null,10);b.on("toDataFormat",function(a){a.data.filter.applyTo(a.data.dataValue,false,true)},null,null,11);b.on("toDataFormat",function(a){var c= +a.data.dataValue,d=f.writer;d.reset();c.writeChildrenHtml(d);c=d.getHtml(true);c=z(c);c=o(c,b);a.data.dataValue=c},null,null,15)};CKEDITOR.htmlDataProcessor.prototype={toHtml:function(a,b,c,d){var k=this.editor,e,f,g,m;if(b&&typeof b=="object"){e=b.context;c=b.fixForBody;d=b.dontFilter;f=b.filter;g=b.enterMode;m=b.protectedWhitespaces}else e=b;!e&&e!==null&&(e=k.editable().getName());return k.fire("toHtml",{dataValue:a,context:e,fixForBody:c,dontFilter:d,filter:f||k.filter,enterMode:g||k.enterMode, +protectedWhitespaces:m}).dataValue},toDataFormat:function(a,b){var c,d,k;if(b){c=b.context;d=b.filter;k=b.enterMode}!c&&c!==null&&(c=this.editor.editable().getName());return this.editor.fire("toDataFormat",{dataValue:a,filter:d||this.editor.filter,context:c,enterMode:k||this.editor.enterMode}).dataValue}};var t=/(?: |\xa0)$/,x="{cke_protected}",u=CKEDITOR.dtd,C=["caption","colgroup","col","thead","tfoot","tbody"],l=CKEDITOR.tools.extend({},u.$blockLimit,u.$block),q={elements:{input:i,textarea:i}}, +k={attributeNames:[[/^on/,"data-cke-pa-on"],[/^data-cke-expando$/,""]]},m={elements:{embed:function(a){var b=a.parent;if(b&&b.name=="object"){var c=b.attributes.width,b=b.attributes.height;if(c)a.attributes.width=c;if(b)a.attributes.height=b}},a:function(a){if(!a.children.length&&!a.attributes.name&&!a.attributes["data-cke-saved-name"])return false}}},F={elementNames:[[/^cke:/,""],[/^\?xml:namespace$/,""]],attributeNames:[[/^data-cke-(saved|pa)-/,""],[/^data-cke-.*/,""],["hidefocus",""]],elements:{$:function(a){var b= +a.attributes;if(b){if(b["data-cke-temp"])return false;for(var c=["name","href","src"],d,k=0;k-1&&d>-1&&c!=d)){c=a.parent?a.getIndex():-1;d=b.parent?b.getIndex():-1}return c>d?1:-1})},param:function(a){a.children=[];a.isEmpty=true;return a}, +span:function(a){a.attributes["class"]=="Apple-style-span"&&delete a.name},html:function(a){delete a.attributes.contenteditable;delete a.attributes["class"]},body:function(a){delete a.attributes.spellcheck;delete a.attributes.contenteditable},style:function(a){var b=a.children[0];if(b&&b.value)b.value=CKEDITOR.tools.trim(b.value);if(!a.attributes.type)a.attributes.type="text/css"},title:function(a){var b=a.children[0];!b&&h(a,b=new CKEDITOR.htmlParser.text);b.value=a.attributes["data-cke-title"]|| +""},input:j,textarea:j},attributes:{"class":function(a){return CKEDITOR.tools.ltrim(a.replace(/(?:^|\s+)cke_[^\s]*/g,""))||false}}};if(CKEDITOR.env.ie)F.attributes.style=function(a){return a.replace(/(^|;)([^\:]+)/g,function(a){return a.toLowerCase()})};var w=/<(a|area|img|input|source)\b([^>]*)>/gi,H=/([\w-:]+)\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|(?:[^ "'>]+))/gi,A=/^(href|src|name)$/i,K=/(?:])[^>]*>[\s\S]*?<\/style>)|(?:<(:?link|meta|base)[^>]*>)/gi,E=/(])[^>]*>)([\s\S]*?)(?:<\/textarea>)/gi, +r=/([^<]*)<\/cke:encoded>/gi,J=/(<\/?)((?:object|embed|param|html|body|head|title)[^>]*>)/gi,D=/(<\/?)cke:((?:html|body|head|title)[^>]*>)/gi,y=/]*?)\/?>(?!\s*<\/cke:\1)/gi})();"use strict"; +CKEDITOR.htmlParser.element=function(a,d){this.name=a;this.attributes=d||{};this.children=[];var b=a||"",c=b.match(/^cke:(.*)/);c&&(b=c[1]);b=!(!CKEDITOR.dtd.$nonBodyContent[b]&&!CKEDITOR.dtd.$block[b]&&!CKEDITOR.dtd.$listItem[b]&&!CKEDITOR.dtd.$tableContent[b]&&!(CKEDITOR.dtd.$nonEditable[b]||b=="br"));this.isEmpty=!!CKEDITOR.dtd.$empty[a];this.isUnknown=!CKEDITOR.dtd[a];this._={isBlockLike:b,hasInlineStarted:this.isEmpty||!b}}; +CKEDITOR.htmlParser.cssStyle=function(a){var d={};((a instanceof CKEDITOR.htmlParser.element?a.attributes.style:a)||"").replace(/"/g,'"').replace(/\s*([^ :;]+)\s*:\s*([^;]+)\s*(?=;|$)/g,function(a,c,e){c=="font-family"&&(e=e.replace(/["']/g,""));d[c.toLowerCase()]=e});return{rules:d,populate:function(a){var c=this.toString();if(c)a instanceof CKEDITOR.dom.element?a.setAttribute("style",c):a instanceof CKEDITOR.htmlParser.element?a.attributes.style=c:a.style=c},toString:function(){var a=[],c; +for(c in d)d[c]&&a.push(c,":",d[c],";");return a.join("")}}}; +(function(){function a(a){return function(b){return b.type==CKEDITOR.NODE_ELEMENT&&(typeof a=="string"?b.name==a:b.name in a)}}var d=function(a,b){a=a[0];b=b[0];return ab?1:0},b=CKEDITOR.htmlParser.fragment.prototype;CKEDITOR.htmlParser.element.prototype=CKEDITOR.tools.extend(new CKEDITOR.htmlParser.node,{type:CKEDITOR.NODE_ELEMENT,add:b.add,clone:function(){return new CKEDITOR.htmlParser.element(this.name,this.attributes)},filter:function(a,b){var d=this,h,i,b=d.getFilterContext(b);if(b.off)return true; +if(!d.parent)a.onRoot(b,d);for(;;){h=d.name;if(!(i=a.onElementName(b,h))){this.remove();return false}d.name=i;if(!(d=a.onElement(b,d))){this.remove();return false}if(d!==this){this.replaceWith(d);return false}if(d.name==h)break;if(d.type!=CKEDITOR.NODE_ELEMENT){this.replaceWith(d);return false}if(!d.name){this.replaceWithChildren();return false}}h=d.attributes;var j,n;for(j in h){n=j;for(i=h[j];;)if(n=a.onAttributeName(b,j))if(n!=j){delete h[j];j=n}else break;else{delete h[j];break}n&&((i=a.onAttribute(b, +d,n,i))===false?delete h[n]:h[n]=i)}d.isEmpty||this.filterChildren(a,false,b);return true},filterChildren:b.filterChildren,writeHtml:function(a,b){b&&this.filter(b);var f=this.name,h=[],i=this.attributes,j,n;a.openTag(f,i);for(j in i)h.push([j,i[j]]);a.sortAttributes&&h.sort(d);j=0;for(n=h.length;j0)this.children[a-1].next=null;this.parent.add(d,this.getIndex()+1);return d},addClass:function(a){if(!this.hasClass(a)){var b=this.attributes["class"]||"";this.attributes["class"]=b+(b?" ":"")+ +a}},removeClass:function(a){var b=this.attributes["class"];if(b)(b=CKEDITOR.tools.trim(b.replace(RegExp("(?:\\s+|^)"+a+"(?:\\s+|$)")," ")))?this.attributes["class"]=b:delete this.attributes["class"]},hasClass:function(a){var b=this.attributes["class"];return!b?false:RegExp("(?:^|\\s)"+a+"(?=\\s|$)").test(b)},getFilterContext:function(a){var b=[];a||(a={off:false,nonEditable:false,nestedEditable:false});!a.off&&this.attributes["data-cke-processor"]=="off"&&b.push("off",true);!a.nonEditable&&this.attributes.contenteditable== +"false"?b.push("nonEditable",true):a.nonEditable&&(!a.nestedEditable&&this.attributes.contenteditable=="true")&&b.push("nestedEditable",true);if(b.length)for(var a=CKEDITOR.tools.copy(a),d=0;d{voiceLabel}<{outerEl} class="cke_inner cke_reset" role="presentation">{topHtml}<{outerEl} id="{contentId}" class="cke_contents cke_reset" role="presentation">{bottomHtml}'));b=CKEDITOR.dom.element.createFromHtml(e.output({id:a.id,name:b,langDir:a.lang.dir,langCode:a.langCode,voiceLabel:a.lang.editor, -topHtml:m?''+m+"":"",contentId:a.ui.spaceId("contents"),bottomHtml:n?''+n+"":"",outerEl:CKEDITOR.env.ie?"span":"div"}));if(f==CKEDITOR.ELEMENT_MODE_REPLACE){c.hide();b.insertAfter(c)}else c.append(b);a.container=b;m&&a.ui.space("top").unselectable();n&&a.ui.space("bottom").unselectable();c= -a.config.width;f=a.config.height;c&&b.setStyle("width",CKEDITOR.tools.cssLength(c));f&&a.ui.space("contents").setStyle("height",CKEDITOR.tools.cssLength(f));b.disableContextMenu();CKEDITOR.env.webkit&&b.on("focus",function(){a.focus()});a.fireOnce("uiReady")}function f(a){var b=a.element;if(a.elementMode==CKEDITOR.ELEMENT_MODE_REPLACE&&b.is("textarea")){var c=b.$.form&&new CKEDITOR.dom.element(b.$.form);if(c){var e=function(){a.updateElement()};c.on("submit",e);if(!c.$.submit.nodeName&&!c.$.submit.length)c.$.submit= -CKEDITOR.tools.override(c.$.submit,function(b){return function(){a.updateElement();b.apply?b.apply(this,arguments):b()}});a.on("destroy",function(){c.removeListener("submit",e)})}}}CKEDITOR.replace=function(b,c){return a(b,c,null,CKEDITOR.ELEMENT_MODE_REPLACE)};CKEDITOR.appendTo=function(b,c,e){return a(b,c,e,CKEDITOR.ELEMENT_MODE_APPENDTO)};CKEDITOR.replaceAll=function(){for(var a=document.getElementsByTagName("textarea"),b=0;b",k="",a=i+a.replace(f,function(){return k+i})+k}a=a.replace(/\n/g,"
");b||(a=a.replace(RegExp("
(?=)"),function(a){return e.repeat(a,2)}));a=a.replace(/^ | $/g," ");a=a.replace(/(>|\s) /g,function(a,b){return b+" "}).replace(/ (?=<)/g," ");n(this,"text",a)},insertElement:function(a){d(this);for(var c=this.editor,g=c.config.enterMode, -e=c.getSelection(),f=e.getRanges(),i=a.getName(),k=CKEDITOR.dtd.$block[i],m,n,l,B=f.length-1;B>=0;B--){m=f[B];if(!m.checkReadOnly()){m.deleteContents(1);n=!B&&a||a.clone(1);var q,z;if(k)for(;(q=m.getCommonAncestor(0,1))&&(z=CKEDITOR.dtd[q.getName()])&&(!z||!z[i]);)if(q.getName()in CKEDITOR.dtd.span)m.splitElement(q);else if(m.checkStartOfBlock()&&m.checkEndOfBlock()){m.setStartBefore(q);m.collapse(true);q.remove()}else m.splitBlock(g==CKEDITOR.ENTER_DIV?"div":"p",c.editable());m.insertNode(n);l|| -(l=n)}}if(l){m.moveToPosition(l,CKEDITOR.POSITION_AFTER_END);if(k)if((a=l.getNext(b))&&a.type==CKEDITOR.NODE_ELEMENT&&a.is(CKEDITOR.dtd.$block))a.getDtd()["#"]?m.moveToElementEditStart(a):m.moveToElementEditEnd(l);else if(!a&&g!=CKEDITOR.ENTER_BR){a=m.fixBlock(true,g==CKEDITOR.ENTER_DIV?"div":"p");m.moveToElementEditStart(a)}}e.selectRanges([m]);j(this,CKEDITOR.env.opera)},setData:function(a,b){!b&&this.editor.dataProcessor&&(a=this.editor.dataProcessor.toHtml(a));this.setHtml(a);this.editor.fire("dataReady")}, -getData:function(a){var b=this.getHtml();!a&&this.editor.dataProcessor&&(b=this.editor.dataProcessor.toDataFormat(b));return b},setReadOnly:function(a){this.setAttribute("contenteditable",!a)},detach:function(){this.removeClass("cke_editable");var a=this.editor;this._.detach();delete a.document;delete a.window},isInline:function(){return this.getDocument().equals(CKEDITOR.document)},setup:function(){var a=this.editor;this.attachListener(a,"beforeGetData",function(){var b=this.getData();this.is("textarea")|| -a.config.ignoreEmptyParagraph!==false&&(b=b.replace(l,function(a,b){return b}));a.setData(b,null,1)},this);this.attachListener(a,"getSnapshot",function(a){a.data=this.getData(1)},this);this.attachListener(a,"afterSetData",function(){this.setData(a.getData(1))},this);this.attachListener(a,"loadSnapshot",function(a){this.setData(a.data,1)},this);this.attachListener(a,"beforeFocus",function(){var b=a.getSelection();(b=b&&b.getNative())&&b.type=="Control"||this.focus()},this);this.attachListener(a,"insertHtml", -function(a){this.insertHtml(a.data.dataValue,a.data.mode)},this);this.attachListener(a,"insertElement",function(a){this.insertElement(a.data)},this);this.attachListener(a,"insertText",function(a){this.insertText(a.data)},this);this.setReadOnly(a.readOnly);this.attachClass("cke_editable");this.attachClass(a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?"cke_editable_inline":a.elementMode==CKEDITOR.ELEMENT_MODE_REPLACE||a.elementMode==CKEDITOR.ELEMENT_MODE_APPENDTO?"cke_editable_themed":"");this.attachClass("cke_contents_"+ -a.config.contentsLangDirection);a.keystrokeHandler.blockedKeystrokes[8]=a.readOnly;a.keystrokeHandler.attach(this);this.on("blur",function(a){CKEDITOR.env.opera&&CKEDITOR.document.getActive().equals(this.isInline()?this:this.getWindow().getFrame())?a.cancel():this.hasFocus=false},null,null,-1);this.on("focus",function(){this.hasFocus=true},null,null,-1);a.focusManager.add(this);if(this.equals(CKEDITOR.document.getActive())){this.hasFocus=true;a.once("contentDom",function(){a.focusManager.focus()})}this.isInline()&& -this.changeAttr("tabindex",a.tabIndex);if(!this.is("textarea")){a.document=this.getDocument();a.window=this.getWindow();var b=a.document;this.changeAttr("spellcheck",!a.config.disableNativeSpellChecker);var g=a.config.contentsLangDirection;this.getDirection(1)!=g&&this.changeAttr("dir",g);var d=CKEDITOR.getCss();if(d){g=b.getHead();if(!g.getCustomData("stylesheet")){d=b.appendStyleText(d);d=new CKEDITOR.dom.element(d.ownerNode||d.owningElement);g.setCustomData("stylesheet",d);d.data("cke-temp",1)}}g= -b.getCustomData("stylesheet_ref")||0;b.setCustomData("stylesheet_ref",g+1);this.setCustomData("cke_includeReadonly",!a.config.disableReadonlyStyling);this.attachListener(this,"click",function(a){var a=a.data,b=a.getTarget();b.is("a")&&(a.$.button!=2&&b.isReadOnly())&&a.preventDefault()});this.attachListener(a,"key",function(b){if(a.readOnly)return true;var c=b.data.keyCode,g;if(c in{8:1,46:1}){var d=a.getSelection(),b=d.getRanges()[0],h=b.startPath(),f,p,j,c=c==8;if(d=e(d)){a.fire("saveSnapshot"); -b.moveToPosition(d,CKEDITOR.POSITION_BEFORE_START);d.remove();b.select();a.fire("saveSnapshot");g=1}else if(b.collapsed)if((f=h.block)&&b[c?"checkStartOfBlock":"checkEndOfBlock"]()&&(j=f[c?"getPrevious":"getNext"](i))&&j.is("table")){a.fire("saveSnapshot");b[c?"checkEndOfBlock":"checkStartOfBlock"]()&&f.remove();b["moveToElementEdit"+(c?"End":"Start")](j);b.select();a.fire("saveSnapshot");g=1}else if(h.blockLimit&&h.blockLimit.is("td")&&(p=h.blockLimit.getAscendant("table"))&&b.checkBoundaryOfElement(p, -c?CKEDITOR.START:CKEDITOR.END)&&(j=p[c?"getPrevious":"getNext"](i))){a.fire("saveSnapshot");b["moveToElementEdit"+(c?"End":"Start")](j);b.checkStartOfBlock()&&b.checkEndOfBlock()?j.remove():b.select();a.fire("saveSnapshot");g=1}else if((p=h.contains(["td","th","caption"]))&&b.checkBoundaryOfElement(p,c?CKEDITOR.START:CKEDITOR.END))g=1}return!g});CKEDITOR.env.ie&&this.attachListener(this,"click",c);!CKEDITOR.env.ie&&!CKEDITOR.env.opera&&this.attachListener(this,"mousedown",function(b){var c=b.data.getTarget(); -if(c.is("img","hr","input","textarea","select")){a.getSelection().selectElement(c);c.is("input","textarea","select")&&b.data.preventDefault()}});CKEDITOR.env.gecko&&this.attachListener(this,"mouseup",function(b){if(b.data.$.button==2){b=b.data.getTarget();if(!b.getOuterHtml().replace(l,"")){var c=a.createRange();c.moveToElementEditStart(b);c.select(true)}}});if(CKEDITOR.env.webkit){this.attachListener(this,"click",function(a){a.data.getTarget().is("input","select")&&a.data.preventDefault()});this.attachListener(this, -"mouseup",function(a){a.data.getTarget().is("input","textarea")&&a.data.preventDefault()})}}}},_:{detach:function(){this.editor.setData(this.editor.getData(),0,1);this.clearListeners();this.restoreAttrs();var a;if(a=this.removeCustomData("classes"))for(;a.length;)this.removeClass(a.pop());a=this.getDocument();var b=a.getHead();if(b.getCustomData("stylesheet")){var c=a.getCustomData("stylesheet_ref");if(--c)a.setCustomData("stylesheet_ref",c);else{a.removeCustomData("stylesheet_ref");b.removeCustomData("stylesheet").remove()}}delete this.editor}}}); -CKEDITOR.editor.prototype.editable=function(a){var b=this._.editable;if(b&&a)return 0;if(arguments.length)b=this._.editable=a?a instanceof CKEDITOR.editable?a:new CKEDITOR.editable(this,a):(b&&b.detach(),null);return b};var l=/(^|]*>)\s*<(p|div|address|h\d|center|pre)[^>]*>\s*(?:]*>| |\u00A0| )?\s*(:?<\/\2>)?\s*(?=$|<\/body>)/gi,i=CKEDITOR.dom.walker.whitespaces(true),m=CKEDITOR.dom.walker.bookmark(false,true);CKEDITOR.on("instanceLoaded",function(b){var c=b.editor;c.on("insertElement", -function(a){a=a.data;if(a.type==CKEDITOR.NODE_ELEMENT&&(a.is("input")||a.is("textarea"))){a.getAttribute("contentEditable")!="false"&&a.data("cke-editable",a.hasAttribute("contenteditable")?"true":"1");a.setAttribute("contentEditable",false)}});c.on("selectionChange",function(b){if(!c.readOnly){var d=c.getSelection();if(d&&!d.isLocked){d=c.checkDirty();c.fire("lockSnapshot");a(b);c.fire("unlockSnapshot");!d&&c.resetDirty()}}})});CKEDITOR.on("instanceCreated",function(a){var b=a.editor;b.on("mode", -function(){var a=b.editable();if(a&&a.isInline()){var c=this.lang.editor+", "+this.name;a.changeAttr("role","textbox");a.changeAttr("aria-label",c);a.changeAttr("title",c);if(c=this.ui.space(this.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?"top":"contents")){var d=CKEDITOR.tools.getNextId(),e=CKEDITOR.dom.element.createFromHtml(''+this.lang.common.editorHelp+"");c.append(e);a.changeAttr("aria-describedby",d)}}})});CKEDITOR.addCss(".cke_editable{cursor:text}.cke_editable img,.cke_editable input,.cke_editable textarea{cursor:default}"); -var n=function(){function a(b){return b.type==CKEDITOR.NODE_ELEMENT}function c(b,d){var g,e,h,f,o=[],i=d.range.startContainer;g=d.range.startPath();for(var i=k[i.getName()],j=0,m=b.getChildren(),n=m.count(),l=-1,u=-1,t=0,w=g.contains(k.$list);j-1)o[l].firstNotAllowed=1;if(u>-1)o[u].lastNotAllowed=1;return o}function d(b,c){var e=[],h=b.getChildren(),f=h.count(),i,o=0,j=k[c],p=!b.is(k.$inline)||b.is("br");for(p&&e.push(" ");o ",s.document);s.insertNode(x);s.setStartAfter(x)}I=new CKEDITOR.dom.elementPath(s.startContainer);q.endPath=G=new CKEDITOR.dom.elementPath(s.endContainer);if(!s.collapsed){var o=G.block||G.blockLimit,Q=s.getCommonAncestor(); -o&&(!o.equals(Q)&&!o.contains(Q)&&s.checkEndOfBlock())&&q.zombies.push(o);s.deleteContents()}for(;(C=a(s.startContainer)&&s.startContainer.getChild(s.startOffset-1))&&a(C)&&C.isBlockBoundary()&&I.contains(C);)s.moveToPosition(C,CKEDITOR.POSITION_BEFORE_END);f(s,q.blockLimit,I,G);if(x){s.setEndBefore(x);s.collapse();x.remove()}x=s.startPath();if(o=x.contains(e,false,1)){s.splitElement(o);q.inlineStylesRoot=o;q.inlineStylesPeak=x.lastElement}x=s.createBookmark();(o=x.startNode.getPrevious(b))&&a(o)&& -e(o)&&v.push(o);(o=x.startNode.getNext(b))&&a(o)&&e(o)&&v.push(o);for(o=x.startNode;(o=o.getParent())&&e(o);)v.push(o);s.moveToBookmark(x);if(t){C=t;t=q.range;if(q.type=="text"&&q.inlineStylesRoot){x=C;C=q.inlineStylesPeak;s=C.getDocument().createText("{cke-peak}");for(v=q.inlineStylesRoot.getParent();!C.equals(v);){s=s.appendTo(C.clone());C=C.getParent()}C=s.getOuterHtml().replace("{cke-peak}",x)}x=q.blockLimit.getName();if(/^\s+|\s+$/.test(C)&&"span"in CKEDITOR.dtd[x]){var L=' '; -C=L+C+L}C=q.editor.dataProcessor.toHtml(C,null,false,q.dontFilter);x=t.document.createElement("body");x.setHtml(C);if(L){x.getFirst().remove();x.getLast().remove()}if((L=t.startPath().block)&&!(L.getChildCount()==1&&L.getBogus()))a:{var E;if(x.getChildCount()==1&&a(E=x.getFirst())&&E.is(l)){L=E.getElementsByTag("*");t=0;for(s=L.count();t0;else{y=E.startPath();if(!G.isBlock&&(N=q.editor.config.enterMode!=CKEDITOR.ENTER_BR&&q.editor.config.autoParagraph!==false?q.editor.config.enterMode==CKEDITOR.ENTER_DIV?"div":"p":false)&&!y.block&&y.blockLimit&&y.blockLimit.equals(E.root)){N=L.createElement(N);!CKEDITOR.env.ie&&N.appendBogus();E.insertNode(N);!CKEDITOR.env.ie&&(J=N.getBogus())&&J.remove();E.moveToPosition(N,CKEDITOR.POSITION_BEFORE_END)}if((y= -E.startPath().block)&&!y.equals(H)){if(J=y.getBogus()){J.remove();C.push(y)}H=y}G.firstNotAllowed&&(s=1);if(s&&G.isElement){y=E.startContainer;for(K=null;y&&!k[y.getName()][G.name];){if(y.equals(t)){y=null;break}K=y;y=y.getParent()}if(y){if(K){O=E.splitElement(K);q.zombies.push(O);q.zombies.push(K)}}else{K=t.getName();P=!x;y=x==I.length-1;K=d(G.node,K);for(var M=[],R=K.length,T=0,U=void 0,V=0,W=-1;T1&&f&&f.intersectsNode(c.$)){d=[e.anchorOffset,e.focusOffset];f=e.focusNode==c.$&&e.focusOffset>0;e.anchorNode==c.$&&e.anchorOffset>0&&d[0]--;f&&d[1]--;var i;f=e;if(!f.isCollapsed){i=f.getRangeAt(0);i.setStart(f.anchorNode,f.anchorOffset);i.setEnd(f.focusNode,f.focusOffset);i=i.collapsed}i&&d.unshift(d.pop())}}c.setText(j(c.getText()));if(d){c=e.getRangeAt(0);c.setStart(c.startContainer,d[0]);c.setEnd(c.startContainer,d[1]);e.removeAllRanges();e.addRange(c)}}}function j(a){return a.replace(/\u200B( )?/g, -function(a){return a[1]?" ":""})}var l,i,m=CKEDITOR.dom.walker.invisible(1);CKEDITOR.on("instanceCreated",function(b){function g(){var a=e.getSelection();a&&a.removeAllRanges()}var e=b.editor;e.define("selectionChange",{errorProof:1});e.on("contentDom",function(){var b=e.document,g=CKEDITOR.document,f=e.editable(),i=b.getBody(),j=b.getDocumentElement(),p=f.isInline(),m;CKEDITOR.env.gecko&&f.attachListener(f,"focus",function(a){a.removeListener();if(m!==0){a=e.getSelection().getNative();if(a.isCollapsed&& -a.anchorNode==f.$){a=e.createRange();a.moveToElementEditStart(f);a.select()}}},null,null,-2);f.attachListener(f,"focus",function(){e.unlockSelection(m);m=0},null,null,-1);f.attachListener(f,"mousedown",function(){m=0});if(CKEDITOR.env.ie||CKEDITOR.env.opera||p){var l,r=function(){l=e.getSelection(1);l.lock()};n?f.attachListener(f,"beforedeactivate",r,null,null,-1):f.attachListener(e,"selectionCheck",r,null,null,-1);f.attachListener(f,"blur",function(){e.lockSelection(l);m=1},null,null,-1)}if(CKEDITOR.env.ie&& -!p){var s;f.attachListener(f,"mousedown",function(a){a.data.$.button==2&&e.document.$.selection.type=="None"&&(s=e.window.getScrollPosition())});f.attachListener(f,"mouseup",function(a){if(a.data.$.button==2&&s){e.document.$.documentElement.scrollLeft=s.x;e.document.$.documentElement.scrollTop=s.y}s=null});if(b.$.compatMode!="BackCompat"){if(CKEDITOR.env.ie7Compat||CKEDITOR.env.ie6Compat)j.on("mousedown",function(a){function b(a){a=a.data.$;if(d){var c=i.$.createTextRange();try{c.moveToPoint(a.x, -a.y)}catch(e){}d.setEndPoint(f.compareEndPoints("StartToStart",c)<0?"EndToEnd":"StartToStart",c);d.select()}}function c(){j.removeListener("mousemove",b);g.removeListener("mouseup",c);j.removeListener("mouseup",c);d.select()}a=a.data;if(a.getTarget().is("html")&&a.$.y7){j.on("mousedown", -function(a){if(a.data.getTarget().is("html")){g.on("mouseup",A);j.on("mouseup",A)}});var A=function(){g.removeListener("mouseup",A);j.removeListener("mouseup",A);var a=CKEDITOR.document.$.selection,c=a.createRange();a.type!="None"&&c.parentElement().ownerDocument==b.$&&c.select()}}}}f.attachListener(f,"selectionchange",a,e);f.attachListener(f,"keyup",c,e);f.attachListener(f,"focus",function(){e.forceNextSelectionCheck();e.selectionChange(1)});if(p?CKEDITOR.env.webkit||CKEDITOR.env.gecko:CKEDITOR.env.opera){var v; -f.attachListener(f,"mousedown",function(){v=1});f.attachListener(b.getDocumentElement(),"mouseup",function(){v&&c.call(e);v=0})}else f.attachListener(CKEDITOR.env.ie?f:b.getDocumentElement(),"mouseup",c,e);CKEDITOR.env.webkit&&f.attachListener(b,"keydown",function(a){switch(a.data.getKey()){case 13:case 33:case 34:case 35:case 36:case 37:case 39:case 8:case 45:case 46:d(f)}},null,null,-1)});e.on("contentDomUnload",e.forceNextSelectionCheck,e);e.on("dataReady",function(){e.selectionChange(1)});CKEDITOR.env.ie9Compat&& -e.on("beforeDestroy",g,null,null,9);CKEDITOR.env.webkit&&e.on("setData",g);e.on("contentDomUnload",function(){e.unlockSelection()})});CKEDITOR.on("instanceReady",function(a){var b=a.editor;if(CKEDITOR.env.webkit){b.on("selectionChange",function(){var a=b.editable(),c=e(a);c&&(c.getCustomData("ready")?d(a):c.setCustomData("ready",1))},null,null,-1);b.on("beforeSetMode",function(){d(b.editable())},null,null,-1);var c,f,a=function(){var a=b.editable();if(a)if(a=e(a)){var d=b.document.$.defaultView.getSelection(); -d.type=="Caret"&&d.anchorNode==a.$&&(f=1);c=a.getText();a.setText(j(c))}},i=function(){var a=b.editable();if(a)if(a=e(a)){a.setText(c);if(f){b.document.$.defaultView.getSelection().setPosition(a.$,a.getLength());f=0}}};b.on("beforeUndoImage",a);b.on("afterUndoImage",i);b.on("beforeGetData",a,null,null,0);b.on("getData",i)}});CKEDITOR.editor.prototype.selectionChange=function(b){(b?a:c).call(this)};CKEDITOR.editor.prototype.getSelection=function(a){if(this._.savedSelection&&!a)return this._.savedSelection; -return(a=this.editable())?new CKEDITOR.dom.selection(a):null};CKEDITOR.editor.prototype.lockSelection=function(a){a=a||this.getSelection(1);if(a.getType()!=CKEDITOR.SELECTION_NONE){!a.isLocked&&a.lock();this._.savedSelection=a;return true}return false};CKEDITOR.editor.prototype.unlockSelection=function(a){var b=this._.savedSelection;if(b){b.unlock(a);delete this._.savedSelection;return true}return false};CKEDITOR.editor.prototype.forceNextSelectionCheck=function(){delete this._.selectionPreviousPath}; -CKEDITOR.dom.document.prototype.getSelection=function(){return new CKEDITOR.dom.selection(this)};CKEDITOR.dom.range.prototype.select=function(){var a=this.root instanceof CKEDITOR.editable?this.root.editor.getSelection():new CKEDITOR.dom.selection(this.root);a.selectRanges([this]);return a};CKEDITOR.SELECTION_NONE=1;CKEDITOR.SELECTION_TEXT=2;CKEDITOR.SELECTION_ELEMENT=3;var n=typeof window.getSelection!="function";CKEDITOR.dom.selection=function(a){var b=a instanceof CKEDITOR.dom.element;this.document= -a instanceof CKEDITOR.dom.document?a:a.getDocument();this.root=b?a:this.document.getBody();this.isLocked=0;this._={cache:{}};if(CKEDITOR.env.webkit){a=this.document.getWindow().$.getSelection();if(a.type=="None"&&this.document.getActive().equals(this.root)||a.type=="Caret"&&a.anchorNode.nodeType==CKEDITOR.NODE_DOCUMENT){var c=new CKEDITOR.dom.range(this.root);c.moveToPosition(this.root,CKEDITOR.POSITION_AFTER_START);b=this.document.$.createRange();b.setStart(c.startContainer.$,c.startOffset);b.collapse(1); -var d=this.root.on("focus",function(a){a.cancel()},null,null,-100);a.addRange(b);d.removeListener()}}var a=this.getNative(),e;if(a)if(a.getRangeAt)e=(c=a.rangeCount&&a.getRangeAt(0))&&new CKEDITOR.dom.node(c.commonAncestorContainer);else{try{c=a.createRange()}catch(f){}e=c&&CKEDITOR.dom.element.get(c.item&&c.item(0)||c.parentElement())}if(!e||!this.root.equals(e)&&!this.root.contains(e)){this._.cache.type=CKEDITOR.SELECTION_NONE;this._.cache.startElement=null;this._.cache.selectedElement=null;this._.cache.selectedText= -"";this._.cache.ranges=new CKEDITOR.dom.rangeList}return this};var r={img:1,hr:1,li:1,table:1,tr:1,td:1,th:1,embed:1,object:1,ol:1,ul:1,a:1,input:1,form:1,select:1,textarea:1,button:1,fieldset:1,thead:1,tfoot:1};CKEDITOR.dom.selection.prototype={getNative:function(){return this._.cache.nativeSel!==void 0?this._.cache.nativeSel:this._.cache.nativeSel=n?this.document.$.selection:this.document.getWindow().$.getSelection()},getType:n?function(){var a=this._.cache;if(a.type)return a.type;var b=CKEDITOR.SELECTION_NONE; -try{var c=this.getNative(),d=c.type;if(d=="Text")b=CKEDITOR.SELECTION_TEXT;if(d=="Control")b=CKEDITOR.SELECTION_ELEMENT;if(c.createRange().parentElement())b=CKEDITOR.SELECTION_TEXT}catch(e){}return a.type=b}:function(){var a=this._.cache;if(a.type)return a.type;var b=CKEDITOR.SELECTION_TEXT,c=this.getNative();if(!c||!c.rangeCount)b=CKEDITOR.SELECTION_NONE;else if(c.rangeCount==1){var c=c.getRangeAt(0),d=c.startContainer;if(d==c.endContainer&&d.nodeType==1&&c.endOffset-c.startOffset==1&&r[d.childNodes[c.startOffset].nodeName.toLowerCase()])b= -CKEDITOR.SELECTION_ELEMENT}return a.type=b},getRanges:function(){var a=n?function(){function a(b){return(new CKEDITOR.dom.node(b)).getIndex()}var b=function(b,c){b=b.duplicate();b.collapse(c);var d=b.parentElement(),e=d.ownerDocument;if(!d.hasChildNodes())return{container:d,offset:0};for(var f=d.children,h,i,j=b.duplicate(),m=0,p=f.length-1,l=-1,n,o;m<=p;){l=Math.floor((m+p)/2);h=f[l];j.moveToElementText(h);n=j.compareEndPoints("StartToStart",b);if(n>0)p=l-1;else if(n<0)m=l+1;else{if(CKEDITOR.env.ie9Compat&& -h.tagName=="BR"){f=e.defaultView.getSelection();return{container:f[c?"anchorNode":"focusNode"],offset:f[c?"anchorOffset":"focusOffset"]}}return{container:d,offset:a(h)}}}if(l==-1||l==f.length-1&&n<0){j.moveToElementText(d);j.setEndPoint("StartToStart",b);e=j.text.replace(/(\r\n|\r)/g,"\n").length;f=d.childNodes;if(!e){h=f[f.length-1];return h.nodeType!=CKEDITOR.NODE_TEXT?{container:d,offset:f.length}:{container:h,offset:h.nodeValue.length}}for(d=f.length;e>0&&d>0;){i=f[--d];if(i.nodeType==CKEDITOR.NODE_TEXT){o= -i;e=e-i.nodeValue.length}}return{container:o,offset:-e}}j.collapse(n>0?true:false);j.setEndPoint(n>0?"StartToStart":"EndToStart",b);e=j.text.replace(/(\r\n|\r)/g,"\n").length;if(!e)return{container:d,offset:a(h)+(n>0?0:1)};for(;e>0;)try{i=h[n>0?"previousSibling":"nextSibling"];if(i.nodeType==CKEDITOR.NODE_TEXT){e=e-i.nodeValue.length;o=i}h=i}catch(x){return{container:d,offset:a(h)}}return{container:o,offset:n>0?-e:o.nodeValue.length+e}};return function(){var a=this.getNative(),c=a&&a.createRange(), -d=this.getType();if(!a)return[];if(d==CKEDITOR.SELECTION_TEXT){a=new CKEDITOR.dom.range(this.root);d=b(c,true);a.setStart(new CKEDITOR.dom.node(d.container),d.offset);d=b(c);a.setEnd(new CKEDITOR.dom.node(d.container),d.offset);a.endContainer.getPosition(a.startContainer)&CKEDITOR.POSITION_PRECEDING&&a.endOffset<=a.startContainer.getIndex()&&a.collapse();return[a]}if(d==CKEDITOR.SELECTION_ELEMENT){for(var d=[],e=0;e=b.getLength()?l.setStartAfter(b):l.setStartBefore(b));i&&i.type==CKEDITOR.NODE_TEXT&&(m?l.setEndAfter(i):l.setEndBefore(i));b=new CKEDITOR.dom.walker(l);b.evaluator=function(a){if(a.type==CKEDITOR.NODE_ELEMENT&&a.isReadOnly()){var b=f.clone();f.setEndBefore(a);f.collapsed&&d.splice(e--,1);if(!(a.getPosition(l.endContainer)&CKEDITOR.POSITION_CONTAINS)){b.setStartAfter(a);b.collapsed||d.splice(e+1,0,b)}return true}return false};b.next()}}return c.ranges}}(),getStartElement:function(){var a=this._.cache; -if(a.startElement!==void 0)return a.startElement;var b;switch(this.getType()){case CKEDITOR.SELECTION_ELEMENT:return this.getSelectedElement();case CKEDITOR.SELECTION_TEXT:var c=this.getRanges()[0];if(c){if(c.collapsed){b=c.startContainer;b.type!=CKEDITOR.NODE_ELEMENT&&(b=b.getParent())}else{for(c.optimize();;){b=c.startContainer;if(c.startOffset==(b.getChildCount?b.getChildCount():b.getLength())&&!b.isBlockBoundary())c.setStartAfter(b);else break}b=c.startContainer;if(b.type!=CKEDITOR.NODE_ELEMENT)return b.getParent(); -b=b.getChild(c.startOffset);if(!b||b.type!=CKEDITOR.NODE_ELEMENT)b=c.startContainer;else for(c=b.getFirst();c&&c.type==CKEDITOR.NODE_ELEMENT;){b=c;c=c.getFirst()}}b=b.$}}return a.startElement=b?new CKEDITOR.dom.element(b):null},getSelectedElement:function(){var a=this._.cache;if(a.selectedElement!==void 0)return a.selectedElement;var b=this,c=CKEDITOR.tools.tryThese(function(){return b.getNative().createRange().item(0)},function(){for(var a=b.getRanges()[0],c,d,e=2;e&&(!(c=a.getEnclosedNode())||!(c.type== -CKEDITOR.NODE_ELEMENT&&r[c.getName()]&&(d=c)));e--)a.shrink(CKEDITOR.SHRINK_ELEMENT);return d.$});return a.selectedElement=c?new CKEDITOR.dom.element(c):null},getSelectedText:function(){var a=this._.cache;if(a.selectedText!==void 0)return a.selectedText;var b=this.getNative(),b=n?b.type=="Control"?"":b.createRange().text:b.toString();return a.selectedText=b},lock:function(){this.getRanges();this.getStartElement();this.getSelectedElement();this.getSelectedText();this._.cache.nativeSel=null;this.isLocked= -1},unlock:function(a){if(this.isLocked){if(a)var b=this.getSelectedElement(),c=!b&&this.getRanges();this.isLocked=0;this.reset();if(a)(a=b||c[0]&&c[0].getCommonAncestor())&&a.getAscendant("body",1)&&(b?this.selectElement(b):this.selectRanges(c))}},reset:function(){this._.cache={}},selectElement:function(a){var b=new CKEDITOR.dom.range(this.root);b.setStartBefore(a);b.setEndAfter(a);this.selectRanges([b])},selectRanges:function(a){if(a.length)if(this.isLocked){var b=CKEDITOR.document.getActive();this.unlock(); -this.selectRanges(a);this.lock();!b.equals(this.root)&&b.focus()}else{if(n){var c=CKEDITOR.dom.walker.whitespaces(true),e=/\ufeff|\u00a0/,i={table:1,tbody:1,tr:1};if(a.length>1){b=a[a.length-1];a[0].setEnd(b.endContainer,b.endOffset)}var b=a[0],a=b.collapsed,k,j,m,l=b.getEnclosedNode();if(l&&l.type==CKEDITOR.NODE_ELEMENT&&l.getName()in r&&(!l.is("a")||!l.getText()))try{m=l.$.createControlRange();m.addElement(l.$);m.select();return}catch(B){}(b.startContainer.type==CKEDITOR.NODE_ELEMENT&&b.startContainer.getName()in -i||b.endContainer.type==CKEDITOR.NODE_ELEMENT&&b.endContainer.getName()in i)&&b.shrink(CKEDITOR.NODE_ELEMENT,true);m=b.createBookmark();var i=m.startNode,q;if(!a)q=m.endNode;m=b.document.$.body.createTextRange();m.moveToElementText(i.$);m.moveStart("character",1);if(q){e=b.document.$.body.createTextRange();e.moveToElementText(q.$);m.setEndPoint("EndToEnd",e);m.moveEnd("character",-1)}else{k=i.getNext(c);j=i.hasAscendant("pre");k=!(k&&k.getText&&k.getText().match(e))&&(j||!i.hasPrevious()||i.getPrevious().is&& -i.getPrevious().is("br"));j=b.document.createElement("span");j.setHtml("");j.insertBefore(i);k&&b.document.createText("").insertBefore(i)}b.setStartBefore(i);i.remove();if(a){if(k){m.moveStart("character",-1);m.select();b.document.$.selection.clear()}else m.select();b.moveToPosition(j,CKEDITOR.POSITION_BEFORE_START);j.remove()}else{b.setEndBefore(q);q.remove();m.select()}}else{q=this.getNative();if(!q)return;if(CKEDITOR.env.opera){b=this.document.$.createRange();b.selectNodeContents(this.root.$); -q.addRange(b)}this.removeAllRanges();for(e=0;e=0){b.collapse(1);m.setEnd(b.endContainer.$,b.endOffset)}else throw z;}q.addRange(m)}}this.reset();this.root.fire("selectionchange")}},createBookmarks:function(a){return this.getRanges().createBookmarks(a)},createBookmarks2:function(a){return this.getRanges().createBookmarks2(a)},selectBookmarks:function(a){for(var b=[],c=0;c< -a.length;c++){var d=new CKEDITOR.dom.range(this.root);d.moveToBookmark(a[c]);b.push(d)}this.selectRanges(b);return this},getCommonAncestor:function(){var a=this.getRanges();return a[0].startContainer.getCommonAncestor(a[a.length-1].endContainer)},scrollIntoView:function(){this.type!=CKEDITOR.SELECTION_NONE&&this.getRanges()[0].scrollIntoView()},removeAllRanges:function(){var a=this.getNative();try{a&&a[n?"empty":"removeAllRanges"]()}catch(b){}this.reset()}}})(); -CKEDITOR.editor.prototype.attachStyleStateChange=function(a,c){var b=this._.styleStateChangeCallbacks;if(!b){b=this._.styleStateChangeCallbacks=[];this.on("selectionChange",function(a){for(var c=0;c]*>)[ \t\r\n]*/gi,"$1");f=f.replace(/([ \t\n\r]+| )/g," ");f=f.replace(/]*>/gi,"\n");if(CKEDITOR.env.ie){var g=a.getDocument().createElement("div");g.append(d);d.$.outerHTML="
"+f+"
";d.copyAttributes(g.getFirst());d=g.getFirst().remove()}else d.setHtml(f);b=d}else f?b=n(c?[a.getHtml()]:i(a),b):a.moveChildren(b);b.replace(a);if(e){var c=b,j;if((j=c.getPrevious(v))&&j.is&&j.is("pre")){e=m(j.getHtml(),/\n$/,"")+ -"\n\n"+m(c.getHtml(),/^\n/,"");CKEDITOR.env.ie?c.$.outerHTML="
"+e+"
":c.setHtml(e);j.remove()}}else c&&h(b)}function i(a){a.getName();var b=[];m(a.getOuterHtml(),/(\S\s*)\n(?:\s|(]+data-cke-bookmark.*?\/span>))*\n(?!$)/gi,function(a,b,c){return b+"
"+c+"
"}).replace(/([\s\S]*?)<\/pre>/gi,function(a,c){b.push(c)});return b}function m(a,b,c){var e="",d="",a=a.replace(/(^]+data-cke-bookmark.*?\/span>)|(]+data-cke-bookmark.*?\/span>$)/gi,function(a,
-b,c){b&&(e=b);c&&(d=c);return""});return e+a.replace(b,c)+d}function n(a,b){var c;a.length>1&&(c=new CKEDITOR.dom.documentFragment(b.getDocument()));for(var e=0;e"),d=d.replace(/[ \t]{2,}/g,function(a){return CKEDITOR.tools.repeat(" ",
-a.length-1)+" "});if(c){var f=b.clone();f.setHtml(d);c.append(f)}else b.setHtml(d)}return c||b}function r(a){var b=this._.definition,c=b.attributes,b=b.styles,d=t(this)[a.getName()],e=CKEDITOR.tools.isEmpty(c)&&CKEDITOR.tools.isEmpty(b),f;for(f in c)if(!((f=="class"||this._.definition.fullMatch)&&a.getAttribute(f)!=F(f,c[f]))){e=a.hasAttribute(f);a.removeAttribute(f)}for(var i in b)if(!(this._.definition.fullMatch&&a.getStyle(i)!=F(i,b[i],true))){e=e||!!a.getStyle(i);a.removeStyle(i)}g(a,d,B[a.getName()]);
-e&&(this._.definition.alwaysRemoveElement?h(a,1):!CKEDITOR.dtd.$block[a.getName()]||this._.enterMode==CKEDITOR.ENTER_BR&&!a.hasAttributes()?h(a):a.renameNode(this._.enterMode==CKEDITOR.ENTER_P?"p":"div"))}function p(a){for(var b=t(this),c=a.getElementsByTag(this.element),d=c.count();--d>=0;)r.call(this,c.getItem(d));for(var e in b)if(e!=this.element){c=a.getElementsByTag(e);for(d=c.count()-1;d>=0;d--){var f=c.getItem(d);g(f,b[e])}}}function g(a,b,c){if(b=b&&b.attributes)for(var d=0;d",a||b.name,"");return c.join("")},getDefinition:function(){return this._.definition}};CKEDITOR.style.getStyleText=function(a){var b=a._ST;
-if(b)return b;var b=a.styles,c=a.attributes&&a.attributes.style||"",d="";c.length&&(c=c.replace(z,";"));for(var e in b){var f=b[e],g=(e+":"+f).replace(z,";");f=="inherit"?d=d+g:c=c+g}c.length&&(c=CKEDITOR.tools.normalizeCssText(c,true));return a._ST=c+d}})();CKEDITOR.styleCommand=function(a,c){this.requiredContent=this.allowedContent=this.style=a;CKEDITOR.tools.extend(this,c,true)};
-CKEDITOR.styleCommand.prototype.exec=function(a){a.focus();this.state==CKEDITOR.TRISTATE_OFF?a.applyStyle(this.style):this.state==CKEDITOR.TRISTATE_ON&&a.removeStyle(this.style)};CKEDITOR.stylesSet=new CKEDITOR.resourceManager("","stylesSet");CKEDITOR.addStylesSet=CKEDITOR.tools.bind(CKEDITOR.stylesSet.add,CKEDITOR.stylesSet);CKEDITOR.loadStylesSet=function(a,c,b){CKEDITOR.stylesSet.addExternal(a,c,"");CKEDITOR.stylesSet.load(a,b)};
-CKEDITOR.editor.prototype.getStylesSet=function(a){if(this._.stylesDefinitions)a(this._.stylesDefinitions);else{var c=this,b=c.config.stylesCombo_stylesSet||c.config.stylesSet;if(b===false)a(null);else if(b instanceof Array){c._.stylesDefinitions=b;a(b)}else{b||(b="default");var b=b.split(":"),f=b[0];CKEDITOR.stylesSet.addExternal(f,b[1]?b.slice(1).join(":"):CKEDITOR.getUrl("styles.js"),"");CKEDITOR.stylesSet.load(f,function(b){c._.stylesDefinitions=b[f];a(c._.stylesDefinitions)})}}};
-CKEDITOR.dom.comment=function(a,c){typeof a=="string"&&(a=(c?c.$:document).createComment(a));CKEDITOR.dom.domObject.call(this,a)};CKEDITOR.dom.comment.prototype=new CKEDITOR.dom.node;CKEDITOR.tools.extend(CKEDITOR.dom.comment.prototype,{type:CKEDITOR.NODE_COMMENT,getOuterHtml:function(){return"<\!--"+this.$.nodeValue+"--\>"}});
-(function(){var a={},c;for(c in CKEDITOR.dtd.$blockLimit)c in CKEDITOR.dtd.$list||(a[c]=1);var b={};for(c in CKEDITOR.dtd.$block)c in CKEDITOR.dtd.$blockLimit||c in CKEDITOR.dtd.$empty||(b[c]=1);CKEDITOR.dom.elementPath=function(c,e){var d=null,j=null,l=[],e=e||c.getDocument().getBody(),i=c;do if(i.type==CKEDITOR.NODE_ELEMENT){l.push(i);if(!this.lastElement){this.lastElement=i;if(i.is(CKEDITOR.dtd.$object))continue}var m=i.getName();if(!j){!d&&b[m]&&(d=i);if(a[m]){var n;if(n=!d){if(m=m=="div"){a:{m=
-i.getChildren();n=0;for(var r=m.count();n-1}:typeof a=="function"?f=a:typeof a=="object"&&(f=
-function(b){return b.getName()in a});var e=this.elements,d=e.length;c&&d--;if(b){e=Array.prototype.slice.call(e,0);e.reverse()}for(c=0;c=f){d=e.createText("");d.insertAfter(this)}else{a=e.createText("");a.insertAfter(d);a.remove()}return d},substring:function(a,
-c){return typeof c!="number"?this.$.nodeValue.substr(a):this.$.nodeValue.substring(a,c)}});
-(function(){function a(a,c,e){var d=a.serializable,j=c[e?"endContainer":"startContainer"],l=e?"endOffset":"startOffset",i=d?c.document.getById(a.startNode):a.startNode,a=d?c.document.getById(a.endNode):a.endNode;if(j.equals(i.getPrevious())){c.startOffset=c.startOffset-j.getLength()-a.getPrevious().getLength();j=a.getNext()}else if(j.equals(a.getPrevious())){c.startOffset=c.startOffset-j.getLength();j=a.getNext()}j.equals(i.getParent())&&c[l]++;j.equals(a.getParent())&&c[l]++;c[e?"endContainer":"startContainer"]=
-j;return c}CKEDITOR.dom.rangeList=function(a){if(a instanceof CKEDITOR.dom.rangeList)return a;a?a instanceof CKEDITOR.dom.range&&(a=[a]):a=[];return CKEDITOR.tools.extend(a,c)};var c={createIterator:function(){var a=this,c=CKEDITOR.dom.walker.bookmark(),e=[],d;return{getNextRange:function(j){d=d==void 0?0:d+1;var l=a[d];if(l&&a.length>1){if(!d)for(var i=a.length-1;i>=0;i--)e.unshift(a[i].createBookmark(true));if(j)for(var m=0;a[d+m+1];){for(var n=l.document,j=0,i=n.getById(e[m].endNode),n=n.getById(e[m+
-1].startNode);;){i=i.getNextSourceNode(false);if(n.equals(i))j=1;else if(c(i)||i.type==CKEDITOR.NODE_ELEMENT&&i.isBlockBoundary())continue;break}if(!j)break;m++}for(l.moveToBookmark(e.shift());m--;){i=a[++d];i.moveToBookmark(e.shift());l.setEnd(i.endContainer,i.endOffset)}}return l}}},createBookmarks:function(b){for(var c=[],e,d=0;db?-1:1}),e=0,f;e',CKEDITOR.document);a.appendTo(CKEDITOR.document.getHead());try{CKEDITOR.env.hc=a.getComputedStyle("border-top-color")==a.getComputedStyle("border-right-color")}catch(c){CKEDITOR.env.hc=false}a.remove()}if(CKEDITOR.env.hc)CKEDITOR.env.cssClass=CKEDITOR.env.cssClass+" cke_hc";CKEDITOR.document.appendStyleText(".cke{visibility:hidden;}");
-CKEDITOR.status="loaded";CKEDITOR.fireOnce("loaded");if(a=CKEDITOR._.pending){delete CKEDITOR._.pending;for(var b=0;b'+c.getValue()+"",CKEDITOR.document);
+a.insertAfter(c);c.hide();c.$.form&&b._attachToForm()}else b.setData(a.getHtml(),null,true);b.on("loaded",function(){b.fire("uiReady");b.editable(a);b.container=a;b.ui.contentsElement=a;b.setData(b.getData(1));b.resetDirty();b.fire("contentDom");b.mode="wysiwyg";b.fire("mode");b.status="ready";b.fireOnce("instanceReady");CKEDITOR.fire("instanceReady",null,b)},null,null,1E4);b.on("destroy",function(){if(c){b.container.clearCustomData();b.container.remove();c.show()}b.element.clearCustomData();delete b.element});
+return b};CKEDITOR.inlineAll=function(){var a,d,b;for(b in CKEDITOR.dtd.$editable)for(var c=CKEDITOR.document.getElementsByTag(b),e=0,f=c.count();e"+(a.title?'{voiceLabel}':"")+'<{outerEl} class="cke_inner cke_reset" role="presentation">{topHtml}<{outerEl} id="{contentId}" class="cke_contents cke_reset" role="presentation">{bottomHtml}'),
+b=CKEDITOR.dom.element.createFromHtml(n.output({id:a.id,name:b,langDir:a.lang.dir,langCode:a.langCode,voiceLabel:a.title,topHtml:i?''+i+"":"",contentId:a.ui.spaceId("contents"),bottomHtml:j?''+j+"":"",outerEl:CKEDITOR.env.ie?"span":"div"}));if(h==CKEDITOR.ELEMENT_MODE_REPLACE){d.hide();b.insertAfter(d)}else d.append(b);
+a.container=b;a.ui.contentsElement=a.ui.space("contents");i&&a.ui.space("top").unselectable();j&&a.ui.space("bottom").unselectable();d=a.config.width;h=a.config.height;d&&b.setStyle("width",CKEDITOR.tools.cssLength(d));h&&a.ui.space("contents").setStyle("height",CKEDITOR.tools.cssLength(h));b.disableContextMenu();CKEDITOR.env.webkit&&b.on("focus",function(){a.focus()});a.fireOnce("uiReady")}CKEDITOR.replace=function(b,d){return a(b,d,null,CKEDITOR.ELEMENT_MODE_REPLACE)};CKEDITOR.appendTo=function(b,
+d,f){return a(b,d,f,CKEDITOR.ELEMENT_MODE_APPENDTO)};CKEDITOR.replaceAll=function(){for(var a=document.getElementsByTagName("textarea"),b=0;b'+d+"");c.append(d);a.changeAttr("aria-describedby",e)}}})});CKEDITOR.addCss(".cke_editable{cursor:text}.cke_editable img,.cke_editable input,.cke_editable textarea{cursor:default}");
+var o=CKEDITOR.dom.walker.whitespaces(true),p=CKEDITOR.dom.walker.bookmark(false,true),t=CKEDITOR.dom.walker.empty(),x=CKEDITOR.dom.walker.bogus(),u=/(^|]*>)\s*<(p|div|address|h\d|center|pre)[^>]*>\s*(?:]*>| |\u00A0| )?\s*(:?<\/\2>)?\s*(?=$|<\/body>)/gi,C=function(){function a(b){return b.type==CKEDITOR.NODE_ELEMENT}function b(c,d){var e,g,f,r,l=[],w=d.range.startContainer;e=d.range.startPath();for(var w=h[w.getName()],i=0,j=c.getChildren(),q=j.count(),A=-1,J=-1,H=0,F=e.contains(h.$list);i<
+q;++i){e=j.getItem(i);if(a(e)){f=e.getName();if(F&&f in CKEDITOR.dtd.$list)l=l.concat(b(e,d));else{r=!!w[f];if(f=="br"&&e.data("cke-eol")&&(!i||i==q-1)){H=(g=i?l[i-1].node:j.getItem(i+1))&&(!a(g)||!g.is("br"));g=g&&a(g)&&h.$block[g.getName()]}A==-1&&!r&&(A=i);r||(J=i);l.push({isElement:1,isLineBreak:H,isBlock:e.isBlockBoundary(),hasBlockSibling:g,node:e,name:f,allowed:r});g=H=0}}else l.push({isElement:0,node:e,allowed:1})}if(A>-1)l[A].firstNotAllowed=1;if(J>-1)l[J].lastNotAllowed=1;return l}function c(b,
+d){var e=[],g=b.getChildren(),f=g.count(),r,l=0,m=h[d],w=!b.is(h.$inline)||b.is("br");for(w&&e.push(" ");l ",
+y.document);y.insertNode(s);y.setStartAfter(s)}o=new CKEDITOR.dom.elementPath(y.startContainer);l.endPath=E=new CKEDITOR.dom.elementPath(y.endContainer);if(!y.collapsed){var n=E.block||E.blockLimit,z=y.getCommonAncestor();n&&(!n.equals(z)&&!n.contains(z)&&y.checkEndOfBlock())&&l.zombies.push(n);y.deleteContents()}for(;(p=a(y.startContainer)&&y.startContainer.getChild(y.startOffset-1))&&a(p)&&p.isBlockBoundary()&&o.contains(p);)y.moveToPosition(p,CKEDITOR.POSITION_BEFORE_END);e(y,l.blockLimit,o,E);
+if(s){y.setEndBefore(s);y.collapse();s.remove()}s=y.startPath();if(n=s.contains(d,false,1)){y.splitElement(n);l.inlineStylesRoot=n;l.inlineStylesPeak=s.lastElement}s=y.createBookmark();(n=s.startNode.getPrevious(i))&&a(n)&&d(n)&&q.push(n);(n=s.startNode.getNext(i))&&a(n)&&d(n)&&q.push(n);for(n=s.startNode;(n=n.getParent())&&d(n);)q.push(n);y.moveToBookmark(s);if(s=v){s=l.range;if(l.type=="text"&&l.inlineStylesRoot){p=l.inlineStylesPeak;y=p.getDocument().createText("{cke-peak}");for(q=l.inlineStylesRoot.getParent();!p.equals(q);){y=
+y.appendTo(p.clone());p=p.getParent()}v=y.getOuterHtml().split("{cke-peak}").join(v)}p=l.blockLimit.getName();if(/^\s+|\s+$/.test(v)&&"span"in CKEDITOR.dtd[p])var u=' ',v=u+v+u;v=l.editor.dataProcessor.toHtml(v,{context:null,fixForBody:false,protectedWhitespaces:!!u,dontFilter:l.dontFilter,filter:l.editor.activeFilter,enterMode:l.editor.activeEnterMode});p=s.document.createElement("body");p.setHtml(v);if(u){p.getFirst().remove();p.getLast().remove()}if((u=s.startPath().block)&&
+!(u.getChildCount()==1&&u.getBogus()))a:{var t;if(p.getChildCount()==1&&a(t=p.getFirst())&&t.is(r)&&!t.hasAttribute("contenteditable")){u=t.getElementsByTag("*");s=0;for(q=u.count();s0;else{G=t.startPath();if(!E.isBlock&&g(l.editor,G.block,G.blockLimit)&&(C=B(l.editor))){C=
+s.createElement(C);C.appendBogus();t.insertNode(C);CKEDITOR.env.needsBrFiller&&(I=C.getBogus())&&I.remove();t.moveToPosition(C,CKEDITOR.POSITION_BEFORE_END)}if((G=t.startPath().block)&&!G.equals(x)){if(I=G.getBogus()){I.remove();u.push(G)}x=G}E.firstNotAllowed&&(n=1);if(n&&E.isElement){G=t.startContainer;for(N=null;G&&!h[G.getName()][E.name];){if(G.equals(p)){G=null;break}N=G;G=G.getParent()}if(G){if(N){V=t.splitElement(N);l.zombies.push(V);l.zombies.push(N)}}else{N=p.getName();W=!q;G=q==y.length-
+1;N=c(E.node,N);for(var Q=[],S=N.length,R=0,P=void 0,X=0,$=-1;R0;){d=a.getItem(b);if(!CKEDITOR.tools.trim(d.getHtml())){d.appendBogus();CKEDITOR.env.ie&&(CKEDITOR.env.version<9&&d.getChildCount())&&d.getFirst().remove()}}}return function(d){var e=d.startContainer,g=e.getAscendant("table",1),f=false;c(g.getElementsByTag("td"));c(g.getElementsByTag("th"));g=d.clone();g.setStart(e,0);g=a(g).lastBackward();if(!g){g=
+d.clone();g.setEndAt(e,CKEDITOR.POSITION_BEFORE_END);g=a(g).lastForward();f=true}g||(g=e);if(g.is("table")){d.setStartAt(g,CKEDITOR.POSITION_BEFORE_START);d.collapse(true);g.remove()}else{g.is({tbody:1,thead:1,tfoot:1})&&(g=b(g,"tr",f));g.is("tr")&&(g=b(g,g.getParent().is("thead")?"th":"td",f));(e=g.getBogus())&&e.remove();d.moveToPosition(g,f?CKEDITOR.POSITION_AFTER_START:CKEDITOR.POSITION_BEFORE_END)}}}();a={detect:function(a,b){var c=a.range,d=c.clone(),e=c.clone(),g=new CKEDITOR.dom.elementPath(c.startContainer,
+b),f=new CKEDITOR.dom.elementPath(c.endContainer,b);d.collapse(1);e.collapse();if(g.block&&d.checkBoundaryOfElement(g.block,CKEDITOR.END)){c.setStartAfter(g.block);a.prependEolBr=1}if(f.block&&e.checkBoundaryOfElement(f.block,CKEDITOR.START)){c.setEndBefore(f.block);a.appendEolBr=1}},fix:function(a,b){var c=b.getDocument(),d;if(a.appendEolBr){d=this.createEolBr(c);a.fragment.append(d)}a.prependEolBr&&(!d||d.getPrevious())&&a.fragment.append(this.createEolBr(c),1)},createEolBr:function(a){return a.createElement("br",
+{attributes:{"data-cke-eol":1}})}};d={exclude:function(a){var b=a.range.getBoundaryNodes(),c=b.startNode;(b=b.endNode)&&(x(b)&&(!c||!c.equals(b)))&&a.range.setEndBefore(b)}};c={rebuild:function(a,b){var c=a.range,d=c.getCommonAncestor(),e=new CKEDITOR.dom.elementPath(d,b),g=new CKEDITOR.dom.elementPath(c.startContainer,b),c=new CKEDITOR.dom.elementPath(c.endContainer,b),f;d.type==CKEDITOR.NODE_TEXT&&(d=d.getParent());if(e.blockLimit.is({tr:1,table:1})){var h=e.contains("table").getParent();f=function(a){return!a.equals(h)}}else if(e.block&&
+e.block.is(CKEDITOR.dtd.$listItem)){g=g.contains(CKEDITOR.dtd.$list);c=c.contains(CKEDITOR.dtd.$list);if(!g.equals(c)){var r=e.contains(CKEDITOR.dtd.$list).getParent();f=function(a){return!a.equals(r)}}}f||(f=function(a){return!a.equals(e.block)&&!a.equals(e.blockLimit)});this.rebuildFragment(a,b,d,f)},rebuildFragment:function(a,b,c,d){for(var e;c&&!c.equals(b)&&d(c);){e=c.clone(0,1);a.fragment.appendTo(e);a.fragment=e;c=c.getParent()}}};b={shrink:function(a){var a=a.range,b=a.startContainer,c=a.endContainer,
+d=a.startOffset,e=a.endOffset;b.type==CKEDITOR.NODE_ELEMENT&&(b.equals(c)&&b.is("tr")&&++d==e)&&a.shrink(CKEDITOR.SHRINK_TEXT)}};var q=function(){function a(b,c){var d=b.getParent();if(d.is(CKEDITOR.dtd.$inline))b[c?"insertBefore":"insertAfter"](d)}function b(c,d,e){a(d);a(e,1);for(var g;g=e.getNext();){g.insertAfter(d);d=g}t(c)&&c.remove()}function c(a,b){var d=new CKEDITOR.dom.range(a);d.setStartAfter(b.startNode);d.setEndBefore(b.endNode);return d}return{list:{detectMerge:function(a,b){var d=c(b,
+a.bookmark),e=d.startPath(),g=d.endPath(),f=e.contains(CKEDITOR.dtd.$list),h=g.contains(CKEDITOR.dtd.$list);a.mergeList=f&&h&&f.getParent().equals(h.getParent())&&!f.equals(h);a.mergeListItems=e.block&&g.block&&e.block.is(CKEDITOR.dtd.$listItem)&&g.block.is(CKEDITOR.dtd.$listItem);if(a.mergeList||a.mergeListItems){d=d.clone();d.setStartBefore(a.bookmark.startNode);d.setEndAfter(a.bookmark.endNode);a.mergeListBookmark=d.createBookmark()}},merge:function(a,c){if(a.mergeListBookmark){var d=a.mergeListBookmark.startNode,
+e=a.mergeListBookmark.endNode,g=new CKEDITOR.dom.elementPath(d,c),f=new CKEDITOR.dom.elementPath(e,c);if(a.mergeList){var h=g.contains(CKEDITOR.dtd.$list),k=f.contains(CKEDITOR.dtd.$list);if(!h.equals(k)){k.moveChildren(h);k.remove()}}if(a.mergeListItems){g=g.contains(CKEDITOR.dtd.$listItem);f=f.contains(CKEDITOR.dtd.$listItem);g.equals(f)||b(f,d,e)}d.remove();e.remove()}}},block:{detectMerge:function(a,b){if(!a.tableContentsRanges&&!a.mergeListBookmark){var c=new CKEDITOR.dom.range(b);c.setStartBefore(a.bookmark.startNode);
+c.setEndAfter(a.bookmark.endNode);a.mergeBlockBookmark=c.createBookmark()}},merge:function(a,c){if(a.mergeBlockBookmark&&!a.purgeTableBookmark){var d=a.mergeBlockBookmark.startNode,e=a.mergeBlockBookmark.endNode,g=new CKEDITOR.dom.elementPath(d,c),f=new CKEDITOR.dom.elementPath(e,c),g=g.block,f=f.block;g&&(f&&!g.equals(f))&&b(f,d,e);d.remove();e.remove()}}},table:function(){function a(c){var e=[],g,f=new CKEDITOR.dom.walker(c),h=c.startPath().contains(d),k=c.endPath().contains(d),l={};f.guard=function(a,
+f){if(a.type==CKEDITOR.NODE_ELEMENT){var m="visited_"+(f?"out":"in");if(a.getCustomData(m))return;CKEDITOR.dom.element.setMarker(l,a,m,1)}if(f&&h&&a.equals(h)){g=c.clone();g.setEndAt(h,CKEDITOR.POSITION_BEFORE_END);e.push(g)}else if(!f&&k&&a.equals(k)){g=c.clone();g.setStartAt(k,CKEDITOR.POSITION_AFTER_START);e.push(g)}else if(!f&&a.type==CKEDITOR.NODE_ELEMENT&&a.is(d)&&(!h||b(a,h))&&(!k||b(a,k))){g=c.clone();g.selectNodeContents(a);e.push(g)}};f.lastForward();CKEDITOR.dom.element.clearAllMarkers(l);
+return e}function b(a,c){var d=CKEDITOR.POSITION_CONTAINS+CKEDITOR.POSITION_IS_CONTAINED,e=a.getPosition(c);return e===CKEDITOR.POSITION_IDENTICAL?false:(e&d)===0}var d={td:1,th:1,caption:1};return{detectPurge:function(a){var b=a.range,c=b.clone();c.enlarge(CKEDITOR.ENLARGE_ELEMENT);var c=new CKEDITOR.dom.walker(c),e=0;c.evaluator=function(a){a.type==CKEDITOR.NODE_ELEMENT&&a.is(d)&&++e};c.checkForward();if(e>1){var c=b.startPath().contains("table"),g=b.endPath().contains("table");if(c&&g&&b.checkBoundaryOfElement(c,
+CKEDITOR.START)&&b.checkBoundaryOfElement(g,CKEDITOR.END)){b=a.range.clone();b.setStartBefore(c);b.setEndAfter(g);a.purgeTableBookmark=b.createBookmark()}}},detectRanges:function(e,g){var f=c(g,e.bookmark),h=f.clone(),k,l,m=f.getCommonAncestor();m.is(CKEDITOR.dtd.$tableContent)&&!m.is(d)&&(m=m.getAscendant("table",true));l=m;m=new CKEDITOR.dom.elementPath(f.startContainer,l);l=new CKEDITOR.dom.elementPath(f.endContainer,l);m=m.contains("table");l=l.contains("table");if(m||l){if(m&&l&&b(m,l)){e.tableSurroundingRange=
+h;h.setStartAt(m,CKEDITOR.POSITION_AFTER_END);h.setEndAt(l,CKEDITOR.POSITION_BEFORE_START);h=f.clone();h.setEndAt(m,CKEDITOR.POSITION_AFTER_END);k=f.clone();k.setStartAt(l,CKEDITOR.POSITION_BEFORE_START);k=a(h).concat(a(k))}else if(m){if(!l){e.tableSurroundingRange=h;h.setStartAt(m,CKEDITOR.POSITION_AFTER_END);f.setEndAt(m,CKEDITOR.POSITION_AFTER_END)}}else{e.tableSurroundingRange=h;h.setEndAt(l,CKEDITOR.POSITION_BEFORE_START);f.setStartAt(l,CKEDITOR.POSITION_AFTER_START)}e.tableContentsRanges=k?
+k:a(f)}},deleteRanges:function(a){for(var b;b=a.tableContentsRanges.pop();){b.extractContents();t(b.startContainer)&&b.startContainer.appendBogus()}a.tableSurroundingRange&&a.tableSurroundingRange.extractContents()},purge:function(a){if(a.purgeTableBookmark){var b=a.doc,c=a.range.clone(),b=b.createElement("p");b.insertBefore(a.purgeTableBookmark.startNode);c.moveToBookmark(a.purgeTableBookmark);c.deleteContents();a.range.moveToPosition(b,CKEDITOR.POSITION_AFTER_START)}}}}(),detectExtractMerge:function(a){return!(a.range.startPath().contains(CKEDITOR.dtd.$listItem)&&
+a.range.endPath().contains(CKEDITOR.dtd.$listItem))},fixUneditableRangePosition:function(a){a.startContainer.getDtd()["#"]||a.moveToClosestEditablePosition(null,true)},autoParagraph:function(a,b){var c=b.startPath(),d;if(g(a,c.block,c.blockLimit)&&(d=B(a))){d=b.document.createElement(d);d.appendBogus();b.insertNode(d);b.moveToPosition(d,CKEDITOR.POSITION_AFTER_START)}}}}()})();
+(function(){function a(){var a=this._.fakeSelection,b;if(a){b=this.getSelection(1);if(!b||!b.isHidden()){a.reset();a=0}}if(!a){a=b||this.getSelection(1);if(!a||a.getType()==CKEDITOR.SELECTION_NONE)return}this.fire("selectionCheck",a);b=this.elementPath();if(!b.compare(this._.selectionPreviousPath)){if(CKEDITOR.env.webkit)this._.previousActive=this.document.getActive();this._.selectionPreviousPath=b;this.fire("selectionChange",{selection:a,path:b})}}function d(){o=true;if(!z){b.call(this);z=CKEDITOR.tools.setTimeout(b,
+200,this)}}function b(){z=null;if(o){CKEDITOR.tools.setTimeout(a,0,this);o=false}}function c(a){return p(a)||a.type==CKEDITOR.NODE_ELEMENT&&!a.is(CKEDITOR.dtd.$empty)?true:false}function e(a){function b(c,d){return!c||c.type==CKEDITOR.NODE_TEXT?false:a.clone()["moveToElementEdit"+(d?"End":"Start")](c)}if(!(a.root instanceof CKEDITOR.editable))return false;var d=a.startContainer,e=a.getPreviousNode(c,null,d),g=a.getNextNode(c,null,d);return b(e)||b(g,1)||!e&&!g&&!(d.type==CKEDITOR.NODE_ELEMENT&&d.isBlockBoundary()&&
+d.getBogus())?true:false}function f(a){return a.getCustomData("cke-fillingChar")}function h(a,b){var c=a&&a.removeCustomData("cke-fillingChar");if(c){if(b!==false){var d,e=a.getDocument().getSelection().getNative(),g=e&&e.type!="None"&&e.getRangeAt(0);if(c.getLength()>1&&g&&g.intersectsNode(c.$)){d=j(e);g=e.focusNode==c.$&&e.focusOffset>0;e.anchorNode==c.$&&e.anchorOffset>0&&d[0].offset--;g&&d[1].offset--}}c.setText(i(c.getText()));d&&n(a.getDocument().$,d)}}function i(a){return a.replace(/\u200B( )?/g,
+function(a){return a[1]?" ":""})}function j(a){return[{node:a.anchorNode,offset:a.anchorOffset},{node:a.focusNode,offset:a.focusOffset}]}function n(a,b){var c=a.getSelection(),d=a.createRange();d.setStart(b[0].node,b[0].offset);d.collapse(true);c.removeAllRanges();c.addRange(d);c.extend(b[1].node,b[1].offset)}function g(a){var b=CKEDITOR.dom.element.createFromHtml('
 
', +a.document);a.fire("lockSnapshot");a.editable().append(b);var c=a.getSelection(1),d=a.createRange(),e=c.root.on("selectionchange",function(a){a.cancel()},null,null,0);d.setStartAt(b,CKEDITOR.POSITION_AFTER_START);d.setEndAt(b,CKEDITOR.POSITION_BEFORE_END);c.selectRanges([d]);e.removeListener();a.fire("unlockSnapshot");a._.hiddenSelectionContainer=b}function B(a){var b={37:1,39:1,8:1,46:1};return function(c){var d=c.data.getKeystroke();if(b[d]){var e=a.getSelection().getRanges(),g=e[0];if(e.length== +1&&g.collapsed)if((d=g[d<38?"getPreviousEditableNode":"getNextEditableNode"]())&&d.type==CKEDITOR.NODE_ELEMENT&&d.getAttribute("contenteditable")=="false"){a.getSelection().fake(d);c.data.preventDefault();c.cancel()}}}}function s(a){for(var b=0;b=d.getLength()?h.setStartAfter(d):h.setStartBefore(d));e&&e.type==CKEDITOR.NODE_TEXT&&(f?h.setEndAfter(e):h.setEndBefore(e));d=new CKEDITOR.dom.walker(h);d.evaluator=function(d){if(d.type==CKEDITOR.NODE_ELEMENT&&d.isReadOnly()){var e=c.clone();c.setEndBefore(d);c.collapsed&&a.splice(b--,1);if(!(d.getPosition(h.endContainer)&CKEDITOR.POSITION_CONTAINS)){e.setStartAfter(d); +e.collapsed||a.splice(b+1,0,e)}return true}return false};d.next()}}return a}var z,o,p=CKEDITOR.dom.walker.invisible(1),t=function(){function a(b){return function(a){var c=a.editor.createRange();c.moveToClosestEditablePosition(a.selected,b)&&a.editor.getSelection().selectRanges([c]);return false}}function b(a){return function(b){var c=b.editor,d=c.createRange(),e;if(!(e=d.moveToClosestEditablePosition(b.selected,a)))e=d.moveToClosestEditablePosition(b.selected,!a);e&&c.getSelection().selectRanges([d]); +c.fire("saveSnapshot");b.selected.remove();if(!e){d.moveToElementEditablePosition(c.editable());c.getSelection().selectRanges([d])}c.fire("saveSnapshot");return false}}var c=a(),d=a(1);return{37:c,38:c,39:d,40:d,8:b(),46:b(1)}}();CKEDITOR.on("instanceCreated",function(b){function c(){var a=e.getSelection();a&&a.removeAllRanges()}var e=b.editor;e.on("contentDom",function(){function b(){D=new CKEDITOR.dom.selection(e.getSelection());D.lock()}function c(){f.removeListener("mouseup",c);j.removeListener("mouseup", +c);var a=CKEDITOR.document.$.selection,b=a.createRange();a.type!="None"&&b.parentElement().ownerDocument==g.$&&b.select()}var g=e.document,f=CKEDITOR.document,l=e.editable(),i=g.getBody(),j=g.getDocumentElement(),r=l.isInline(),q,D;CKEDITOR.env.gecko&&l.attachListener(l,"focus",function(a){a.removeListener();if(q!==0)if((a=e.getSelection().getNative())&&a.isCollapsed&&a.anchorNode==l.$){a=e.createRange();a.moveToElementEditStart(l);a.select()}},null,null,-2);l.attachListener(l,CKEDITOR.env.webkit? +"DOMFocusIn":"focus",function(){q&&CKEDITOR.env.webkit&&(q=e._.previousActive&&e._.previousActive.equals(g.getActive()));e.unlockSelection(q);q=0},null,null,-1);l.attachListener(l,"mousedown",function(){q=0});if(CKEDITOR.env.ie||r){x?l.attachListener(l,"beforedeactivate",b,null,null,-1):l.attachListener(e,"selectionCheck",b,null,null,-1);l.attachListener(l,CKEDITOR.env.webkit?"DOMFocusOut":"blur",function(){e.lockSelection(D);q=1},null,null,-1);l.attachListener(l,"mousedown",function(){q=0})}if(CKEDITOR.env.ie&& +!r){var y;l.attachListener(l,"mousedown",function(a){if(a.data.$.button==2){a=e.document.getSelection();if(!a||a.getType()==CKEDITOR.SELECTION_NONE)y=e.window.getScrollPosition()}});l.attachListener(l,"mouseup",function(a){if(a.data.$.button==2&&y){e.document.$.documentElement.scrollLeft=y.x;e.document.$.documentElement.scrollTop=y.y}y=null});if(g.$.compatMode!="BackCompat"){if(CKEDITOR.env.ie7Compat||CKEDITOR.env.ie6Compat)j.on("mousedown",function(a){function b(a){a=a.data.$;if(d){var c=i.$.createTextRange(); +try{c.moveToPoint(a.clientX,a.clientY)}catch(e){}d.setEndPoint(g.compareEndPoints("StartToStart",c)<0?"EndToEnd":"StartToStart",c);d.select()}}function c(){j.removeListener("mousemove",b);f.removeListener("mouseup",c);j.removeListener("mouseup",c);d.select()}a=a.data;if(a.getTarget().is("html")&&a.$.y7&&CKEDITOR.env.version<11)j.on("mousedown",function(a){if(a.data.getTarget().is("html")){f.on("mouseup",c);j.on("mouseup",c)}})}}l.attachListener(l,"selectionchange",a,e);l.attachListener(l,"keyup",d,e);l.attachListener(l,CKEDITOR.env.webkit?"DOMFocusIn":"focus",function(){e.forceNextSelectionCheck();e.selectionChange(1)});if(r&&(CKEDITOR.env.webkit||CKEDITOR.env.gecko)){var v;l.attachListener(l,"mousedown",function(){v=1});l.attachListener(g.getDocumentElement(),"mouseup", +function(){v&&d.call(e);v=0})}else l.attachListener(CKEDITOR.env.ie?l:g.getDocumentElement(),"mouseup",d,e);CKEDITOR.env.webkit&&l.attachListener(g,"keydown",function(a){switch(a.data.getKey()){case 13:case 33:case 34:case 35:case 36:case 37:case 39:case 8:case 45:case 46:h(l)}},null,null,-1);l.attachListener(l,"keydown",B(e),null,null,-1)});e.on("setData",function(){e.unlockSelection();CKEDITOR.env.webkit&&c()});e.on("contentDomUnload",function(){e.unlockSelection()});if(CKEDITOR.env.ie9Compat)e.on("beforeDestroy", +c,null,null,9);e.on("dataReady",function(){delete e._.fakeSelection;delete e._.hiddenSelectionContainer;e.selectionChange(1)});e.on("loadSnapshot",function(){var a=CKEDITOR.dom.walker.nodeType(CKEDITOR.NODE_ELEMENT),b=e.editable().getLast(a);if(b&&b.hasAttribute("data-cke-hidden-sel")){b.remove();if(CKEDITOR.env.gecko)(a=e.editable().getFirst(a))&&(a.is("br")&&a.getAttribute("_moz_editor_bogus_node"))&&a.remove()}},null,null,100);e.on("key",function(a){if(e.mode=="wysiwyg"){var b=e.getSelection(); +if(b.isFake){var c=t[a.data.keyCode];if(c)return c({editor:e,selected:b.getSelectedElement(),selection:b,keyEvent:a})}}})});CKEDITOR.on("instanceReady",function(a){function b(){var a=d.editable();if(a)if(a=f(a)){var c=d.document.$.getSelection();if(c.type!="None"&&(c.anchorNode==a.$||c.focusNode==a.$))g=j(c);e=a.getText();a.setText(i(e))}}function c(){var a=d.editable();if(a)if(a=f(a)){a.setText(e);if(g){n(d.document.$,g);g=null}}}var d=a.editor,e,g;if(CKEDITOR.env.webkit){d.on("selectionChange", +function(){var a=d.editable(),b=f(a);b&&(b.getCustomData("ready")?h(a):b.setCustomData("ready",1))},null,null,-1);d.on("beforeSetMode",function(){h(d.editable())},null,null,-1);d.on("beforeUndoImage",b);d.on("afterUndoImage",c);d.on("beforeGetData",b,null,null,0);d.on("getData",c)}});CKEDITOR.editor.prototype.selectionChange=function(b){(b?a:d).call(this)};CKEDITOR.editor.prototype.getSelection=function(a){if((this._.savedSelection||this._.fakeSelection)&&!a)return this._.savedSelection||this._.fakeSelection; +return(a=this.editable())&&this.mode=="wysiwyg"?new CKEDITOR.dom.selection(a):null};CKEDITOR.editor.prototype.lockSelection=function(a){a=a||this.getSelection(1);if(a.getType()!=CKEDITOR.SELECTION_NONE){!a.isLocked&&a.lock();this._.savedSelection=a;return true}return false};CKEDITOR.editor.prototype.unlockSelection=function(a){var b=this._.savedSelection;if(b){b.unlock(a);delete this._.savedSelection;return true}return false};CKEDITOR.editor.prototype.forceNextSelectionCheck=function(){delete this._.selectionPreviousPath}; +CKEDITOR.dom.document.prototype.getSelection=function(){return new CKEDITOR.dom.selection(this)};CKEDITOR.dom.range.prototype.select=function(){var a=this.root instanceof CKEDITOR.editable?this.root.editor.getSelection():new CKEDITOR.dom.selection(this.root);a.selectRanges([this]);return a};CKEDITOR.SELECTION_NONE=1;CKEDITOR.SELECTION_TEXT=2;CKEDITOR.SELECTION_ELEMENT=3;var x=typeof window.getSelection!="function",u=1;CKEDITOR.dom.selection=function(a){if(a instanceof CKEDITOR.dom.selection)var b= +a,a=a.root;var c=a instanceof CKEDITOR.dom.element;this.rev=b?b.rev:u++;this.document=a instanceof CKEDITOR.dom.document?a:a.getDocument();this.root=c?a:this.document.getBody();this.isLocked=0;this._={cache:{}};if(b){CKEDITOR.tools.extend(this._.cache,b._.cache);this.isFake=b.isFake;this.isLocked=b.isLocked;return this}var a=this.getNative(),d,e;if(a)if(a.getRangeAt)d=(e=a.rangeCount&&a.getRangeAt(0))&&new CKEDITOR.dom.node(e.commonAncestorContainer);else{try{e=a.createRange()}catch(g){}d=e&&CKEDITOR.dom.element.get(e.item&& +e.item(0)||e.parentElement())}if(!d||!(d.type==CKEDITOR.NODE_ELEMENT||d.type==CKEDITOR.NODE_TEXT)||!this.root.equals(d)&&!this.root.contains(d)){this._.cache.type=CKEDITOR.SELECTION_NONE;this._.cache.startElement=null;this._.cache.selectedElement=null;this._.cache.selectedText="";this._.cache.ranges=new CKEDITOR.dom.rangeList}return this};var C={img:1,hr:1,li:1,table:1,tr:1,td:1,th:1,embed:1,object:1,ol:1,ul:1,a:1,input:1,form:1,select:1,textarea:1,button:1,fieldset:1,thead:1,tfoot:1};CKEDITOR.dom.selection.prototype= +{getNative:function(){return this._.cache.nativeSel!==void 0?this._.cache.nativeSel:this._.cache.nativeSel=x?this.document.$.selection:this.document.getWindow().$.getSelection()},getType:x?function(){var a=this._.cache;if(a.type)return a.type;var b=CKEDITOR.SELECTION_NONE;try{var c=this.getNative(),d=c.type;if(d=="Text")b=CKEDITOR.SELECTION_TEXT;if(d=="Control")b=CKEDITOR.SELECTION_ELEMENT;if(c.createRange().parentElement())b=CKEDITOR.SELECTION_TEXT}catch(e){}return a.type=b}:function(){var a=this._.cache; +if(a.type)return a.type;var b=CKEDITOR.SELECTION_TEXT,c=this.getNative();if(!c||!c.rangeCount)b=CKEDITOR.SELECTION_NONE;else if(c.rangeCount==1){var c=c.getRangeAt(0),d=c.startContainer;if(d==c.endContainer&&d.nodeType==1&&c.endOffset-c.startOffset==1&&C[d.childNodes[c.startOffset].nodeName.toLowerCase()])b=CKEDITOR.SELECTION_ELEMENT}return a.type=b},getRanges:function(){var a=x?function(){function a(b){return(new CKEDITOR.dom.node(b)).getIndex()}var b=function(b,c){b=b.duplicate();b.collapse(c); +var d=b.parentElement();if(!d.hasChildNodes())return{container:d,offset:0};for(var e=d.children,g,f,h=b.duplicate(),r=0,l=e.length-1,k=-1,i,j;r<=l;){k=Math.floor((r+l)/2);g=e[k];h.moveToElementText(g);i=h.compareEndPoints("StartToStart",b);if(i>0)l=k-1;else if(i<0)r=k+1;else return{container:d,offset:a(g)}}if(k==-1||k==e.length-1&&i<0){h.moveToElementText(d);h.setEndPoint("StartToStart",b);h=h.text.replace(/(\r\n|\r)/g,"\n").length;e=d.childNodes;if(!h){g=e[e.length-1];return g.nodeType!=CKEDITOR.NODE_TEXT? +{container:d,offset:e.length}:{container:g,offset:g.nodeValue.length}}for(d=e.length;h>0&&d>0;){f=e[--d];if(f.nodeType==CKEDITOR.NODE_TEXT){j=f;h=h-f.nodeValue.length}}return{container:j,offset:-h}}h.collapse(i>0?true:false);h.setEndPoint(i>0?"StartToStart":"EndToStart",b);h=h.text.replace(/(\r\n|\r)/g,"\n").length;if(!h)return{container:d,offset:a(g)+(i>0?0:1)};for(;h>0;)try{f=g[i>0?"previousSibling":"nextSibling"];if(f.nodeType==CKEDITOR.NODE_TEXT){h=h-f.nodeValue.length;j=f}g=f}catch(n){return{container:d, +offset:a(g)}}return{container:j,offset:i>0?-h:j.nodeValue.length+h}};return function(){var a=this.getNative(),c=a&&a.createRange(),d=this.getType();if(!a)return[];if(d==CKEDITOR.SELECTION_TEXT){a=new CKEDITOR.dom.range(this.root);d=b(c,true);a.setStart(new CKEDITOR.dom.node(d.container),d.offset);d=b(c);a.setEnd(new CKEDITOR.dom.node(d.container),d.offset);a.endContainer.getPosition(a.startContainer)&CKEDITOR.POSITION_PRECEDING&&a.endOffset<=a.startContainer.getIndex()&&a.collapse();return[a]}if(d== +CKEDITOR.SELECTION_ELEMENT){for(var d=[],e=0;e1){f=a[a.length-1];a[0].setEnd(f.endContainer,f.endOffset)}f=a[0];var a=f.collapsed,n,o,r;if((c=f.getEnclosedNode())&&c.type==CKEDITOR.NODE_ELEMENT&&c.getName()in C&&(!c.is("a")||!c.getText()))try{r=c.$.createControlRange(); +r.addElement(c.$);r.select();return}catch(J){}if(f.startContainer.type==CKEDITOR.NODE_ELEMENT&&f.startContainer.getName()in b||f.endContainer.type==CKEDITOR.NODE_ELEMENT&&f.endContainer.getName()in b){f.shrink(CKEDITOR.NODE_ELEMENT,true);a=f.collapsed}r=f.createBookmark();b=r.startNode;if(!a)g=r.endNode;r=f.document.$.body.createTextRange();r.moveToElementText(b.$);r.moveStart("character",1);if(g){i=f.document.$.body.createTextRange();i.moveToElementText(g.$);r.setEndPoint("EndToEnd",i);r.moveEnd("character", +-1)}else{n=b.getNext(j);o=b.hasAscendant("pre");n=!(n&&n.getText&&n.getText().match(i))&&(o||!b.hasPrevious()||b.getPrevious().is&&b.getPrevious().is("br"));o=f.document.createElement("span");o.setHtml("");o.insertBefore(b);n&&f.document.createText("").insertBefore(b)}f.setStartBefore(b);b.remove();if(a){if(n){r.moveStart("character",-1);r.select();f.document.$.selection.clear()}else r.select();f.moveToPosition(o,CKEDITOR.POSITION_BEFORE_START);o.remove()}else{f.setEndBefore(g);g.remove(); +r.select()}}else{g=this.getNative();if(!g)return;this.removeAllRanges();for(r=0;r=0){f.collapse(1);o.setEnd(f.endContainer.$, +f.endOffset)}else throw D;}g.addRange(o)}}this.reset();this.root.fire("selectionchange")}}},fake:function(a){var b=this.root.editor;this.reset();g(b);var c=this._.cache,d=new CKEDITOR.dom.range(this.root);d.setStartBefore(a);d.setEndAfter(a);c.ranges=new CKEDITOR.dom.rangeList(d);c.selectedElement=c.startElement=a;c.type=CKEDITOR.SELECTION_ELEMENT;c.selectedText=c.nativeSel=null;this.isFake=1;this.rev=u++;b._.fakeSelection=this;this.root.fire("selectionchange")},isHidden:function(){var a=this.getCommonAncestor(); +a&&a.type==CKEDITOR.NODE_TEXT&&(a=a.getParent());return!(!a||!a.data("cke-hidden-sel"))},createBookmarks:function(a){a=this.getRanges().createBookmarks(a);this.isFake&&(a.isFake=1);return a},createBookmarks2:function(a){a=this.getRanges().createBookmarks2(a);this.isFake&&(a.isFake=1);return a},selectBookmarks:function(a){for(var b=[],c,d=0;d]*>)[ \t\r\n]*/gi,"$1");f=f.replace(/([ \t\n\r]+| )/g, +" ");f=f.replace(/]*>/gi,"\n");if(CKEDITOR.env.ie){var h=a.getDocument().createElement("div");h.append(e);e.$.outerHTML="
"+f+"
";e.copyAttributes(h.getFirst());e=h.getFirst().remove()}else e.setHtml(f);b=e}else f?b=B(c?[a.getHtml()]:n(a),b):a.moveChildren(b);b.replace(a);if(d){var c=b,i;if((i=c.getPrevious(A))&&i.type==CKEDITOR.NODE_ELEMENT&&i.is("pre")){d=g(i.getHtml(),/\n$/,"")+"\n\n"+g(c.getHtml(),/^\n/,"");CKEDITOR.env.ie?c.$.outerHTML="
"+d+"
":c.setHtml(d);i.remove()}}else c&& +p(b)}function n(a){var b=[];g(a.getOuterHtml(),/(\S\s*)\n(?:\s|(]+data-cke-bookmark.*?\/span>))*\n(?!$)/gi,function(a,b,c){return b+"
"+c+"
"}).replace(/([\s\S]*?)<\/pre>/gi,function(a,c){b.push(c)});return b}function g(a,b,c){var d="",e="",a=a.replace(/(^]+data-cke-bookmark.*?\/span>)|(]+data-cke-bookmark.*?\/span>$)/gi,function(a,b,c){b&&(d=b);c&&(e=c);return""});return d+a.replace(b,c)+e}function B(a,b){var c;a.length>1&&(c=new CKEDITOR.dom.documentFragment(b.getDocument()));
+for(var d=0;d"),e=e.replace(/[ \t]{2,}/g,function(a){return CKEDITOR.tools.repeat(" ",a.length-1)+" "});if(c){var f=b.clone();f.setHtml(e);c.append(f)}else b.setHtml(e)}return c||b}function s(a,b){var c=this._.definition,
+d=c.attributes,c=c.styles,e=C(this)[a.getName()],g=CKEDITOR.tools.isEmpty(d)&&CKEDITOR.tools.isEmpty(c),f;for(f in d)if(!((f=="class"||this._.definition.fullMatch)&&a.getAttribute(f)!=l(f,d[f]))&&!(b&&f.slice(0,5)=="data-")){g=a.hasAttribute(f);a.removeAttribute(f)}for(var h in c)if(!(this._.definition.fullMatch&&a.getStyle(h)!=l(h,c[h],true))){g=g||!!a.getStyle(h);a.removeStyle(h)}o(a,e,k[a.getName()]);g&&(this._.definition.alwaysRemoveElement?p(a,1):!CKEDITOR.dtd.$block[a.getName()]||this._.enterMode==
+CKEDITOR.ENTER_BR&&!a.hasAttributes()?p(a):a.renameNode(this._.enterMode==CKEDITOR.ENTER_P?"p":"div"))}function z(a){for(var b=C(this),c=a.getElementsByTag(this.element),d,e=c.count();--e>=0;){d=c.getItem(e);d.isReadOnly()||s.call(this,d,true)}for(var g in b)if(g!=this.element){c=a.getElementsByTag(g);for(e=c.count()-1;e>=0;e--){d=c.getItem(e);d.isReadOnly()||o(d,b[g])}}}function o(a,b,c){if(b=b&&b.attributes)for(var d=0;d",a||b.name,"");return c.join("")},getDefinition:function(){return this._.definition}};CKEDITOR.style.getStyleText=function(a){var b=a._ST;if(b)return b;var b=a.styles,c=
+a.attributes&&a.attributes.style||"",d="";c.length&&(c=c.replace(F,";"));for(var e in b){var g=b[e],f=(e+":"+g).replace(F,";");g=="inherit"?d=d+f:c=c+f}c.length&&(c=CKEDITOR.tools.normalizeCssText(c,true));return a._ST=c+d};CKEDITOR.style.customHandlers={};CKEDITOR.style.addCustomHandler=function(a){var b=function(a){this._={definition:a};this.setup&&this.setup(a)};b.prototype=CKEDITOR.tools.extend(CKEDITOR.tools.prototypedCopy(CKEDITOR.style.prototype),{assignedTo:CKEDITOR.STYLE_OBJECT},a,true);
+return this.customHandlers[a.type]=b};var K=CKEDITOR.POSITION_PRECEDING|CKEDITOR.POSITION_IDENTICAL|CKEDITOR.POSITION_IS_CONTAINED,E=CKEDITOR.POSITION_FOLLOWING|CKEDITOR.POSITION_IDENTICAL|CKEDITOR.POSITION_IS_CONTAINED})();CKEDITOR.styleCommand=function(a,d){this.requiredContent=this.allowedContent=this.style=a;CKEDITOR.tools.extend(this,d,true)};
+CKEDITOR.styleCommand.prototype.exec=function(a){a.focus();this.state==CKEDITOR.TRISTATE_OFF?a.applyStyle(this.style):this.state==CKEDITOR.TRISTATE_ON&&a.removeStyle(this.style)};CKEDITOR.stylesSet=new CKEDITOR.resourceManager("","stylesSet");CKEDITOR.addStylesSet=CKEDITOR.tools.bind(CKEDITOR.stylesSet.add,CKEDITOR.stylesSet);CKEDITOR.loadStylesSet=function(a,d,b){CKEDITOR.stylesSet.addExternal(a,d,"");CKEDITOR.stylesSet.load(a,b)};
+CKEDITOR.tools.extend(CKEDITOR.editor.prototype,{attachStyleStateChange:function(a,d){var b=this._.styleStateChangeCallbacks;if(!b){b=this._.styleStateChangeCallbacks=[];this.on("selectionChange",function(a){for(var d=0;d"}});"use strict";
+(function(){var a={},d={},b;for(b in CKEDITOR.dtd.$blockLimit)b in CKEDITOR.dtd.$list||(a[b]=1);for(b in CKEDITOR.dtd.$block)b in CKEDITOR.dtd.$blockLimit||b in CKEDITOR.dtd.$empty||(d[b]=1);CKEDITOR.dom.elementPath=function(b,e){var f=null,h=null,i=[],j=b,n,e=e||b.getDocument().getBody();do if(j.type==CKEDITOR.NODE_ELEMENT){i.push(j);if(!this.lastElement){this.lastElement=j;if(j.is(CKEDITOR.dtd.$object)||j.getAttribute("contenteditable")=="false")continue}if(j.equals(e))break;if(!h){n=j.getName();
+j.getAttribute("contenteditable")=="true"?h=j:!f&&d[n]&&(f=j);if(a[n]){var g;if(g=!f){if(n=n=="div"){a:{n=j.getChildren();g=0;for(var B=n.count();g-1}:typeof a=="function"?c=a:typeof a=="object"&&(c=
+function(b){return b.getName()in a});var e=this.elements,f=e.length;d&&f--;if(b){e=Array.prototype.slice.call(e,0);e.reverse()}for(d=0;d=c){f=e.createText("");f.insertAfter(this)}else{a=e.createText("");a.insertAfter(f);a.remove()}return f},substring:function(a,
+d){return typeof d!="number"?this.$.nodeValue.substr(a):this.$.nodeValue.substring(a,d)}});
+(function(){function a(a,c,d){var f=a.serializable,h=c[d?"endContainer":"startContainer"],i=d?"endOffset":"startOffset",j=f?c.document.getById(a.startNode):a.startNode,a=f?c.document.getById(a.endNode):a.endNode;if(h.equals(j.getPrevious())){c.startOffset=c.startOffset-h.getLength()-a.getPrevious().getLength();h=a.getNext()}else if(h.equals(a.getPrevious())){c.startOffset=c.startOffset-h.getLength();h=a.getNext()}h.equals(j.getParent())&&c[i]++;h.equals(a.getParent())&&c[i]++;c[d?"endContainer":"startContainer"]=
+h;return c}CKEDITOR.dom.rangeList=function(a){if(a instanceof CKEDITOR.dom.rangeList)return a;a?a instanceof CKEDITOR.dom.range&&(a=[a]):a=[];return CKEDITOR.tools.extend(a,d)};var d={createIterator:function(){var a=this,c=CKEDITOR.dom.walker.bookmark(),d=[],f;return{getNextRange:function(h){f=f===void 0?0:f+1;var i=a[f];if(i&&a.length>1){if(!f)for(var j=a.length-1;j>=0;j--)d.unshift(a[j].createBookmark(true));if(h)for(var n=0;a[f+n+1];){for(var g=i.document,h=0,j=g.getById(d[n].endNode),g=g.getById(d[n+
+1].startNode);;){j=j.getNextSourceNode(false);if(g.equals(j))h=1;else if(c(j)||j.type==CKEDITOR.NODE_ELEMENT&&j.isBlockBoundary())continue;break}if(!h)break;n++}for(i.moveToBookmark(d.shift());n--;){j=a[++f];j.moveToBookmark(d.shift());i.setEnd(j.endContainer,j.endOffset)}}return i}}},createBookmarks:function(b){for(var c=[],d,f=0;fb?-1:1}),e=0,f;e',CKEDITOR.document);a.appendTo(CKEDITOR.document.getHead());try{var d=a.getComputedStyle("border-top-color"),b=a.getComputedStyle("border-right-color");CKEDITOR.env.hc=!!(d&&d==b)}catch(c){CKEDITOR.env.hc=false}a.remove()}if(CKEDITOR.env.hc)CKEDITOR.env.cssClass=CKEDITOR.env.cssClass+" cke_hc";
+CKEDITOR.document.appendStyleText(".cke{visibility:hidden;}");CKEDITOR.status="loaded";CKEDITOR.fireOnce("loaded");if(a=CKEDITOR._.pending){delete CKEDITOR._.pending;for(d=0;dc;c++){var f=a,h=c,d;d=parseInt(a[c],16);d=("0"+(0>e?0|d*(1+e):0|d+(255-d)*e).toString(16)).slice(-2);f[h]=d}return"#"+a.join("")}}(),c=function(){var b=new CKEDITOR.template("background:#{to};background-image:-webkit-gradient(linear,lefttop,leftbottom,from({from}),to({to}));background-image:-moz-linear-gradient(top,{from},{to});background-image:-webkit-linear-gradient(top,{from},{to});background-image:-o-linear-gradient(top,{from},{to});background-image:-ms-linear-gradient(top,{from},{to});background-image:linear-gradient(top,{from},{to});filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='{from}',endColorstr='{to}');");return function(c,
-a){return b.output({from:c,to:a})}}(),f={editor:new CKEDITOR.template("{id}.cke_chrome [border-color:{defaultBorder};] {id} .cke_top [ {defaultGradient}border-bottom-color:{defaultBorder};] {id} .cke_bottom [{defaultGradient}border-top-color:{defaultBorder};] {id} .cke_resizer [border-right-color:{ckeResizer}] {id} .cke_dialog_title [{defaultGradient}border-bottom-color:{defaultBorder};] {id} .cke_dialog_footer [{defaultGradient}outline-color:{defaultBorder};border-top-color:{defaultBorder};] {id} .cke_dialog_tab [{lightGradient}border-color:{defaultBorder};] {id} .cke_dialog_tab:hover [{mediumGradient}] {id} .cke_dialog_contents [border-top-color:{defaultBorder};] {id} .cke_dialog_tab_selected, {id} .cke_dialog_tab_selected:hover [background:{dialogTabSelected};border-bottom-color:{dialogTabSelectedBorder};] {id} .cke_dialog_body [background:{dialogBody};border-color:{defaultBorder};] {id} .cke_toolgroup [{lightGradient}border-color:{defaultBorder};] {id} a.cke_button_off:hover, {id} a.cke_button_off:focus, {id} a.cke_button_off:active [{mediumGradient}] {id} .cke_button_on [{ckeButtonOn}] {id} .cke_toolbar_separator [background-color: {ckeToolbarSeparator};] {id} .cke_combo_button [border-color:{defaultBorder};{lightGradient}] {id} a.cke_combo_button:hover, {id} a.cke_combo_button:focus, {id} .cke_combo_on a.cke_combo_button [border-color:{defaultBorder};{mediumGradient}] {id} .cke_path_item [color:{elementsPathColor};] {id} a.cke_path_item:hover, {id} a.cke_path_item:focus, {id} a.cke_path_item:active [background-color:{elementsPathBg};] {id}.cke_panel [border-color:{defaultBorder};] "),
+CKEDITOR.skin.name="moono";CKEDITOR.skin.ua_editor="ie,iequirks,ie7,ie8,gecko";CKEDITOR.skin.ua_dialog="ie,iequirks,ie7,ie8";
+CKEDITOR.skin.chameleon=function(){var b=function(){return function(b,e){for(var a=b.match(/[^#]./g),c=0;3>c;c++){var f=a,h=c,d;d=parseInt(a[c],16);d=("0"+(0>e?0|d*(1+e):0|d+(255-d)*e).toString(16)).slice(-2);f[h]=d}return"#"+a.join("")}}(),c=function(){var b=new CKEDITOR.template("background:#{to};background-image:linear-gradient(to bottom,{from},{to});filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='{from}',endColorstr='{to}');");return function(c,a){return b.output({from:c,
+to:a})}}(),f={editor:new CKEDITOR.template("{id}.cke_chrome [border-color:{defaultBorder};] {id} .cke_top [ {defaultGradient}border-bottom-color:{defaultBorder};] {id} .cke_bottom [{defaultGradient}border-top-color:{defaultBorder};] {id} .cke_resizer [border-right-color:{ckeResizer}] {id} .cke_dialog_title [{defaultGradient}border-bottom-color:{defaultBorder};] {id} .cke_dialog_footer [{defaultGradient}outline-color:{defaultBorder};border-top-color:{defaultBorder};] {id} .cke_dialog_tab [{lightGradient}border-color:{defaultBorder};] {id} .cke_dialog_tab:hover [{mediumGradient}] {id} .cke_dialog_contents [border-top-color:{defaultBorder};] {id} .cke_dialog_tab_selected, {id} .cke_dialog_tab_selected:hover [background:{dialogTabSelected};border-bottom-color:{dialogTabSelectedBorder};] {id} .cke_dialog_body [background:{dialogBody};border-color:{defaultBorder};] {id} .cke_toolgroup [{lightGradient}border-color:{defaultBorder};] {id} a.cke_button_off:hover, {id} a.cke_button_off:focus, {id} a.cke_button_off:active [{mediumGradient}] {id} .cke_button_on [{ckeButtonOn}] {id} .cke_toolbar_separator [background-color: {ckeToolbarSeparator};] {id} .cke_combo_button [border-color:{defaultBorder};{lightGradient}] {id} a.cke_combo_button:hover, {id} a.cke_combo_button:focus, {id} .cke_combo_on a.cke_combo_button [border-color:{defaultBorder};{mediumGradient}] {id} .cke_path_item [color:{elementsPathColor};] {id} a.cke_path_item:hover, {id} a.cke_path_item:focus, {id} a.cke_path_item:active [background-color:{elementsPathBg};] {id}.cke_panel [border-color:{defaultBorder};] "),
 panel:new CKEDITOR.template(".cke_panel_grouptitle [{lightGradient}border-color:{defaultBorder};] .cke_menubutton_icon [background-color:{menubuttonIcon};] .cke_menubutton:hover .cke_menubutton_icon, .cke_menubutton:focus .cke_menubutton_icon, .cke_menubutton:active .cke_menubutton_icon [background-color:{menubuttonIconHover};] .cke_menuseparator [background-color:{menubuttonIcon};] a:hover.cke_colorbox, a:focus.cke_colorbox, a:active.cke_colorbox [border-color:{defaultBorder};] a:hover.cke_colorauto, a:hover.cke_colormore, a:focus.cke_colorauto, a:focus.cke_colormore, a:active.cke_colorauto, a:active.cke_colormore [background-color:{ckeColorauto};border-color:{defaultBorder};] ")};
 return function(g,e){var a=g.uiColor,a={id:"."+g.id,defaultBorder:b(a,-0.1),defaultGradient:c(b(a,0.9),a),lightGradient:c(b(a,1),b(a,0.7)),mediumGradient:c(b(a,0.8),b(a,0.5)),ckeButtonOn:c(b(a,0.6),b(a,0.7)),ckeResizer:b(a,-0.4),ckeToolbarSeparator:b(a,0.5),ckeColorauto:b(a,0.8),dialogBody:b(a,0.7),dialogTabSelected:c("#FFFFFF","#FFFFFF"),dialogTabSelectedBorder:"#FFF",elementsPathColor:b(a,-0.6),elementsPathBg:a,menubuttonIcon:b(a,0.5),menubuttonIconHover:b(a,0.3)};return f[e].output(a).replace(/\[/g,
 "{").replace(/\]/g,"}")}}();CKEDITOR.plugins.add("dialogui",{onLoad:function(){var h=function(b){this._||(this._={});this._["default"]=this._.initValue=b["default"]||"";this._.required=b.required||!1;for(var a=[this._],d=1;darguments.length)){var c=h.call(this,a);c.labelId=CKEDITOR.tools.getNextId()+"_label";this._.children=[];CKEDITOR.ui.dialog.uiElement.call(this,b,a,d,"div",null,{role:"presentation"},function(){var f=[],d=a.required?" cke_required":"";"horizontal"!=
-a.labelLayout?f.push('",'"):(d={type:"hbox",widths:a.widths,padding:0,children:[{type:"html",html:'