alchemy_cms 3.3.3 → 3.4.0.rc1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (133) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +1 -1
  3. data/CHANGELOG.md +42 -4
  4. data/README.md +7 -3
  5. data/alchemy_cms.gemspec +1 -0
  6. data/app/assets/javascripts/alchemy/{alchemy.js → admin.js} +1 -2
  7. data/app/assets/javascripts/alchemy/alchemy.datepicker.js.coffee +28 -25
  8. data/app/assets/javascripts/alchemy/alchemy.dialog.js.coffee +1 -0
  9. data/app/assets/javascripts/alchemy/alchemy.i18n.js.coffee +7 -1
  10. data/app/assets/javascripts/alchemy/alchemy.link_dialog.js.coffee +1 -1
  11. data/app/assets/javascripts/alchemy/alchemy.sitemap.js.coffee +26 -0
  12. data/app/assets/javascripts/alchemy/alchemy.translations.js.coffee +56 -1
  13. data/app/assets/stylesheets/alchemy/_variables.scss +1 -0
  14. data/app/assets/stylesheets/alchemy/admin.scss +2 -1
  15. data/app/assets/stylesheets/alchemy/archive.scss +7 -0
  16. data/app/assets/stylesheets/alchemy/base.scss +0 -42
  17. data/app/assets/stylesheets/alchemy/buttons.scss +2 -1
  18. data/app/assets/stylesheets/alchemy/form_fields.scss +9 -0
  19. data/app/assets/stylesheets/alchemy/forms.scss +36 -10
  20. data/app/assets/stylesheets/alchemy/frame.scss +12 -1
  21. data/app/assets/stylesheets/alchemy/icons.scss +1 -1
  22. data/app/assets/stylesheets/alchemy/jquery-ui.scss +0 -260
  23. data/app/assets/stylesheets/alchemy/jquery.datetimepicker.scss +507 -0
  24. data/app/assets/stylesheets/alchemy/lists.scss +62 -0
  25. data/app/assets/stylesheets/alchemy/selects.scss +9 -2
  26. data/app/assets/stylesheets/alchemy/sitemap.scss +28 -51
  27. data/app/assets/stylesheets/alchemy/toolbar.scss +0 -2
  28. data/app/controllers/alchemy/admin/attachments_controller.rb +4 -6
  29. data/app/controllers/alchemy/admin/base_controller.rb +2 -2
  30. data/app/controllers/alchemy/admin/dashboard_controller.rb +2 -2
  31. data/app/controllers/alchemy/admin/languages_controller.rb +5 -0
  32. data/app/controllers/alchemy/admin/pages_controller.rb +14 -5
  33. data/app/controllers/alchemy/admin/resources_controller.rb +17 -1
  34. data/app/controllers/alchemy/base_controller.rb +1 -0
  35. data/app/controllers/alchemy/messages_controller.rb +1 -1
  36. data/app/controllers/alchemy/pages_controller.rb +16 -26
  37. data/app/controllers/alchemy/pictures_controller.rb +23 -10
  38. data/app/controllers/concerns/alchemy/page_redirects.rb +7 -7
  39. data/app/helpers/alchemy/admin/base_helper.rb +22 -19
  40. data/app/helpers/alchemy/admin/essences_helper.rb +26 -11
  41. data/app/helpers/alchemy/admin/pages_helper.rb +2 -1
  42. data/app/helpers/alchemy/essences_helper.rb +0 -35
  43. data/app/helpers/alchemy/url_helper.rb +1 -1
  44. data/app/mailers/alchemy/base_mailer.rb +18 -0
  45. data/app/mailers/alchemy/{messages.rb → messages_mailer.rb} +1 -1
  46. data/app/models/alchemy/attachment.rb +9 -0
  47. data/app/models/alchemy/cell.rb +1 -1
  48. data/app/models/alchemy/essence_picture.rb +4 -1
  49. data/app/models/alchemy/essence_picture_view.rb +68 -0
  50. data/app/models/alchemy/language.rb +8 -10
  51. data/app/models/alchemy/language/code.rb +4 -1
  52. data/app/models/alchemy/page.rb +69 -26
  53. data/app/models/alchemy/page/page_natures.rb +22 -0
  54. data/app/models/alchemy/page/page_scopes.rb +20 -6
  55. data/app/models/alchemy/picture.rb +37 -4
  56. data/app/models/alchemy/site.rb +8 -0
  57. data/app/serializers/alchemy/page_tree_serializer.rb +1 -1
  58. data/app/views/alchemy/admin/attachments/_archive_overlay.html.erb +9 -6
  59. data/app/views/alchemy/admin/attachments/_file_to_assign.html.erb +11 -9
  60. data/app/views/alchemy/admin/attachments/_filter_bar.html.erb +32 -0
  61. data/app/views/alchemy/admin/attachments/_overlay_file_list.html.erb +14 -2
  62. data/app/views/alchemy/admin/attachments/index.html.erb +10 -9
  63. data/app/views/alchemy/admin/dashboard/_locked_pages.html.erb +20 -9
  64. data/app/views/alchemy/admin/dashboard/_recent_pages.html.erb +11 -1
  65. data/app/views/alchemy/admin/languages/_form.html.erb +1 -0
  66. data/app/views/alchemy/admin/languages/index.html.erb +7 -8
  67. data/app/views/alchemy/admin/layoutpages/_layoutpage.html.erb +1 -1
  68. data/app/views/alchemy/admin/layoutpages/index.html.erb +2 -2
  69. data/app/views/alchemy/admin/pages/_current_page.html.erb +4 -0
  70. data/app/views/alchemy/admin/pages/_form.html.erb +16 -1
  71. data/app/views/alchemy/admin/pages/_locked_page.html.erb +2 -12
  72. data/app/views/alchemy/admin/pages/_page.html.erb +1 -1
  73. data/app/views/alchemy/admin/pages/_page_for_links.html.erb +2 -2
  74. data/app/views/alchemy/admin/pages/_page_status.html.erb +23 -11
  75. data/app/views/alchemy/admin/pages/edit.html.erb +2 -1
  76. data/app/views/alchemy/admin/pages/index.html.erb +2 -2
  77. data/app/views/alchemy/admin/partials/_language_tree_select.html.erb +3 -0
  78. data/app/views/alchemy/admin/partials/_site_select.html.erb +9 -0
  79. data/app/views/alchemy/admin/pictures/_picture.html.erb +6 -1
  80. data/app/views/alchemy/admin/pictures/_picture_to_assign.html.erb +2 -1
  81. data/app/views/alchemy/admin/pictures/show.html.erb +1 -1
  82. data/app/views/alchemy/admin/resources/_filter_bar.html.erb +31 -0
  83. data/app/views/alchemy/admin/resources/_form.html.erb +6 -0
  84. data/app/views/alchemy/admin/resources/_tag_list.html.erb +16 -0
  85. data/app/views/alchemy/admin/resources/index.html.erb +13 -1
  86. data/app/views/alchemy/essences/_essence_file_view.html.erb +2 -5
  87. data/app/views/alchemy/essences/_essence_picture_view.html.erb +5 -3
  88. data/app/views/alchemy/{messages → messages_mailer}/contact_form_mail.de.text.erb +0 -0
  89. data/app/views/alchemy/{messages → messages_mailer}/contact_form_mail.en.text.erb +0 -0
  90. data/app/views/alchemy/{messages → messages_mailer}/contact_form_mail.es.text.erb +0 -0
  91. data/app/views/alchemy/{messages → messages_mailer}/new.html.erb +0 -0
  92. data/app/views/layouts/alchemy/admin.html.erb +3 -8
  93. data/config/alchemy/config.yml +4 -3
  94. data/config/initializers/assets.rb +2 -2
  95. data/config/initializers/dragonfly.rb +3 -0
  96. data/config/initializers/mime_types.rb +1 -0
  97. data/config/locales/alchemy.de.yml +10 -2
  98. data/config/locales/alchemy.en.yml +6 -2
  99. data/config/locales/alchemy.es.yml +6 -3
  100. data/config/locales/alchemy.fr.yml +6 -2
  101. data/config/locales/alchemy.it.yml +937 -0
  102. data/config/locales/alchemy.nl.yml +6 -2
  103. data/config/locales/alchemy.ru.yml +3 -2
  104. data/config/locales/simple_form.it.yml +25 -0
  105. data/db/migrate/20160108174834_add_timebased_publishing_columns_to_pages.rb +32 -0
  106. data/db/migrate/20160422195310_add_image_file_format_to_alchemy_pictures.rb +21 -0
  107. data/db/migrate/20160617224938_change_alchemy_pages_locked_to_locked_at.rb +22 -0
  108. data/lib/alchemy/ability_helper.rb +23 -0
  109. data/lib/alchemy/configuration_methods.rb +2 -2
  110. data/lib/alchemy/controller_actions.rb +4 -33
  111. data/lib/alchemy/engine.rb +1 -0
  112. data/lib/alchemy/resource.rb +30 -13
  113. data/lib/alchemy/resources_helper.rb +17 -0
  114. data/lib/alchemy/test_support/factories/page_factory.rb +7 -2
  115. data/lib/alchemy/upgrader.rb +1 -0
  116. data/lib/alchemy/upgrader/tasks/install_asset_manifests.rb +15 -0
  117. data/lib/alchemy/upgrader/three_point_four.rb +16 -0
  118. data/lib/alchemy/version.rb +1 -1
  119. data/lib/rails/generators/alchemy/elements/elements_generator.rb +8 -7
  120. data/lib/rails/generators/alchemy/essence/essence_generator.rb +2 -6
  121. data/lib/rails/generators/alchemy/install/files/all.css +11 -0
  122. data/lib/rails/generators/alchemy/install/files/all.js +11 -0
  123. data/lib/rails/generators/alchemy/install/files/{alchemy.elements.css.scss → article.scss} +0 -0
  124. data/lib/rails/generators/alchemy/install/install_generator.rb +20 -19
  125. data/lib/rails/generators/alchemy/module/module_generator.rb +3 -5
  126. data/lib/rails/generators/alchemy/page_layouts/page_layouts_generator.rb +7 -6
  127. data/lib/rails/generators/alchemy/site_layouts/site_layouts_generator.rb +7 -6
  128. data/vendor/assets/javascripts/date-formatter.js +161 -0
  129. data/vendor/assets/javascripts/jquery_plugins/jquery.datetimepicker.full.min.js +2 -0
  130. data/vendor/assets/javascripts/tinymce/langs/it.js +219 -0
  131. metadata +48 -13
  132. data/app/assets/javascripts/alchemy/alchemy.custom.js +0 -1
  133. data/app/assets/stylesheets/alchemy/custom.scss +0 -1
@@ -6,11 +6,6 @@ module Alchemy
6
6
  desc "This generator generates your elements view partials."
7
7
  source_root File.expand_path('templates', File.dirname(__FILE__))
8
8
 
9
- def create_directory
10
- @elements_dir = "#{Rails.root}/app/views/alchemy/elements"
11
- empty_directory @elements_dir
12
- end
13
-
14
9
  def create_partials
15
10
  @elements = load_alchemy_yaml('elements.yml')
16
11
  @elements.each do |element|
@@ -22,10 +17,16 @@ module Alchemy
22
17
  raise "Element name '#{element['name']}' has wrong format. Only lowercase and non whitespace characters allowed."
23
18
  end
24
19
 
25
- conditional_template "editor.html.#{template_engine}", "#{@elements_dir}/_#{@element_name}_editor.html.#{template_engine}"
26
- conditional_template "view.html.#{template_engine}", "#{@elements_dir}/_#{@element_name}_view.html.#{template_engine}"
20
+ conditional_template "editor.html.#{template_engine}", "#{elements_dir}/_#{@element_name}_editor.html.#{template_engine}"
21
+ conditional_template "view.html.#{template_engine}", "#{elements_dir}/_#{@element_name}_view.html.#{template_engine}"
27
22
  end if @elements
28
23
  end
24
+
25
+ private
26
+
27
+ def elements_dir
28
+ @_elements_dir ||= "app/views/alchemy/elements"
29
+ end
29
30
  end
30
31
  end
31
32
  end
@@ -9,19 +9,15 @@ module Alchemy
9
9
 
10
10
  def init
11
11
  @essence_name = essence_name.underscore
12
- @essence_view_path = Rails.root.join('app/views/alchemy/essences')
12
+ @essence_view_path = 'app/views/alchemy/essences'
13
13
  end
14
14
 
15
15
  def create_model
16
16
  invoke("model", [@essence_name])
17
17
  end
18
18
 
19
- def create_directory
20
- empty_directory @essence_view_path
21
- end
22
-
23
19
  def act_as_essence
24
- essence_class_file = Rails.root.join('app/models', "#{@essence_name}.rb")
20
+ essence_class_file = "app/models/#{@essence_name}.rb"
25
21
  essence_class = @essence_name.classify
26
22
  inject_into_class essence_class_file, essence_class, <<-CLASSMETHOD
27
23
  acts_as_essence(
@@ -0,0 +1,11 @@
1
+ /*
2
+ * This is the AlchemyCMS stylesheet manifest that'll be compiled into alchemy/admin/all.css
3
+ *
4
+ * In order to override existing styles or add custom styles to Alchemy's admin interface just
5
+ * require the files here.
6
+ *
7
+ * Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
8
+ * or any plugin's vendor/assets/stylesheets directory can be referenced here using a relative path.
9
+ *
10
+ *= require alchemy/admin
11
+ */
@@ -0,0 +1,11 @@
1
+ // This is the AlchemyCMS javascript manifest that'll be compiled into alchemy/admin/all.js
2
+ //
3
+ // In order to add custom scripts to Alchemy's admin interface just require the files here.
4
+ //
5
+ // Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
6
+ // or any plugin's vendor/assets/javascripts directory can be referenced here using a relative path.
7
+ //
8
+ // Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details
9
+ // about supported directives.
10
+ //
11
+ //= require alchemy/admin
@@ -12,45 +12,46 @@ module Alchemy
12
12
 
13
13
  source_root File.expand_path('files', File.dirname(__FILE__))
14
14
 
15
- def create_view_dirs
16
- %w(elements page_layouts).each do |dir|
17
- empty_directory Rails.root.join("app/views/alchemy/#{dir}")
18
- end
19
- end
20
-
21
15
  def copy_config
22
- copy_file "#{config_path}/config.yml",
23
- Rails.root.join("config/alchemy/config.yml")
16
+ copy_file "#{config_path}/config.yml", "config/alchemy/config.yml"
24
17
  end
25
18
 
26
19
  def copy_yml_files
27
20
  %w(elements page_layouts).each do |file|
28
- template "#{current_path}/templates/#{file}.yml.tt",
29
- Rails.root.join("config/alchemy/#{file}.yml")
21
+ template "#{current_path}/templates/#{file}.yml.tt", "config/alchemy/#{file}.yml"
30
22
  end
31
23
  end
32
24
 
25
+ def install_assets
26
+ copy_file "all.js", "vendor/assets/javascripts/alchemy/admin/all.js"
27
+ copy_file "all.css", "vendor/assets/stylesheets/alchemy/admin/all.css"
28
+ end
29
+
33
30
  def copy_demo_views
34
31
  return if @options[:skip_demo_files]
35
32
 
36
- copy_file "application.html.erb",
37
- Rails.root.join("app/views/layouts/application.html.erb")
38
- copy_file "alchemy.elements.css.scss",
39
- Rails.root.join("app/assets/stylesheets/alchemy.elements.css.scss")
33
+ copy_file "application.html.erb", "app/views/layouts/application.html.erb"
34
+ copy_file "article.scss", "app/assets/stylesheets/alchemy/elements/article.scss"
35
+
36
+ stylesheet_require = " *= require_tree ./alchemy/elements\n"
37
+ if File.exist?("app/assets/stylesheets/application.css")
38
+ insert_into_file "app/assets/stylesheets/application.css", stylesheet_require,
39
+ before: " */"
40
+ else
41
+ create_file "app/assets/stylesheets/application.css", "/*\n#{stylesheet_require} */\n"
42
+ end
40
43
 
41
44
  [
42
45
  "_article_editor.html.erb",
43
46
  "_article_view.html.erb"
44
47
  ].each do |file|
45
- copy_file file, Rails.root.join("app/views/alchemy/elements/#{file}")
48
+ copy_file file, "app/views/alchemy/elements/#{file}"
46
49
  end
47
50
 
48
- copy_file "_standard.html.erb",
49
- Rails.root.join("app/views/alchemy/page_layouts/_standard.html.erb")
51
+ copy_file "_standard.html.erb", "app/views/alchemy/page_layouts/_standard.html.erb"
50
52
 
51
53
  %w(de en es).each do |locale|
52
- copy_file "alchemy.#{locale}.yml",
53
- Rails.root.join("config/locales/alchemy.#{locale}.yml")
54
+ copy_file "alchemy.#{locale}.yml", "config/locales/alchemy.#{locale}.yml"
54
55
  end
55
56
  end
56
57
 
@@ -19,11 +19,9 @@ module Alchemy
19
19
  end
20
20
 
21
21
  def copy_templates
22
- empty_directory Rails.root.join("app/controllers/admin")
23
-
24
- template "controller.rb.tt", Rails.root.join("app/controllers/admin/#{@controller_name}_controller.rb")
25
- template "ability.rb.tt", Rails.root.join('app/models', "alchemy_#{@module_name}_ability.rb")
26
- template "module_config.rb.tt", Rails.root.join("config/initializers/alchemy_#{@module_name}.rb")
22
+ template "controller.rb.tt", "app/controllers/admin/#{@controller_name}_controller.rb"
23
+ template "ability.rb.tt", 'app/models', "alchemy_#{@module_name}_ability.rb"
24
+ template "module_config.rb.tt", "config/initializers/alchemy_#{@module_name}.rb"
27
25
  end
28
26
  end
29
27
  end
@@ -6,19 +6,20 @@ module Alchemy
6
6
  desc "This generator generates your page_layouts view partials."
7
7
  source_root File.expand_path('templates', File.dirname(__FILE__))
8
8
 
9
- def create_directory
10
- @page_layouts_dir = "#{Rails.root}/app/views/alchemy/page_layouts"
11
- empty_directory @page_layouts_dir
12
- end
13
-
14
9
  def create_partials
15
10
  @page_layouts = load_alchemy_yaml('page_layouts.yml')
16
11
  @page_layouts.each do |page_layout|
17
12
  next if page_layout['redirects_to_external']
18
13
  @page_layout_name = page_layout["name"].underscore
19
- conditional_template "layout.html.#{template_engine}", "#{@page_layouts_dir}/_#{@page_layout_name}.html.#{template_engine}"
14
+ conditional_template "layout.html.#{template_engine}", "#{page_layouts_dir}/_#{@page_layout_name}.html.#{template_engine}"
20
15
  end if @page_layouts
21
16
  end
17
+
18
+ private
19
+
20
+ def page_layouts_dir
21
+ @_page_layouts_dir ||= "app/views/alchemy/page_layouts"
22
+ end
22
23
  end
23
24
  end
24
25
  end
@@ -6,18 +6,19 @@ module Alchemy
6
6
  desc "This generator generates your site layouts view partials."
7
7
  source_root File.expand_path('templates', File.dirname(__FILE__))
8
8
 
9
- def create_directory
10
- @site_layouts_dir = "#{Rails.root}/app/views/alchemy/site_layouts"
11
- empty_directory @site_layouts_dir
12
- end
13
-
14
9
  def create_partials
15
10
  @sites = Alchemy::Site.all
16
11
  @sites.each do |site|
17
12
  @site_name = site.name.parameterize.underscore
18
- conditional_template "layout.html.#{template_engine}", "#{@site_layouts_dir}/_#{@site_name}.html.#{template_engine}"
13
+ conditional_template "layout.html.#{template_engine}", "#{site_layouts_dir}/_#{@site_name}.html.#{template_engine}"
19
14
  end if @sites
20
15
  end
16
+
17
+ private
18
+
19
+ def site_layouts_dir
20
+ @_site_layouts_dir ||= "app/views/alchemy/site_layouts"
21
+ end
21
22
  end
22
23
  end
23
24
  end
@@ -0,0 +1,161 @@
1
+ /*
2
+ * Javascript Date formatter
3
+ *
4
+ * Copyright (C) 2010 Greg Methvin (greg@methvin.net)
5
+ *
6
+ * Permission is hereby granted, free of charge, to any person
7
+ * obtaining a copy of this software and associated documentation
8
+ * files (the "Software"), to deal in the Software without
9
+ * restriction, including without limitation the rights to use, copy,
10
+ * modify, merge, publish, distribute, sublicense, and/or sell copies
11
+ * of the Software, and to permit persons to whom the Software is
12
+ * furnished to do so, subject to the following conditions:
13
+ *
14
+ * The above copyright notice and this permission notice shall be
15
+ * included in all copies or substantial portions of the Software.
16
+ *
17
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
18
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
19
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
20
+ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
21
+ * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
22
+ * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
23
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
24
+ * SOFTWARE.
25
+ *
26
+ */
27
+
28
+ Date.dayNamesShort = ['Sun','Mon','Tue','Wed','Thu','Fri','Sat'];
29
+ Date.dayNames = ['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'];
30
+ Date.monthNamesShort = ['Jan','Feb','Mar','Apr','May','Jun', 'Jul','Aug','Sep','Oct','Nov','Dec'];
31
+ Date.monthNames = ['January','February','March','April','May','June', 'July','August', 'September','October','November','December'];
32
+
33
+ (function () {
34
+ var strpad = function (n, nc, c) {
35
+ nc = nc || 2;
36
+ c = c || '0';
37
+ n = String(Math.round(n));
38
+ while (n.length < nc) {
39
+ n = c + n;
40
+ }
41
+ return n;
42
+ };
43
+ var proto = Date.prototype;
44
+ var formatters = Date.formatters = {
45
+ A: function () {
46
+ return Date.dayNames[this.getDay()];
47
+ },
48
+ a: function () {
49
+ return Date.dayNamesShort[this.getDay()];
50
+ },
51
+ B: function () {
52
+ return Date.monthNames[this.getMonth()];
53
+ },
54
+ b: function () {
55
+ return Date.monthNamesShort[this.getMonth()];
56
+ },
57
+ C: function() {
58
+ return strpad(this.getFullYear()/100);
59
+ },
60
+ D: proto.getDate,
61
+ d: function () {
62
+ return strpad(this.getDate());
63
+ },
64
+ e: function () {
65
+ return strpad(this.getDate(), 2, ' ');
66
+ },
67
+ G: function () {
68
+ var y = this.getFullYear();
69
+ var V = parseInt(formatters.V.call(this), 10);
70
+ var W = parseInt(formatters.W.call(this), 10);
71
+ y -= W === 0 && V >= 52;
72
+ y += W > V;
73
+ return y;
74
+ },
75
+ g: function() {
76
+ return strpad(parseInt(formatters.G.call(this) % 100, 10));
77
+ },
78
+ H: function () {
79
+ return strpad(this.getHours());
80
+ },
81
+ I: function () {
82
+ return strpad(formatters.l.call(this));
83
+ },
84
+ i: proto.getHours,
85
+ j: function () {
86
+ var ms = this.getTime() - new Date(String(this.getFullYear()) + '-1-1 GMT').getTime() +
87
+ this.getTimezoneOffset()*60000;
88
+ return strpad(ms / (60000*60*24) + 1, 3);
89
+ },
90
+ l: function () {
91
+ return this.getHours() % 12 || 12;
92
+ },
93
+ M: function () {
94
+ return strpad(this.getMinutes());
95
+ },
96
+ m: function () {
97
+ return strpad(this.getMonth() + 1);
98
+ },
99
+ P: function () {
100
+ return formatters.H.call(this) < 12 ? 'AM' : 'PM';
101
+ },
102
+ p: function () {
103
+ return formatters.H.call(this) < 12 ? 'am' : 'pm';
104
+ },
105
+ S: function () {
106
+ return strpad(this.getSeconds());
107
+ },
108
+ U: function () {
109
+ return strpad((parseInt(formatters.j.call(this), 10) +
110
+ 6 - this.getDay()) / 7);
111
+ },
112
+ u: function () {
113
+ return this.getDay() || 7;
114
+ },
115
+ V: function () {
116
+ var yr = this.getFullYear();
117
+ var firstDay = (new Date(yr, 0, 1)).getDay();
118
+ var isoWeek = parseInt(formatters.W.call(this), 10) + (firstDay <= 4 && firstDay > 1);
119
+ if (isoWeek === 53 && (new Date(yr, 11, 31)).getDay() < 4) {
120
+ isoWeek = 1;
121
+ }
122
+ return strpad(isoWeek || formatters.V.call(new Date(yr - 1, 11, 31)));
123
+ },
124
+ W: function () {
125
+ return strpad(Math.floor((parseInt(formatters.j.call(this), 10) + 7 - (this.getDay() || 7)) / 7));
126
+ },
127
+ w: proto.getDay,
128
+ X: proto.toLocaleTimeString,
129
+ x: proto.toLocaleDateString,
130
+ Y: proto.getFullYear,
131
+ y: function () {
132
+ return strpad(formatters.Y.call(this) % 100);
133
+ },
134
+ z: function () {
135
+ var off = this.getTimezoneOffset(), offHrs = Math.abs(off) / 60, offMin = Math.abs(off) % 60;
136
+ return (off > 0 ? '-' : '+') + strpad(offHrs) + strpad(offMin);
137
+ },
138
+ Z: function () {
139
+ return this.toString().replace(/^.*\((.*?)\)$/, '$1');
140
+ },
141
+ '%': function() {
142
+ return '%';
143
+ }
144
+ };
145
+
146
+ Date.format = function (date, str) {
147
+ return String(str).replace(/%([\w%])/g, function () {
148
+ var f = formatters[arguments[1]];
149
+ return f ? f.call(date) : arguments[0];
150
+ });
151
+ };
152
+
153
+ Date.prototype.format = function () {
154
+ return Date.format.apply(null, [this].concat(Array.prototype.slice.call(arguments)));
155
+ };
156
+ })();
157
+
158
+ // strftime implementation
159
+ var strftime = function (str, date) {
160
+ return Date.format(date || new Date(), str);
161
+ };
@@ -0,0 +1,2 @@
1
+ var DateFormatter;!function(){"use strict";var e,t,a,n,r,o;r=864e5,o=3600,e=function(e,t){return"string"==typeof e&&"string"==typeof t&&e.toLowerCase()===t.toLowerCase()},t=function(e,a,n){var r=n||"0",o=e.toString();return o.length<a?t(r+o,a):o},a=function(e){var t,n;for(e=e||{},t=1;t<arguments.length;t++)if(n=arguments[t])for(var r in n)n.hasOwnProperty(r)&&("object"==typeof n[r]?a(e[r],n[r]):e[r]=n[r]);return e},n={dateSettings:{days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],daysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],meridiem:["AM","PM"],ordinal:function(e){var t=e%10,a={1:"st",2:"nd",3:"rd"};return 1!==Math.floor(e%100/10)&&a[t]?a[t]:"th"}},separators:/[ \-+\/\.T:@]/g,validParts:/[dDjlNSwzWFmMntLoYyaABgGhHisueTIOPZcrU]/g,intParts:/[djwNzmnyYhHgGis]/g,tzParts:/\b(?:[PMCEA][SDP]T|(?:Pacific|Mountain|Central|Eastern|Atlantic) (?:Standard|Daylight|Prevailing) Time|(?:GMT|UTC)(?:[-+]\d{4})?)\b/g,tzClip:/[^-+\dA-Z]/g},DateFormatter=function(e){var t=this,r=a(n,e);t.dateSettings=r.dateSettings,t.separators=r.separators,t.validParts=r.validParts,t.intParts=r.intParts,t.tzParts=r.tzParts,t.tzClip=r.tzClip},DateFormatter.prototype={constructor:DateFormatter,parseDate:function(t,a){var n,r,o,i,s,d,u,l,f,c,h=this,m=!1,g=!1,p=h.dateSettings,y={date:null,year:null,month:null,day:null,hour:0,min:0,sec:0};if(!t)return void 0;if(t instanceof Date)return t;if("number"==typeof t)return new Date(t);if("U"===a)return o=parseInt(t),o?new Date(1e3*o):t;if("string"!=typeof t)return"";if(n=a.match(h.validParts),!n||0===n.length)throw new Error("Invalid date format definition.");for(r=t.replace(h.separators,"\x00").split("\x00"),o=0;o<r.length;o++)switch(i=r[o],s=parseInt(i),n[o]){case"y":case"Y":f=i.length,2===f?y.year=parseInt((70>s?"20":"19")+i):4===f&&(y.year=s),m=!0;break;case"m":case"n":case"M":case"F":isNaN(i)?(d=p.monthsShort.indexOf(i),d>-1&&(y.month=d+1),d=p.months.indexOf(i),d>-1&&(y.month=d+1)):s>=1&&12>=s&&(y.month=s),m=!0;break;case"d":case"j":s>=1&&31>=s&&(y.day=s),m=!0;break;case"g":case"h":u=n.indexOf("a")>-1?n.indexOf("a"):n.indexOf("A")>-1?n.indexOf("A"):-1,c=r[u],u>-1?(l=e(c,p.meridiem[0])?0:e(c,p.meridiem[1])?12:-1,s>=1&&12>=s&&l>-1?y.hour=s+l-1:s>=0&&23>=s&&(y.hour=s)):s>=0&&23>=s&&(y.hour=s),g=!0;break;case"G":case"H":s>=0&&23>=s&&(y.hour=s),g=!0;break;case"i":s>=0&&59>=s&&(y.min=s),g=!0;break;case"s":s>=0&&59>=s&&(y.sec=s),g=!0}if(m===!0&&y.year&&y.month&&y.day)y.date=new Date(y.year,y.month-1,y.day,y.hour,y.min,y.sec,0);else{if(g!==!0)return!1;y.date=new Date(0,0,0,y.hour,y.min,y.sec,0)}return y.date},guessDate:function(e,t){if("string"!=typeof e)return e;var a,n,r,o,i=this,s=e.replace(i.separators,"\x00").split("\x00"),d=/^[djmn]/g,u=t.match(i.validParts),l=new Date,f=0;if(!d.test(u[0]))return e;for(n=0;n<s.length;n++){switch(f=2,r=s[n],o=parseInt(r.substr(0,2)),n){case 0:"m"===u[0]||"n"===u[0]?l.setMonth(o-1):l.setDate(o);break;case 1:"m"===u[0]||"n"===u[0]?l.setDate(o):l.setMonth(o-1);break;case 2:a=l.getFullYear(),r.length<4?(l.setFullYear(parseInt(a.toString().substr(0,4-r.length)+r)),f=r.length):(l.setFullYear=parseInt(r.substr(0,4)),f=4);break;case 3:l.setHours(o);break;case 4:l.setMinutes(o);break;case 5:l.setSeconds(o)}r.substr(f).length>0&&s.splice(n+1,0,r.substr(f))}return l},parseFormat:function(e,a){var n,i=this,s=i.dateSettings,d=/\\?(.?)/gi,u=function(e,t){return n[e]?n[e]():t};return n={d:function(){return t(n.j(),2)},D:function(){return s.daysShort[n.w()]},j:function(){return a.getDate()},l:function(){return s.days[n.w()]},N:function(){return n.w()||7},w:function(){return a.getDay()},z:function(){var e=new Date(n.Y(),n.n()-1,n.j()),t=new Date(n.Y(),0,1);return Math.round((e-t)/r)},W:function(){var e=new Date(n.Y(),n.n()-1,n.j()-n.N()+3),a=new Date(e.getFullYear(),0,4);return t(1+Math.round((e-a)/r/7),2)},F:function(){return s.months[a.getMonth()]},m:function(){return t(n.n(),2)},M:function(){return s.monthsShort[a.getMonth()]},n:function(){return a.getMonth()+1},t:function(){return new Date(n.Y(),n.n(),0).getDate()},L:function(){var e=n.Y();return e%4===0&&e%100!==0||e%400===0?1:0},o:function(){var e=n.n(),t=n.W(),a=n.Y();return a+(12===e&&9>t?1:1===e&&t>9?-1:0)},Y:function(){return a.getFullYear()},y:function(){return n.Y().toString().slice(-2)},a:function(){return n.A().toLowerCase()},A:function(){var e=n.G()<12?0:1;return s.meridiem[e]},B:function(){var e=a.getUTCHours()*o,n=60*a.getUTCMinutes(),r=a.getUTCSeconds();return t(Math.floor((e+n+r+o)/86.4)%1e3,3)},g:function(){return n.G()%12||12},G:function(){return a.getHours()},h:function(){return t(n.g(),2)},H:function(){return t(n.G(),2)},i:function(){return t(a.getMinutes(),2)},s:function(){return t(a.getSeconds(),2)},u:function(){return t(1e3*a.getMilliseconds(),6)},e:function(){var e=/\((.*)\)/.exec(String(a))[1];return e||"Coordinated Universal Time"},T:function(){var e=(String(a).match(i.tzParts)||[""]).pop().replace(i.tzClip,"");return e||"UTC"},I:function(){var e=new Date(n.Y(),0),t=Date.UTC(n.Y(),0),a=new Date(n.Y(),6),r=Date.UTC(n.Y(),6);return e-t!==a-r?1:0},O:function(){var e=a.getTimezoneOffset(),n=Math.abs(e);return(e>0?"-":"+")+t(100*Math.floor(n/60)+n%60,4)},P:function(){var e=n.O();return e.substr(0,3)+":"+e.substr(3,2)},Z:function(){return 60*-a.getTimezoneOffset()},c:function(){return"Y-m-d\\TH:i:sP".replace(d,u)},r:function(){return"D, d M Y H:i:s O".replace(d,u)},U:function(){return a.getTime()/1e3||0}},u(e,e)},formatDate:function(e,t){var a,n,r,o,i,s=this,d="";if("string"==typeof e&&(e=s.parseDate(e,t),e===!1))return!1;if(e instanceof Date){for(r=t.length,a=0;r>a;a++)i=t.charAt(a),"S"!==i&&(o=s.parseFormat(i,e),a!==r-1&&s.intParts.test(i)&&"S"===t.charAt(a+1)&&(n=parseInt(o),o+=s.dateSettings.ordinal(n)),d+=o);return d}return""}}}(),function(e){"function"==typeof define&&define.amd?define(["jquery","jquery-mousewheel","date-functions"],e):"object"==typeof exports?module.exports=e:e(jQuery)}(function(e){"use strict";function t(e,t,a){this.date=e,this.desc=t,this.style=a}var a={i18n:{ar:{months:["كانون الثاني","شباط","آذار","نيسان","مايو","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول"],dayOfWeekShort:["ن","ث","ع","خ","ج","س","ح"],dayOfWeek:["الأحد","الاثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت","الأحد"]},ro:{months:["Ianuarie","Februarie","Martie","Aprilie","Mai","Iunie","Iulie","August","Septembrie","Octombrie","Noiembrie","Decembrie"],dayOfWeekShort:["Du","Lu","Ma","Mi","Jo","Vi","Sâ"],dayOfWeek:["Duminică","Luni","Marţi","Miercuri","Joi","Vineri","Sâmbătă"]},id:{months:["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","November","Desember"],dayOfWeekShort:["Min","Sen","Sel","Rab","Kam","Jum","Sab"],dayOfWeek:["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"]},is:{months:["Janúar","Febrúar","Mars","Apríl","Maí","Júní","Júlí","Ágúst","September","Október","Nóvember","Desember"],dayOfWeekShort:["Sun","Mán","Þrið","Mið","Fim","Fös","Lau"],dayOfWeek:["Sunnudagur","Mánudagur","Þriðjudagur","Miðvikudagur","Fimmtudagur","Föstudagur","Laugardagur"]},bg:{months:["Януари","Февруари","Март","Април","Май","Юни","Юли","Август","Септември","Октомври","Ноември","Декември"],dayOfWeekShort:["Нд","Пн","Вт","Ср","Чт","Пт","Сб"],dayOfWeek:["Неделя","Понеделник","Вторник","Сряда","Четвъртък","Петък","Събота"]},fa:{months:["فروردین","اردیبهشت","خرداد","تیر","مرداد","شهریور","مهر","آبان","آذر","دی","بهمن","اسفند"],dayOfWeekShort:["یکشنبه","دوشنبه","سه شنبه","چهارشنبه","پنجشنبه","جمعه","شنبه"],dayOfWeek:["یک‌شنبه","دوشنبه","سه‌شنبه","چهارشنبه","پنج‌شنبه","جمعه","شنبه","یک‌شنبه"]},ru:{months:["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь"],dayOfWeekShort:["Вс","Пн","Вт","Ср","Чт","Пт","Сб"],dayOfWeek:["Воскресенье","Понедельник","Вторник","Среда","Четверг","Пятница","Суббота"]},uk:{months:["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","Вересень","Жовтень","Листопад","Грудень"],dayOfWeekShort:["Ндл","Пнд","Втр","Срд","Чтв","Птн","Сбт"],dayOfWeek:["Неділя","Понеділок","Вівторок","Середа","Четвер","П'ятниця","Субота"]},en:{months:["January","February","March","April","May","June","July","August","September","October","November","December"],dayOfWeekShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayOfWeek:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},el:{months:["Ιανουάριος","Φεβρουάριος","Μάρτιος","Απρίλιος","Μάιος","Ιούνιος","Ιούλιος","Αύγουστος","Σεπτέμβριος","Οκτώβριος","Νοέμβριος","Δεκέμβριος"],dayOfWeekShort:["Κυρ","Δευ","Τρι","Τετ","Πεμ","Παρ","Σαβ"],dayOfWeek:["Κυριακή","Δευτέρα","Τρίτη","Τετάρτη","Πέμπτη","Παρασκευή","Σάββατο"]},de:{months:["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],dayOfWeekShort:["So","Mo","Di","Mi","Do","Fr","Sa"],dayOfWeek:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"]},nl:{months:["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],dayOfWeekShort:["zo","ma","di","wo","do","vr","za"],dayOfWeek:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"]},tr:{months:["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık"],dayOfWeekShort:["Paz","Pts","Sal","Çar","Per","Cum","Cts"],dayOfWeek:["Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi"]},fr:{months:["Janvier","Février","Mars","Avril","Mai","Juin","Juillet","Août","Septembre","Octobre","Novembre","Décembre"],dayOfWeekShort:["Dim","Lun","Mar","Mer","Jeu","Ven","Sam"],dayOfWeek:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"]},es:{months:["Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"],dayOfWeekShort:["Dom","Lun","Mar","Mié","Jue","Vie","Sáb"],dayOfWeek:["Domingo","Lunes","Martes","Miércoles","Jueves","Viernes","Sábado"]},th:{months:["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม"],dayOfWeekShort:["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."],dayOfWeek:["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัส","ศุกร์","เสาร์","อาทิตย์"]},pl:{months:["styczeń","luty","marzec","kwiecień","maj","czerwiec","lipiec","sierpień","wrzesień","październik","listopad","grudzień"],dayOfWeekShort:["nd","pn","wt","śr","cz","pt","sb"],dayOfWeek:["niedziela","poniedziałek","wtorek","środa","czwartek","piątek","sobota"]},pt:{months:["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"],dayOfWeekShort:["Dom","Seg","Ter","Qua","Qui","Sex","Sab"],dayOfWeek:["Domingo","Segunda","Terça","Quarta","Quinta","Sexta","Sábado"]},ch:{months:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],dayOfWeekShort:["日","一","二","三","四","五","六"]},se:{months:["Januari","Februari","Mars","April","Maj","Juni","Juli","Augusti","September","Oktober","November","December"],dayOfWeekShort:["Sön","Mån","Tis","Ons","Tor","Fre","Lör"]},kr:{months:["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"],dayOfWeekShort:["일","월","화","수","목","금","토"],dayOfWeek:["일요일","월요일","화요일","수요일","목요일","금요일","토요일"]},it:{months:["Gennaio","Febbraio","Marzo","Aprile","Maggio","Giugno","Luglio","Agosto","Settembre","Ottobre","Novembre","Dicembre"],dayOfWeekShort:["Dom","Lun","Mar","Mer","Gio","Ven","Sab"],dayOfWeek:["Domenica","Lunedì","Martedì","Mercoledì","Giovedì","Venerdì","Sabato"]},da:{months:["January","Februar","Marts","April","Maj","Juni","July","August","September","Oktober","November","December"],dayOfWeekShort:["Søn","Man","Tir","Ons","Tor","Fre","Lør"],dayOfWeek:["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"]},no:{months:["Januar","Februar","Mars","April","Mai","Juni","Juli","August","September","Oktober","November","Desember"],dayOfWeekShort:["Søn","Man","Tir","Ons","Tor","Fre","Lør"],dayOfWeek:["Søndag","Mandag","Tirsdag","Onsdag","Torsdag","Fredag","Lørdag"]},ja:{months:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],dayOfWeekShort:["日","月","火","水","木","金","土"],dayOfWeek:["日曜","月曜","火曜","水曜","木曜","金曜","土曜"]},vi:{months:["Tháng 1","Tháng 2","Tháng 3","Tháng 4","Tháng 5","Tháng 6","Tháng 7","Tháng 8","Tháng 9","Tháng 10","Tháng 11","Tháng 12"],dayOfWeekShort:["CN","T2","T3","T4","T5","T6","T7"],dayOfWeek:["Chủ nhật","Thứ hai","Thứ ba","Thứ tư","Thứ năm","Thứ sáu","Thứ bảy"]},sl:{months:["Januar","Februar","Marec","April","Maj","Junij","Julij","Avgust","September","Oktober","November","December"],dayOfWeekShort:["Ned","Pon","Tor","Sre","Čet","Pet","Sob"],dayOfWeek:["Nedelja","Ponedeljek","Torek","Sreda","Četrtek","Petek","Sobota"]},cs:{months:["Leden","Únor","Březen","Duben","Květen","Červen","Červenec","Srpen","Září","Říjen","Listopad","Prosinec"],dayOfWeekShort:["Ne","Po","Út","St","Čt","Pá","So"]},hu:{months:["Január","Február","Március","Április","Május","Június","Július","Augusztus","Szeptember","Október","November","December"],dayOfWeekShort:["Va","Hé","Ke","Sze","Cs","Pé","Szo"],dayOfWeek:["vasárnap","hétfő","kedd","szerda","csütörtök","péntek","szombat"]},az:{months:["Yanvar","Fevral","Mart","Aprel","May","Iyun","Iyul","Avqust","Sentyabr","Oktyabr","Noyabr","Dekabr"],dayOfWeekShort:["B","Be","Ça","Ç","Ca","C","Ş"],dayOfWeek:["Bazar","Bazar ertəsi","Çərşənbə axşamı","Çərşənbə","Cümə axşamı","Cümə","Şənbə"]},bs:{months:["Januar","Februar","Mart","April","Maj","Jun","Jul","Avgust","Septembar","Oktobar","Novembar","Decembar"],dayOfWeekShort:["Ned","Pon","Uto","Sri","Čet","Pet","Sub"],dayOfWeek:["Nedjelja","Ponedjeljak","Utorak","Srijeda","Četvrtak","Petak","Subota"]},ca:{months:["Gener","Febrer","Març","Abril","Maig","Juny","Juliol","Agost","Setembre","Octubre","Novembre","Desembre"],dayOfWeekShort:["Dg","Dl","Dt","Dc","Dj","Dv","Ds"],dayOfWeek:["Diumenge","Dilluns","Dimarts","Dimecres","Dijous","Divendres","Dissabte"]},"en-GB":{months:["January","February","March","April","May","June","July","August","September","October","November","December"],dayOfWeekShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayOfWeek:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},et:{months:["Jaanuar","Veebruar","Märts","Aprill","Mai","Juuni","Juuli","August","September","Oktoober","November","Detsember"],dayOfWeekShort:["P","E","T","K","N","R","L"],dayOfWeek:["Pühapäev","Esmaspäev","Teisipäev","Kolmapäev","Neljapäev","Reede","Laupäev"]},eu:{months:["Urtarrila","Otsaila","Martxoa","Apirila","Maiatza","Ekaina","Uztaila","Abuztua","Iraila","Urria","Azaroa","Abendua"],dayOfWeekShort:["Ig.","Al.","Ar.","Az.","Og.","Or.","La."],dayOfWeek:["Igandea","Astelehena","Asteartea","Asteazkena","Osteguna","Ostirala","Larunbata"]},fi:{months:["Tammikuu","Helmikuu","Maaliskuu","Huhtikuu","Toukokuu","Kesäkuu","Heinäkuu","Elokuu","Syyskuu","Lokakuu","Marraskuu","Joulukuu"],dayOfWeekShort:["Su","Ma","Ti","Ke","To","Pe","La"],dayOfWeek:["sunnuntai","maanantai","tiistai","keskiviikko","torstai","perjantai","lauantai"]},gl:{months:["Xan","Feb","Maz","Abr","Mai","Xun","Xul","Ago","Set","Out","Nov","Dec"],dayOfWeekShort:["Dom","Lun","Mar","Mer","Xov","Ven","Sab"],dayOfWeek:["Domingo","Luns","Martes","Mércores","Xoves","Venres","Sábado"]},hr:{months:["Siječanj","Veljača","Ožujak","Travanj","Svibanj","Lipanj","Srpanj","Kolovoz","Rujan","Listopad","Studeni","Prosinac"],dayOfWeekShort:["Ned","Pon","Uto","Sri","Čet","Pet","Sub"],dayOfWeek:["Nedjelja","Ponedjeljak","Utorak","Srijeda","Četvrtak","Petak","Subota"]},ko:{months:["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"],dayOfWeekShort:["일","월","화","수","목","금","토"],dayOfWeek:["일요일","월요일","화요일","수요일","목요일","금요일","토요일"]},lt:{months:["Sausio","Vasario","Kovo","Balandžio","Gegužės","Birželio","Liepos","Rugpjūčio","Rugsėjo","Spalio","Lapkričio","Gruodžio"],dayOfWeekShort:["Sek","Pir","Ant","Tre","Ket","Pen","Šeš"],dayOfWeek:["Sekmadienis","Pirmadienis","Antradienis","Trečiadienis","Ketvirtadienis","Penktadienis","Šeštadienis"]},lv:{months:["Janvāris","Februāris","Marts","Aprīlis ","Maijs","Jūnijs","Jūlijs","Augusts","Septembris","Oktobris","Novembris","Decembris"],dayOfWeekShort:["Sv","Pr","Ot","Tr","Ct","Pk","St"],dayOfWeek:["Svētdiena","Pirmdiena","Otrdiena","Trešdiena","Ceturtdiena","Piektdiena","Sestdiena"]},mk:{months:["јануари","февруари","март","април","мај","јуни","јули","август","септември","октомври","ноември","декември"],dayOfWeekShort:["нед","пон","вто","сре","чет","пет","саб"],dayOfWeek:["Недела","Понеделник","Вторник","Среда","Четврток","Петок","Сабота"]},mn:{months:["1-р сар","2-р сар","3-р сар","4-р сар","5-р сар","6-р сар","7-р сар","8-р сар","9-р сар","10-р сар","11-р сар","12-р сар"],dayOfWeekShort:["Дав","Мяг","Лха","Пүр","Бсн","Бям","Ням"],dayOfWeek:["Даваа","Мягмар","Лхагва","Пүрэв","Баасан","Бямба","Ням"]},"pt-BR":{months:["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"],dayOfWeekShort:["Dom","Seg","Ter","Qua","Qui","Sex","Sáb"],dayOfWeek:["Domingo","Segunda","Terça","Quarta","Quinta","Sexta","Sábado"]},sk:{months:["Január","Február","Marec","Apríl","Máj","Jún","Júl","August","September","Október","November","December"],dayOfWeekShort:["Ne","Po","Ut","St","Št","Pi","So"],dayOfWeek:["Nedeľa","Pondelok","Utorok","Streda","Štvrtok","Piatok","Sobota"]},sq:{months:["Janar","Shkurt","Mars","Prill","Maj","Qershor","Korrik","Gusht","Shtator","Tetor","Nëntor","Dhjetor"],dayOfWeekShort:["Die","Hën","Mar","Mër","Enj","Pre","Shtu"],dayOfWeek:["E Diel","E Hënë","E Martē","E Mërkurë","E Enjte","E Premte","E Shtunë"]},"sr-YU":{months:["Januar","Februar","Mart","April","Maj","Jun","Jul","Avgust","Septembar","Oktobar","Novembar","Decembar"],dayOfWeekShort:["Ned","Pon","Uto","Sre","čet","Pet","Sub"],dayOfWeek:["Nedelja","Ponedeljak","Utorak","Sreda","Četvrtak","Petak","Subota"]},sr:{months:["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар"],dayOfWeekShort:["нед","пон","уто","сре","чет","пет","суб"],dayOfWeek:["Недеља","Понедељак","Уторак","Среда","Четвртак","Петак","Субота"]},sv:{months:["Januari","Februari","Mars","April","Maj","Juni","Juli","Augusti","September","Oktober","November","December"],dayOfWeekShort:["Sön","Mån","Tis","Ons","Tor","Fre","Lör"],dayOfWeek:["Söndag","Måndag","Tisdag","Onsdag","Torsdag","Fredag","Lördag"]},"zh-TW":{months:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],dayOfWeekShort:["日","一","二","三","四","五","六"],dayOfWeek:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"]},zh:{months:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],dayOfWeekShort:["日","一","二","三","四","五","六"],dayOfWeek:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"]},he:{months:["ינואר","פברואר","מרץ","אפריל","מאי","יוני","יולי","אוגוסט","ספטמבר","אוקטובר","נובמבר","דצמבר"],dayOfWeekShort:["א'","ב'","ג'","ד'","ה'","ו'","שבת"],dayOfWeek:["ראשון","שני","שלישי","רביעי","חמישי","שישי","שבת","ראשון"]},hy:{months:["Հունվար","Փետրվար","Մարտ","Ապրիլ","Մայիս","Հունիս","Հուլիս","Օգոստոս","Սեպտեմբեր","Հոկտեմբեր","Նոյեմբեր","Դեկտեմբեր"],dayOfWeekShort:["Կի","Երկ","Երք","Չոր","Հնգ","Ուրբ","Շբթ"],dayOfWeek:["Կիրակի","Երկուշաբթի","Երեքշաբթի","Չորեքշաբթի","Հինգշաբթի","Ուրբաթ","Շաբաթ"]},kg:{months:["Үчтүн айы","Бирдин айы","Жалган Куран","Чын Куран","Бугу","Кулжа","Теке","Баш Оона","Аяк Оона","Тогуздун айы","Жетинин айы","Бештин айы"],dayOfWeekShort:["Жек","Дүй","Шей","Шар","Бей","Жум","Ише"],dayOfWeek:["Жекшемб","Дүйшөмб","Шейшемб","Шаршемб","Бейшемби","Жума","Ишенб"]},rm:{months:["Schaner","Favrer","Mars","Avrigl","Matg","Zercladur","Fanadur","Avust","Settember","October","November","December"],dayOfWeekShort:["Du","Gli","Ma","Me","Gie","Ve","So"],dayOfWeek:["Dumengia","Glindesdi","Mardi","Mesemna","Gievgia","Venderdi","Sonda"]}},value:"",rtl:!1,format:"Y/m/d H:i",formatTime:"H:i",formatDate:"Y/m/d",startDate:!1,step:60,monthChangeSpinner:!0,closeOnDateSelect:!1,closeOnTimeSelect:!0,closeOnWithoutClick:!0,closeOnInputClick:!0,timepicker:!0,datepicker:!0,weeks:!1,defaultTime:!1,defaultDate:!1,minDate:!1,maxDate:!1,minTime:!1,maxTime:!1,disabledMinTime:!1,disabledMaxTime:!1,allowTimes:[],opened:!1,initTime:!0,inline:!1,theme:"",onSelectDate:function(){},onSelectTime:function(){},onChangeMonth:function(){},onChangeYear:function(){},onChangeDateTime:function(){},onShow:function(){},onClose:function(){},onGenerate:function(){},withoutCopyright:!0,inverseButton:!1,hours12:!1,next:"xdsoft_next",prev:"xdsoft_prev",dayOfWeekStart:0,parentID:"body",timeHeightInTimePicker:25,timepickerScrollbar:!0,todayButton:!0,prevButton:!0,nextButton:!0,defaultSelect:!0,scrollMonth:!0,scrollTime:!0,scrollInput:!0,lazyInit:!1,mask:!1,validateOnBlur:!0,allowBlank:!0,yearStart:1950,yearEnd:2050,monthStart:0,monthEnd:11,style:"",id:"",fixed:!1,roundTime:"round",className:"",weekends:[],highlightedDates:[],highlightedPeriods:[],disabledDates:[],disabledWeekDays:[],yearOffset:0,beforeShowDay:null,enterLikeTab:!0,showApplyButton:!1},n=null,r="en",o="en",i={meridiem:["AM","PM"]},s=function(){var t=a.i18n[o],r={days:t.dayOfWeek,daysShort:t.dayOfWeekShort,months:t.months,monthsShort:e.map(t.months,function(e){return e.substring(0,3)})};n=new DateFormatter({dateSettings:e.extend({},i,r)})};e.datetimepicker={setLocale:function(e){var t=a.i18n[e]?e:r;o!=t&&(o=t,s())},RFC_2822:"D, d M Y H:i:s O",ATOM:"Y-m-dTH:i:sP",ISO_8601:"Y-m-dTH:i:sO",RFC_822:"D, d M y H:i:s O",RFC_850:"l, d-M-y H:i:s T",RFC_1036:"D, d M y H:i:s O",RFC_1123:"D, d M Y H:i:s O",RSS:"D, d M Y H:i:s O",W3C:"Y-m-dTH:i:sP"},s(),window.getComputedStyle||(window.getComputedStyle=function(e){return this.el=e,this.getPropertyValue=function(t){var a=/(\-([a-z]){1})/g;return"float"===t&&(t="styleFloat"),a.test(t)&&(t=t.replace(a,function(e,t,a){return a.toUpperCase()})),e.currentStyle[t]||null},this}),Array.prototype.indexOf||(Array.prototype.indexOf=function(e,t){var a,n;for(a=t||0,n=this.length;n>a;a+=1)if(this[a]===e)return a;return-1}),Date.prototype.countDaysInMonth=function(){return new Date(this.getFullYear(),this.getMonth()+1,0).getDate()},e.fn.xdsoftScroller=function(t){return this.each(function(){var a,n,r,o,i,s=e(this),d=function(e){var t,a={x:0,y:0};return"touchstart"===e.type||"touchmove"===e.type||"touchend"===e.type||"touchcancel"===e.type?(t=e.originalEvent.touches[0]||e.originalEvent.changedTouches[0],a.x=t.clientX,a.y=t.clientY):("mousedown"===e.type||"mouseup"===e.type||"mousemove"===e.type||"mouseover"===e.type||"mouseout"===e.type||"mouseenter"===e.type||"mouseleave"===e.type)&&(a.x=e.clientX,a.y=e.clientY),a},u=100,l=!1,f=0,c=0,h=0,m=!1,g=0,p=function(){};return"hide"===t?void s.find(".xdsoft_scrollbar").hide():(e(this).hasClass("xdsoft_scroller_box")||(a=s.children().eq(0),n=s[0].clientHeight,r=a[0].offsetHeight,o=e('<div class="xdsoft_scrollbar"></div>'),i=e('<div class="xdsoft_scroller"></div>'),o.append(i),s.addClass("xdsoft_scroller_box").append(o),p=function(e){var t=d(e).y-f+g;0>t&&(t=0),t+i[0].offsetHeight>h&&(t=h-i[0].offsetHeight),s.trigger("scroll_element.xdsoft_scroller",[u?t/u:0])},i.on("touchstart.xdsoft_scroller mousedown.xdsoft_scroller",function(a){n||s.trigger("resize_scroll.xdsoft_scroller",[t]),f=d(a).y,g=parseInt(i.css("margin-top"),10),h=o[0].offsetHeight,"mousedown"===a.type||"touchstart"===a.type?(document&&e(document.body).addClass("xdsoft_noselect"),e([document.body,window]).on("touchend mouseup.xdsoft_scroller",function r(){e([document.body,window]).off("touchend mouseup.xdsoft_scroller",r).off("mousemove.xdsoft_scroller",p).removeClass("xdsoft_noselect")}),e(document.body).on("mousemove.xdsoft_scroller",p)):(m=!0,a.stopPropagation(),a.preventDefault())}).on("touchmove",function(e){m&&(e.preventDefault(),p(e))}).on("touchend touchcancel",function(){m=!1,g=0}),s.on("scroll_element.xdsoft_scroller",function(e,t){n||s.trigger("resize_scroll.xdsoft_scroller",[t,!0]),t=t>1?1:0>t||isNaN(t)?0:t,i.css("margin-top",u*t),setTimeout(function(){a.css("marginTop",-parseInt((a[0].offsetHeight-n)*t,10))},10)}).on("resize_scroll.xdsoft_scroller",function(e,t,d){var l,f;n=s[0].clientHeight,r=a[0].offsetHeight,l=n/r,f=l*o[0].offsetHeight,l>1?i.hide():(i.show(),i.css("height",parseInt(f>10?f:10,10)),u=o[0].offsetHeight-i[0].offsetHeight,d!==!0&&s.trigger("scroll_element.xdsoft_scroller",[t||Math.abs(parseInt(a.css("marginTop"),10))/(r-n)]))}),s.on("mousewheel",function(e){var t=Math.abs(parseInt(a.css("marginTop"),10));return t-=20*e.deltaY,0>t&&(t=0),s.trigger("scroll_element.xdsoft_scroller",[t/(r-n)]),e.stopPropagation(),!1}),s.on("touchstart",function(e){l=d(e),c=Math.abs(parseInt(a.css("marginTop"),10))}),s.on("touchmove",function(e){if(l){e.preventDefault();var t=d(e);s.trigger("scroll_element.xdsoft_scroller",[(c-(t.y-l.y))/(r-n)])}}),s.on("touchend touchcancel",function(){l=!1,c=0})),void s.trigger("resize_scroll.xdsoft_scroller",[t]))})},e.fn.datetimepicker=function(r){var i,s,d=48,u=57,l=96,f=105,c=17,h=46,m=13,g=27,p=8,y=37,v=38,b=39,k=40,x=9,D=116,T=65,S=67,w=86,M=90,O=89,_=!1,W=e.isPlainObject(r)||!r?e.extend(!0,{},a,r):e.extend(!0,{},a),C=0,F=function(e){e.on("open.xdsoft focusin.xdsoft mousedown.xdsoft touchstart",function t(){e.is(":disabled")||e.data("xdsoft_datetimepicker")||(clearTimeout(C),C=setTimeout(function(){e.data("xdsoft_datetimepicker")||i(e),e.off("open.xdsoft focusin.xdsoft mousedown.xdsoft touchstart",t).trigger("open.xdsoft")},100))})};return i=function(a){function i(){var e,t=!1;return W.startDate?t=Y.strToDate(W.startDate):(t=W.value||(a&&a.val&&a.val()?a.val():""),t?t=Y.strToDateTime(t):W.defaultDate&&(t=Y.strToDateTime(W.defaultDate),W.defaultTime&&(e=Y.strtotime(W.defaultTime),t.setHours(e.getHours()),t.setMinutes(e.getMinutes())))),t&&Y.isValidDate(t)?j.data("changed",!0):t="",t||0}var s,C,F,P,A,Y,j=e('<div class="xdsoft_datetimepicker xdsoft_noselect"></div>'),H=e('<div class="xdsoft_copyright"><a target="_blank" href="http://xdsoft.net/jqplugins/datetimepicker/">xdsoft.net</a></div>'),J=e('<div class="xdsoft_datepicker active"></div>'),z=e('<div class="xdsoft_mounthpicker"><button type="button" class="xdsoft_prev"></button><button type="button" class="xdsoft_today_button"></button><div class="xdsoft_label xdsoft_month"><span></span><i></i></div><div class="xdsoft_label xdsoft_year"><span></span><i></i></div><button type="button" class="xdsoft_next"></button></div>'),I=e('<div class="xdsoft_calendar"></div>'),N=e('<div class="xdsoft_timepicker active"><button type="button" class="xdsoft_prev"></button><div class="xdsoft_time_box"></div><button type="button" class="xdsoft_next"></button></div>'),L=N.find(".xdsoft_time_box").eq(0),E=e('<div class="xdsoft_time_variant"></div>'),B=e('<button type="button" class="xdsoft_save_selected blue-gradient-button">Save Selected</button>'),V=e('<div class="xdsoft_select xdsoft_monthselect"><div></div></div>'),G=e('<div class="xdsoft_select xdsoft_yearselect"><div></div></div>'),R=!1,U=0,q=0;W.id&&j.attr("id",W.id),W.style&&j.attr("style",W.style),W.weeks&&j.addClass("xdsoft_showweeks"),W.rtl&&j.addClass("xdsoft_rtl"),j.addClass("xdsoft_"+W.theme),j.addClass(W.className),z.find(".xdsoft_month span").after(V),z.find(".xdsoft_year span").after(G),z.find(".xdsoft_month,.xdsoft_year").on("touchstart mousedown.xdsoft",function(t){var a,n,r=e(this).find(".xdsoft_select").eq(0),o=0,i=0,s=r.is(":visible");for(z.find(".xdsoft_select").hide(),Y.currentTime&&(o=Y.currentTime[e(this).hasClass("xdsoft_month")?"getMonth":"getFullYear"]()),r[s?"hide":"show"](),a=r.find("div.xdsoft_option"),n=0;n<a.length&&a.eq(n).data("value")!==o;n+=1)i+=a[0].offsetHeight;return r.xdsoftScroller(i/(r.children()[0].offsetHeight-r[0].clientHeight)),t.stopPropagation(),!1}),z.find(".xdsoft_select").xdsoftScroller().on("touchstart mousedown.xdsoft",function(e){e.stopPropagation(),e.preventDefault()}).on("touchstart mousedown.xdsoft",".xdsoft_option",function(){(void 0===Y.currentTime||null===Y.currentTime)&&(Y.currentTime=Y.now());var t=Y.currentTime.getFullYear();Y&&Y.currentTime&&Y.currentTime[e(this).parent().parent().hasClass("xdsoft_monthselect")?"setMonth":"setFullYear"](e(this).data("value")),e(this).parent().parent().hide(),j.trigger("xchange.xdsoft"),W.onChangeMonth&&e.isFunction(W.onChangeMonth)&&W.onChangeMonth.call(j,Y.currentTime,j.data("input")),t!==Y.currentTime.getFullYear()&&e.isFunction(W.onChangeYear)&&W.onChangeYear.call(j,Y.currentTime,j.data("input"))}),j.setOptions=function(r){var o={},i=function(e){try{if(document.selection&&document.selection.createRange){var t=document.selection.createRange();return t.getBookmark().charCodeAt(2)-2}if(e.setSelectionRange)return e.selectionStart}catch(a){return 0}},s=function(e,t){if(e="string"==typeof e||e instanceof String?document.getElementById(e):e,!e)return!1;if(e.createTextRange){var a=e.createTextRange();return a.collapse(!0),a.moveEnd("character",t),a.moveStart("character",t),a.select(),!0}return e.setSelectionRange?(e.setSelectionRange(t,t),!0):!1},C=function(e,t){var a=e.replace(/([\[\]\/\{\}\(\)\-\.\+]{1})/g,"\\$1").replace(/_/g,"{digit+}").replace(/([0-9]{1})/g,"{digit$1}").replace(/\{digit([0-9]{1})\}/g,"[0-$1_]{1}").replace(/\{digit[\+]\}/g,"[0-9_]{1}");return new RegExp(a).test(t)};W=e.extend(!0,{},W,r),r.allowTimes&&e.isArray(r.allowTimes)&&r.allowTimes.length&&(W.allowTimes=e.extend(!0,[],r.allowTimes)),r.weekends&&e.isArray(r.weekends)&&r.weekends.length&&(W.weekends=e.extend(!0,[],r.weekends)),r.highlightedDates&&e.isArray(r.highlightedDates)&&r.highlightedDates.length&&(e.each(r.highlightedDates,function(a,r){var i,s=e.map(r.split(","),e.trim),d=new t(n.parseDate(s[0],W.formatDate),s[1],s[2]),u=n.formatDate(d.date,W.formatDate);void 0!==o[u]?(i=o[u].desc,i&&i.length&&d.desc&&d.desc.length&&(o[u].desc=i+"\n"+d.desc)):o[u]=d}),W.highlightedDates=e.extend(!0,[],o)),r.highlightedPeriods&&e.isArray(r.highlightedPeriods)&&r.highlightedPeriods.length&&(o=e.extend(!0,[],W.highlightedDates),e.each(r.highlightedPeriods,function(a,r){var i,s,d,u,l,f,c;if(e.isArray(r))i=r[0],s=r[1],d=r[2],c=r[3];else{var h=e.map(r.split(","),e.trim);i=n.parseDate(h[0],W.formatDate),s=n.parseDate(h[1],W.formatDate),d=h[2],c=h[3]}for(;s>=i;)u=new t(i,d,c),l=n.formatDate(i,W.formatDate),i.setDate(i.getDate()+1),void 0!==o[l]?(f=o[l].desc,f&&f.length&&u.desc&&u.desc.length&&(o[l].desc=f+"\n"+u.desc)):o[l]=u}),W.highlightedDates=e.extend(!0,[],o)),r.disabledDates&&e.isArray(r.disabledDates)&&r.disabledDates.length&&(W.disabledDates=e.extend(!0,[],r.disabledDates)),r.disabledWeekDays&&e.isArray(r.disabledWeekDays)&&r.disabledWeekDays.length&&(W.disabledWeekDays=e.extend(!0,[],r.disabledWeekDays)),!W.open&&!W.opened||W.inline||a.trigger("open.xdsoft"),W.inline&&(R=!0,j.addClass("xdsoft_inline"),a.after(j).hide()),W.inverseButton&&(W.next="xdsoft_prev",W.prev="xdsoft_next"),W.datepicker?J.addClass("active"):J.removeClass("active"),W.timepicker?N.addClass("active"):N.removeClass("active"),W.value&&(Y.setCurrentTime(W.value),a&&a.val&&a.val(Y.str)),W.dayOfWeekStart=isNaN(W.dayOfWeekStart)?0:parseInt(W.dayOfWeekStart,10)%7,W.timepickerScrollbar||L.xdsoftScroller("hide"),W.minDate&&/^[\+\-](.*)$/.test(W.minDate)&&(W.minDate=n.formatDate(Y.strToDateTime(W.minDate),W.formatDate)),W.maxDate&&/^[\+\-](.*)$/.test(W.maxDate)&&(W.maxDate=n.formatDate(Y.strToDateTime(W.maxDate),W.formatDate)),B.toggle(W.showApplyButton),z.find(".xdsoft_today_button").css("visibility",W.todayButton?"visible":"hidden"),z.find("."+W.prev).css("visibility",W.prevButton?"visible":"hidden"),z.find("."+W.next).css("visibility",W.nextButton?"visible":"hidden"),W.mask&&(a.off("keydown.xdsoft"),W.mask===!0&&(W.mask=W.format.replace(/Y/g,"9999").replace(/F/g,"9999").replace(/m/g,"19").replace(/d/g,"39").replace(/H/g,"29").replace(/i/g,"59").replace(/s/g,"59")),
2
+ "string"===e.type(W.mask)&&(C(W.mask,a.val())||(a.val(W.mask.replace(/[0-9]/g,"_")),s(a[0],0)),a.on("keydown.xdsoft",function(t){var n,r,o=this.value,F=t.which;if(F>=d&&u>=F||F>=l&&f>=F||F===p||F===h){for(n=i(this),r=F!==p&&F!==h?String.fromCharCode(F>=l&&f>=F?F-d:F):"_",F!==p&&F!==h||!n||(n-=1,r="_");/[^0-9_]/.test(W.mask.substr(n,1))&&n<W.mask.length&&n>0;)n+=F===p||F===h?-1:1;if(o=o.substr(0,n)+r+o.substr(n+1),""===e.trim(o))o=W.mask.replace(/[0-9]/g,"_");else if(n===W.mask.length)return t.preventDefault(),!1;for(n+=F===p||F===h?0:1;/[^0-9_]/.test(W.mask.substr(n,1))&&n<W.mask.length&&n>0;)n+=F===p||F===h?-1:1;C(W.mask,o)?(this.value=o,s(this,n)):""===e.trim(o)?this.value=W.mask.replace(/[0-9]/g,"_"):a.trigger("error_input.xdsoft")}else if(-1!==[T,S,w,M,O].indexOf(F)&&_||-1!==[g,v,k,y,b,D,c,x,m].indexOf(F))return!0;return t.preventDefault(),!1}))),W.validateOnBlur&&a.off("blur.xdsoft").on("blur.xdsoft",function(){if(W.allowBlank&&!e.trim(e(this).val()).length)e(this).val(null),j.data("xdsoft_datetime").empty();else if(n.parseDate(e(this).val(),W.format))j.data("xdsoft_datetime").setCurrentTime(e(this).val());else{var t=+[e(this).val()[0],e(this).val()[1]].join(""),a=+[e(this).val()[2],e(this).val()[3]].join("");e(this).val(!W.datepicker&&W.timepicker&&t>=0&&24>t&&a>=0&&60>a?[t,a].map(function(e){return e>9?e:"0"+e}).join(":"):n.formatDate(Y.now(),W.format)),j.data("xdsoft_datetime").setCurrentTime(e(this).val())}j.trigger("changedatetime.xdsoft")}),W.dayOfWeekStartPrev=0===W.dayOfWeekStart?6:W.dayOfWeekStart-1,j.trigger("xchange.xdsoft").trigger("afterOpen.xdsoft")},j.data("options",W).on("touchstart mousedown.xdsoft",function(e){return e.stopPropagation(),e.preventDefault(),G.hide(),V.hide(),!1}),L.append(E),L.xdsoftScroller(),j.on("afterOpen.xdsoft",function(){L.xdsoftScroller()}),j.append(J).append(N),W.withoutCopyright!==!0&&j.append(H),J.append(z).append(I).append(B),e(W.parentID).append(j),s=function(){var t=this;t.now=function(e){var a,n,r=new Date;return!e&&W.defaultDate&&(a=t.strToDateTime(W.defaultDate),r.setFullYear(a.getFullYear()),r.setMonth(a.getMonth()),r.setDate(a.getDate())),W.yearOffset&&r.setFullYear(r.getFullYear()+W.yearOffset),!e&&W.defaultTime&&(n=t.strtotime(W.defaultTime),r.setHours(n.getHours()),r.setMinutes(n.getMinutes())),r},t.isValidDate=function(e){return"[object Date]"!==Object.prototype.toString.call(e)?!1:!isNaN(e.getTime())},t.setCurrentTime=function(e){t.currentTime="string"==typeof e?t.strToDateTime(e):t.isValidDate(e)?e:t.now(),j.trigger("xchange.xdsoft")},t.empty=function(){t.currentTime=null},t.getCurrentTime=function(){return t.currentTime},t.nextMonth=function(){(void 0===t.currentTime||null===t.currentTime)&&(t.currentTime=t.now());var a,n=t.currentTime.getMonth()+1;return 12===n&&(t.currentTime.setFullYear(t.currentTime.getFullYear()+1),n=0),a=t.currentTime.getFullYear(),t.currentTime.setDate(Math.min(new Date(t.currentTime.getFullYear(),n+1,0).getDate(),t.currentTime.getDate())),t.currentTime.setMonth(n),W.onChangeMonth&&e.isFunction(W.onChangeMonth)&&W.onChangeMonth.call(j,Y.currentTime,j.data("input")),a!==t.currentTime.getFullYear()&&e.isFunction(W.onChangeYear)&&W.onChangeYear.call(j,Y.currentTime,j.data("input")),j.trigger("xchange.xdsoft"),n},t.prevMonth=function(){(void 0===t.currentTime||null===t.currentTime)&&(t.currentTime=t.now());var a=t.currentTime.getMonth()-1;return-1===a&&(t.currentTime.setFullYear(t.currentTime.getFullYear()-1),a=11),t.currentTime.setDate(Math.min(new Date(t.currentTime.getFullYear(),a+1,0).getDate(),t.currentTime.getDate())),t.currentTime.setMonth(a),W.onChangeMonth&&e.isFunction(W.onChangeMonth)&&W.onChangeMonth.call(j,Y.currentTime,j.data("input")),j.trigger("xchange.xdsoft"),a},t.getWeekOfYear=function(e){var t=new Date(e.getFullYear(),0,1);return Math.ceil(((e-t)/864e5+t.getDay()+1)/7)},t.strToDateTime=function(e){var a,r,o=[];return e&&e instanceof Date&&t.isValidDate(e)?e:(o=/^(\+|\-)(.*)$/.exec(e),o&&(o[2]=n.parseDate(o[2],W.formatDate)),o&&o[2]?(a=o[2].getTime()-6e4*o[2].getTimezoneOffset(),r=new Date(t.now(!0).getTime()+parseInt(o[1]+"1",10)*a)):r=e?n.parseDate(e,W.format):t.now(),t.isValidDate(r)||(r=t.now()),r)},t.strToDate=function(e){if(e&&e instanceof Date&&t.isValidDate(e))return e;var a=e?n.parseDate(e,W.formatDate):t.now(!0);return t.isValidDate(a)||(a=t.now(!0)),a},t.strtotime=function(e){if(e&&e instanceof Date&&t.isValidDate(e))return e;var a=e?n.parseDate(e,W.formatTime):t.now(!0);return t.isValidDate(a)||(a=t.now(!0)),a},t.str=function(){return n.formatDate(t.currentTime,W.format)},t.currentTime=this.now()},Y=new s,B.on("touchend click",function(e){e.preventDefault(),j.data("changed",!0),Y.setCurrentTime(i()),a.val(Y.str()),j.trigger("close.xdsoft")}),z.find(".xdsoft_today_button").on("touchend mousedown.xdsoft",function(){j.data("changed",!0),Y.setCurrentTime(0),j.trigger("afterOpen.xdsoft")}).on("dblclick.xdsoft",function(){var e,t,n=Y.getCurrentTime();n=new Date(n.getFullYear(),n.getMonth(),n.getDate()),e=Y.strToDate(W.minDate),e=new Date(e.getFullYear(),e.getMonth(),e.getDate()),e>n||(t=Y.strToDate(W.maxDate),t=new Date(t.getFullYear(),t.getMonth(),t.getDate()),n>t||(a.val(Y.str()),a.trigger("change"),j.trigger("close.xdsoft")))}),z.find(".xdsoft_prev,.xdsoft_next").on("touchend mousedown.xdsoft",function(){var t=e(this),a=0,n=!1;!function r(e){t.hasClass(W.next)?Y.nextMonth():t.hasClass(W.prev)&&Y.prevMonth(),W.monthChangeSpinner&&(n||(a=setTimeout(r,e||100)))}(500),e([document.body,window]).on("touchend mouseup.xdsoft",function o(){clearTimeout(a),n=!0,e([document.body,window]).off("touchend mouseup.xdsoft",o)})}),N.find(".xdsoft_prev,.xdsoft_next").on("touchend mousedown.xdsoft",function(){var t=e(this),a=0,n=!1,r=110;!function o(e){var i=L[0].clientHeight,s=E[0].offsetHeight,d=Math.abs(parseInt(E.css("marginTop"),10));t.hasClass(W.next)&&s-i-W.timeHeightInTimePicker>=d?E.css("marginTop","-"+(d+W.timeHeightInTimePicker)+"px"):t.hasClass(W.prev)&&d-W.timeHeightInTimePicker>=0&&E.css("marginTop","-"+(d-W.timeHeightInTimePicker)+"px"),L.trigger("scroll_element.xdsoft_scroller",[Math.abs(parseInt(E.css("marginTop"),10)/(s-i))]),r=r>10?10:r-10,n||(a=setTimeout(o,e||r))}(500),e([document.body,window]).on("touchend mouseup.xdsoft",function i(){clearTimeout(a),n=!0,e([document.body,window]).off("touchend mouseup.xdsoft",i)})}),C=0,j.on("xchange.xdsoft",function(t){clearTimeout(C),C=setTimeout(function(){(void 0===Y.currentTime||null===Y.currentTime)&&(Y.currentTime=Y.now());for(var t,a,i,s,d,u,l,f,c,h,m="",g=new Date(Y.currentTime.getFullYear(),Y.currentTime.getMonth(),1,12,0,0),p=0,y=Y.now(),v=!1,b=!1,k=[],x=!0,D="",T="";g.getDay()!==W.dayOfWeekStart;)g.setDate(g.getDate()-1);for(m+="<table><thead><tr>",W.weeks&&(m+="<th></th>"),t=0;7>t;t+=1)m+="<th>"+W.i18n[o].dayOfWeekShort[(t+W.dayOfWeekStart)%7]+"</th>";for(m+="</tr></thead>",m+="<tbody>",W.maxDate!==!1&&(v=Y.strToDate(W.maxDate),v=new Date(v.getFullYear(),v.getMonth(),v.getDate(),23,59,59,999)),W.minDate!==!1&&(b=Y.strToDate(W.minDate),b=new Date(b.getFullYear(),b.getMonth(),b.getDate()));p<Y.currentTime.countDaysInMonth()||g.getDay()!==W.dayOfWeekStart||Y.currentTime.getMonth()===g.getMonth();)k=[],p+=1,i=g.getDay(),s=g.getDate(),d=g.getFullYear(),u=g.getMonth(),l=Y.getWeekOfYear(g),h="",k.push("xdsoft_date"),f=W.beforeShowDay&&e.isFunction(W.beforeShowDay.call)?W.beforeShowDay.call(j,g):null,v!==!1&&g>v||b!==!1&&b>g||f&&f[0]===!1?k.push("xdsoft_disabled"):-1!==W.disabledDates.indexOf(n.formatDate(g,W.formatDate))?k.push("xdsoft_disabled"):-1!==W.disabledWeekDays.indexOf(i)&&k.push("xdsoft_disabled"),f&&""!==f[1]&&k.push(f[1]),Y.currentTime.getMonth()!==u&&k.push("xdsoft_other_month"),(W.defaultSelect||j.data("changed"))&&n.formatDate(Y.currentTime,W.formatDate)===n.formatDate(g,W.formatDate)&&k.push("xdsoft_current"),n.formatDate(y,W.formatDate)===n.formatDate(g,W.formatDate)&&k.push("xdsoft_today"),(0===g.getDay()||6===g.getDay()||-1!==W.weekends.indexOf(n.formatDate(g,W.formatDate)))&&k.push("xdsoft_weekend"),void 0!==W.highlightedDates[n.formatDate(g,W.formatDate)]&&(a=W.highlightedDates[n.formatDate(g,W.formatDate)],k.push(void 0===a.style?"xdsoft_highlighted_default":a.style),h=void 0===a.desc?"":a.desc),W.beforeShowDay&&e.isFunction(W.beforeShowDay)&&k.push(W.beforeShowDay(g)),x&&(m+="<tr>",x=!1,W.weeks&&(m+="<th>"+l+"</th>")),m+='<td data-date="'+s+'" data-month="'+u+'" data-year="'+d+'" class="xdsoft_date xdsoft_day_of_week'+g.getDay()+" "+k.join(" ")+'" title="'+h+'"><div>'+s+"</div></td>",g.getDay()===W.dayOfWeekStartPrev&&(m+="</tr>",x=!0),g.setDate(s+1);if(m+="</tbody></table>",I.html(m),z.find(".xdsoft_label span").eq(0).text(W.i18n[o].months[Y.currentTime.getMonth()]),z.find(".xdsoft_label span").eq(1).text(Y.currentTime.getFullYear()),D="",T="",u="",c=function(t,a){var r,o,i=Y.now(),s=W.allowTimes&&e.isArray(W.allowTimes)&&W.allowTimes.length;i.setHours(t),t=parseInt(i.getHours(),10),i.setMinutes(a),a=parseInt(i.getMinutes(),10),r=new Date(Y.currentTime),r.setHours(t),r.setMinutes(a),k=[],(W.minDateTime!==!1&&W.minDateTime>r||W.maxTime!==!1&&Y.strtotime(W.maxTime).getTime()<i.getTime()||W.minTime!==!1&&Y.strtotime(W.minTime).getTime()>i.getTime())&&k.push("xdsoft_disabled"),(W.minDateTime!==!1&&W.minDateTime>r||W.disabledMinTime!==!1&&i.getTime()>Y.strtotime(W.disabledMinTime).getTime()&&W.disabledMaxTime!==!1&&i.getTime()<Y.strtotime(W.disabledMaxTime).getTime())&&k.push("xdsoft_disabled"),o=new Date(Y.currentTime),o.setHours(parseInt(Y.currentTime.getHours(),10)),s||o.setMinutes(Math[W.roundTime](Y.currentTime.getMinutes()/W.step)*W.step),(W.initTime||W.defaultSelect||j.data("changed"))&&o.getHours()===parseInt(t,10)&&(!s&&W.step>59||o.getMinutes()===parseInt(a,10))&&(W.defaultSelect||j.data("changed")?k.push("xdsoft_current"):W.initTime&&k.push("xdsoft_init_time")),parseInt(y.getHours(),10)===parseInt(t,10)&&parseInt(y.getMinutes(),10)===parseInt(a,10)&&k.push("xdsoft_today"),D+='<div class="xdsoft_time '+k.join(" ")+'" data-hour="'+t+'" data-minute="'+a+'">'+n.formatDate(i,W.formatTime)+"</div>"},W.allowTimes&&e.isArray(W.allowTimes)&&W.allowTimes.length)for(p=0;p<W.allowTimes.length;p+=1)T=Y.strtotime(W.allowTimes[p]).getHours(),u=Y.strtotime(W.allowTimes[p]).getMinutes(),c(T,u);else for(p=0,t=0;p<(W.hours12?12:24);p+=1)for(t=0;60>t;t+=W.step)T=(10>p?"0":"")+p,u=(10>t?"0":"")+t,c(T,u);for(E.html(D),r="",p=0,p=parseInt(W.yearStart,10)+W.yearOffset;p<=parseInt(W.yearEnd,10)+W.yearOffset;p+=1)r+='<div class="xdsoft_option '+(Y.currentTime.getFullYear()===p?"xdsoft_current":"")+'" data-value="'+p+'">'+p+"</div>";for(G.children().eq(0).html(r),p=parseInt(W.monthStart,10),r="";p<=parseInt(W.monthEnd,10);p+=1)r+='<div class="xdsoft_option '+(Y.currentTime.getMonth()===p?"xdsoft_current":"")+'" data-value="'+p+'">'+W.i18n[o].months[p]+"</div>";V.children().eq(0).html(r),e(j).trigger("generate.xdsoft")},10),t.stopPropagation()}).on("afterOpen.xdsoft",function(){if(W.timepicker){var e,t,a,n;E.find(".xdsoft_current").length?e=".xdsoft_current":E.find(".xdsoft_init_time").length&&(e=".xdsoft_init_time"),e?(t=L[0].clientHeight,a=E[0].offsetHeight,n=E.find(e).index()*W.timeHeightInTimePicker+1,n>a-t&&(n=a-t),L.trigger("scroll_element.xdsoft_scroller",[parseInt(n,10)/(a-t)])):L.trigger("scroll_element.xdsoft_scroller",[0])}}),F=0,I.on("touchend click.xdsoft","td",function(t){t.stopPropagation(),F+=1;var n=e(this),r=Y.currentTime;return(void 0===r||null===r)&&(Y.currentTime=Y.now(),r=Y.currentTime),n.hasClass("xdsoft_disabled")?!1:(r.setDate(1),r.setFullYear(n.data("year")),r.setMonth(n.data("month")),r.setDate(n.data("date")),j.trigger("select.xdsoft",[r]),a.val(Y.str()),W.onSelectDate&&e.isFunction(W.onSelectDate)&&W.onSelectDate.call(j,Y.currentTime,j.data("input"),t),j.data("changed",!0),j.trigger("xchange.xdsoft"),j.trigger("changedatetime.xdsoft"),(F>1||W.closeOnDateSelect===!0||W.closeOnDateSelect===!1&&!W.timepicker)&&!W.inline&&j.trigger("close.xdsoft"),void setTimeout(function(){F=0},200))}),E.on("touchend click.xdsoft","div",function(t){t.stopPropagation();var a=e(this),n=Y.currentTime;return(void 0===n||null===n)&&(Y.currentTime=Y.now(),n=Y.currentTime),a.hasClass("xdsoft_disabled")?!1:(n.setHours(a.data("hour")),n.setMinutes(a.data("minute")),j.trigger("select.xdsoft",[n]),j.data("input").val(Y.str()),W.onSelectTime&&e.isFunction(W.onSelectTime)&&W.onSelectTime.call(j,Y.currentTime,j.data("input"),t),j.data("changed",!0),j.trigger("xchange.xdsoft"),j.trigger("changedatetime.xdsoft"),void(W.inline!==!0&&W.closeOnTimeSelect===!0&&j.trigger("close.xdsoft")))}),J.on("mousewheel.xdsoft",function(e){return W.scrollMonth?(e.deltaY<0?Y.nextMonth():Y.prevMonth(),!1):!0}),a.on("mousewheel.xdsoft",function(e){return W.scrollInput?!W.datepicker&&W.timepicker?(P=E.find(".xdsoft_current").length?E.find(".xdsoft_current").eq(0).index():0,P+e.deltaY>=0&&P+e.deltaY<E.children().length&&(P+=e.deltaY),E.children().eq(P).length&&E.children().eq(P).trigger("mousedown"),!1):W.datepicker&&!W.timepicker?(J.trigger(e,[e.deltaY,e.deltaX,e.deltaY]),a.val&&a.val(Y.str()),j.trigger("changedatetime.xdsoft"),!1):void 0:!0}),j.on("changedatetime.xdsoft",function(t){if(W.onChangeDateTime&&e.isFunction(W.onChangeDateTime)){var a=j.data("input");W.onChangeDateTime.call(j,Y.currentTime,a,t),delete W.value,a.trigger("change")}}).on("generate.xdsoft",function(){W.onGenerate&&e.isFunction(W.onGenerate)&&W.onGenerate.call(j,Y.currentTime,j.data("input")),R&&(j.trigger("afterOpen.xdsoft"),R=!1)}).on("click.xdsoft",function(e){e.stopPropagation()}),P=0,A=function(){var t,a=j.data("input").offset(),n=j.data("input")[0],r=a.top+n.offsetHeight-1,o=a.left,i="absolute";"rtl"==j.data("input").parent().css("direction")&&(o-=j.outerWidth()-j.data("input").outerWidth()),W.fixed?(r-=e(window).scrollTop(),o-=e(window).scrollLeft(),i="fixed"):(r+n.offsetHeight>e(window).height()+e(window).scrollTop()&&(r=a.top-n.offsetHeight+1),0>r&&(r=0),o+n.offsetWidth>e(window).width()&&(o=e(window).width()-n.offsetWidth)),t=j[0];do if(t=t.parentNode,"relative"===window.getComputedStyle(t).getPropertyValue("position")&&e(window).width()>=t.offsetWidth){o-=(e(window).width()-t.offsetWidth)/2;break}while("HTML"!==t.nodeName);j.css({left:o,top:r,position:i})},j.on("open.xdsoft",function(t){var a=!0;W.onShow&&e.isFunction(W.onShow)&&(a=W.onShow.call(j,Y.currentTime,j.data("input"),t)),a!==!1&&(j.show(),A(),e(window).off("resize.xdsoft",A).on("resize.xdsoft",A),W.closeOnWithoutClick&&e([document.body,window]).on("touchstart mousedown.xdsoft",function n(){j.trigger("close.xdsoft"),e([document.body,window]).off("touchstart mousedown.xdsoft",n)}))}).on("close.xdsoft",function(t){var a=!0;z.find(".xdsoft_month,.xdsoft_year").find(".xdsoft_select").hide(),W.onClose&&e.isFunction(W.onClose)&&(a=W.onClose.call(j,Y.currentTime,j.data("input"),t)),a===!1||W.opened||W.inline||j.hide(),t.stopPropagation()}).on("toggle.xdsoft",function(){j.trigger(j.is(":visible")?"close.xdsoft":"open.xdsoft")}).data("input",a),U=0,q=0,j.data("xdsoft_datetime",Y),j.setOptions(W),Y.setCurrentTime(i()),a.data("xdsoft_datetimepicker",j).on("open.xdsoft focusin.xdsoft mousedown.xdsoft touchstart",function(){a.is(":disabled")||a.data("xdsoft_datetimepicker").is(":visible")&&W.closeOnInputClick||(clearTimeout(U),U=setTimeout(function(){a.is(":disabled")||(R=!0,Y.setCurrentTime(i()),j.trigger("open.xdsoft"))},100))}).on("keydown.xdsoft",function(t){var a,n=(this.value,t.which);return-1!==[m].indexOf(n)&&W.enterLikeTab?(a=e("input:visible,textarea:visible,button:visible,a:visible"),j.trigger("close.xdsoft"),a.eq(a.index(this)+1).focus(),!1):-1!==[x].indexOf(n)?(j.trigger("close.xdsoft"),!0):void 0})},s=function(t){var a=t.data("xdsoft_datetimepicker");a&&(a.data("xdsoft_datetime",null),a.remove(),t.data("xdsoft_datetimepicker",null).off(".xdsoft"),e(window).off("resize.xdsoft"),e([window,document.body]).off("mousedown.xdsoft touchstart"),t.unmousewheel&&t.unmousewheel())},e(document).off("keydown.xdsoftctrl keyup.xdsoftctrl").on("keydown.xdsoftctrl",function(e){e.keyCode===c&&(_=!0)}).on("keyup.xdsoftctrl",function(e){e.keyCode===c&&(_=!1)}),this.each(function(){var t,a=e(this).data("xdsoft_datetimepicker");if(a){if("string"===e.type(r))switch(r){case"show":e(this).select().focus(),a.trigger("open.xdsoft");break;case"hide":a.trigger("close.xdsoft");break;case"toggle":a.trigger("toggle.xdsoft");break;case"destroy":s(e(this));break;case"reset":this.value=this.defaultValue,this.value&&a.data("xdsoft_datetime").isValidDate(n.parseDate(this.value,W.format))||a.data("changed",!1),a.data("xdsoft_datetime").setCurrentTime(this.value);break;case"validate":t=a.data("input"),t.trigger("blur.xdsoft")}else a.setOptions(r);return 0}"string"!==e.type(r)&&(!W.lazyInit||W.open||W.inline?i(e(this)):F(e(this)))})},e.fn.datetimepicker.defaults=a}),function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof exports?module.exports=e:e(jQuery)}(function(e){function t(t){var i=t||window.event,s=d.call(arguments,1),u=0,f=0,c=0,h=0,m=0,g=0;if(t=e.event.fix(i),t.type="mousewheel","detail"in i&&(c=-1*i.detail),"wheelDelta"in i&&(c=i.wheelDelta),"wheelDeltaY"in i&&(c=i.wheelDeltaY),"wheelDeltaX"in i&&(f=-1*i.wheelDeltaX),"axis"in i&&i.axis===i.HORIZONTAL_AXIS&&(f=-1*c,c=0),u=0===c?f:c,"deltaY"in i&&(c=-1*i.deltaY,u=c),"deltaX"in i&&(f=i.deltaX,0===c&&(u=-1*f)),0!==c||0!==f){if(1===i.deltaMode){var p=e.data(this,"mousewheel-line-height");u*=p,c*=p,f*=p}else if(2===i.deltaMode){var y=e.data(this,"mousewheel-page-height");u*=y,c*=y,f*=y}if(h=Math.max(Math.abs(c),Math.abs(f)),(!o||o>h)&&(o=h,n(i,h)&&(o/=40)),n(i,h)&&(u/=40,f/=40,c/=40),u=Math[u>=1?"floor":"ceil"](u/o),f=Math[f>=1?"floor":"ceil"](f/o),c=Math[c>=1?"floor":"ceil"](c/o),l.settings.normalizeOffset&&this.getBoundingClientRect){var v=this.getBoundingClientRect();m=t.clientX-v.left,g=t.clientY-v.top}return t.deltaX=f,t.deltaY=c,t.deltaFactor=o,t.offsetX=m,t.offsetY=g,t.deltaMode=0,s.unshift(t,u,f,c),r&&clearTimeout(r),r=setTimeout(a,200),(e.event.dispatch||e.event.handle).apply(this,s)}}function a(){o=null}function n(e,t){return l.settings.adjustOldDeltas&&"mousewheel"===e.type&&t%120===0}var r,o,i=["wheel","mousewheel","DOMMouseScroll","MozMousePixelScroll"],s="onwheel"in document||document.documentMode>=9?["wheel"]:["mousewheel","DomMouseScroll","MozMousePixelScroll"],d=Array.prototype.slice;if(e.event.fixHooks)for(var u=i.length;u;)e.event.fixHooks[i[--u]]=e.event.mouseHooks;var l=e.event.special.mousewheel={version:"3.1.12",setup:function(){if(this.addEventListener)for(var a=s.length;a;)this.addEventListener(s[--a],t,!1);else this.onmousewheel=t;e.data(this,"mousewheel-line-height",l.getLineHeight(this)),e.data(this,"mousewheel-page-height",l.getPageHeight(this))},teardown:function(){if(this.removeEventListener)for(var a=s.length;a;)this.removeEventListener(s[--a],t,!1);else this.onmousewheel=null;e.removeData(this,"mousewheel-line-height"),e.removeData(this,"mousewheel-page-height")},getLineHeight:function(t){var a=e(t),n=a["offsetParent"in e.fn?"offsetParent":"parent"]();return n.length||(n=e("body")),parseInt(n.css("fontSize"),10)||parseInt(a.css("fontSize"),10)||16},getPageHeight:function(t){return e(t).height()},settings:{adjustOldDeltas:!0,normalizeOffset:!0}};e.fn.extend({mousewheel:function(e){return e?this.bind("mousewheel",e):this.trigger("mousewheel")},unmousewheel:function(e){return this.unbind("mousewheel",e)}})});
@@ -0,0 +1,219 @@
1
+ tinymce.addI18n('it',{
2
+ "Cut": "Taglia",
3
+ "Heading 5": "Intestazione 5",
4
+ "Header 2": "Header 2",
5
+ "Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "Il tuo browser non supporta l'accesso diretto negli Appunti. Per favore usa i tasti di scelta rapida Ctrl+X\/C\/V.",
6
+ "Heading 4": "Intestazione 4",
7
+ "Div": "Div",
8
+ "Heading 2": "Intestazione 2",
9
+ "Paste": "Incolla",
10
+ "Close": "Chiudi",
11
+ "Font Family": "Famiglia font",
12
+ "Pre": "Pre",
13
+ "Align right": "Allinea a Destra",
14
+ "New document": "Nuovo Documento",
15
+ "Blockquote": "Blockquote",
16
+ "Numbered list": "Elenchi Numerati",
17
+ "Heading 1": "Intestazione 1",
18
+ "Headings": "Intestazioni",
19
+ "Increase indent": "Aumenta Rientro",
20
+ "Formats": "Formattazioni",
21
+ "Headers": "Intestazioni",
22
+ "Select all": "Seleziona Tutto",
23
+ "Header 3": "Intestazione 3",
24
+ "Blocks": "Blocchi",
25
+ "Undo": "Indietro",
26
+ "Strikethrough": "Barrato",
27
+ "Bullet list": "Elenchi Puntati",
28
+ "Header 1": "Intestazione 1",
29
+ "Superscript": "Apice",
30
+ "Clear formatting": "Cancella Formattazione",
31
+ "Font Sizes": "Dimensioni font",
32
+ "Subscript": "Pedice",
33
+ "Header 6": "Intestazione 6",
34
+ "Redo": "Ripeti",
35
+ "Paragraph": "Paragrafo",
36
+ "Ok": "Ok",
37
+ "Bold": "Grassetto",
38
+ "Code": "Codice",
39
+ "Italic": "Corsivo",
40
+ "Align center": "Allinea al Cento",
41
+ "Header 5": "Intestazione 5",
42
+ "Heading 6": "Intestazione 6",
43
+ "Heading 3": "Intestazione 3",
44
+ "Decrease indent": "Riduci Rientro",
45
+ "Header 4": "Intestazione 4",
46
+ "Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "Incolla \u00e8 in modalit\u00e0 testo normale. I contenuti sono incollati come testo normale se non disattivi l'opzione.",
47
+ "Underline": "Sottolineato",
48
+ "Cancel": "Annulla",
49
+ "Justify": "Giustifica",
50
+ "Inline": "Inlinea",
51
+ "Copy": "Copia",
52
+ "Align left": "Allinea a Sinistra",
53
+ "Visual aids": "Elementi Visivi",
54
+ "Lower Greek": "Greek Minore",
55
+ "Square": "Quadrato",
56
+ "Default": "Default",
57
+ "Lower Alpha": "Alpha Minore",
58
+ "Circle": "Cerchio",
59
+ "Disc": "Disco",
60
+ "Upper Alpha": "Alpha Superiore",
61
+ "Upper Roman": "Roman Superiore",
62
+ "Lower Roman": "Roman Minore",
63
+ "Name": "Nome",
64
+ "Anchor": "Fissa",
65
+ "You have unsaved changes are you sure you want to navigate away?": "Non hai salvato delle modifiche, sei sicuro di andartene?",
66
+ "Restore last draft": "Ripristina l'ultima bozza.",
67
+ "Special character": "Carattere Speciale",
68
+ "Source code": "Codice Sorgente",
69
+ "B": "B",
70
+ "R": "R",
71
+ "G": "G",
72
+ "Color": "Colore",
73
+ "Right to left": "Da Destra a Sinistra",
74
+ "Left to right": "Da Sinistra a Destra",
75
+ "Emoticons": "Emoction",
76
+ "Robots": "Robot",
77
+ "Document properties": "Propriet\u00e0 Documento",
78
+ "Title": "Titolo",
79
+ "Keywords": "Parola Chiave",
80
+ "Encoding": "Codifica",
81
+ "Description": "Descrizione",
82
+ "Author": "Autore",
83
+ "Fullscreen": "Schermo Intero",
84
+ "Horizontal line": "Linea Orizzontale",
85
+ "Horizontal space": "Spazio Orizzontale",
86
+ "Insert\/edit image": "Aggiungi\/Modifica Immagine",
87
+ "General": "Generale",
88
+ "Advanced": "Avanzato",
89
+ "Source": "Fonte",
90
+ "Border": "Bordo",
91
+ "Constrain proportions": "Mantieni Proporzioni",
92
+ "Vertical space": "Spazio Verticale",
93
+ "Image description": "Descrizione Immagine",
94
+ "Style": "Stile",
95
+ "Dimensions": "Dimenzioni",
96
+ "Insert image": "Inserisci immagine",
97
+ "Zoom in": "Ingrandisci",
98
+ "Contrast": "Contrasto",
99
+ "Back": "Indietro",
100
+ "Gamma": "Gamma",
101
+ "Flip horizontally": "Rifletti orizzontalmente",
102
+ "Resize": "Ridimensiona",
103
+ "Sharpen": "Contrasta",
104
+ "Zoom out": "Rimpicciolisci",
105
+ "Image options": "Opzioni immagine",
106
+ "Apply": "Applica",
107
+ "Brightness": "Luminosit\u00e0",
108
+ "Rotate clockwise": "Ruota in senso orario",
109
+ "Rotate counterclockwise": "Ruota in senso antiorario",
110
+ "Edit image": "Modifica immagine",
111
+ "Color levels": "Livelli colore",
112
+ "Crop": "Taglia",
113
+ "Orientation": "Orientamento",
114
+ "Flip vertically": "Rifletti verticalmente",
115
+ "Invert": "Inverti",
116
+ "Insert date\/time": "Inserisci Data\/Ora",
117
+ "Remove link": "Rimuovi link",
118
+ "Url": "Url",
119
+ "Text to display": "Testo da Visualizzare",
120
+ "Anchors": "Anchors",
121
+ "Insert link": "Inserisci il Link",
122
+ "New window": "Nuova Finestra",
123
+ "None": "No",
124
+ "The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "L'URL inserito sembra essere un collegamento esterno. Vuoi aggiungere il prefisso necessario http:\/\/?",
125
+ "Target": "Target",
126
+ "The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "L'URL inserito sembra essere un indirizzo email. Vuoi aggiungere il prefisso necessario mailto:?",
127
+ "Insert\/edit link": "Inserisci\/Modifica Link",
128
+ "Insert\/edit video": "Inserisci\/Modifica Video",
129
+ "Poster": "Anteprima",
130
+ "Alternative source": "Alternativo",
131
+ "Paste your embed code below:": "Incolla il codice d'incorporamento qui:",
132
+ "Insert video": "Inserisci Video",
133
+ "Embed": "Incorporare",
134
+ "Nonbreaking space": "Spazio unificatore",
135
+ "Page break": "Interruzione di pagina",
136
+ "Paste as text": "incolla come testo",
137
+ "Preview": "Anteprima",
138
+ "Print": "Stampa",
139
+ "Save": "Salva",
140
+ "Could not find the specified string.": "Impossibile trovare la parola specifica.",
141
+ "Replace": "Sostituisci",
142
+ "Next": "Successivo",
143
+ "Whole words": "Parole Sbagliate",
144
+ "Find and replace": "Trova e Sostituisci",
145
+ "Replace with": "Sostituisci Con",
146
+ "Find": "Trova",
147
+ "Replace all": "Sostituisci Tutto",
148
+ "Match case": "Maiuscole\/Minuscole ",
149
+ "Prev": "Precedente",
150
+ "Spellcheck": "Controllo ortografico",
151
+ "Finish": "Termina",
152
+ "Ignore all": "Ignora Tutto",
153
+ "Ignore": "Ignora",
154
+ "Add to Dictionary": "Aggiungi al Dizionario",
155
+ "Insert row before": "Inserisci una Riga Prima",
156
+ "Rows": "Righe",
157
+ "Height": "Altezza",
158
+ "Paste row after": "Incolla una Riga Dopo",
159
+ "Alignment": "Allineamento",
160
+ "Border color": "Colore bordo",
161
+ "Column group": "Gruppo di Colonne",
162
+ "Row": "Riga",
163
+ "Insert column before": "Inserisci una Colonna Prima",
164
+ "Split cell": "Dividi Cella",
165
+ "Cell padding": "Padding della Cella",
166
+ "Cell spacing": "Spaziatura della Cella",
167
+ "Row type": "Tipo di Riga",
168
+ "Insert table": "Inserisci Tabella",
169
+ "Body": "Body",
170
+ "Caption": "Didascalia",
171
+ "Footer": "Footer",
172
+ "Delete row": "Cancella Riga",
173
+ "Paste row before": "Incolla una Riga Prima",
174
+ "Scope": "Campo",
175
+ "Delete table": "Cancella Tabella",
176
+ "H Align": "Allineamento H",
177
+ "Top": "In alto",
178
+ "Header cell": "cella d'intestazione",
179
+ "Column": "Colonna",
180
+ "Row group": "Gruppo di Righe",
181
+ "Cell": "Cella",
182
+ "Middle": "In mezzo",
183
+ "Cell type": "Tipo di Cella",
184
+ "Copy row": "Copia Riga",
185
+ "Row properties": "Propriet\u00e0 della Riga",
186
+ "Table properties": "Propiet\u00e0 della Tabella",
187
+ "Bottom": "In fondo",
188
+ "V Align": "Allineamento V",
189
+ "Header": "Header",
190
+ "Right": "Destra",
191
+ "Insert column after": "Inserisci una Colonna Dopo",
192
+ "Cols": "Colonne",
193
+ "Insert row after": "Inserisci una Riga Dopo",
194
+ "Width": "Larghezza",
195
+ "Cell properties": "Propiet\u00e0 della Cella",
196
+ "Left": "Sinistra",
197
+ "Cut row": "Taglia Riga",
198
+ "Delete column": "Cancella Colonna",
199
+ "Center": "Centro",
200
+ "Merge cells": "Unisci Cella",
201
+ "Insert template": "Inserisci Template",
202
+ "Templates": "Template",
203
+ "Background color": "Colore Background",
204
+ "Custom...": "Personalizzato...",
205
+ "Custom color": "Colore personalizzato",
206
+ "No color": "Nessun colore",
207
+ "Text color": "Colore Testo",
208
+ "Show blocks": "Mostra Blocchi",
209
+ "Show invisible characters": "Mostra Caratteri Invisibili",
210
+ "Words: {0}": "Parole: {0}",
211
+ "Insert": "Inserisci",
212
+ "File": "File",
213
+ "Edit": "Modifica",
214
+ "Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "Rich Text Area. Premi ALT-F9 per il men\u00f9. Premi ALT-F10 per la barra degli strumenti. Premi ALT-0 per l'aiuto.",
215
+ "Tools": "Strumenti",
216
+ "View": "Visualiza",
217
+ "Table": "Tabella",
218
+ "Format": "Formato"
219
+ });