Class: Decidim::ParticipatoryProcesses::Admin::ParticipatoryProcessImportForm
- Inherits:
-
Form
- Object
- Form
- Decidim::ParticipatoryProcesses::Admin::ParticipatoryProcessImportForm
- Includes:
- TranslatableAttributes
- Defined in:
- app/forms/decidim/participatory_processes/admin/participatory_process_import_form.rb
Overview
A form object used to import a participatory processes from the admin dashboard.
Constant Summary collapse
- JSON_MIME_TYPE =
"application/json"
- ACCEPTED_TYPES =
Accepted mime types keys: are used for dynamic help text on admin form. values: are used to validate the file format of imported document.
{ json: JSON_MIME_TYPE }.freeze
Instance Method Summary collapse
- #document_text ⇒ Object
- #document_type ⇒ Object
- #document_type_must_be_valid ⇒ Object
- #i18n_invalid_document_type_text ⇒ Object
- #i18n_valid_mime_types_text ⇒ Object
-
#valid_mime_types ⇒ Object
Return ACCEPTED_MIME_TYPES plus ‘text/plain` for better markdown support.
Instance Method Details
#document_text ⇒ Object
39 40 41 |
# File 'app/forms/decidim/participatory_processes/admin/participatory_process_import_form.rb', line 39 def document_text @document_text ||= document&.read end |
#document_type ⇒ Object
54 55 56 |
# File 'app/forms/decidim/participatory_processes/admin/participatory_process_import_form.rb', line 54 def document_type document.content_type end |
#document_type_must_be_valid ⇒ Object
43 44 45 46 47 |
# File 'app/forms/decidim/participatory_processes/admin/participatory_process_import_form.rb', line 43 def document_type_must_be_valid return if valid_mime_types.include?(document_type) errors.add(:document, i18n_invalid_document_type_text) end |
#i18n_invalid_document_type_text ⇒ Object
58 59 60 61 62 |
# File 'app/forms/decidim/participatory_processes/admin/participatory_process_import_form.rb', line 58 def i18n_invalid_document_type_text I18n.t("invalid_document_type", scope: "activemodel.errors.models.participatory_process.attributes.document", valid_mime_types: i18n_valid_mime_types_text) end |
#i18n_valid_mime_types_text ⇒ Object
64 65 66 67 68 |
# File 'app/forms/decidim/participatory_processes/admin/participatory_process_import_form.rb', line 64 def i18n_valid_mime_types_text ACCEPTED_TYPES.keys.map do |mime_type| I18n.t(mime_type, scope: "decidim.participatory_processes.admin.new_import.accepted_types") end.join(", ") end |
#valid_mime_types ⇒ Object
Return ACCEPTED_MIME_TYPES plus ‘text/plain` for better markdown support
50 51 52 |
# File 'app/forms/decidim/participatory_processes/admin/participatory_process_import_form.rb', line 50 def valid_mime_types ACCEPTED_TYPES.values end |