alchemy_cms 3.1.0.beta1 → 3.1.0.beta2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (72) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/.travis.yml +4 -2
  4. data/README.md +9 -1
  5. data/alchemy_cms.gemspec +24 -13
  6. data/app/assets/javascripts/alchemy/alchemy.autocomplete.js.coffee +1 -1
  7. data/app/assets/javascripts/alchemy/alchemy.element_editors.js.coffee +1 -1
  8. data/app/assets/javascripts/alchemy/alchemy.initializer.js.coffee +9 -0
  9. data/app/assets/javascripts/alchemy/alchemy.js +4 -0
  10. data/app/assets/javascripts/alchemy/alchemy.preview.js.coffee +3 -2
  11. data/app/assets/javascripts/alchemy/alchemy.preview_window.js.coffee +2 -0
  12. data/app/assets/javascripts/alchemy/alchemy.translations.js.coffee +43 -1
  13. data/app/assets/stylesheets/alchemy/_mixins.scss +1 -2
  14. data/app/assets/stylesheets/alchemy/archive.scss +1 -1
  15. data/app/assets/stylesheets/alchemy/base.scss +18 -1
  16. data/app/assets/stylesheets/alchemy/buttons.scss +5 -0
  17. data/app/assets/stylesheets/alchemy/dialogs.scss +0 -1
  18. data/app/assets/stylesheets/alchemy/frame.scss +17 -10
  19. data/app/assets/stylesheets/alchemy/menubar.css.scss +3 -0
  20. data/app/assets/stylesheets/alchemy/tables.scss +30 -8
  21. data/app/controllers/alchemy/admin/attachments_controller.rb +9 -1
  22. data/app/controllers/alchemy/admin/essence_files_controller.rb +3 -4
  23. data/app/controllers/alchemy/pages_controller.rb +20 -2
  24. data/app/models/alchemy/content.rb +2 -1
  25. data/app/models/alchemy/element.rb +1 -1
  26. data/app/views/alchemy/admin/attachments/_files_list.html.erb +22 -18
  27. data/app/views/alchemy/admin/attachments/index.html.erb +1 -1
  28. data/app/views/alchemy/admin/languages/_table.html.erb +29 -25
  29. data/app/views/alchemy/admin/languages/index.html.erb +1 -1
  30. data/app/views/alchemy/admin/pictures/info.html.erb +3 -2
  31. data/app/views/alchemy/admin/resources/_table.html.erb +17 -13
  32. data/app/views/alchemy/admin/resources/index.html.erb +1 -1
  33. data/app/views/alchemy/admin/sites/index.html.erb +1 -1
  34. data/app/views/alchemy/admin/tags/edit.html.erb +1 -1
  35. data/app/views/alchemy/admin/tags/index.html.erb +14 -10
  36. data/app/views/alchemy/essences/_essence_file_editor.html.erb +20 -24
  37. data/app/views/alchemy/messages/contact_form_mail.es.text.erb +12 -0
  38. data/app/views/layouts/alchemy/admin.html.erb +2 -0
  39. data/bin/alchemy +58 -26
  40. data/config/locales/alchemy.en.yml +2 -1
  41. data/config/locales/alchemy.es.yml +958 -0
  42. data/config/locales/alchemy.fr.yml +1 -1
  43. data/config/locales/alchemy.ru.yml +837 -0
  44. data/config/locales/simple_form.es.yml +6 -0
  45. data/config/locales/simple_form.ru.yml +25 -0
  46. data/lib/alchemy/engine.rb +11 -0
  47. data/lib/alchemy/essence.rb +12 -1
  48. data/lib/alchemy/resources_helper.rb +3 -1
  49. data/lib/alchemy/test_support/essence_shared_examples.rb +37 -0
  50. data/lib/alchemy/test_support/factories.rb +2 -0
  51. data/lib/alchemy/version.rb +1 -1
  52. data/lib/rails/generators/alchemy/module/templates/module_config.rb.tt +4 -2
  53. data/lib/rails/generators/alchemy/scaffold/files/alchemy.es.yml +31 -0
  54. data/lib/rails/generators/alchemy/scaffold/scaffold_generator.rb +1 -0
  55. data/lib/rails/templates/alchemy.rb +2 -0
  56. data/lib/tasks/alchemy/install.rake +11 -7
  57. data/spec/controllers/admin/attachments_controller_spec.rb +21 -0
  58. data/spec/controllers/admin/essence_files_controller_spec.rb +13 -12
  59. data/spec/controllers/alchemy/api/contents_controller_spec.rb +4 -4
  60. data/spec/controllers/attachments_controller_spec.rb +18 -0
  61. data/spec/controllers/pages_controller_spec.rb +20 -3
  62. data/spec/dummy/db/migrate/20121026104128_create_events.rb +2 -0
  63. data/spec/dummy/db/schema.rb +5 -3
  64. data/spec/features/admin/resources_integration_spec.rb +5 -0
  65. data/spec/features/page_feature_spec.rb +20 -0
  66. data/spec/models/content_spec.rb +24 -2
  67. data/spec/models/element_spec.rb +11 -0
  68. data/spec/views/essences/essence_file_editor_spec.rb +61 -0
  69. data/vendor/assets/javascripts/jquery_plugins/jquery.floatThead.min.js +3 -0
  70. data/vendor/assets/javascripts/tinymce/langs/es.js +197 -0
  71. data/vendor/assets/javascripts/tinymce/langs/ru.js +197 -0
  72. metadata +53 -38
@@ -279,12 +279,14 @@ ActiveRecord::Schema.define(version: 20140701160225) do
279
279
  t.string "hidden_name"
280
280
  t.datetime "starts_at"
281
281
  t.datetime "ends_at"
282
+ t.time "lunch_starts_at"
283
+ t.time "lunch_ends_at"
282
284
  t.text "description"
283
- t.decimal "entrance_fee", precision: 6, scale: 2
285
+ t.decimal "entrance_fee", precision: 6, scale: 2
284
286
  t.boolean "published"
285
287
  t.integer "location_id"
286
- t.datetime "created_at", null: false
287
- t.datetime "updated_at", null: false
288
+ t.datetime "created_at", null: false
289
+ t.datetime "updated_at", null: false
288
290
  end
289
291
 
290
292
  create_table "locations", force: true do |t|
@@ -37,6 +37,11 @@ describe "Resources" do
37
37
  expect(page).to have_selector('input#event_starts_at[type="date"]')
38
38
  expect(page).to have_selector('textarea#event_description')
39
39
  expect(page).to have_selector('input#event_published[type="checkbox"]')
40
+ expect(page).to have_selector('input#event_lunch_starts_at_1i[type="hidden"]')
41
+ expect(page).to have_selector('input#event_lunch_starts_at_2i[type="hidden"]')
42
+ expect(page).to have_selector('input#event_lunch_starts_at_3i[type="hidden"]')
43
+ expect(page).to have_selector('select#event_lunch_starts_at_4i')
44
+ expect(page).to have_selector('select#event_lunch_starts_at_5i')
40
45
  end
41
46
 
42
47
  it "should have a select box for associated models" do
@@ -33,6 +33,16 @@ module Alchemy
33
33
  allow_any_instance_of(PagesController).to receive(:multi_language?).and_return(true)
34
34
  end
35
35
 
36
+ let(:second_page) { FactoryGirl.create(:public_page, name: 'Second Page') }
37
+ let(:legacy_url) { LegacyPageUrl.create(urlname: 'index.php?option=com_content&view=article&id=48&Itemid=69', page: second_page) }
38
+
39
+ it "should redirect legacy url with unknown format & query string" do
40
+ visit "/#{legacy_url.urlname}"
41
+ uri = URI.parse(page.current_url)
42
+ expect(uri.query).to be_nil
43
+ expect(uri.request_uri).to eq("/en/#{second_page.urlname}")
44
+ end
45
+
36
46
  context "if no language params are given" do
37
47
  it "should redirect to url with nested language code" do
38
48
  visit "/#{public_page_1.urlname}"
@@ -110,6 +120,16 @@ module Alchemy
110
120
  allow(Config).to receive(:get) { |arg| arg == :url_nesting ? false : Config.parameter(arg) }
111
121
  end
112
122
 
123
+ let(:second_page) { FactoryGirl.create(:public_page, name: 'Second Page') }
124
+ let(:legacy_url) { LegacyPageUrl.create(urlname: 'index.php?option=com_content&view=article&id=48&Itemid=69', page: second_page) }
125
+
126
+ it "should redirect legacy url with unknown format & query string" do
127
+ visit "/#{legacy_url.urlname}"
128
+ uri = URI.parse(page.current_url)
129
+ expect(uri.query).to be_nil
130
+ expect(uri.request_uri).to eq("/#{second_page.urlname}")
131
+ end
132
+
113
133
  it "should redirect from nested language code url to normal url" do
114
134
  visit "/en/#{public_page_1.urlname}"
115
135
  expect(page.current_path).to eq("/#{public_page_1.urlname}")
@@ -2,8 +2,8 @@ require 'spec_helper'
2
2
 
3
3
  module Alchemy
4
4
  describe Content do
5
- let(:element) { create(:element, name: 'headline', :create_contents_after_create => true) }
6
- let(:content) { element.contents.find_by_essence_type('Alchemy::EssenceText') }
5
+ let(:element) { create(:element, name: 'headline', create_contents_after_create: true) }
6
+ let(:content) { element.contents.find_by(essence_type: 'Alchemy::EssenceText') }
7
7
 
8
8
  it "should return the ingredient from its essence" do
9
9
  content.essence.update_attributes(:body => "Hello")
@@ -372,5 +372,27 @@ module Alchemy
372
372
  end
373
373
  end
374
374
 
375
+ context 'delegations' do
376
+ let(:page) { create(:restricted_page) }
377
+
378
+ it "delegates restricted? to page" do
379
+ element.update!(page: page)
380
+ expect(page.restricted?).to be true
381
+ expect(content.page).to eq page
382
+ expect(content.restricted?).to be true
383
+ end
384
+
385
+ it "delegates trashed? to element" do
386
+ element.update!(position: nil)
387
+ expect(element.trashed?).to be true
388
+ expect(content.trashed?).to be true
389
+ end
390
+
391
+ it "delegates public? to element" do
392
+ element.update!(public: false)
393
+ expect(element.public?).to be false
394
+ expect(content.public?).to be false
395
+ end
396
+ end
375
397
  end
376
398
  end
@@ -242,6 +242,17 @@ module Alchemy
242
242
  end
243
243
  end
244
244
 
245
+ describe '#essence_error_messages' do
246
+ let(:element) { Element.new(name: 'article') }
247
+ it "should return the translation with the translated content label" do
248
+ I18n.should_receive(:t).with('content_names.content', default: 'Content').and_return('Content')
249
+ I18n.should_receive(:t).with('content', scope: "content_names.article", default: 'Content').and_return('Contenido')
250
+ I18n.should_receive(:t).with('article.content.invalid', {:scope=>"content_validations", :default=>[:"fields.content.invalid", :"errors.invalid"], :field=>"Contenido"})
251
+ element.should_receive(:essence_errors).and_return({'content' => [:invalid]})
252
+ element.essence_error_messages
253
+ end
254
+ end
255
+
245
256
  describe '#display_name_with_preview_text' do
246
257
  let(:element) { FactoryGirl.build_stubbed(:element, name: 'Foo') }
247
258
 
@@ -0,0 +1,61 @@
1
+ require 'spec_helper'
2
+
3
+ describe 'alchemy/essences/_essence_editor_view' do
4
+ let(:file) { File.new(File.expand_path('../../../fixtures/image with spaces.png', __FILE__)) }
5
+ let(:attachment) { mock_model('Attachment', file: file, name: 'image', file_name: 'Image', icon_css_class: 'image') }
6
+ let(:essence) { mock_model('EssenceFile', attachment: attachment) }
7
+ let(:content) { mock_model('Content', essence: essence, settings: {}, dom_id: 'essence_file_1', form_field_name: '"contents[1][attachment_id]"') }
8
+
9
+ subject do
10
+ render partial: "alchemy/essences/essence_file_editor", locals: {content: content}
11
+ rendered
12
+ end
13
+
14
+ before do
15
+ view.class.send :include, Alchemy::Admin::BaseHelper
16
+ allow(view).to receive(:_t).and_return('')
17
+ allow(view).to receive(:label_and_remove_link).and_return('')
18
+ end
19
+
20
+ context 'with ingredient present' do
21
+ before do
22
+ allow(content).to receive(:ingredient).and_return(attachment)
23
+ end
24
+
25
+ it "renders a hidden field with attachment id" do
26
+ is_expected.to have_selector("input[type='hidden'][value='#{attachment.id}']")
27
+ end
28
+
29
+ it "renders a link to open the attachment library overlay" do
30
+ is_expected.to have_selector("a.assign_file[href='/admin/attachments?content_id=#{content.id}&options=%7B%7D']")
31
+ end
32
+
33
+ it "renders a link to edit the essence" do
34
+ is_expected.to have_selector("a.edit_file[href='/admin/essence_files/#{essence.id}/edit?options=%7B%7D']")
35
+ end
36
+
37
+ context 'with content settings `only`' do
38
+ it "renders a link to open the attachment library overlay with only pdfs" do
39
+ expect(content).to receive(:settings).at_least(:once).and_return({only: 'pdf'})
40
+ is_expected.to have_selector("a.assign_file[href='/admin/attachments?content_id=#{content.id}&only=pdf&options=%7B%7D']")
41
+ end
42
+ end
43
+
44
+ context 'with content settings `except`' do
45
+ it "renders a link to open the attachment library overlay without pdfs" do
46
+ expect(content).to receive(:settings).at_least(:once).and_return({except: 'pdf'})
47
+ is_expected.to have_selector("a.assign_file[href='/admin/attachments?content_id=#{content.id}&except=pdf&options=%7B%7D']")
48
+ end
49
+ end
50
+ end
51
+
52
+ context 'without ingredient present' do
53
+ before do
54
+ allow(content).to receive(:ingredient).and_return(nil)
55
+ end
56
+
57
+ it "does not render a hidden field with attachment id" do
58
+ is_expected.to_not have_selector("input[type='hidden']")
59
+ end
60
+ end
61
+ end
@@ -0,0 +1,3 @@
1
+ // @preserve jQuery.floatThead 1.2.9 - http://mkoryak.github.io/floatThead/ - Copyright (c) 2012 - 2014 Misha Koryak
2
+ // @license MIT
3
+ !function(a){function b(a,b,c){if(8==g){var d=j.width(),e=f.debounce(function(){var a=j.width();d!=a&&(d=a,c())},a);j.on(b,e)}else j.on(b,f.debounce(c,a))}function c(a){window.console&&window.console&&window.console.log&&window.console.log(a)}function d(){var b=a('<div style="width:50px;height:50px;overflow-y:scroll;position:absolute;top:-200px;left:-200px;"><div style="height:100px;width:100%"></div>');a("body").append(b);var c=b.innerWidth(),d=a("div",b).innerWidth();return b.remove(),c-d}function e(a){if(a.dataTableSettings)for(var b=0;b<a.dataTableSettings.length;b++){var c=a.dataTableSettings[b].nTable;if(a[0]==c)return!0}return!1}a.floatThead=a.floatThead||{},a.floatThead.defaults={cellTag:null,headerCellSelector:"tr:first>th:visible",zIndex:1001,debounceResizeMs:10,useAbsolutePositioning:!0,scrollingTop:0,scrollingBottom:0,scrollContainer:function(){return a([])},getSizingRow:function(a){return a.find("tbody tr:visible:first>*")},floatTableClass:"floatThead-table",floatWrapperClass:"floatThead-wrapper",floatContainerClass:"floatThead-container",copyTableClass:!0,debug:!1};var f=window._,g=function(){for(var a=3,b=document.createElement("b"),c=b.all||[];a=1+a,b.innerHTML="<!--[if gt IE "+a+"]><i><![endif]-->",c[0];);return a>4?a:document.documentMode}(),h=null,i=function(){if(g)return!1;var b=a("<table><colgroup><col></colgroup><tbody><tr><td style='width:10px'></td></tbody></table>");a("body").append(b);var c=b.find("col").width();return b.remove(),0==c},j=a(window),k=0;a.fn.floatThead=function(l){if(l=l||{},!f&&(f=window._||a.floatThead._,!f))throw new Error("jquery.floatThead-slim.js requires underscore. You should use the non-lite version since you do not have underscore.");if(8>g)return this;if(null==h&&(h=i(),h&&(document.createElement("fthtr"),document.createElement("fthtd"),document.createElement("fthfoot"))),f.isString(l)){var m=l,n=this;return this.filter("table").each(function(){var b=a(this).data("floatThead-attached");if(b&&f.isFunction(b[m])){var c=b[m]();"undefined"!=typeof c&&(n=c)}}),n}var o=a.extend({},a.floatThead.defaults||{},l);return a.each(l,function(b){b in a.floatThead.defaults||!o.debug||c("jQuery.floatThead: used ["+b+"] key to init plugin, but that param is not an option for the plugin. Valid options are: "+f.keys(a.floatThead.defaults).join(", "))}),this.filter(":not(."+o.floatTableClass+")").each(function(){function c(a){return a+".fth-"+y+".floatTHead"}function i(){var b=0;A.find("tr:visible").each(function(){b+=a(this).outerHeight(!0)}),Z.outerHeight(b),$.outerHeight(b)}function l(){var a=z.outerWidth(),b=I.width()||a;if(X.width(b-F.vertical),O){var c=100*a/(b-F.vertical);S.css("width",c+"%")}else S.outerWidth(a)}function m(){C=(f.isFunction(o.scrollingTop)?o.scrollingTop(z):o.scrollingTop)||0,D=(f.isFunction(o.scrollingBottom)?o.scrollingBottom(z):o.scrollingBottom)||0}function n(){var b,c;if(V)b=U.find("col").length;else{var d;d=null==o.cellTag&&o.headerCellSelector?o.headerCellSelector:"tr:first>"+o.cellTag,c=A.find(d),b=0,c.each(function(){b+=parseInt(a(this).attr("colspan")||1,10)})}if(b!=H){H=b;for(var e=[],f=[],g=[],i=0;b>i;i++)e.push('<th class="floatThead-col"/>'),f.push("<col/>"),g.push("<fthtd style='display:table-cell;height:0;width:auto;'/>");f=f.join(""),e=e.join(""),h&&(g=g.join(""),W.html(g),bb=W.find("fthtd")),Z.html(e),$=Z.find("th"),V||U.html(f),_=U.find("col"),T.html(f),ab=T.find("col")}return b}function p(){if(!E){if(E=!0,J){var a=z.width(),b=Q.width();a>b&&z.css("minWidth",a)}z.css(db),S.css(db),S.append(A),B.before(Y),i()}}function q(){E&&(E=!1,J&&z.width(fb),Y.detach(),z.prepend(A),z.css(eb),S.css(eb))}function r(a){J!=a&&(J=a,X.css({position:J?"absolute":"fixed"}))}function s(a,b,c,d){return h?c:d?o.getSizingRow(a,b,c):b}function t(){var a,b=n();return function(){var c=s(z,_,bb,g);if(c.length==b&&b>0){if(!V)for(a=0;b>a;a++)_.eq(a).css("width","");q();var d=[];for(a=0;b>a;a++)d[a]=c.get(a).offsetWidth;for(a=0;b>a;a++)ab.eq(a).width(d[a]),_.eq(a).width(d[a]);p()}else S.append(A),z.css(eb),S.css(eb),i()}}function u(a){var b=I.css("border-"+a+"-width"),c=0;return b&&~b.indexOf("px")&&(c=parseInt(b,10)),c}function v(){var a,b=I.scrollTop(),c=0,d=L?K.outerHeight(!0):0,e=M?d:-d,f=X.height(),g=z.offset(),i=0;if(O){var k=I.offset();c=g.top-k.top+b,L&&M&&(c+=d),c-=u("top"),i=u("left")}else a=g.top-C-f+D+F.horizontal;var l=j.scrollTop(),m=j.scrollLeft(),n=I.scrollLeft();return b=I.scrollTop(),function(k){if("windowScroll"==k?(l=j.scrollTop(),m=j.scrollLeft()):"containerScroll"==k?(b=I.scrollTop(),n=I.scrollLeft()):"init"!=k&&(l=j.scrollTop(),m=j.scrollLeft(),b=I.scrollTop(),n=I.scrollLeft()),!h||!(0>l||0>m)){if(R)r("windowScrollDone"==k?!0:!1);else if("windowScrollDone"==k)return null;g=z.offset(),L&&M&&(g.top+=d);var o,s,t=z.outerHeight();if(O&&J){if(c>=b){var u=c-b;o=u>0?u:0}else o=P?0:b;s=i}else!O&&J?(l>a+t+e?o=t-f+e:g.top>l+C?(o=0,q()):(o=C+l-g.top+c+(M?d:0),p()),s=0):O&&!J?(c>b||b-c>t?(o=g.top-l,q()):(o=g.top+b-l-c,p()),s=g.left+n-m):O||J||(l>a+t+e?o=t+C-l+a+e:g.top>l+C?(o=g.top-l,p()):o=C,s=g.left-m);return{top:o,left:s}}}}function w(){var a=null,b=null,c=null;return function(d,e,f){null==d||a==d.top&&b==d.left||(X.css({top:d.top,left:d.left}),a=d.top,b=d.left),e&&l(),f&&i();var g=I.scrollLeft();J&&c==g||(X.scrollLeft(g),c=g)}}function x(){if(I.length){var a=I.width(),b=I.height(),c=z.height(),d=z.width(),e=d>a?G:0,f=c>b?G:0;F.horizontal=d>a-f?G:0,F.vertical=c>b-e?G:0}}var y=k,z=a(this);if(z.data("floatThead-attached"))return!0;if(!z.is("table"))throw new Error('jQuery.floatThead must be run on a table element. ex: $("table").floatThead();');var A=z.find("thead:first"),B=z.find("tbody:first");if(0==A.length)throw new Error("jQuery.floatThead must be run on a table that contains a <thead> element");var C,D,E=!1,F={vertical:0,horizontal:0},G=d(),H=0,I=o.scrollContainer(z)||a([]),J=o.useAbsolutePositioning;null==J&&(J=o.scrollContainer(z).length);var K=z.find("caption"),L=1==K.length;if(L)var M="top"===(K.css("caption-side")||K.attr("align")||"top");var N=a('<fthfoot style="display:table-footer-group;"/>'),O=I.length>0,P=!1,Q=a([]),R=9>=g&&!O&&J,S=a("<table/>"),T=a("<colgroup/>"),U=z.find("colgroup:first"),V=!0;0==U.length&&(U=a("<colgroup/>"),V=!1);var W=a('<fthrow style="display:table-row;height:0;"/>'),X=a('<div style="overflow: hidden;"></div>'),Y=a("<thead/>"),Z=a('<tr class="size-row"/>'),$=a([]),_=a([]),ab=a([]),bb=a([]);if(Y.append(Z),z.prepend(U),h&&(N.append(W),z.append(N)),S.append(T),X.append(S),o.copyTableClass&&S.attr("class",z.attr("class")),S.attr({cellpadding:z.attr("cellpadding"),cellspacing:z.attr("cellspacing"),border:z.attr("border")}),S.css({borderCollapse:z.css("borderCollapse"),border:z.css("border")}),S.addClass(o.floatTableClass).css("margin",0),J){var cb=function(a,b){var c=a.css("position"),d="relative"==c||"absolute"==c;if(!d||b){var e={paddingLeft:a.css("paddingLeft"),paddingRight:a.css("paddingRight")};X.css(e),a=a.wrap("<div class='"+o.floatWrapperClass+"' style='position: relative; clear:both;'></div>").parent(),P=!0}return a};O?(Q=cb(I,!0),Q.append(X)):(Q=cb(z),z.after(X))}else z.after(X);X.css({position:J?"absolute":"fixed",marginTop:0,top:J?0:"auto",zIndex:o.zIndex}),X.addClass(o.floatContainerClass),m();var db={"table-layout":"fixed"},eb={"table-layout":z.css("tableLayout")||"auto"},fb=z[0].style.width||"";x();var gb,hb=function(){(gb=t())()};hb();var ib=v(),jb=w();jb(ib("init"),!0);var kb=f.debounce(function(){jb(ib("windowScrollDone"),!1)},300),lb=function(){jb(ib("windowScroll"),!1),kb()},mb=function(){jb(ib("containerScroll"),!1)},nb=function(){m(),x(),hb(),ib=v(),(jb=w())(ib("resize"),!0,!0)},ob=f.debounce(function(){x(),m(),hb(),ib=v(),jb(ib("reflow"),!0)},1);O?J?I.on(c("scroll"),mb):(I.on(c("scroll"),mb),j.on(c("scroll"),lb)):j.on(c("scroll"),lb),j.on(c("load"),ob),b(o.debounceResizeMs,c("resize"),nb),z.on("reflow",ob),e(z)&&z.on("filter",ob).on("sort",ob).on("page",ob),z.data("floatThead-attached",{destroy:function(){var a=".fth-"+y;q(),z.css(eb),U.remove(),h&&N.remove(),Y.parent().length&&Y.replaceWith(A),z.off("reflow"),I.off(a),P&&(I.length?I.unwrap():z.unwrap()),J&&z.css("minWidth",""),X.remove(),z.data("floatThead-attached",!1),j.off(a)},reflow:function(){ob()},setHeaderHeight:function(){i()},getFloatContainer:function(){return X},getRowGroups:function(){return E?X.find("thead").add(z.find("tbody,tfoot")):z.find("thead,tbody,tfoot")}}),k++}),this}}(jQuery),function(a){a.floatThead=a.floatThead||{},a.floatThead._=window._||function(){var b={},c=Object.prototype.hasOwnProperty,d=["Arguments","Function","String","Number","Date","RegExp"];return b.has=function(a,b){return c.call(a,b)},b.keys=function(a){if(a!==Object(a))throw new TypeError("Invalid object");var c=[];for(var d in a)b.has(a,d)&&c.push(d);return c},a.each(d,function(){var a=this;b["is"+a]=function(b){return Object.prototype.toString.call(b)=="[object "+a+"]"}}),b.debounce=function(a,b,c){var d,e,f,g,h;return function(){f=this,e=arguments,g=new Date;var i=function(){var j=new Date-g;b>j?d=setTimeout(i,b-j):(d=null,c||(h=a.apply(f,e)))},j=c&&!d;return d||(d=setTimeout(i,b)),j&&(h=a.apply(f,e)),h}},b}()}(jQuery);
@@ -0,0 +1,197 @@
1
+ tinymce.addI18n('es',{
2
+ "Cut": "Cortar",
3
+ "Heading 5": "Encabezado 5",
4
+ "Header 2": "Encabezado 2 ",
5
+ "Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "Tu navegador no soporta acceso directo al portapapeles. Por favor usa las teclas Crtl+X\/C\/V de tu teclado",
6
+ "Heading 4": "Encabezado 4",
7
+ "Div": "Capa",
8
+ "Heading 2": "Encabezado 2",
9
+ "Paste": "Pegar",
10
+ "Close": "Cerrar",
11
+ "Font Family": "Familia de fuentes",
12
+ "Pre": "Pre",
13
+ "Align right": "Alinear a la derecha",
14
+ "New document": "Nuevo documento",
15
+ "Blockquote": "Bloque de cita",
16
+ "Numbered list": "Lista numerada",
17
+ "Heading 1": "Encabezado 1",
18
+ "Headings": "Encabezados",
19
+ "Increase indent": "Incrementar sangr\u00eda",
20
+ "Formats": "Formatos",
21
+ "Headers": "Encabezados",
22
+ "Select all": "Seleccionar todo",
23
+ "Header 3": "Encabezado 3",
24
+ "Blocks": "Bloques",
25
+ "Undo": "Deshacer",
26
+ "Strikethrough": "Tachado",
27
+ "Bullet list": "Lista de vi\u00f1etas",
28
+ "Header 1": "Encabezado 1",
29
+ "Superscript": "Super\u00edndice",
30
+ "Clear formatting": "Limpiar formato",
31
+ "Font Sizes": "Tama\u00f1os de fuente",
32
+ "Subscript": "Sub\u00edndice",
33
+ "Header 6": "Encabezado 6",
34
+ "Redo": "Rehacer",
35
+ "Paragraph": "P\u00e1rrafo",
36
+ "Ok": "Ok",
37
+ "Bold": "Negrita",
38
+ "Code": "C\u00f3digo",
39
+ "Italic": "It\u00e1lica",
40
+ "Align center": "Alinear al centro",
41
+ "Header 5": "Encabezado 5 ",
42
+ "Heading 6": "Encabezado 6",
43
+ "Heading 3": "Encabezado 3",
44
+ "Decrease indent": "Disminuir sangr\u00eda",
45
+ "Header 4": "Encabezado 4",
46
+ "Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "Pegar est\u00e1 ahora en modo de texto plano. El contenido se pegar\u00e1 como texto plano hasta que desactive esta opci\u00f3n.",
47
+ "Underline": "Subrayado",
48
+ "Cancel": "Cancelar",
49
+ "Justify": "Justificar",
50
+ "Inline": "en l\u00ednea",
51
+ "Copy": "Copiar",
52
+ "Align left": "Alinear a la izquierda",
53
+ "Visual aids": "Ayudas visuales",
54
+ "Lower Greek": "Inferior Griega",
55
+ "Square": "Cuadrado",
56
+ "Default": "Por defecto",
57
+ "Lower Alpha": "Inferior Alfa",
58
+ "Circle": "C\u00edrculo",
59
+ "Disc": "Disco",
60
+ "Upper Alpha": "Superior Alfa",
61
+ "Upper Roman": "Superior Romana",
62
+ "Lower Roman": "Inferior Romana",
63
+ "Name": "Nombre",
64
+ "Anchor": "Ancla",
65
+ "You have unsaved changes are you sure you want to navigate away?": "Tiene cambios sin guardar. \u00bfEst\u00e1 seguro de que quiere salir?",
66
+ "Restore last draft": "Restaurar el \u00faltimo borrador",
67
+ "Special character": "Car\u00e1cter especial",
68
+ "Source code": "C\u00f3digo fuente",
69
+ "Color": "Color",
70
+ "Right to left": "De derecha a izquierda",
71
+ "Left to right": "De izquierda a derecha",
72
+ "Emoticons": "Emoticonos",
73
+ "Robots": "Robots",
74
+ "Document properties": "Propiedades del documento",
75
+ "Title": "T\u00edtulo",
76
+ "Keywords": "Palabras clave",
77
+ "Encoding": "Codificaci\u00f3n",
78
+ "Description": "Descripci\u00f3n",
79
+ "Author": "Autor",
80
+ "Fullscreen": "Pantalla completa",
81
+ "Horizontal line": "L\u00ednea horizontal",
82
+ "Horizontal space": "Espacio horizontal",
83
+ "Insert\/edit image": "Insertar\/editar imagen",
84
+ "General": "General",
85
+ "Advanced": "Avanzado",
86
+ "Source": "Fuente",
87
+ "Border": "Borde",
88
+ "Constrain proportions": "Restringir proporciones",
89
+ "Vertical space": "Espacio vertical",
90
+ "Image description": "Descripci\u00f3n de la imagen",
91
+ "Style": "Estilo",
92
+ "Dimensions": "Dimensiones",
93
+ "Insert image": "Insertar imagen",
94
+ "Insert date\/time": "Insertar fecha\/hora",
95
+ "Remove link": "Quitar enlace",
96
+ "Url": "URL",
97
+ "Text to display": "Texto para mostrar",
98
+ "Anchors": "Anclas",
99
+ "Insert link": "Insertar enlace",
100
+ "New window": "Nueva ventana",
101
+ "None": "Ninguno",
102
+ "The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "El enlace que has introducido no parece ser una enlace externo. Quieres a\u00f1adir el prefijo necesario http:\/\/ ?",
103
+ "Target": "Destino",
104
+ "The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "El enlace que has introducido no parece ser una direcci\u00f3n de correo electr\u00f3nico. Quieres a\u00f1adir el prefijo necesario mailto: ?",
105
+ "Insert\/edit link": "Insertar\/editar enlace",
106
+ "Insert\/edit video": "Insertar\/editar video",
107
+ "Poster": "Miniatura",
108
+ "Alternative source": "Fuente alternativa",
109
+ "Paste your embed code below:": "Pega tu c\u00f3digo embebido debajo",
110
+ "Insert video": "Insertar video",
111
+ "Embed": "Incrustado",
112
+ "Nonbreaking space": "Espacio fijo",
113
+ "Page break": "Salto de p\u00e1gina",
114
+ "Paste as text": "Pegar como texto",
115
+ "Preview": "Previsualizar",
116
+ "Print": "Imprimir",
117
+ "Save": "Guardar",
118
+ "Could not find the specified string.": "No se encuentra la cadena de texto especificada",
119
+ "Replace": "Reemplazar",
120
+ "Next": "Siguiente",
121
+ "Whole words": "Palabras completas",
122
+ "Find and replace": "Buscar y reemplazar",
123
+ "Replace with": "Reemplazar con",
124
+ "Find": "Buscar",
125
+ "Replace all": "Reemplazar todo",
126
+ "Match case": "Coincidencia exacta",
127
+ "Prev": "Anterior",
128
+ "Spellcheck": "Corrector ortogr\u00e1fico",
129
+ "Finish": "Finalizar",
130
+ "Ignore all": "Ignorar todos",
131
+ "Ignore": "Ignorar",
132
+ "Add to Dictionary": "A\u00f1adir al Diccionario",
133
+ "Insert row before": "Insertar fila antes",
134
+ "Rows": "Filas",
135
+ "Height": "Alto",
136
+ "Paste row after": "Pegar la fila despu\u00e9s",
137
+ "Alignment": "Alineaci\u00f3n",
138
+ "Border color": "Color del borde",
139
+ "Column group": "Grupo de columnas",
140
+ "Row": "Fila",
141
+ "Insert column before": "Insertar columna antes",
142
+ "Split cell": "Dividir celdas",
143
+ "Cell padding": "Relleno de celda",
144
+ "Cell spacing": "Espacio entre celdas",
145
+ "Row type": "Tipo de fila",
146
+ "Insert table": "Insertar tabla",
147
+ "Body": "Cuerpo",
148
+ "Caption": "Subt\u00edtulo",
149
+ "Footer": "Pie de p\u00e1gina",
150
+ "Delete row": "Eliminar fila",
151
+ "Paste row before": "Pegar la fila antes",
152
+ "Scope": "\u00c1mbito",
153
+ "Delete table": "Eliminar tabla",
154
+ "H Align": "Alineamiento Horizontal",
155
+ "Top": "Arriba",
156
+ "Header cell": "Celda de la cebecera",
157
+ "Column": "Columna",
158
+ "Row group": "Grupo de filas",
159
+ "Cell": "Celda",
160
+ "Middle": "Centro",
161
+ "Cell type": "Tipo de celda",
162
+ "Copy row": "Copiar fila",
163
+ "Row properties": "Propiedades de la fila",
164
+ "Table properties": "Propiedades de la tabla",
165
+ "Bottom": "Abajo",
166
+ "V Align": "Alineamiento Vertical",
167
+ "Header": "Cabecera",
168
+ "Right": "Derecha",
169
+ "Insert column after": "Insertar columna despu\u00e9s",
170
+ "Cols": "Columnas",
171
+ "Insert row after": "Insertar fila despu\u00e9s ",
172
+ "Width": "Ancho",
173
+ "Cell properties": "Propiedades de la celda",
174
+ "Left": "Izquierda",
175
+ "Cut row": "Cortar fila",
176
+ "Delete column": "Eliminar columna",
177
+ "Center": "Centrado",
178
+ "Merge cells": "Combinar celdas",
179
+ "Insert template": "Insertar plantilla",
180
+ "Templates": "Plantillas",
181
+ "Background color": "Color de fondo",
182
+ "Custom...": "Personalizar...",
183
+ "Custom color": "Color personalizado",
184
+ "No color": "Sin color",
185
+ "Text color": "Color del texto",
186
+ "Show blocks": "Mostrar bloques",
187
+ "Show invisible characters": "Mostrar caracteres invisibles",
188
+ "Words: {0}": "Palabras: {0}",
189
+ "Insert": "Insertar",
190
+ "File": "Archivo",
191
+ "Edit": "Editar",
192
+ "Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "\u00c1rea de texto enriquecido. Pulse ALT-F9 para el menu. Pulse ALT-F10 para la barra de herramientas. Pulse ALT-0 para ayuda",
193
+ "Tools": "Herramientas",
194
+ "View": "Ver",
195
+ "Table": "Tabla",
196
+ "Format": "Formato"
197
+ });
@@ -0,0 +1,197 @@
1
+ tinymce.addI18n('ru',{
2
+ "Cut": "\u0412\u044b\u0440\u0435\u0437\u0430\u0442\u044c",
3
+ "Heading 5": "\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 5",
4
+ "Header 2": "\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 2",
5
+ "Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "\u0412\u0430\u0448 \u0431\u0440\u0430\u0443\u0437\u0435\u0440 \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u043f\u0440\u044f\u043c\u043e\u0439 \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0431\u0443\u0444\u0435\u0440\u0443 \u043e\u0431\u043c\u0435\u043d\u0430. \u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0441\u043e\u0447\u0435\u0442\u0430\u043d\u0438\u044f \u043a\u043b\u0430\u0432\u0438\u0448: Ctrl+X\/C\/V.",
6
+ "Heading 4": "\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 4",
7
+ "Div": "\u0411\u043b\u043e\u043a",
8
+ "Heading 2": "\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 2",
9
+ "Paste": "\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c",
10
+ "Close": "\u0417\u0430\u043a\u0440\u044b\u0442\u044c",
11
+ "Font Family": "\u0428\u0440\u0438\u0444\u0442",
12
+ "Pre": "\u041f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435",
13
+ "Align right": "\u041f\u043e \u043f\u0440\u0430\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e",
14
+ "New document": "\u041d\u043e\u0432\u044b\u0439 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442",
15
+ "Blockquote": "\u0426\u0438\u0442\u0430\u0442\u0430",
16
+ "Numbered list": "\u041d\u0443\u043c\u0435\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0441\u043f\u0438\u0441\u043e\u043a",
17
+ "Heading 1": "\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 1",
18
+ "Headings": "\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0438",
19
+ "Increase indent": "\u0423\u0432\u0435\u043b\u0438\u0447\u0438\u0442\u044c \u043e\u0442\u0441\u0442\u0443\u043f",
20
+ "Formats": "\u0424\u043e\u0440\u043c\u0430\u0442",
21
+ "Headers": "\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0438",
22
+ "Select all": "\u0412\u044b\u0434\u0435\u043b\u0438\u0442\u044c \u0432\u0441\u0435",
23
+ "Header 3": "\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 3",
24
+ "Blocks": "\u0411\u043b\u043e\u043a\u0438",
25
+ "Undo": "\u0412\u0435\u0440\u043d\u0443\u0442\u044c",
26
+ "Strikethrough": "\u0417\u0430\u0447\u0435\u0440\u043a\u043d\u0443\u0442\u044b\u0439",
27
+ "Bullet list": "\u041c\u0430\u0440\u043a\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0441\u043f\u0438\u0441\u043e\u043a",
28
+ "Header 1": "\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 1",
29
+ "Superscript": "\u0412\u0435\u0440\u0445\u043d\u0438\u0439 \u0438\u043d\u0434\u0435\u043a\u0441",
30
+ "Clear formatting": "\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u044c \u0444\u043e\u0440\u043c\u0430\u0442",
31
+ "Font Sizes": "\u0420\u0430\u0437\u043c\u0435\u0440 \u0448\u0440\u0438\u0444\u0442\u0430",
32
+ "Subscript": "\u041d\u0438\u0436\u043d\u0438\u0439 \u0438\u043d\u0434\u0435\u043a\u0441",
33
+ "Header 6": "\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 6",
34
+ "Redo": "\u041e\u0442\u043c\u0435\u043d\u0438\u0442\u044c",
35
+ "Paragraph": "\u041f\u0430\u0440\u0430\u0433\u0440\u0430\u0444",
36
+ "Ok": "\u041e\u043a",
37
+ "Bold": "\u041f\u043e\u043b\u0443\u0436\u0438\u0440\u043d\u044b\u0439",
38
+ "Code": "\u041a\u043e\u0434",
39
+ "Italic": "\u041a\u0443\u0440\u0441\u0438\u0432",
40
+ "Align center": "\u041f\u043e \u0446\u0435\u043d\u0442\u0440\u0443",
41
+ "Header 5": "\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 5",
42
+ "Heading 6": "\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 6",
43
+ "Heading 3": "\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 3",
44
+ "Decrease indent": "\u0423\u043c\u0435\u043d\u044c\u0448\u0438\u0442\u044c \u043e\u0442\u0441\u0442\u0443\u043f",
45
+ "Header 4": "\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 4",
46
+ "Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "\u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0432 \u0432\u0438\u0434\u0435 \u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e \u0442\u0435\u043a\u0441\u0442\u0430, \u043f\u043e\u043a\u0430 \u043d\u0435 \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0434\u0430\u043d\u043d\u0443\u044e \u043e\u043f\u0446\u0438\u044e.",
47
+ "Underline": "\u041f\u043e\u0434\u0447\u0435\u0440\u043a\u043d\u0443\u0442\u044b\u0439",
48
+ "Cancel": "\u041e\u0442\u043c\u0435\u043d\u0438\u0442\u044c",
49
+ "Justify": "\u041f\u043e \u0448\u0438\u0440\u0438\u043d\u0435",
50
+ "Inline": "\u0421\u0442\u0440\u043e\u0447\u043d\u044b\u0435",
51
+ "Copy": "\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c",
52
+ "Align left": "\u041f\u043e \u043b\u0435\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e",
53
+ "Visual aids": "\u041f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u043a\u043e\u043d\u0442\u0443\u0440\u044b",
54
+ "Lower Greek": "\u0421\u0442\u0440\u043e\u0447\u043d\u044b\u0435 \u0433\u0440\u0435\u0447\u0435\u0441\u043a\u0438\u0435 \u0431\u0443\u043a\u0432\u044b",
55
+ "Square": "\u041a\u0432\u0430\u0434\u0440\u0430\u0442\u044b",
56
+ "Default": "\u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0439",
57
+ "Lower Alpha": "\u0421\u0442\u0440\u043e\u0447\u043d\u044b\u0435 \u043b\u0430\u0442\u0438\u043d\u0441\u043a\u0438\u0435 \u0431\u0443\u043a\u0432\u044b",
58
+ "Circle": "\u041e\u043a\u0440\u0443\u0436\u043d\u043e\u0441\u0442\u0438",
59
+ "Disc": "\u041a\u0440\u0443\u0433\u0438",
60
+ "Upper Alpha": "\u0417\u0430\u0433\u043b\u0430\u0432\u043d\u044b\u0435 \u043b\u0430\u0442\u0438\u043d\u0441\u043a\u0438\u0435 \u0431\u0443\u043a\u0432\u044b",
61
+ "Upper Roman": "\u0417\u0430\u0433\u043b\u0430\u0432\u043d\u044b\u0435 \u0440\u0438\u043c\u0441\u043a\u0438\u0435 \u0446\u0438\u0444\u0440\u044b",
62
+ "Lower Roman": "\u0421\u0442\u0440\u043e\u0447\u043d\u044b\u0435 \u0440\u0438\u043c\u0441\u043a\u0438\u0435 \u0446\u0438\u0444\u0440\u044b",
63
+ "Name": "\u0418\u043c\u044f",
64
+ "Anchor": "\u042f\u043a\u043e\u0440\u044c",
65
+ "You have unsaved changes are you sure you want to navigate away?": "\u0423 \u0432\u0430\u0441 \u0435\u0441\u0442\u044c \u043d\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u043d\u044b\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f. \u0412\u044b \u0443\u0432\u0435\u0440\u0435\u043d\u044b, \u0447\u0442\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0439\u0442\u0438?",
66
+ "Restore last draft": "\u0412\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430",
67
+ "Special character": "\u0421\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0435 \u0441\u0438\u043c\u0432\u043e\u043b\u044b",
68
+ "Source code": "\u0418\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434",
69
+ "Color": "\u0426\u0432\u0435\u0442",
70
+ "Right to left": "\u041d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u043f\u0440\u0430\u0432\u0430 \u043d\u0430\u043b\u0435\u0432\u043e",
71
+ "Left to right": "\u041d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u043b\u0435\u0432\u0430 \u043d\u0430\u043f\u0440\u0430\u0432\u043e",
72
+ "Emoticons": "\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u043c\u0430\u0439\u043b",
73
+ "Robots": "\u0420\u043e\u0431\u043e\u0442\u044b",
74
+ "Document properties": "\u0421\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430",
75
+ "Title": "\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a",
76
+ "Keywords": "\u041a\u043b\u044e\u0447\u0438\u0432\u044b\u0435 \u0441\u043b\u043e\u0432\u0430",
77
+ "Encoding": "\u041a\u043e\u0434\u0438\u0440\u043e\u0432\u043a\u0430",
78
+ "Description": "\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435",
79
+ "Author": "\u0410\u0432\u0442\u043e\u0440",
80
+ "Fullscreen": "\u041f\u043e\u043b\u043d\u043e\u044d\u043a\u0440\u0430\u043d\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c",
81
+ "Horizontal line": "\u0413\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u0430\u044f \u043b\u0438\u043d\u0438\u044f",
82
+ "Horizontal space": "\u0413\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b",
83
+ "Insert\/edit image": "\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c\/\u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435",
84
+ "General": "\u041e\u0431\u0449\u0435\u0435",
85
+ "Advanced": "\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u044b\u0435",
86
+ "Source": "\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a",
87
+ "Border": "\u0420\u0430\u043c\u043a\u0430",
88
+ "Constrain proportions": "\u0421\u043e\u0445\u0440\u0430\u043d\u044f\u0442\u044c \u043f\u0440\u043e\u043f\u043e\u0440\u0446\u0438\u0438",
89
+ "Vertical space": "\u0412\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b",
90
+ "Image description": "\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f",
91
+ "Style": "\u0421\u0442\u0438\u043b\u044c",
92
+ "Dimensions": "\u0420\u0430\u0437\u043c\u0435\u0440",
93
+ "Insert image": "\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435",
94
+ "Insert date\/time": "\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0434\u0430\u0442\u0443\/\u0432\u0440\u0435\u043c\u044f",
95
+ "Remove link": "\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0441\u0441\u044b\u043b\u043a\u0443",
96
+ "Url": "\u0410\u0434\u0440\u0435\u0441 \u0441\u0441\u044b\u043b\u043a\u0438",
97
+ "Text to display": "\u041e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u043c\u044b\u0439 \u0442\u0435\u043a\u0441\u0442",
98
+ "Anchors": "\u042f\u043a\u043e\u0440\u044f",
99
+ "Insert link": "\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0441\u0441\u044b\u043b\u043a\u0443",
100
+ "New window": "\u0412 \u043d\u043e\u0432\u043e\u043c \u043e\u043a\u043d\u0435",
101
+ "None": "\u041d\u0435\u0442",
102
+ "The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "\u0412\u0432\u0435\u0434\u0451\u043d\u043d\u044b\u0439 URL \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0432\u043d\u0435\u0448\u043d\u0435\u0439 \u0441\u0441\u044b\u043b\u043a\u043e\u0439. \u0412\u044b \u0436\u0435\u043b\u0430\u0435\u0442\u0435 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043f\u0440\u0435\u0444\u0438\u043a\u0441 \u00abhttp:\/\/\u00bb?",
103
+ "Target": "\u041e\u0442\u043a\u0440\u044b\u0432\u0430\u0442\u044c \u0441\u0441\u044b\u043b\u043a\u0443",
104
+ "The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "\u0412\u0432\u0435\u0434\u0451\u043d\u043d\u044b\u0439 URL \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u044b\u043c \u0430\u0434\u0440\u0435\u0441\u043e\u043c \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u043e\u0439 \u043f\u043e\u0447\u0442\u044b. \u0412\u044b \u0436\u0435\u043b\u0430\u0435\u0442\u0435 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043f\u0440\u0435\u0444\u0438\u043a\u0441 \u00abmailto:\u00bb?",
105
+ "Insert\/edit link": "\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c\/\u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0441\u044b\u043b\u043a\u0443",
106
+ "Insert\/edit video": "\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c\/\u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432\u0438\u0434\u0435\u043e",
107
+ "Poster": "\u0418\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435",
108
+ "Alternative source": "\u0410\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u044b\u0439 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a",
109
+ "Paste your embed code below:": "\u0412\u0441\u0442\u0430\u0432\u044c\u0442\u0435 \u0432\u0430\u0448 \u043a\u043e\u0434 \u043d\u0438\u0436\u0435:",
110
+ "Insert video": "\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432\u0438\u0434\u0435\u043e",
111
+ "Embed": "\u041a\u043e\u0434 \u0434\u043b\u044f \u0432\u0441\u0442\u0430\u0432\u043a\u0438",
112
+ "Nonbreaking space": "\u041d\u0435\u0440\u0430\u0437\u0440\u044b\u0432\u043d\u044b\u0439 \u043f\u0440\u043e\u0431\u0435\u043b",
113
+ "Page break": "\u0420\u0430\u0437\u0440\u044b\u0432 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b",
114
+ "Paste as text": "\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043a\u0430\u043a \u0442\u0435\u043a\u0441\u0442",
115
+ "Preview": "\u041f\u0440\u0435\u0434\u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440",
116
+ "Print": "\u041f\u0435\u0447\u0430\u0442\u044c",
117
+ "Save": "\u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c",
118
+ "Could not find the specified string.": "\u0417\u0430\u0434\u0430\u043d\u043d\u0430\u044f \u0441\u0442\u0440\u043e\u043a\u0430 \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u0430",
119
+ "Replace": "\u0417\u0430\u043c\u0435\u043d\u0438\u0442\u044c",
120
+ "Next": "\u0412\u043d\u0438\u0437",
121
+ "Whole words": "\u0421\u043b\u043e\u0432\u043e \u0446\u0435\u043b\u0438\u043a\u043e\u043c",
122
+ "Find and replace": "\u041f\u043e\u0438\u0441\u043a \u0438 \u0437\u0430\u043c\u0435\u043d\u0430",
123
+ "Replace with": "\u0417\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u043d\u0430",
124
+ "Find": "\u041d\u0430\u0439\u0442\u0438",
125
+ "Replace all": "\u0417\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u0432\u0441\u0435",
126
+ "Match case": "\u0423\u0447\u0438\u0442\u044b\u0432\u0430\u0442\u044c \u0440\u0435\u0433\u0438\u0441\u0442\u0440",
127
+ "Prev": "\u0412\u0432\u0435\u0440\u0445",
128
+ "Spellcheck": "\u041f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u043f\u0440\u0430\u0432\u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435",
129
+ "Finish": "\u0417\u0430\u043a\u043e\u043d\u0447\u0438\u0442\u044c",
130
+ "Ignore all": "\u0418\u0433\u043d\u043e\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432\u0441\u0435",
131
+ "Ignore": "\u0418\u0433\u043d\u043e\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c",
132
+ "Add to Dictionary": "\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432 \u0441\u043b\u043e\u0432\u0430\u0440\u044c",
133
+ "Insert row before": "\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043f\u0443\u0441\u0442\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443 \u0441\u0432\u0435\u0440\u0445\u0443",
134
+ "Rows": "\u0421\u0442\u0440\u043e\u043a\u0438",
135
+ "Height": "\u0412\u044b\u0441\u043e\u0442\u0430",
136
+ "Paste row after": "\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443 \u0441\u043d\u0438\u0437\u0443",
137
+ "Alignment": "\u0412\u044b\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u043d\u0438\u0435",
138
+ "Border color": "\u0426\u0432\u0435\u0442 \u0440\u0430\u043c\u043a\u0438",
139
+ "Column group": "\u0413\u0440\u0443\u043f\u043f\u0430 \u043a\u043e\u043b\u043e\u043d\u043e\u043a",
140
+ "Row": "\u0421\u0442\u0440\u043e\u043a\u0430",
141
+ "Insert column before": "\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0442\u043e\u043b\u0431\u0435\u0446 \u0441\u043b\u0435\u0432\u0430",
142
+ "Split cell": "\u0420\u0430\u0437\u0431\u0438\u0442\u044c \u044f\u0447\u0435\u0439\u043a\u0443",
143
+ "Cell padding": "\u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0439 \u043e\u0442\u0441\u0442\u0443\u043f",
144
+ "Cell spacing": "\u0412\u043d\u0435\u0448\u043d\u0438\u0439 \u043e\u0442\u0441\u0442\u0443\u043f",
145
+ "Row type": "\u0422\u0438\u043f \u0441\u0442\u0440\u043e\u043a\u0438",
146
+ "Insert table": "\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0442\u0430\u0431\u043b\u0438\u0446\u0443",
147
+ "Body": "\u0422\u0435\u043b\u043e",
148
+ "Caption": "\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a",
149
+ "Footer": "\u041d\u0438\u0437",
150
+ "Delete row": "\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443",
151
+ "Paste row before": "\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443 \u0441\u0432\u0435\u0440\u0445\u0443",
152
+ "Scope": "Scope",
153
+ "Delete table": "\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0442\u0430\u0431\u043b\u0438\u0446\u0443",
154
+ "H Align": "\u0413\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0435 \u0432\u044b\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u043d\u0438\u0435",
155
+ "Top": "\u041f\u043e \u0432\u0435\u0440\u0445\u0443",
156
+ "Header cell": "\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a",
157
+ "Column": "\u0421\u0442\u043e\u043b\u0431\u0435\u0446",
158
+ "Row group": "\u0413\u0440\u0443\u043f\u043f\u0430 \u0441\u0442\u0440\u043e\u043a",
159
+ "Cell": "\u042f\u0447\u0435\u0439\u043a\u0430",
160
+ "Middle": "\u041f\u043e \u0441\u0435\u0440\u0435\u0434\u0438\u043d\u0435",
161
+ "Cell type": "\u0422\u0438\u043f \u044f\u0447\u0435\u0439\u043a\u0438",
162
+ "Copy row": "\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443",
163
+ "Row properties": "\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0441\u0442\u0440\u043e\u043a\u0438",
164
+ "Table properties": "\u0421\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u044b",
165
+ "Bottom": "\u041f\u043e \u043d\u0438\u0437\u0443",
166
+ "V Align": "\u0412\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u043e\u0435 \u0432\u044b\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u043d\u0438\u0435",
167
+ "Header": "\u0428\u0430\u043f\u043a\u0430",
168
+ "Right": "\u041f\u043e \u043f\u0440\u0430\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e",
169
+ "Insert column after": "\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0442\u043e\u043b\u0431\u0435\u0446 \u0441\u043f\u0440\u0430\u0432\u0430",
170
+ "Cols": "\u0421\u0442\u043e\u043b\u0431\u0446\u044b",
171
+ "Insert row after": "\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043f\u0443\u0441\u0442\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443 \u0441\u043d\u0438\u0437\u0443",
172
+ "Width": "\u0428\u0438\u0440\u0438\u043d\u0430",
173
+ "Cell properties": "\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u044f\u0447\u0435\u0439\u043a\u0438",
174
+ "Left": "\u041f\u043e \u043b\u0435\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e",
175
+ "Cut row": "\u0412\u044b\u0440\u0435\u0437\u0430\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443",
176
+ "Delete column": "\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0441\u0442\u043e\u043b\u0431\u0435\u0446",
177
+ "Center": "\u041f\u043e \u0446\u0435\u043d\u0442\u0440\u0443",
178
+ "Merge cells": "\u041e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u0442\u044c \u044f\u0447\u0435\u0439\u043a\u0438",
179
+ "Insert template": "\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0448\u0430\u0431\u043b\u043e\u043d",
180
+ "Templates": "\u0428\u0430\u0431\u043b\u043e\u043d\u044b",
181
+ "Background color": "\u0426\u0432\u0435\u0442 \u0444\u043e\u043d\u0430",
182
+ "Custom...": "\u0412\u044b\u0431\u0440\u0430\u0442\u044c\u2026",
183
+ "Custom color": "\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0439 \u0446\u0432\u0435\u0442",
184
+ "No color": "\u0411\u0435\u0437 \u0446\u0432\u0435\u0442\u0430",
185
+ "Text color": "\u0426\u0432\u0435\u0442 \u0442\u0435\u043a\u0441\u0442\u0430",
186
+ "Show blocks": "\u041f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u0431\u043b\u043e\u043a\u0438",
187
+ "Show invisible characters": "\u041f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u043d\u0435\u0432\u0438\u0434\u0438\u043c\u044b\u0435 \u0441\u0438\u043c\u0432\u043e\u043b\u044b",
188
+ "Words: {0}": "\u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0441\u043b\u043e\u0432: {0}",
189
+ "Insert": "\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c",
190
+ "File": "\u0424\u0430\u0439\u043b",
191
+ "Edit": "\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c",
192
+ "Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "\u0422\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u0435 \u043f\u043e\u043b\u0435. \u041d\u0430\u0436\u043c\u0438\u0442\u0435 ALT-F9 \u0447\u0442\u043e\u0431\u044b \u0432\u044b\u0437\u0432\u0430\u0442\u044c \u043c\u0435\u043d\u044e, ALT-F10 \u043f\u0430\u043d\u0435\u043b\u044c \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432, ALT-0 \u0434\u043b\u044f \u0432\u044b\u0437\u043e\u0432\u0430 \u043f\u043e\u043c\u043e\u0449\u0438.",
193
+ "Tools": "\u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b",
194
+ "View": "\u0412\u0438\u0434",
195
+ "Table": "\u0422\u0430\u0431\u043b\u0438\u0446\u0430",
196
+ "Format": "\u0424\u043e\u0440\u043c\u0430\u0442"
197
+ });