diff --git a/app/assets/javascripts/application.js b/app/assets/javascripts/application.js index 5ca18f609..359a273ff 100644 --- a/app/assets/javascripts/application.js +++ b/app/assets/javascripts/application.js @@ -55,6 +55,7 @@ //= require checkbox_toggle //= require markdown-it //= require markdown_editor +//= require html_editor //= require cocoon //= require answers //= require questions @@ -114,6 +115,7 @@ var initialize_modules = function() { App.SocialShare.initialize(); App.CheckboxToggle.initialize(); App.MarkdownEditor.initialize(); + App.HTMLEditor.initialize(); App.LegislationAdmin.initialize(); App.LegislationAllegations.initialize(); App.Legislation.initialize(); diff --git a/app/assets/javascripts/html_editor.js b/app/assets/javascripts/html_editor.js new file mode 100644 index 000000000..4325fa255 --- /dev/null +++ b/app/assets/javascripts/html_editor.js @@ -0,0 +1,14 @@ +(function() { + "use strict"; + App.HTMLEditor = { + initialize: function() { + $("textarea.html-area").each(function() { + if ($(this).hasClass("admin")) { + CKEDITOR.replace(this.name, { language: $("html").attr("lang"), toolbar: "admin", height: 500 }); + } else { + CKEDITOR.replace(this.name, { language: $("html").attr("lang") }); + } + }); + } + }; +}).call(this); diff --git a/app/views/admin/budget_investments/edit.html.erb b/app/views/admin/budget_investments/edit.html.erb index bb3acc7f1..da30985db 100644 --- a/app/views/admin/budget_investments/edit.html.erb +++ b/app/views/admin/budget_investments/edit.html.erb @@ -22,9 +22,9 @@
- <%= translations_form.cktext_area :description, + <%= translations_form.text_area :description, maxlength: Budget::Investment.description_max_length, - ckeditor: { language: I18n.locale } %> + class: "html-area" %>
<% end %> diff --git a/app/views/admin/budget_phases/_form.html.erb b/app/views/admin/budget_phases/_form.html.erb index a75ce79b8..5753603f1 100644 --- a/app/views/admin/budget_phases/_form.html.erb +++ b/app/views/admin/budget_phases/_form.html.erb @@ -23,17 +23,19 @@ <%= f.translatable_fields do |translations_form| %>
- <%= translations_form.cktext_area :description, - maxlength: Budget::Phase::DESCRIPTION_MAX_LENGTH, - hint: t("admin.budget_phases.edit.description_help_text") %> + <%= translations_form.text_area :description, + maxlength: Budget::Phase::DESCRIPTION_MAX_LENGTH, + class: "html-area", + hint: t("admin.budget_phases.edit.description_help_text") %>
- <%= translations_form.cktext_area :summary, - maxlength: Budget::Phase::SUMMARY_MAX_LENGTH, - hint: t("admin.budget_phases.edit.summary_help_text") %> + <%= translations_form.text_area :summary, + maxlength: Budget::Phase::SUMMARY_MAX_LENGTH, + class: "html-area", + hint: t("admin.budget_phases.edit.summary_help_text") %>
<% end %> diff --git a/app/views/admin/dashboard/actions/_form.html.erb b/app/views/admin/dashboard/actions/_form.html.erb index b80765e84..c2d150c41 100644 --- a/app/views/admin/dashboard/actions/_form.html.erb +++ b/app/views/admin/dashboard/actions/_form.html.erb @@ -32,7 +32,7 @@
- <%= f.cktext_area :description, ckeditor: { language: I18n.locale } %> + <%= f.text_area :description, class: "html-area" %>
diff --git a/app/views/admin/legislation/homepages/_form.html.erb b/app/views/admin/legislation/homepages/_form.html.erb index 2c2485cfe..fea2d3a5b 100644 --- a/app/views/admin/legislation/homepages/_form.html.erb +++ b/app/views/admin/legislation/homepages/_form.html.erb @@ -16,10 +16,10 @@ <%= f.translatable_fields do |translations_form| %>
- <%= translations_form.cktext_area :homepage, - language: I18n.locale, - ckeditor: { height: 500, toolbar: "admin" }, - hint: t("admin.legislation.processes.form.homepage_description") %> + <%= translations_form.text_area :homepage, + language: I18n.locale, + class: "html-area admin", + hint: t("admin.legislation.processes.form.homepage_description") %>
<% end %> diff --git a/app/views/admin/legislation/milestones/_summary_form.html.erb b/app/views/admin/legislation/milestones/_summary_form.html.erb index 3c4297049..6b708c8c4 100644 --- a/app/views/admin/legislation/milestones/_summary_form.html.erb +++ b/app/views/admin/legislation/milestones/_summary_form.html.erb @@ -7,7 +7,7 @@
<%= f.translatable_fields do |translations_form| %>
- <%= translations_form.cktext_area :milestones_summary, ckeditor: { language: I18n.locale } %> + <%= translations_form.text_area :milestones_summary, class: "html-area" %>
<% end %>
diff --git a/app/views/admin/newsletters/_form.html.erb b/app/views/admin/newsletters/_form.html.erb index a389a090d..a1c5f1abb 100644 --- a/app/views/admin/newsletters/_form.html.erb +++ b/app/views/admin/newsletters/_form.html.erb @@ -5,7 +5,7 @@ @newsletter[:segment_recipient]) %> <%= f.text_field :subject %> <%= f.text_field :from %> - <%= f.cktext_area :body, ckeditor: { language: I18n.locale } %> + <%= f.text_area :body, class: "html-area" %>
<%= f.submit class: "button success" %> diff --git a/app/views/admin/poll/active_polls/_form.html.erb b/app/views/admin/poll/active_polls/_form.html.erb index d3aeaedab..0911e09f1 100644 --- a/app/views/admin/poll/active_polls/_form.html.erb +++ b/app/views/admin/poll/active_polls/_form.html.erb @@ -8,7 +8,7 @@ <%= f.translatable_fields do |translations_form| %>
<%= t("admin.active_polls.form.description.help_text") %> - <%= translations_form.cktext_area :description, + <%= translations_form.text_area :description, class: "html-area", maxlength: ActivePoll.description_max_length %>
<% end %> diff --git a/app/views/admin/poll/questions/answers/_form.html.erb b/app/views/admin/poll/questions/answers/_form.html.erb index 873ce5785..68114d2a6 100644 --- a/app/views/admin/poll/questions/answers/_form.html.erb +++ b/app/views/admin/poll/questions/answers/_form.html.erb @@ -15,7 +15,7 @@ <%= translations_form.text_field :title %>
- <%= translations_form.cktext_area :description, maxlength: Poll::Question.description_max_length %> + <%= translations_form.text_area :description, maxlength: Poll::Question.description_max_length, class: "html-area" %>
<% end %> diff --git a/app/views/admin/site_customization/pages/_form.html.erb b/app/views/admin/site_customization/pages/_form.html.erb index 72be1eacf..5a9475b03 100644 --- a/app/views/admin/site_customization/pages/_form.html.erb +++ b/app/views/admin/site_customization/pages/_form.html.erb @@ -47,8 +47,7 @@ <%= translations_form.text_field :subtitle %>
- <%= translations_form.cktext_area :content, - ckeditor: { language: I18n.locale, toolbar: "admin" } %> + <%= translations_form.text_area :content, class: "html-area admin" %>
<% end %> diff --git a/app/views/budgets/investments/_form.html.erb b/app/views/budgets/investments/_form.html.erb index c118611fd..330931d59 100644 --- a/app/views/budgets/investments/_form.html.erb +++ b/app/views/budgets/investments/_form.html.erb @@ -23,9 +23,9 @@
- <%= translations_form.cktext_area :description, + <%= translations_form.text_area :description, maxlength: Budget::Investment.description_max_length, - ckeditor: { language: I18n.locale } %> + class: "html-area" %>
<% end %> diff --git a/app/views/dashboard/polls/_question_answer_fields.html.erb b/app/views/dashboard/polls/_question_answer_fields.html.erb index 4f3dfae57..b3e6d9e4e 100644 --- a/app/views/dashboard/polls/_question_answer_fields.html.erb +++ b/app/views/dashboard/polls/_question_answer_fields.html.erb @@ -15,9 +15,9 @@
- <%= f.cktext_area :description, - maxlength: Poll::Question.description_max_length, - ckeditor: { language: I18n.locale } %> + <%= f.text_area :description, + maxlength: Poll::Question.description_max_length, + class: "html-area" %>
diff --git a/app/views/debates/_form.html.erb b/app/views/debates/_form.html.erb index 38b4e2bcc..08b24eceb 100644 --- a/app/views/debates/_form.html.erb +++ b/app/views/debates/_form.html.erb @@ -17,9 +17,9 @@
- <%= translations_form.cktext_area :description, + <%= translations_form.text_area :description, maxlength: Debate.description_max_length, - ckeditor: { language: I18n.locale } %> + class: "html-area" %>
<% end %> diff --git a/app/views/legislation/proposals/_form.html.erb b/app/views/legislation/proposals/_form.html.erb index d0c387482..e21a605f6 100644 --- a/app/views/legislation/proposals/_form.html.erb +++ b/app/views/legislation/proposals/_form.html.erb @@ -16,9 +16,9 @@
- <%= f.cktext_area :description, + <%= f.text_area :description, maxlength: Legislation::Proposal.description_max_length, - ckeditor: { language: I18n.locale } %> + class: "html-area" %>
diff --git a/app/views/proposals/_form.html.erb b/app/views/proposals/_form.html.erb index 6f2a34e82..86f86e918 100644 --- a/app/views/proposals/_form.html.erb +++ b/app/views/proposals/_form.html.erb @@ -22,9 +22,9 @@
- <%= translations_form.cktext_area :description, - maxlength: Proposal.description_max_length, - ckeditor: { language: I18n.locale } %> + <%= translations_form.text_area :description, + maxlength: Proposal.description_max_length, + class: "html-area" %>
<% end %> diff --git a/lib/consul_form_builder.rb b/lib/consul_form_builder.rb index 86c84589f..33b0fc1af 100644 --- a/lib/consul_form_builder.rb +++ b/lib/consul_form_builder.rb @@ -9,7 +9,7 @@ class ConsulFormBuilder < FoundationRailsHelper::FormBuilder select attribute, choices, options, html_options end - %i[text_field text_area cktext_area number_field password_field email_field].each do |field| + %i[text_field text_area number_field password_field email_field].each do |field| define_method field do |attribute, options = {}| label_with_hint(attribute, options.merge(label_options: label_options_for(options))) + super(attribute, options.merge(