comfortable_media_surfer 3.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.codeclimate.yml +4 -0
- data/.gitattributes +2 -0
- data/.github/issue_template.md +19 -0
- data/.github/pull_request_template.md +6 -0
- data/.github/workflows/coveralls.yml +40 -0
- data/.github/workflows/rubyonrails.yml +51 -0
- data/.gitignore +21 -0
- data/.rubocop.yml +75 -0
- data/.travis.yml +44 -0
- data/CONTRIBUTING.md +35 -0
- data/Gemfile +38 -0
- data/LICENSE +20 -0
- data/README.md +109 -0
- data/Rakefile +5 -0
- data/app/assets/config/manifest.js +0 -0
- data/app/assets/fonts/comfy/admin/cms/lib/redactor-font.eot +0 -0
- data/app/assets/javascripts/comfy/admin/cms/application.js +39 -0
- data/app/assets/javascripts/comfy/admin/cms/base.js +46 -0
- data/app/assets/javascripts/comfy/admin/cms/categories.js +17 -0
- data/app/assets/javascripts/comfy/admin/cms/codemirror.js +31 -0
- data/app/assets/javascripts/comfy/admin/cms/custom.js +1 -0
- data/app/assets/javascripts/comfy/admin/cms/diff.js +10 -0
- data/app/assets/javascripts/comfy/admin/cms/file_link.js +67 -0
- data/app/assets/javascripts/comfy/admin/cms/file_upload.js +194 -0
- data/app/assets/javascripts/comfy/admin/cms/files_modal.js +40 -0
- data/app/assets/javascripts/comfy/admin/cms/page_fragments.js +22 -0
- data/app/assets/javascripts/comfy/admin/cms/slugify.js +34 -0
- data/app/assets/javascripts/comfy/admin/cms/sortable_list.js +40 -0
- data/app/assets/javascripts/comfy/admin/cms/timepicker.js +30 -0
- data/app/assets/javascripts/comfy/admin/cms/wysiwyg.js +72 -0
- data/app/assets/javascripts/comfy/vendor/Moxie.swf +0 -0
- data/app/assets/javascripts/comfy/vendor/Moxie.xap +0 -0
- data/app/assets/javascripts/comfy/vendor/bootstrap.bundle.min.js +7 -0
- data/app/assets/javascripts/comfy/vendor/bootstrap.bundle.min.js.map +1 -0
- data/app/assets/javascripts/comfy/vendor/codemirror/addon/edit/closetag.js +169 -0
- data/app/assets/javascripts/comfy/vendor/codemirror/mode/css/css.js +832 -0
- data/app/assets/javascripts/comfy/vendor/codemirror/mode/htmlmixed/htmlmixed.js +152 -0
- data/app/assets/javascripts/comfy/vendor/codemirror/mode/javascript/javascript.js +875 -0
- data/app/assets/javascripts/comfy/vendor/codemirror/mode/markdown/markdown.js +861 -0
- data/app/assets/javascripts/comfy/vendor/codemirror/mode/xml/xml.js +394 -0
- data/app/assets/javascripts/comfy/vendor/codemirror.js +9653 -0
- data/app/assets/javascripts/comfy/vendor/diff/diff_match_patch.min.js +49 -0
- data/app/assets/javascripts/comfy/vendor/diff/pretty_text_diff.js +76 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/ar.js +52 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/bg.js +65 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/bn.js +65 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/ca.js +83 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/cs.js +70 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/cy.js +92 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/da.js +71 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/de.js +70 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/default.js +80 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/eo.js +73 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/es.js +69 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/et.js +73 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/fa.js +68 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/fi.js +69 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/fr.js +75 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/gr.js +74 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/he.js +57 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/hi.js +65 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/hr.js +66 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/hu.js +72 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/id.js +61 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/it.js +70 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/ja.js +57 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/ko.js +60 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/lt.js +72 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/lv.js +67 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/mk.js +69 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/mn.js +67 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/ms.js +68 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/my.js +69 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/nl.js +75 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/no.js +73 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/pa.js +65 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/pl.js +68 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/pt-BR.js +66 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/pt.js +66 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/ro.js +69 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/ru.js +66 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/si.js +65 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/sk.js +70 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/sl.js +70 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/sq.js +65 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/sr.js +69 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/sv.js +70 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/th.js +72 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/tr.js +66 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/uk.js +66 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/vn.js +66 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/zh-CN.js +61 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr/i18n/zh-TW.js +61 -0
- data/app/assets/javascripts/comfy/vendor/flatpickr.min.js +2 -0
- data/app/assets/javascripts/comfy/vendor/fontawesome.js +5 -0
- data/app/assets/javascripts/comfy/vendor/moxie.min.js +16 -0
- data/app/assets/javascripts/comfy/vendor/plupload.dev.js +2497 -0
- data/app/assets/javascripts/comfy/vendor/redactor/definedlinks.js +53 -0
- data/app/assets/javascripts/comfy/vendor/redactor/filemanager.js +64 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/ar.js +76 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/az.js +75 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/ba.js +79 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/bg.js +77 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/by.js +77 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/ca.js +75 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/cs.js +87 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/da.js +75 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/de.js +80 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/el.js +76 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/en.js +75 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/eo.js +76 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/es.js +75 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/es_AR.js +76 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/fa.js +76 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/fi.js +75 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/fr.js +75 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/ge.js +75 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/gr.js +75 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/he.js +75 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/hr.js +76 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/hu.js +77 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/id.js +76 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/it.js +78 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/ja.js +76 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/kn.js +75 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/ko.js +76 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/lt.js +75 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/lv.js +75 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/mk.js +75 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/nb.js +75 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/nl.js +80 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/pl.js +76 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/pt-BR.js +75 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/pt.js +75 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/ro.js +76 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/ru.js +76 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/sk.js +76 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/sl.js +79 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/sq.js +79 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/sr-CIR.js +79 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/sr-LAT.js +79 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/sv.js +74 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/th.js +74 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/tr.js +75 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/ua.js +77 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/uk.js +77 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/vi.js +74 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/zh-CN.js +75 -0
- data/app/assets/javascripts/comfy/vendor/redactor/i18n/zh-TW.js +75 -0
- data/app/assets/javascripts/comfy/vendor/redactor/imagemanager.js +57 -0
- data/app/assets/javascripts/comfy/vendor/redactor/table.js +337 -0
- data/app/assets/javascripts/comfy/vendor/redactor/video.js +77 -0
- data/app/assets/javascripts/comfy/vendor/redactor.js +9561 -0
- data/app/assets/javascripts/comfy/vendor/sortable.min.js +5 -0
- data/app/assets/stylesheets/comfy/admin/cms/application.sass +11 -0
- data/app/assets/stylesheets/comfy/admin/cms/base.sass +256 -0
- data/app/assets/stylesheets/comfy/admin/cms/codemirror_overrides.sass +19 -0
- data/app/assets/stylesheets/comfy/admin/cms/custom.sass +1 -0
- data/app/assets/stylesheets/comfy/admin/cms/redactor_overrides.sass +22 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_alert.scss +51 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_badge.scss +54 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_breadcrumb.scss +41 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_button-group.scss +163 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_buttons.scss +137 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_card.scss +289 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_carousel.scss +197 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_close.scss +41 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_code.scss +48 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_custom-forms.scss +507 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_dropdown.scss +191 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_forms.scss +330 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_functions.scss +86 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_grid.scss +52 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_images.scss +42 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_input-group.scss +193 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_jumbotron.scss +17 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_list-group.scss +149 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_media.scss +8 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_mixins.scss +47 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_modal.scss +229 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_nav.scss +120 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_navbar.scss +294 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_pagination.scss +73 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_popover.scss +171 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_print.scss +141 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_progress.scss +43 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_reboot.scss +483 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_root.scss +19 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_spinners.scss +55 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_tables.scss +185 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_toasts.scss +44 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_tooltip.scss +115 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_transitions.scss +20 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_type.scss +125 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_utilities.scss +17 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_variables.scss +1123 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/bootstrap-grid.scss +29 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/bootstrap-reboot.scss +12 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/bootstrap.scss +44 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_alert.scss +13 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_background-variant.scss +21 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_badge.scss +17 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_border-radius.scss +63 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_box-shadow.scss +20 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_breakpoints.scss +123 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_buttons.scss +107 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_caret.scss +62 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_clearfix.scss +7 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_deprecate.scss +10 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_float.scss +14 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_forms.scss +192 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_gradients.scss +45 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_grid-framework.scss +66 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_grid.scss +51 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_hover.scss +37 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_image.scss +36 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_list-group.scss +21 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_lists.scss +7 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_nav-divider.scss +10 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_pagination.scss +22 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_reset-text.scss +17 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_resize.scss +6 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_screen-reader.scss +33 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_size.scss +7 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_table-row.scss +39 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_text-emphasis.scss +16 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_text-hide.scss +11 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_text-truncate.scss +8 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_transition.scss +16 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_visibility.scss +8 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/utilities/_align.scss +8 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/utilities/_background.scss +19 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/utilities/_borders.scss +75 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/utilities/_clearfix.scss +3 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/utilities/_display.scss +26 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/utilities/_embed.scss +39 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/utilities/_flex.scss +51 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/utilities/_float.scss +11 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/utilities/_overflow.scss +5 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/utilities/_position.scss +32 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/utilities/_screenreaders.scss +11 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/utilities/_shadows.scss +6 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/utilities/_sizing.scss +20 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/utilities/_spacing.scss +73 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/utilities/_stretched-link.scss +19 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/utilities/_text.scss +72 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/utilities/_visibility.scss +13 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/vendor/_rfs.scss +204 -0
- data/app/assets/stylesheets/comfy/vendor/codemirror.css +346 -0
- data/app/assets/stylesheets/comfy/vendor/flatpickr.min.css +13 -0
- data/app/assets/stylesheets/comfy/vendor/fontawesome.css +343 -0
- data/app/assets/stylesheets/comfy/vendor/redactor.css +948 -0
- data/app/controllers/application_controller.rb +5 -0
- data/app/controllers/comfy/admin/base_controller.rb +20 -0
- data/app/controllers/comfy/admin/cms/base_controller.rb +54 -0
- data/app/controllers/comfy/admin/cms/categories_controller.rb +38 -0
- data/app/controllers/comfy/admin/cms/files_controller.rb +139 -0
- data/app/controllers/comfy/admin/cms/layouts_controller.rb +68 -0
- data/app/controllers/comfy/admin/cms/pages_controller.rb +163 -0
- data/app/controllers/comfy/admin/cms/revisions/base_controller.rb +48 -0
- data/app/controllers/comfy/admin/cms/revisions/layout_controller.rb +16 -0
- data/app/controllers/comfy/admin/cms/revisions/page_controller.rb +28 -0
- data/app/controllers/comfy/admin/cms/revisions/snippet_controller.rb +16 -0
- data/app/controllers/comfy/admin/cms/revisions/translation_controller.rb +29 -0
- data/app/controllers/comfy/admin/cms/sites_controller.rb +68 -0
- data/app/controllers/comfy/admin/cms/snippets_controller.rb +65 -0
- data/app/controllers/comfy/admin/cms/translations_controller.rb +105 -0
- data/app/controllers/comfy/cms/assets_controller.rb +38 -0
- data/app/controllers/comfy/cms/base_controller.rb +26 -0
- data/app/controllers/comfy/cms/content_controller.rb +90 -0
- data/app/controllers/concerns/comfy/paginate.rb +11 -0
- data/app/controllers/concerns/comfy/reorder_action.rb +20 -0
- data/app/helpers/comfy/admin/cms_helper.rb +50 -0
- data/app/helpers/comfy/cms_helper.rb +71 -0
- data/app/models/comfy/cms/categorization.rb +14 -0
- data/app/models/comfy/cms/category.rb +22 -0
- data/app/models/comfy/cms/file.rb +65 -0
- data/app/models/comfy/cms/fragment.rb +58 -0
- data/app/models/comfy/cms/layout.rb +114 -0
- data/app/models/comfy/cms/page.rb +173 -0
- data/app/models/comfy/cms/revision.rb +10 -0
- data/app/models/comfy/cms/site.rb +93 -0
- data/app/models/comfy/cms/snippet.rb +43 -0
- data/app/models/comfy/cms/translation.rb +42 -0
- data/app/models/concerns/comfy/cms/with_categories.rb +51 -0
- data/app/models/concerns/comfy/cms/with_fragments.rb +123 -0
- data/app/views/comfy/admin/cms/categories/_categories.html.haml +4 -0
- data/app/views/comfy/admin/cms/categories/_edit.html.haml +7 -0
- data/app/views/comfy/admin/cms/categories/_form.html.haml +5 -0
- data/app/views/comfy/admin/cms/categories/_index.html.haml +28 -0
- data/app/views/comfy/admin/cms/categories/_show.html.haml +15 -0
- data/app/views/comfy/admin/cms/categories/create.js.erb +7 -0
- data/app/views/comfy/admin/cms/categories/destroy.js.erb +8 -0
- data/app/views/comfy/admin/cms/categories/edit.js.erb +3 -0
- data/app/views/comfy/admin/cms/categories/update.js.erb +6 -0
- data/app/views/comfy/admin/cms/files/_file.html.haml +31 -0
- data/app/views/comfy/admin/cms/files/_form.html.haml +26 -0
- data/app/views/comfy/admin/cms/files/_modal.html.haml +3 -0
- data/app/views/comfy/admin/cms/files/destroy.js.erb +4 -0
- data/app/views/comfy/admin/cms/files/edit.html.haml +5 -0
- data/app/views/comfy/admin/cms/files/index.html.haml +31 -0
- data/app/views/comfy/admin/cms/files/new.html.haml +5 -0
- data/app/views/comfy/admin/cms/fragments/_form_fragment_attachments.html.haml +23 -0
- data/app/views/comfy/admin/cms/fragments/_form_fragments.html.haml +38 -0
- data/app/views/comfy/admin/cms/layouts/_form.html.haml +20 -0
- data/app/views/comfy/admin/cms/layouts/_index_branch.html.haml +26 -0
- data/app/views/comfy/admin/cms/layouts/edit.html.haml +9 -0
- data/app/views/comfy/admin/cms/layouts/index.html.haml +10 -0
- data/app/views/comfy/admin/cms/layouts/new.html.haml +5 -0
- data/app/views/comfy/admin/cms/pages/_form.html.haml +31 -0
- data/app/views/comfy/admin/cms/pages/_index_branch.html.haml +44 -0
- data/app/views/comfy/admin/cms/pages/edit.html.haml +10 -0
- data/app/views/comfy/admin/cms/pages/index.html.haml +13 -0
- data/app/views/comfy/admin/cms/pages/new.html.haml +5 -0
- data/app/views/comfy/admin/cms/pages/toggle_branch.js.erb +13 -0
- data/app/views/comfy/admin/cms/revisions/_sidebar.html.haml +2 -0
- data/app/views/comfy/admin/cms/revisions/show.html.haml +36 -0
- data/app/views/comfy/admin/cms/sites/_form.html.haml +15 -0
- data/app/views/comfy/admin/cms/sites/edit.html.haml +5 -0
- data/app/views/comfy/admin/cms/sites/index.html.haml +28 -0
- data/app/views/comfy/admin/cms/sites/new.html.haml +5 -0
- data/app/views/comfy/admin/cms/snippets/_form.html.haml +19 -0
- data/app/views/comfy/admin/cms/snippets/edit.html.haml +9 -0
- data/app/views/comfy/admin/cms/snippets/index.html.haml +33 -0
- data/app/views/comfy/admin/cms/snippets/new.html.haml +5 -0
- data/app/views/comfy/admin/cms/translations/_form.html.haml +20 -0
- data/app/views/comfy/admin/cms/translations/_sidebar.html.haml +19 -0
- data/app/views/comfy/admin/cms/translations/edit.html.haml +10 -0
- data/app/views/comfy/admin/cms/translations/new.html.haml +5 -0
- data/app/views/kaminari/comfy/_first_page.html.haml +3 -0
- data/app/views/kaminari/comfy/_gap.html.haml +2 -0
- data/app/views/kaminari/comfy/_last_page.html.haml +3 -0
- data/app/views/kaminari/comfy/_next_page.html.haml +2 -0
- data/app/views/kaminari/comfy/_page.html.haml +2 -0
- data/app/views/kaminari/comfy/_paginator.html.haml +11 -0
- data/app/views/kaminari/comfy/_prev_page.html.haml +2 -0
- data/app/views/layouts/comfy/admin/cms/_body.html.haml +14 -0
- data/app/views/layouts/comfy/admin/cms/_flash.html.haml +4 -0
- data/app/views/layouts/comfy/admin/cms/_footer_js.html.haml +6 -0
- data/app/views/layouts/comfy/admin/cms/_head.html.haml +19 -0
- data/app/views/layouts/comfy/admin/cms/_left.html.haml +46 -0
- data/app/views/layouts/comfy/admin/cms/_right.html.haml +5 -0
- data/app/views/layouts/comfy/admin/cms.html.haml +4 -0
- data/bin/bundle +3 -0
- data/bin/rails +4 -0
- data/bin/rake +4 -0
- data/bin/setup +36 -0
- data/bin/update +31 -0
- data/bin/yarn +11 -0
- data/comfortable_media_surfer.gemspec +37 -0
- data/config/application.rb +59 -0
- data/config/boot.rb +5 -0
- data/config/cable.yml +10 -0
- data/config/cms_routes.rb +8 -0
- data/config/database.yml +40 -0
- data/config/environment.rb +7 -0
- data/config/environments/development.rb +80 -0
- data/config/environments/production.rb +99 -0
- data/config/environments/test.rb +74 -0
- data/config/initializers/assets.rb +14 -0
- data/config/initializers/comfortable_media_surfer.rb +122 -0
- data/config/initializers/content_security_policy.rb +27 -0
- data/config/initializers/filter_parameter_logging.rb +10 -0
- data/config/initializers/inflections.rb +18 -0
- data/config/initializers/json.rb +9 -0
- data/config/initializers/new_framework_defaults_7_0.rb +144 -0
- data/config/initializers/new_framework_defaults_7_1.rb +225 -0
- data/config/initializers/permissions_policy.rb +15 -0
- data/config/locales/ar.yml +262 -0
- data/config/locales/ca.yml +262 -0
- data/config/locales/cs.yml +262 -0
- data/config/locales/da.yml +262 -0
- data/config/locales/de.yml +262 -0
- data/config/locales/en.yml +262 -0
- data/config/locales/es.yml +262 -0
- data/config/locales/fi.yml +262 -0
- data/config/locales/fr.yml +262 -0
- data/config/locales/gr.yml +262 -0
- data/config/locales/hr.yml +262 -0
- data/config/locales/it.yml +262 -0
- data/config/locales/ja.yml +262 -0
- data/config/locales/nb.yml +262 -0
- data/config/locales/nl.yml +262 -0
- data/config/locales/pl.yml +262 -0
- data/config/locales/pt-BR.yml +262 -0
- data/config/locales/ru.yml +262 -0
- data/config/locales/sk.yml +262 -0
- data/config/locales/sv.yml +262 -0
- data/config/locales/tr.yml +262 -0
- data/config/locales/uk.yml +262 -0
- data/config/locales/zh-CN.yml +262 -0
- data/config/locales/zh-TW.yml +262 -0
- data/config/storage.yml +35 -0
- data/config.ru +6 -0
- data/db/cms_seeds/sample-site/files/_default.jpg.yml +5 -0
- data/db/cms_seeds/sample-site/files/default.jpg +0 -0
- data/db/cms_seeds/sample-site/layouts/default/content.html +16 -0
- data/db/cms_seeds/sample-site/layouts/default/nested/content.html +14 -0
- data/db/cms_seeds/sample-site/pages/index/child_a/content.html +7 -0
- data/db/cms_seeds/sample-site/pages/index/child_b/content.html +6 -0
- data/db/cms_seeds/sample-site/pages/index/cms logo.png +0 -0
- data/db/cms_seeds/sample-site/pages/index/content.es.html +6 -0
- data/db/cms_seeds/sample-site/pages/index/content.fr.html +6 -0
- data/db/cms_seeds/sample-site/pages/index/content.html +25 -0
- data/db/cms_seeds/sample-site/pages/index/footer.png +0 -0
- data/db/cms_seeds/sample-site/pages/index/header.png +0 -0
- data/db/cms_seeds/sample-site/snippets/default.html +8 -0
- data/db/migrate/00_create_active_storage_tables.active_storage.rb +50 -0
- data/db/migrate/01_create_cms.rb +143 -0
- data/gemfiles/6.1.gemfile +31 -0
- data/gemfiles/7.0.gemfile +31 -0
- data/gemfiles/7.1.gemfile +31 -0
- data/gemfiles/7.2.gemfile +31 -0
- data/lib/comfortable_media_surfer/access_control/admin_authentication.rb +22 -0
- data/lib/comfortable_media_surfer/access_control/admin_authorization.rb +10 -0
- data/lib/comfortable_media_surfer/access_control/public_authentication.rb +10 -0
- data/lib/comfortable_media_surfer/access_control/public_authorization.rb +10 -0
- data/lib/comfortable_media_surfer/configuration.rb +138 -0
- data/lib/comfortable_media_surfer/content/block.rb +12 -0
- data/lib/comfortable_media_surfer/content/params_parser.rb +149 -0
- data/lib/comfortable_media_surfer/content/renderer.rb +146 -0
- data/lib/comfortable_media_surfer/content/tag.rb +48 -0
- data/lib/comfortable_media_surfer/content/tags/asset.rb +57 -0
- data/lib/comfortable_media_surfer/content/tags/audio.rb +39 -0
- data/lib/comfortable_media_surfer/content/tags/breadcrumbs.rb +43 -0
- data/lib/comfortable_media_surfer/content/tags/checkbox.rb +27 -0
- data/lib/comfortable_media_surfer/content/tags/children.rb +52 -0
- data/lib/comfortable_media_surfer/content/tags/date.rb +19 -0
- data/lib/comfortable_media_surfer/content/tags/datetime.rb +42 -0
- data/lib/comfortable_media_surfer/content/tags/file.rb +70 -0
- data/lib/comfortable_media_surfer/content/tags/file_link.rb +58 -0
- data/lib/comfortable_media_surfer/content/tags/files.rb +41 -0
- data/lib/comfortable_media_surfer/content/tags/fragment.rb +64 -0
- data/lib/comfortable_media_surfer/content/tags/helper.rb +53 -0
- data/lib/comfortable_media_surfer/content/tags/image.rb +56 -0
- data/lib/comfortable_media_surfer/content/tags/markdown.rb +22 -0
- data/lib/comfortable_media_surfer/content/tags/mixins/file_content.rb +42 -0
- data/lib/comfortable_media_surfer/content/tags/number.rb +18 -0
- data/lib/comfortable_media_surfer/content/tags/page_file_link.rb +86 -0
- data/lib/comfortable_media_surfer/content/tags/partial.rb +47 -0
- data/lib/comfortable_media_surfer/content/tags/siblings.rb +66 -0
- data/lib/comfortable_media_surfer/content/tags/snippet.rb +36 -0
- data/lib/comfortable_media_surfer/content/tags/template.rb +42 -0
- data/lib/comfortable_media_surfer/content/tags/text.rb +18 -0
- data/lib/comfortable_media_surfer/content/tags/textarea.rb +19 -0
- data/lib/comfortable_media_surfer/content/tags/wysiwyg.rb +19 -0
- data/lib/comfortable_media_surfer/content/tags.rb +29 -0
- data/lib/comfortable_media_surfer/content.rb +11 -0
- data/lib/comfortable_media_surfer/engine.rb +29 -0
- data/lib/comfortable_media_surfer/error.rb +24 -0
- data/lib/comfortable_media_surfer/extensions/acts_as_tree.rb +114 -0
- data/lib/comfortable_media_surfer/extensions/has_revisions.rb +68 -0
- data/lib/comfortable_media_surfer/extensions.rb +8 -0
- data/lib/comfortable_media_surfer/form_builder.rb +43 -0
- data/lib/comfortable_media_surfer/render_methods.rb +106 -0
- data/lib/comfortable_media_surfer/routing.rb +79 -0
- data/lib/comfortable_media_surfer/seeds/file/exporter.rb +37 -0
- data/lib/comfortable_media_surfer/seeds/file/importer.rb +59 -0
- data/lib/comfortable_media_surfer/seeds/layout/exporter.rb +38 -0
- data/lib/comfortable_media_surfer/seeds/layout/importer.rb +60 -0
- data/lib/comfortable_media_surfer/seeds/page/exporter.rb +88 -0
- data/lib/comfortable_media_surfer/seeds/page/importer.rb +217 -0
- data/lib/comfortable_media_surfer/seeds/snippet/exporter.rb +32 -0
- data/lib/comfortable_media_surfer/seeds/snippet/importer.rb +47 -0
- data/lib/comfortable_media_surfer/seeds.rb +112 -0
- data/lib/comfortable_media_surfer/version.rb +5 -0
- data/lib/comfortable_media_surfer/view_hooks.rb +33 -0
- data/lib/comfortable_media_surfer.rb +56 -0
- data/lib/generators/comfy/cms/README +28 -0
- data/lib/generators/comfy/cms/assets_generator.rb +16 -0
- data/lib/generators/comfy/cms/cms_generator.rb +67 -0
- data/lib/generators/comfy/cms/controllers_generator.rb +15 -0
- data/lib/generators/comfy/cms/models_generator.rb +15 -0
- data/lib/generators/comfy/cms/views_generator.rb +15 -0
- data/lib/generators/comfy/scaffold/scaffold_generator.rb +79 -0
- data/lib/generators/comfy/scaffold/templates/controller.rb.tt +62 -0
- data/lib/generators/comfy/scaffold/templates/migration.rb.tt +11 -0
- data/lib/generators/comfy/scaffold/templates/model.rb.tt +21 -0
- data/lib/generators/comfy/scaffold/templates/tests/controller.rb.tt +115 -0
- data/lib/generators/comfy/scaffold/templates/tests/fixture.yml.tt +4 -0
- data/lib/generators/comfy/scaffold/templates/tests/model.rb.tt +26 -0
- data/lib/generators/comfy/scaffold/templates/views/_form.haml.tt +7 -0
- data/lib/generators/comfy/scaffold/templates/views/edit.haml.tt +5 -0
- data/lib/generators/comfy/scaffold/templates/views/index.haml.tt +21 -0
- data/lib/generators/comfy/scaffold/templates/views/new.haml.tt +5 -0
- data/lib/generators/comfy/scaffold/templates/views/show.haml.tt +4 -0
- data/lib/tasks/cms_seeds.rake +40 -0
- data/public/favicon.ico +0 -0
- data/rakelib/create_release.rake +81 -0
- metadata +797 -0
@@ -0,0 +1,225 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Be sure to restart your server when you modify this file.
|
4
|
+
#
|
5
|
+
# This file eases your Rails 7.1 framework defaults upgrade.
|
6
|
+
#
|
7
|
+
# Uncomment each configuration one by one to switch to the new default.
|
8
|
+
# Once your application is ready to run with all new defaults, you can remove
|
9
|
+
# this file and set the `config.load_defaults` to `7.1`.
|
10
|
+
#
|
11
|
+
# Read the Guide for Upgrading Ruby on Rails for more info on each option.
|
12
|
+
# https://guides.rubyonrails.org/upgrading_ruby_on_rails.html
|
13
|
+
|
14
|
+
# No longer add autoloaded paths into `$LOAD_PATH`. This means that you won't be able
|
15
|
+
# to manually require files that are managed by the autoloader, which you shouldn't do anyway.
|
16
|
+
# This will reduce the size of the load path, making `require` faster if you don't use bootsnap, or reduce the size
|
17
|
+
# of the bootsnap cache if you use it.
|
18
|
+
# Rails.application.config.add_autoload_paths_to_load_path = false
|
19
|
+
|
20
|
+
# Remove the default X-Download-Options headers since it is used only by Internet Explorer.
|
21
|
+
# If you need to support Internet Explorer, add back `"X-Download-Options" => "noopen"`.
|
22
|
+
# Rails.application.config.action_dispatch.default_headers = {
|
23
|
+
# "X-Frame-Options" => "SAMEORIGIN",
|
24
|
+
# "X-XSS-Protection" => "0",
|
25
|
+
# "X-Content-Type-Options" => "nosniff",
|
26
|
+
# "X-Permitted-Cross-Domain-Policies" => "none",
|
27
|
+
# "Referrer-Policy" => "strict-origin-when-cross-origin"
|
28
|
+
# }
|
29
|
+
|
30
|
+
# Do not treat an `ActionController::Parameters` instance
|
31
|
+
# as equal to an equivalent `Hash` by default.
|
32
|
+
# Rails.application.config.action_controller.allow_deprecated_parameters_hash_equality = false
|
33
|
+
|
34
|
+
# Active Record Encryption now uses SHA-256 as its hash digest algorithm. Important: If you have
|
35
|
+
# data encrypted with previous Rails versions, there are two scenarios to consider:
|
36
|
+
#
|
37
|
+
# 1. If you have +config.active_support.key_generator_hash_digest_class+ configured as SHA1 (the default
|
38
|
+
# before Rails 7.0), you need to configure SHA-1 for Active Record Encryption too:
|
39
|
+
# Rails.application.config.active_record.encryption.hash_digest_class = OpenSSL::Digest::SHA1
|
40
|
+
# 2. If you have +config.active_support.key_generator_hash_digest_class+ configured as SHA256 (the new default
|
41
|
+
# in 7.0), then you need to configure SHA-256 for Active Record Encryption:
|
42
|
+
# Rails.application.config.active_record.encryption.hash_digest_class = OpenSSL::Digest::SHA256
|
43
|
+
#
|
44
|
+
# If you don't currently have data encrypted with Active Record encryption, you can disable this setting to
|
45
|
+
# configure the default behavior starting 7.1+:
|
46
|
+
# Rails.application.config.active_record.encryption.support_sha1_for_non_deterministic_encryption = false
|
47
|
+
|
48
|
+
# No longer run after_commit callbacks on the first of multiple Active Record
|
49
|
+
# instances to save changes to the same database row within a transaction.
|
50
|
+
# Instead, run these callbacks on the instance most likely to have internal
|
51
|
+
# state which matches what was committed to the database, typically the last
|
52
|
+
# instance to save.
|
53
|
+
# Rails.application.config.active_record.run_commit_callbacks_on_first_saved_instances_in_transaction = false
|
54
|
+
|
55
|
+
# Configures SQLite with a strict strings mode, which disables double-quoted string literals.
|
56
|
+
#
|
57
|
+
# SQLite has some quirks around double-quoted string literals.
|
58
|
+
# It first tries to consider double-quoted strings as identifier names, but if they don't exist
|
59
|
+
# it then considers them as string literals. Because of this, typos can silently go unnoticed.
|
60
|
+
# For example, it is possible to create an index for a non existing column.
|
61
|
+
# See https://www.sqlite.org/quirks.html#double_quoted_string_literals_are_accepted for more details.
|
62
|
+
# Rails.application.config.active_record.sqlite3_adapter_strict_strings_by_default = true
|
63
|
+
|
64
|
+
# Disable deprecated singular associations names
|
65
|
+
# Rails.application.config.active_record.allow_deprecated_singular_associations_name = false
|
66
|
+
|
67
|
+
# Enable the Active Job `BigDecimal` argument serializer, which guarantees
|
68
|
+
# roundtripping. Without this serializer, some queue adapters may serialize
|
69
|
+
# `BigDecimal` arguments as simple (non-roundtrippable) strings.
|
70
|
+
#
|
71
|
+
# When deploying an application with multiple replicas, old (pre-Rails 7.1)
|
72
|
+
# replicas will not be able to deserialize `BigDecimal` arguments from this
|
73
|
+
# serializer. Therefore, this setting should only be enabled after all replicas
|
74
|
+
# have been successfully upgraded to Rails 7.1.
|
75
|
+
# Rails.application.config.active_job.use_big_decimal_serializer = true
|
76
|
+
|
77
|
+
# Specify if an `ArgumentError` should be raised if `Rails.cache` `fetch` or
|
78
|
+
# `write` are given an invalid `expires_at` or `expires_in` time.
|
79
|
+
# Options are `true`, and `false`. If `false`, the exception will be reported
|
80
|
+
# as `handled` and logged instead.
|
81
|
+
# Rails.application.config.active_support.raise_on_invalid_cache_expiration_time = true
|
82
|
+
|
83
|
+
# Specify whether Query Logs will format tags using the SQLCommenter format
|
84
|
+
# (https://open-telemetry.github.io/opentelemetry-sqlcommenter/), or using the legacy format.
|
85
|
+
# Options are `:legacy` and `:sqlcommenter`.
|
86
|
+
# Rails.application.config.active_record.query_log_tags_format = :sqlcommenter
|
87
|
+
|
88
|
+
# Specify the default serializer used by `MessageEncryptor` and `MessageVerifier`
|
89
|
+
# instances.
|
90
|
+
#
|
91
|
+
# The legacy default is `:marshal`, which is a potential vector for
|
92
|
+
# deserialization attacks in cases where a message signing secret has been
|
93
|
+
# leaked.
|
94
|
+
#
|
95
|
+
# In Rails 7.1, the new default is `:json_allow_marshal` which serializes and
|
96
|
+
# deserializes with `ActiveSupport::JSON`, but can fall back to deserializing
|
97
|
+
# with `Marshal` so that legacy messages can still be read.
|
98
|
+
#
|
99
|
+
# In Rails 7.2, the default will become `:json` which serializes and
|
100
|
+
# deserializes with `ActiveSupport::JSON` only.
|
101
|
+
#
|
102
|
+
# Alternatively, you can choose `:message_pack` or `:message_pack_allow_marshal`,
|
103
|
+
# which serialize with `ActiveSupport::MessagePack`. `ActiveSupport::MessagePack`
|
104
|
+
# can roundtrip some Ruby types that are not supported by JSON, and may provide
|
105
|
+
# improved performance, but it requires the `msgpack` gem.
|
106
|
+
#
|
107
|
+
# For more information, see
|
108
|
+
# https://guides.rubyonrails.org/v7.1/configuring.html#config-active-support-message-serializer
|
109
|
+
#
|
110
|
+
# If you are performing a rolling deploy of a Rails 7.1 upgrade, wherein servers
|
111
|
+
# that have not yet been upgraded must be able to read messages from upgraded
|
112
|
+
# servers, first deploy without changing the serializer, then set the serializer
|
113
|
+
# in a subsequent deploy.
|
114
|
+
# Rails.application.config.active_support.message_serializer = :json_allow_marshal
|
115
|
+
|
116
|
+
# Enable a performance optimization that serializes message data and metadata
|
117
|
+
# together. This changes the message format, so messages serialized this way
|
118
|
+
# cannot be read by older versions of Rails. However, messages that use the old
|
119
|
+
# format can still be read, regardless of whether this optimization is enabled.
|
120
|
+
#
|
121
|
+
# To perform a rolling deploy of a Rails 7.1 upgrade, wherein servers that have
|
122
|
+
# not yet been upgraded must be able to read messages from upgraded servers,
|
123
|
+
# leave this optimization off on the first deploy, then enable it on a
|
124
|
+
# subsequent deploy.
|
125
|
+
# Rails.application.config.active_support.use_message_serializer_for_metadata = true
|
126
|
+
|
127
|
+
# Set the maximum size for Rails log files.
|
128
|
+
#
|
129
|
+
# `config.load_defaults 7.1` does not set this value for environments other than
|
130
|
+
# development and test.
|
131
|
+
#
|
132
|
+
# if Rails.env.local?
|
133
|
+
# Rails.application.config.log_file_size = 100 * 1024 * 1024
|
134
|
+
# end
|
135
|
+
|
136
|
+
# Enable raising on assignment to attr_readonly attributes. The previous
|
137
|
+
# behavior would allow assignment but silently not persist changes to the
|
138
|
+
# database.
|
139
|
+
# Rails.application.config.active_record.raise_on_assign_to_attr_readonly = true
|
140
|
+
|
141
|
+
# Enable validating only parent-related columns for presence when the parent is mandatory.
|
142
|
+
# The previous behavior was to validate the presence of the parent record, which performed an extra query
|
143
|
+
# to get the parent every time the child record was updated, even when parent has not changed.
|
144
|
+
# Rails.application.config.active_record.belongs_to_required_validates_foreign_key = false
|
145
|
+
|
146
|
+
# Enable precompilation of `config.filter_parameters`. Precompilation can
|
147
|
+
# improve filtering performance, depending on the quantity and types of filters.
|
148
|
+
# Rails.application.config.precompile_filter_parameters = true
|
149
|
+
|
150
|
+
# Enable before_committed! callbacks on all enrolled records in a transaction.
|
151
|
+
# The previous behavior was to only run the callbacks on the first copy of a record
|
152
|
+
# if there were multiple copies of the same record enrolled in the transaction.
|
153
|
+
# Rails.application.config.active_record.before_committed_on_all_records = true
|
154
|
+
|
155
|
+
# Disable automatic column serialization into YAML.
|
156
|
+
# To keep the historic behavior, you can set it to `YAML`, however it is
|
157
|
+
# recommended to explicitly define the serialization method for each column
|
158
|
+
# rather than to rely on a global default.
|
159
|
+
# Rails.application.config.active_record.default_column_serializer = nil
|
160
|
+
|
161
|
+
# Enable a performance optimization that serializes Active Record models
|
162
|
+
# in a faster and more compact way.
|
163
|
+
#
|
164
|
+
# To perform a rolling deploy of a Rails 7.1 upgrade, wherein servers that have
|
165
|
+
# not yet been upgraded must be able to read caches from upgraded servers,
|
166
|
+
# leave this optimization off on the first deploy, then enable it on a
|
167
|
+
# subsequent deploy.
|
168
|
+
# Rails.application.config.active_record.marshalling_format_version = 7.1
|
169
|
+
|
170
|
+
# Run `after_commit` and `after_*_commit` callbacks in the order they are defined in a model.
|
171
|
+
# This matches the behaviour of all other callbacks.
|
172
|
+
# In previous versions of Rails, they ran in the inverse order.
|
173
|
+
# Rails.application.config.active_record.run_after_transaction_callbacks_in_order_defined = true
|
174
|
+
|
175
|
+
# Whether a `transaction` block is committed or rolled back when exited via `return`, `break` or `throw`.
|
176
|
+
#
|
177
|
+
# Rails.application.config.active_record.commit_transaction_on_non_local_return = true
|
178
|
+
|
179
|
+
# Controls when to generate a value for <tt>has_secure_token</tt> declarations.
|
180
|
+
#
|
181
|
+
# Rails.application.config.active_record.generate_secure_token_on = :initialize
|
182
|
+
|
183
|
+
# ** Please read carefully, this must be configured in config/application.rb **
|
184
|
+
# Change the format of the cache entry.
|
185
|
+
# Changing this default means that all new cache entries added to the cache
|
186
|
+
# will have a different format that is not supported by Rails 7.0
|
187
|
+
# applications.
|
188
|
+
# Only change this value after your application is fully deployed to Rails 7.1
|
189
|
+
# and you have no plans to rollback.
|
190
|
+
# When you're ready to change format, add this to `config/application.rb` (NOT
|
191
|
+
# this file):
|
192
|
+
# config.active_support.cache_format_version = 7.1
|
193
|
+
|
194
|
+
# Configure Action View to use HTML5 standards-compliant sanitizers when they are supported on your
|
195
|
+
# platform.
|
196
|
+
#
|
197
|
+
# `Rails::HTML::Sanitizer.best_supported_vendor` will cause Action View to use HTML5-compliant
|
198
|
+
# sanitizers if they are supported, else fall back to HTML4 sanitizers.
|
199
|
+
#
|
200
|
+
# In previous versions of Rails, Action View always used `Rails::HTML4::Sanitizer` as its vendor.
|
201
|
+
#
|
202
|
+
# Rails.application.config.action_view.sanitizer_vendor = Rails::HTML::Sanitizer.best_supported_vendor
|
203
|
+
|
204
|
+
# Configure Action Text to use an HTML5 standards-compliant sanitizer when it is supported on your
|
205
|
+
# platform.
|
206
|
+
#
|
207
|
+
# `Rails::HTML::Sanitizer.best_supported_vendor` will cause Action Text to use HTML5-compliant
|
208
|
+
# sanitizers if they are supported, else fall back to HTML4 sanitizers.
|
209
|
+
#
|
210
|
+
# In previous versions of Rails, Action Text always used `Rails::HTML4::Sanitizer` as its vendor.
|
211
|
+
#
|
212
|
+
# Rails.application.config.action_text.sanitizer_vendor = Rails::HTML::Sanitizer.best_supported_vendor
|
213
|
+
|
214
|
+
# Configure the log level used by the DebugExceptions middleware when logging
|
215
|
+
# uncaught exceptions during requests
|
216
|
+
# Rails.application.config.action_dispatch.debug_exception_log_level = :error
|
217
|
+
|
218
|
+
# Configure the test helpers in Action View, Action Dispatch, and rails-dom-testing to use HTML5
|
219
|
+
# parsers.
|
220
|
+
#
|
221
|
+
# Nokogiri::HTML5 isn't supported on JRuby, so JRuby applications must set this to :html4.
|
222
|
+
#
|
223
|
+
# In previous versions of Rails, these test helpers always used an HTML4 parser.
|
224
|
+
#
|
225
|
+
# Rails.application.config.dom_testing_default_html_version = :html5
|
@@ -0,0 +1,15 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Be sure to restart your server when you modify this file.
|
4
|
+
|
5
|
+
# Define an application-wide HTTP permissions policy. For further
|
6
|
+
# information see: https://developers.google.com/web/updates/2018/06/feature-policy
|
7
|
+
|
8
|
+
# Rails.application.config.permissions_policy do |policy|
|
9
|
+
# policy.camera :none
|
10
|
+
# policy.gyroscope :none
|
11
|
+
# policy.microphone :none
|
12
|
+
# policy.usb :none
|
13
|
+
# policy.fullscreen :self
|
14
|
+
# policy.payment :self, "https://secure.example.com"
|
15
|
+
# end
|
@@ -0,0 +1,262 @@
|
|
1
|
+
ar:
|
2
|
+
activerecord:
|
3
|
+
models:
|
4
|
+
comfy/cms/site: الموقع
|
5
|
+
comfy/cms/layout: تصميم
|
6
|
+
comfy/cms/page: الصفحة
|
7
|
+
comfy/cms/snippet: قصاصة
|
8
|
+
comfy/cms/file: ملف
|
9
|
+
comfy/cms/translation: الترجمة
|
10
|
+
|
11
|
+
attributes:
|
12
|
+
comfy/cms/site:
|
13
|
+
identifier: المعرّف
|
14
|
+
label: عنوان
|
15
|
+
hostname: اسم مضيف الموقع
|
16
|
+
path: مسار
|
17
|
+
locale: اللغة
|
18
|
+
comfy/cms/layout:
|
19
|
+
identifier: المعرّف
|
20
|
+
label: اسم التخطيط
|
21
|
+
app_layout: التصميم
|
22
|
+
parent_id: التخطيط الرئيسي
|
23
|
+
content: المحتوى
|
24
|
+
css: أوراق الأنماط
|
25
|
+
js: جافا سكريبت
|
26
|
+
comfy/cms/page:
|
27
|
+
label: عنوان
|
28
|
+
layout_id: تصميم
|
29
|
+
slug: كلمة الدلالة
|
30
|
+
full_path: المسار الكامل
|
31
|
+
parent_id: الآب
|
32
|
+
target_page_id: إعادة توجيه الي
|
33
|
+
content: المحتوى
|
34
|
+
is_published: نشرت
|
35
|
+
comfy/cms/file:
|
36
|
+
label: عنوان
|
37
|
+
file: ملف
|
38
|
+
description: الوصف
|
39
|
+
comfy/cms/snippet:
|
40
|
+
label: عنوان
|
41
|
+
identifier: المعرّف
|
42
|
+
content: المحتوى
|
43
|
+
comfy/cms/translation:
|
44
|
+
locale: اللغة
|
45
|
+
label: عنوان
|
46
|
+
layout_id: تصميم
|
47
|
+
is_published: نشرت
|
48
|
+
|
49
|
+
comfy:
|
50
|
+
cms:
|
51
|
+
content:
|
52
|
+
site_not_found: غير موجود
|
53
|
+
layout_not_found: تخطيط غير موجود
|
54
|
+
page_not_found: الصفحة غير موجودة
|
55
|
+
|
56
|
+
admin:
|
57
|
+
cms:
|
58
|
+
base:
|
59
|
+
site_not_found: غير موجود
|
60
|
+
seeds_enabled: يتم تمكين بذور CMS. سيتم تجاهل جميع التغييرات التي أجريت هنا.
|
61
|
+
sites: المواقع الخاصة بي
|
62
|
+
layouts: مخطط
|
63
|
+
pages: الصفحات
|
64
|
+
snippets: مقتطفات
|
65
|
+
files: ملفات
|
66
|
+
|
67
|
+
sites:
|
68
|
+
created: موقع جديد تم انشاءه
|
69
|
+
creation_failure: فشل في إنشاء الموقع
|
70
|
+
updated: تحديث الموقع
|
71
|
+
update_failure: فشل في تحديث الموقع
|
72
|
+
deleted: تم الحذف
|
73
|
+
not_found: غير موجود
|
74
|
+
|
75
|
+
index:
|
76
|
+
title: المواقع الخاصة بي
|
77
|
+
new_link: إنشاء جديد
|
78
|
+
select: اختيار الموقع
|
79
|
+
edit: تعديل
|
80
|
+
delete: حذف
|
81
|
+
are_you_sure: هل أنت متأكد أنك تريد حذف هذا؟
|
82
|
+
new:
|
83
|
+
title: موقع جديد
|
84
|
+
edit:
|
85
|
+
title: تعديل
|
86
|
+
form:
|
87
|
+
create: إنشاء موقع
|
88
|
+
cancel: إلغاء
|
89
|
+
update: تحديث الموقع
|
90
|
+
|
91
|
+
layouts:
|
92
|
+
created: إنشاء تخطيط
|
93
|
+
creation_failure: لا يمكن إنشاء النسق
|
94
|
+
updated: تم تحديث التصميم
|
95
|
+
update_failure: فشل في تحديث التصميم
|
96
|
+
deleted: تم حذف التصميم
|
97
|
+
not_found: تخطيط غير موجود
|
98
|
+
|
99
|
+
index:
|
100
|
+
title: مخطط
|
101
|
+
new_link: إنشاء تخطيط جديد
|
102
|
+
index_branch:
|
103
|
+
add_child_layout: إضافة تخطيط الطفل
|
104
|
+
edit: تعديل
|
105
|
+
delete: حذف
|
106
|
+
are_you_sure: هل أنت متاكد؟
|
107
|
+
new:
|
108
|
+
title: تصميم جديد
|
109
|
+
edit:
|
110
|
+
title: تحرير التخطيط
|
111
|
+
form:
|
112
|
+
select_parent_layout: التخطيط الرئيسي
|
113
|
+
select_app_layout: حدد تخطيط التطبيق
|
114
|
+
create: انشاء تصميم
|
115
|
+
cancel: إلغاء
|
116
|
+
update: تحديث التخطيط
|
117
|
+
|
118
|
+
pages:
|
119
|
+
created: تم إنشاء الصفحة
|
120
|
+
creation_failure: فشل في إنشاء الصفحة
|
121
|
+
updated: تحديث الصفحة
|
122
|
+
update_failure: فشل في تحديث الصفحة
|
123
|
+
deleted: تم حذف الصفحة
|
124
|
+
not_found: الصفحة غير موجودة
|
125
|
+
layout_not_found: لم يتم العثور على تخطيطات يرجى إنشاء واحد.
|
126
|
+
|
127
|
+
index:
|
128
|
+
title: الصفحات
|
129
|
+
new_link: إنشاء صفحة جديدة
|
130
|
+
index_branch:
|
131
|
+
toggle: تبديل
|
132
|
+
add_child_page: أضف صفحة فرعية
|
133
|
+
edit: تعديل
|
134
|
+
delete: حذف
|
135
|
+
are_you_sure: هل أنت متاكد؟
|
136
|
+
new:
|
137
|
+
title: صفحة جديدة
|
138
|
+
edit:
|
139
|
+
title: تعديل
|
140
|
+
form:
|
141
|
+
select_target_page: لا إعادة توجيه
|
142
|
+
preview: معاينة
|
143
|
+
create: إنشاء صفحة
|
144
|
+
cancel: إلغاء
|
145
|
+
update: تحديث الصفحة
|
146
|
+
choose_link: اختر الصفحة...
|
147
|
+
|
148
|
+
fragments:
|
149
|
+
form_fragments:
|
150
|
+
no_tags: |-
|
151
|
+
لا يحتوي التخطيط على علامات محتوى محددة.<br/>
|
152
|
+
تحرير محتوى تخطيط لتضمين علامة التجزئة. فمثلا: <code>{{cms:wysiwyg content}}</code>
|
153
|
+
|
154
|
+
translations:
|
155
|
+
created: تم إنشاء الترجمة
|
156
|
+
creation_failure: فشل في إنشاء الترجمة
|
157
|
+
updated: تم تحديث الترجمة
|
158
|
+
update_failure: فشل في تحديث الترجمة
|
159
|
+
deleted: تم حذف الترجمة
|
160
|
+
not_found: لم يتم العثور على الترجمة
|
161
|
+
|
162
|
+
new:
|
163
|
+
title: ترجمة جديدة
|
164
|
+
edit:
|
165
|
+
title: تحرير الترجمة
|
166
|
+
form:
|
167
|
+
preview: معاينة
|
168
|
+
create: إنشاء
|
169
|
+
update: تحديث
|
170
|
+
cancel: الرجوع إلى
|
171
|
+
sidebar:
|
172
|
+
new: ترجمة جديدة
|
173
|
+
confirm: هل أنت متاكد؟
|
174
|
+
|
175
|
+
snippets:
|
176
|
+
created: تم إنشاء مقتطف
|
177
|
+
creation_failure: فشل في إنشاء مقتطف
|
178
|
+
updated: تم تحديث المقتطف
|
179
|
+
update_failure: فشل تحديث المقتطف
|
180
|
+
deleted: تم حذف المقتطف
|
181
|
+
not_found: مقتطف غير موجود
|
182
|
+
|
183
|
+
index:
|
184
|
+
title: مقتطفات
|
185
|
+
new_link: إنشاء مقتطف جديد
|
186
|
+
edit: تعديل
|
187
|
+
delete: حذف
|
188
|
+
are_you_sure: هل أنت متاكد؟
|
189
|
+
new:
|
190
|
+
title: مقتطف جديد
|
191
|
+
edit:
|
192
|
+
title: تحرير مقتطف
|
193
|
+
form:
|
194
|
+
create: إنشاء مقتطف جديد
|
195
|
+
cancel: إلغاء
|
196
|
+
update: تحديث مقتطف
|
197
|
+
|
198
|
+
revisions:
|
199
|
+
reverted: محتوى عاد
|
200
|
+
record_not_found: لم يتم العثور على السجل
|
201
|
+
not_found: لم يتم العثور على المراجعة
|
202
|
+
|
203
|
+
show:
|
204
|
+
title: مراجعات لـ
|
205
|
+
revision: الإصدار
|
206
|
+
update: تحديث لهذا المراجعة
|
207
|
+
cancel: إلغاء
|
208
|
+
content: المحتوى
|
209
|
+
changes: التغييرات
|
210
|
+
previous: السابق
|
211
|
+
current: الحالي
|
212
|
+
sidebar:
|
213
|
+
revision:
|
214
|
+
zero: لا مراجعات
|
215
|
+
one: '٪ {count} المراجعة'
|
216
|
+
few: '٪ {count} المراجعات'
|
217
|
+
many: '٪ {count} المراجعات'
|
218
|
+
other: '٪ {count} المراجعات'
|
219
|
+
|
220
|
+
files:
|
221
|
+
created: الملفات المحملة
|
222
|
+
creation_failure: فشل تحميل الملفات
|
223
|
+
updated: تم تحديث الملف
|
224
|
+
update_failure: فشل في تحديث الملف
|
225
|
+
deleted: تم حذف الملف
|
226
|
+
not_found: لم يتم العثور على الملف
|
227
|
+
|
228
|
+
index:
|
229
|
+
title: ملفات
|
230
|
+
new_link: رفع ملف جديد
|
231
|
+
button: رفع الملفات
|
232
|
+
new:
|
233
|
+
title: ملف جديد
|
234
|
+
edit:
|
235
|
+
title: تعديل
|
236
|
+
form:
|
237
|
+
current_file: الملف الحالي
|
238
|
+
create: رفع ملف
|
239
|
+
cancel: إلغاء
|
240
|
+
update: تحديث الملف
|
241
|
+
delete: حذف الملف
|
242
|
+
are_you_sure: هل أنت متاكد؟
|
243
|
+
page_form:
|
244
|
+
are_you_sure: هل أنت متاكد؟
|
245
|
+
file:
|
246
|
+
edit: تعديل
|
247
|
+
delete: حذف
|
248
|
+
are_you_sure: هل أنت متاكد؟
|
249
|
+
|
250
|
+
categories:
|
251
|
+
index:
|
252
|
+
edit: تعديل
|
253
|
+
done: تم
|
254
|
+
all: كل الفئات
|
255
|
+
add: إضافة
|
256
|
+
add_placeholder: إضافة فئة
|
257
|
+
show:
|
258
|
+
are_you_sure: هل أنت متاكد؟
|
259
|
+
edit:
|
260
|
+
save: حفظ
|
261
|
+
form:
|
262
|
+
label: الفئات
|