pageflow 15.6.1 → 15.7.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +253 -11
- data/README.md +1 -2
- data/admins/pageflow/entry.rb +28 -57
- data/admins/pageflow/membership.rb +5 -1
- data/admins/pageflow/user.rb +1 -3
- data/app/assets/images/pageflow/admin/icons/buttons/editor.svg +2 -0
- data/app/assets/images/pageflow/admin/icons/buttons/preview.svg +2 -0
- data/app/assets/images/pageflow/admin/icons/buttons/show_public.svg +2 -0
- data/app/assets/images/pageflow/admin/icons/delete.svg +9 -0
- data/app/assets/images/pageflow/admin/icons/done.svg +6 -0
- data/app/assets/images/pageflow/admin/icons/edit.svg +7 -0
- data/app/assets/images/pageflow/admin/icons/editor.svg +2 -0
- data/app/assets/images/pageflow/admin/icons/folder.svg +8 -0
- data/app/assets/images/pageflow/admin/icons/folder_active.svg +8 -0
- data/app/assets/images/pageflow/admin/icons/info.svg +3 -0
- data/app/assets/images/pageflow/admin/icons/new.svg +5 -0
- data/app/assets/images/pageflow/admin/icons/preview.svg +2 -0
- data/app/assets/images/pageflow/admin/icons/published.svg +2 -0
- data/app/assets/images/pageflow/admin/icons/published_with_password.svg +2 -0
- data/app/assets/images/pageflow/admin/icons/show_public.svg +2 -0
- data/app/assets/images/pageflow/editor/blank_entry/logo.png +0 -0
- data/app/assets/images/pageflow/themes/default/embed_opt_in.svg +3 -0
- data/app/assets/images/pageflow/themes/default/embed_opt_out_info.svg +16 -0
- data/app/assets/javascripts/pageflow/admin/entries.js +9 -57
- data/app/assets/javascripts/pageflow/dist/editor.js +11890 -0
- data/app/assets/javascripts/pageflow/dist/frontend.js +5800 -0
- data/app/assets/javascripts/pageflow/dist/react-client.js +22 -0
- data/app/assets/javascripts/pageflow/dist/react-server.js +19 -0
- data/app/assets/javascripts/pageflow/dist/ui.js +127 -10
- data/app/assets/stylesheets/pageflow/admin/active_admin_patches.scss +18 -16
- data/app/assets/stylesheets/pageflow/admin/badge_list.scss +25 -35
- data/app/assets/stylesheets/pageflow/admin/columns.scss +13 -11
- data/app/assets/stylesheets/pageflow/admin/embed_code.scss +1 -4
- data/app/assets/stylesheets/pageflow/admin/entries/folders.scss +44 -19
- data/app/assets/stylesheets/pageflow/admin/entries.scss +15 -31
- data/app/assets/stylesheets/pageflow/admin/features.scss +3 -1
- data/app/assets/stylesheets/pageflow/admin/forms.scss +14 -12
- data/app/assets/stylesheets/pageflow/admin/hint.scss +8 -14
- data/app/assets/stylesheets/pageflow/admin/icon_button.scss +25 -14
- data/app/assets/stylesheets/pageflow/admin/icon_link.scss +31 -15
- data/app/assets/stylesheets/pageflow/admin/publication_state_indicator.scss +14 -7
- data/app/assets/stylesheets/pageflow/admin/status_tags.scss +5 -4
- data/app/assets/stylesheets/pageflow/admin/tabs_view.scss +36 -34
- data/app/assets/stylesheets/pageflow/admin/tooltip_bubble.scss +15 -11
- data/app/assets/stylesheets/pageflow/admin.scss +12 -0
- data/app/assets/stylesheets/pageflow/editor/background_positioning.scss +15 -61
- data/app/assets/stylesheets/pageflow/editor/base.scss +28 -13
- data/app/assets/stylesheets/pageflow/editor/blank_entry.scss +6 -6
- data/app/assets/stylesheets/pageflow/editor/change_theme.scss +28 -71
- data/app/assets/stylesheets/pageflow/editor/composables.scss +2 -2
- data/app/assets/stylesheets/pageflow/editor/confirm_encoding.scss +18 -36
- data/app/assets/stylesheets/pageflow/editor/confirm_upload.scss +12 -39
- data/app/assets/stylesheets/pageflow/editor/dialogs.scss +39 -12
- data/app/assets/stylesheets/pageflow/editor/disabled_atmo_indicator.scss +3 -3
- data/app/assets/stylesheets/pageflow/editor/drop_down_button.scss +7 -10
- data/app/assets/stylesheets/pageflow/editor/emulation_mode_button.scss +3 -8
- data/app/assets/stylesheets/pageflow/editor/failures.scss +3 -3
- data/app/assets/stylesheets/pageflow/editor/file_import.scss +22 -38
- data/app/assets/stylesheets/pageflow/editor/file_meta_data.scss +3 -7
- data/app/assets/stylesheets/pageflow/editor/file_settings_dialog.scss +4 -24
- data/app/assets/stylesheets/pageflow/editor/file_stages.scss +10 -11
- data/app/assets/stylesheets/pageflow/editor/file_thumbnails.scss +4 -8
- data/app/assets/stylesheets/pageflow/editor/files.scss +7 -6
- data/app/assets/stylesheets/pageflow/editor/files_explorer.scss +13 -30
- data/app/assets/stylesheets/pageflow/editor/files_gallery.scss +15 -11
- data/app/assets/stylesheets/pageflow/editor/filtered_files.scss +6 -7
- data/app/assets/stylesheets/pageflow/editor/help.scss +19 -14
- data/app/assets/stylesheets/pageflow/editor/help_image.scss +1 -1
- data/app/assets/stylesheets/pageflow/editor/info_box.scss +19 -0
- data/app/assets/stylesheets/pageflow/editor/inputs/file_input.scss +7 -11
- data/app/assets/stylesheets/pageflow/editor/inputs/file_processing_state_display.scss +0 -2
- data/app/assets/stylesheets/pageflow/editor/inputs/reference.scss +7 -11
- data/app/assets/stylesheets/pageflow/editor/list.scss +13 -10
- data/app/assets/stylesheets/pageflow/editor/loading.scss +1 -1
- data/app/assets/stylesheets/pageflow/editor/locked.scss +9 -5
- data/app/assets/stylesheets/pageflow/editor/menu.scss +5 -5
- data/app/assets/stylesheets/pageflow/editor/notifications.scss +15 -14
- data/app/assets/stylesheets/pageflow/editor/other_entry_item.scss +7 -3
- data/app/assets/stylesheets/pageflow/editor/outline.scss +57 -19
- data/app/assets/stylesheets/pageflow/editor/page_links.scss +10 -8
- data/app/assets/stylesheets/pageflow/editor/page_selection.scss +2 -29
- data/app/assets/stylesheets/pageflow/editor/publish_entry.scss +5 -6
- data/app/assets/stylesheets/pageflow/editor/quotas.scss +2 -3
- data/app/assets/stylesheets/pageflow/editor/select_button.scss +12 -6
- data/app/assets/stylesheets/pageflow/editor/sidebar_footer.scss +1 -5
- data/app/assets/stylesheets/pageflow/editor/storyline_picker.scss +6 -2
- data/app/assets/stylesheets/pageflow/editor/text_tracks.scss +6 -22
- data/app/assets/stylesheets/pageflow/editor/widgets.scss +2 -2
- data/app/assets/stylesheets/pageflow/editor/wysihtml5.scss +35 -29
- data/app/assets/stylesheets/pageflow/mixins/background_icons.scss +3 -3
- data/app/assets/stylesheets/pageflow/mixins/buttons.scss +50 -68
- data/app/assets/stylesheets/pageflow/themes/default/base.scss +2 -0
- data/app/assets/stylesheets/pageflow/themes/default/consent/bar.scss +156 -0
- data/app/assets/stylesheets/pageflow/themes/default/consent/vendor_list.scss +62 -0
- data/app/assets/stylesheets/pageflow/themes/default/consent.scss +2 -0
- data/app/assets/stylesheets/pageflow/themes/default/logo/alignment.scss +7 -0
- data/app/assets/stylesheets/pageflow/themes/default/page/shadow.scss +44 -0
- data/app/assets/stylesheets/pageflow/themes/default/third_party_embed_consent.scss +103 -0
- data/app/assets/stylesheets/pageflow/ui/forms.scss +79 -84
- data/app/assets/stylesheets/pageflow/ui/functions.scss +56 -0
- data/app/assets/stylesheets/pageflow/ui/input/check_box_group_input.scss +2 -3
- data/app/assets/stylesheets/pageflow/ui/input/color_input.scss +6 -6
- data/app/assets/stylesheets/pageflow/ui/input/extended_select_input.scss +63 -50
- data/app/assets/stylesheets/pageflow/ui/normalize/forms.scss +153 -0
- data/app/assets/stylesheets/pageflow/ui/normalize.scss +278 -0
- data/app/assets/stylesheets/pageflow/ui/properties.scss +44 -0
- data/app/assets/stylesheets/pageflow/ui/table_cells/delete_row_table_cell.scss +1 -1
- data/app/assets/stylesheets/pageflow/ui/table_view.scss +14 -18
- data/app/assets/stylesheets/pageflow/ui/tabs_view.scss +8 -11
- data/app/assets/stylesheets/pageflow/ui/tooltip.scss +6 -8
- data/app/assets/stylesheets/pageflow/ui/validation_error_messages.scss +6 -0
- data/app/assets/stylesheets/pageflow/ui.scss +4 -0
- data/app/controllers/pageflow/edit_locks_controller.rb +3 -1
- data/app/helpers/pageflow/admin/entries_helper.rb +2 -12
- data/app/helpers/pageflow/embed_code_helper.rb +1 -1
- data/app/helpers/pageflow/entries_helper.rb +41 -2
- data/app/helpers/pageflow/file_background_images_helper.rb +1 -1
- data/app/helpers/pageflow/page_types_helper.rb +1 -1
- data/app/helpers/pageflow/themes_helper.rb +1 -1
- data/app/jobs/pageflow/poll_meta_data_from_zencoder_job.rb +1 -1
- data/app/jobs/pageflow/poll_zencoder_job.rb +1 -9
- data/app/models/pageflow/audio_file.rb +17 -0
- data/app/models/pageflow/audio_file_url_templates.rb +4 -1
- data/app/models/pageflow/customized_theme.rb +37 -0
- data/app/models/pageflow/draft_entry.rb +6 -59
- data/app/models/pageflow/entry.rb +8 -0
- data/app/models/pageflow/entry_at_revision.rb +68 -0
- data/app/models/pageflow/entry_role_query.rb +44 -24
- data/app/models/pageflow/image_file_css_background_image_urls.rb +8 -2
- data/app/models/pageflow/published_entry.rb +9 -56
- data/app/models/pageflow/theme_customization.rb +46 -0
- data/app/models/pageflow/theme_customization_file.rb +58 -0
- data/app/models/pageflow/video_file.rb +11 -1
- data/app/models/pageflow/video_file_url_templates.rb +1 -0
- data/app/policies/pageflow/entry_policy.rb +4 -0
- data/app/state_machines/pageflow/media_encoding_state_machine.rb +23 -4
- data/app/views/admin/entries/_form.html.erb +50 -0
- data/app/views/admin/entries/entry_type_name_input.html.erb +5 -0
- data/app/views/admin/features/_form.html.erb +1 -1
- data/app/views/admin/memberships/_form.html.erb +2 -3
- data/app/views/admin/users/_form.html.erb +1 -1
- data/app/views/admin/users/invitation.html.erb +2 -2
- data/app/views/components/pageflow/admin/entry_user_badge_list.rb +10 -9
- data/app/views/components/pageflow/admin/members_tab.rb +5 -1
- data/app/views/components/pageflow/admin/revisions_tab.rb +13 -3
- data/app/views/components/pageflow/admin/timestamp.rb +20 -0
- data/app/views/components/pageflow/admin/user_account_badge_list.rb +5 -6
- data/app/views/pageflow/admin/entries/_cannot_add_user.html.erb +9 -5
- data/app/views/pageflow/admin/entries/_entry_type_name_input.html.erb +7 -0
- data/app/views/pageflow/audio_files/_audio_file.json.jbuilder +13 -0
- data/app/views/pageflow/editor/encoding_confirmations/_intro.html.erb +0 -0
- data/app/views/pageflow/editor/encoding_confirmations/check.json.jbuilder +14 -2
- data/config/initializers/paperclip.rb +16 -1
- data/config/locales/de.yml +24 -28
- data/config/locales/en.yml +19 -10
- data/db/migrate/20210528073122_create_pageflow_theme_customizations.rb +11 -0
- data/db/migrate/20210531090654_create_pageflow_theme_customization_files.rb +15 -0
- data/db/migrate/20210531102228_add_selected_file_ids_to_theme_customizations.rb +5 -0
- data/db/migrate/20211020085902_add_canonical_entry_url_prefix_to_themings.rb +5 -0
- data/db/migrate/20220503150010_add_peak_data_to_audio_files.rb +5 -0
- data/db/migrate/20220705084830_add_trailing_slash_in_canonical_urls_to_themings.rb +5 -0
- data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/editor.js +256 -124
- data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/frontend.js +566 -167
- data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/react-client.js +5 -5
- data/entry_types/paged/app/assets/javascripts/pageflow_paged/dist/react-server.js +4 -4
- data/entry_types/paged/app/helpers/pageflow_paged/third_party_embed_consent_helper.rb +38 -0
- data/entry_types/paged/app/views/pageflow_paged/third_party_embed_consent/_opt_in.html.erb +12 -0
- data/entry_types/paged/app/views/pageflow_paged/third_party_embed_consent/_opt_out_info.html.erb +10 -0
- data/entry_types/paged/config/initializers/features.rb +2 -0
- data/entry_types/paged/config/locales/new/video_contain.de.yml +7 -0
- data/entry_types/paged/config/locales/new/video_contain.en.yml +7 -0
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/editor/seed_html_helper.rb +3 -0
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/entry_json_seed_helper.rb +1 -0
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/packs_helper.rb +58 -0
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/react_server_side_rendering_helper.rb +37 -3
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/themes_helper.rb +92 -6
- data/entry_types/scrolled/app/helpers/pageflow_scrolled/webpack_public_path_helper.rb +20 -0
- data/entry_types/scrolled/app/models/pageflow_scrolled/content_element.rb +7 -0
- data/entry_types/scrolled/app/views/pageflow_scrolled/editor/entries/_head.html.erb +5 -2
- data/entry_types/scrolled/app/views/pageflow_scrolled/editor/entries/_seed.json.jbuilder +5 -1
- data/entry_types/scrolled/app/views/pageflow_scrolled/entries/show.html.erb +5 -4
- data/entry_types/scrolled/app/views/pageflow_scrolled/entry_json_seed/_entry.json.jbuilder +16 -0
- data/entry_types/scrolled/app/views/pageflow_scrolled/entry_json_seed/_theme.json.jbuilder +13 -2
- data/entry_types/scrolled/app/views/pageflow_scrolled/entry_json_seed/_widget.json.jbuilder +2 -0
- data/entry_types/scrolled/config/locales/de.yml +1 -8
- data/entry_types/scrolled/config/locales/en.yml +1 -9
- data/entry_types/scrolled/config/locales/new/before_after_slider.de.yml +8 -0
- data/entry_types/scrolled/config/locales/new/before_after_slider.en.yml +8 -0
- data/entry_types/scrolled/config/locales/new/center_ragged.de.yml +8 -0
- data/entry_types/scrolled/config/locales/new/center_ragged.en.yml +9 -0
- data/entry_types/scrolled/config/locales/new/consent.de.yml +25 -0
- data/entry_types/scrolled/config/locales/new/consent.en.yml +24 -0
- data/entry_types/scrolled/config/locales/new/content_element_categories.de.yml +39 -0
- data/entry_types/scrolled/config/locales/new/content_element_categories.en.yml +39 -0
- data/entry_types/scrolled/config/locales/new/default_transition.de.yml +14 -0
- data/entry_types/scrolled/config/locales/new/default_transition.en.yml +14 -0
- data/entry_types/scrolled/config/locales/new/header_line_breaks.de.yml +28 -0
- data/entry_types/scrolled/config/locales/new/header_line_breaks.en.yml +27 -0
- data/entry_types/scrolled/config/locales/new/header_size.de.yml +17 -0
- data/entry_types/scrolled/config/locales/new/header_size.en.yml +17 -0
- data/entry_types/scrolled/config/locales/new/iframe_embed.de.yml +39 -0
- data/entry_types/scrolled/config/locales/new/iframe_embed.en.yml +39 -0
- data/entry_types/scrolled/config/locales/new/inline_loops.de.yml +26 -0
- data/entry_types/scrolled/config/locales/new/inline_loops.en.yml +26 -0
- data/entry_types/scrolled/config/locales/new/portrait_inline_image.de.yml +9 -0
- data/entry_types/scrolled/config/locales/new/portrait_inline_image.en.yml +9 -0
- data/entry_types/scrolled/config/locales/new/section_width.de.yml +10 -0
- data/entry_types/scrolled/config/locales/new/section_width.en.yml +10 -0
- data/entry_types/scrolled/config/locales/new/typography_variants.de.yml +7 -0
- data/entry_types/scrolled/config/locales/new/typography_variants.en.yml +7 -0
- data/entry_types/scrolled/config/locales/new/video_embed_poster.de.yml +8 -0
- data/entry_types/scrolled/config/locales/new/video_embed_poster.en.yml +8 -0
- data/entry_types/scrolled/config/locales/new/waveform_styles.de.yml +11 -0
- data/entry_types/scrolled/config/locales/new/waveform_styles.en.yml +12 -0
- data/entry_types/scrolled/config/locales/new/widgets.de.yml +6 -0
- data/entry_types/scrolled/config/locales/new/widgets.en.yml +6 -0
- data/entry_types/scrolled/lib/generators/pageflow_scrolled/install/install_generator.rb +29 -5
- data/entry_types/scrolled/lib/generators/pageflow_scrolled/install/templates/themes_plugin.rb.tt +8 -6
- data/entry_types/scrolled/lib/pageflow_scrolled/additional_packs.rb +37 -0
- data/entry_types/scrolled/lib/pageflow_scrolled/additional_seed_data.rb +57 -0
- data/entry_types/scrolled/lib/pageflow_scrolled/configuration.rb +49 -0
- data/entry_types/scrolled/lib/pageflow_scrolled/plugin.rb +8 -0
- data/entry_types/scrolled/lib/pageflow_scrolled/react_widget_type.rb +42 -0
- data/entry_types/scrolled/lib/pageflow_scrolled.rb +17 -1
- data/entry_types/scrolled/package/contentElements-editor.js +323 -89
- data/entry_types/scrolled/package/contentElements-frontend.css +1 -1
- data/entry_types/scrolled/package/contentElements-frontend.js +719 -529
- data/entry_types/scrolled/package/editor.js +459 -261
- data/entry_types/scrolled/package/frontend/{EditableText-7093fd0e.js → EditableInlineText.module-b9923660.js} +284 -362
- data/entry_types/scrolled/package/frontend/{i18n-4dc6c377.js → PhonePlatformContext-9fb97827.js} +199 -106
- data/entry_types/scrolled/package/frontend/{Viewer-e49e7807.js → Viewer-e2290ea0.js} +196 -79
- data/entry_types/scrolled/package/frontend/{Wavesurfer-0adf5667.js → Wavesurfer-7d9cf1b7.js} +16 -58
- data/entry_types/scrolled/package/frontend/{components-6a6793ca.js → components-6ab26015.js} +664 -671
- data/entry_types/scrolled/package/frontend/{getPrototypeOf-63c7c8e8.js → createSuper-d0f30da3.js} +34 -5
- data/entry_types/scrolled/package/frontend/index.css +1 -9
- data/entry_types/scrolled/package/frontend/index.js +1919 -2386
- data/entry_types/scrolled/package/frontend/{useBrowserFeature-91a4c29d.js → usePhonePlatform-2857c22b.js} +9 -8
- data/entry_types/scrolled/package/frontend-server.js +3 -6
- data/entry_types/scrolled/package/package.json +16 -8
- data/entry_types/scrolled/package/testHelpers.js +456 -0
- data/entry_types/scrolled/package/values/breakpoints.module.css +9 -0
- data/entry_types/scrolled/package/values/colors.module.css +5 -0
- data/entry_types/scrolled/package/widgets/defaultNavigation.css +9 -0
- data/entry_types/scrolled/package/widgets/defaultNavigation.js +612 -0
- data/entry_types/scrolled/spec/fixtures/image.svg +1 -0
- data/lib/pageflow/ability_mixin.rb +4 -0
- data/lib/pageflow/built_in_widget_type.rb +4 -0
- data/lib/pageflow/built_in_widget_types_plugin.rb +7 -0
- data/lib/pageflow/configuration.rb +34 -1
- data/lib/pageflow/entry_type.rb +11 -2
- data/lib/pageflow/entry_type_configuration.rb +2 -0
- data/lib/pageflow/file_type.rb +24 -0
- data/lib/pageflow/paperclip_processors/audio_waveform.rb +42 -0
- data/lib/pageflow/paperclip_processors/noop.rb +10 -0
- data/lib/pageflow/theme_customizations.rb +61 -0
- data/lib/pageflow/user_mixin.rb +6 -0
- data/lib/pageflow/version.rb +1 -1
- data/lib/pageflow.rb +9 -0
- data/package/config/jest/index.js +2 -1
- data/package/config/postcss/scaleFunctions.js +71 -0
- data/package/editor.js +95 -85
- data/package/frontend.js +521 -161
- data/package/package.json +5 -3
- data/package/testHelpers.js +26 -5
- data/package/ui.js +124 -11
- data/spec/factories/draft_entries.rb +19 -1
- data/spec/factories/entries.rb +4 -0
- data/spec/factories/published_entries.rb +6 -0
- data/spec/fixtures/audio.ogg +0 -0
- metadata +123 -15
- data/app/views/admin/entries/_not_allowed_to_see_entry_types.json.jbuilder +0 -2
- data/app/views/admin/entries/entry_types.json.jbuilder +0 -4
- data/package/config/jest/transformers/upwardBabel.js +0 -5
@@ -0,0 +1,50 @@
|
|
1
|
+
<%= admin_form_for([:admin, resource]) do |f| %>
|
2
|
+
<%= f.inputs do %>
|
3
|
+
<%= f.input :title, hint: I18n.t('pageflow.admin.entries.title_hint') %>
|
4
|
+
|
5
|
+
<% if authorized?(:update_account_on, resource) &&
|
6
|
+
account_policy_scope.entry_creatable.many? %>
|
7
|
+
<%= f.input(:account,
|
8
|
+
as: :searchable_select,
|
9
|
+
include_blank: false,
|
10
|
+
ajax: {
|
11
|
+
resource: Pageflow::Entry,
|
12
|
+
collection_name: :eligible_accounts
|
13
|
+
},
|
14
|
+
input_html: {class: 'entry_account_input'}) %>
|
15
|
+
<%end %>
|
16
|
+
|
17
|
+
<% if authorized?(:update_theming_on, resource) && !resource.new_record? %>
|
18
|
+
<%= f.input(:theming,
|
19
|
+
as: :searchable_select,
|
20
|
+
ajax: {
|
21
|
+
resource: Pageflow::Entry,
|
22
|
+
collection_name: :eligible_themings,
|
23
|
+
params: {
|
24
|
+
entry_id: resource.id
|
25
|
+
}
|
26
|
+
},
|
27
|
+
include_blank: false) %>
|
28
|
+
<% end %>
|
29
|
+
|
30
|
+
<% if resource.new_record? %>
|
31
|
+
<%= render('pageflow/admin/entries/entry_type_name_input',
|
32
|
+
form: f,
|
33
|
+
entry_types: Pageflow.config_for(resource.account).entry_types) %>
|
34
|
+
<% end %>
|
35
|
+
|
36
|
+
<% if authorized?(:configure_folder_for, resource) %>
|
37
|
+
<% folder_collection = collection_for_folders(resource.account, resource.folder) %>
|
38
|
+
<%= f.input(:folder,
|
39
|
+
collection: folder_collection,
|
40
|
+
include_blank: true) unless folder_collection.empty? %>
|
41
|
+
<% end %>
|
42
|
+
|
43
|
+
<% entry_config = Pageflow.config_for(resource) %>
|
44
|
+
<% entry_config.admin_form_inputs.find_all_for(:entry).each do |form_input| %>
|
45
|
+
<%= form_input.build(f) %>
|
46
|
+
<% end %>
|
47
|
+
<% end %>
|
48
|
+
|
49
|
+
<%= f.actions :submit, :cancel %>
|
50
|
+
<% end %>
|
@@ -3,7 +3,7 @@
|
|
3
3
|
|
4
4
|
<%= f.inputs do %>
|
5
5
|
<% Pageflow.config_for(resource).features.each do |feature| %>
|
6
|
-
<li>
|
6
|
+
<li class="input">
|
7
7
|
<%= label_tag(feature_state_input_name(resource, feature.name),
|
8
8
|
t(feature.name_translation_key)) %>
|
9
9
|
<%= feature_state_select_tag(resource, feature.name) %>
|
@@ -6,12 +6,11 @@
|
|
6
6
|
<%= f.hidden_field :entity_type, value: entity_type %>
|
7
7
|
<% end %>
|
8
8
|
<%= f.inputs do %>
|
9
|
-
<%= render partial: 'admin/memberships/role_hint',
|
10
|
-
locals: {entity_type: entity_type
|
11
|
-
.gsub('Pageflow::', '').downcase} %>
|
12
9
|
<%= f.input :role,
|
13
10
|
collection: membership_roles_collection(entity_type),
|
14
11
|
include_blank: false %>
|
12
|
+
<%= render 'admin/memberships/role_hint',
|
13
|
+
entity_type: entity_type.gsub('Pageflow::', '').downcase %>
|
15
14
|
<% end %>
|
16
15
|
<%= f.actions do %>
|
17
16
|
<%= f.action(:submit) %>
|
@@ -39,8 +39,8 @@
|
|
39
39
|
|
40
40
|
<%= m.input :role,
|
41
41
|
collection: membership_roles_collection('Pageflow::Account'),
|
42
|
-
include_blank: false
|
43
|
-
|
42
|
+
include_blank: false %>
|
43
|
+
<%= render 'admin/memberships/role_hint', entity_type: 'account' %>
|
44
44
|
<%= u.input :admin if authorized?(:set_admin, current_user) %>
|
45
45
|
<% end %>
|
46
46
|
<% end %>
|
@@ -15,17 +15,18 @@ module Pageflow
|
|
15
15
|
|
16
16
|
def build_badge(membership)
|
17
17
|
li do
|
18
|
-
|
19
|
-
|
18
|
+
if authorized?(:read, membership.user)
|
19
|
+
text_node link_to(user_initials(membership.user),
|
20
|
+
admin_user_path(membership.user),
|
21
|
+
class: 'abbreviation')
|
22
|
+
else
|
23
|
+
span(user_initials(membership.user), class: 'abbreviation')
|
24
|
+
end
|
25
|
+
|
26
|
+
div class: 'tooltip_bubble' do
|
20
27
|
role_string =
|
21
28
|
" (#{I18n.t(membership.role, scope: 'activerecord.values.pageflow/membership.role')})"
|
22
|
-
|
23
|
-
link_to(membership.user.full_name, admin_user_path(membership.user)) + role_string
|
24
|
-
else
|
25
|
-
span class: 'name' do
|
26
|
-
membership.user.full_name + role_string
|
27
|
-
end
|
28
|
-
end
|
29
|
+
membership.user.full_name + role_string
|
29
30
|
end
|
30
31
|
end
|
31
32
|
end
|
@@ -45,7 +45,11 @@ module Pageflow
|
|
45
45
|
end
|
46
46
|
end
|
47
47
|
end
|
48
|
-
|
48
|
+
|
49
|
+
div class: 'side_hint' do
|
50
|
+
para text_node I18n.t('pageflow.admin.resource_tabs.account_editor_hint')
|
51
|
+
end
|
52
|
+
|
49
53
|
if authorized?(:add_member_to, entry)
|
50
54
|
add_membership_button(current_user, entry, 'entry')
|
51
55
|
end
|
@@ -30,11 +30,21 @@ module Pageflow
|
|
30
30
|
end
|
31
31
|
end
|
32
32
|
column :created_with do |revision|
|
33
|
-
span(
|
34
|
-
|
33
|
+
span(class: 'tooltip_clue') do
|
34
|
+
text_node t(revision.created_with,
|
35
|
+
scope: 'pageflow.admin.entries.revision_created_with')
|
36
|
+
span class: 'tooltip_bubble' do
|
37
|
+
t(revision.created_with,
|
38
|
+
scope: 'pageflow.admin.entries.revision_created_with_hint')
|
39
|
+
end
|
40
|
+
end
|
35
41
|
|
36
42
|
if revision.password_protected?
|
37
|
-
span(
|
43
|
+
span(class: 'publication_state_indicator published_with_password_protection') do
|
44
|
+
span(class: 'tooltip_bubble') do
|
45
|
+
t('pageflow.admin.entries.password_protected')
|
46
|
+
end
|
47
|
+
end
|
38
48
|
end
|
39
49
|
end
|
40
50
|
column do |revision|
|
@@ -0,0 +1,20 @@
|
|
1
|
+
module Pageflow
|
2
|
+
module Admin
|
3
|
+
class Timestamp < ViewComponent
|
4
|
+
builder_method :timestamp
|
5
|
+
|
6
|
+
def build(time)
|
7
|
+
if time
|
8
|
+
span class: 'tooltip_clue' do
|
9
|
+
text_node(l(time, format: time.today? ? :time_today : :date))
|
10
|
+
span(l(time, format: :long), class: 'tooltip_bubble')
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
def tag_name
|
16
|
+
'span'
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -20,12 +20,11 @@ module Pageflow
|
|
20
20
|
def build_badge(membership)
|
21
21
|
li do
|
22
22
|
if authorized?(:read, membership.entity)
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
div class: '
|
27
|
-
|
28
|
-
" (#{I18n.t(membership.role, scope: 'activerecord.values.pageflow/membership.role')})"
|
23
|
+
text_node link_to(membership.entity.name,
|
24
|
+
main_app.admin_account_path(membership.entity),
|
25
|
+
class: 'abbreviation')
|
26
|
+
div class: 'tooltip_bubble' do
|
27
|
+
I18n.t(membership.role, scope: 'activerecord.values.pageflow/membership.role')
|
29
28
|
end
|
30
29
|
else
|
31
30
|
span(membership.entity.name, class: 'abbreviation')
|
@@ -1,5 +1,9 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
<%
|
4
|
-
|
5
|
-
<%
|
1
|
+
<div class="side_hint">
|
2
|
+
<p>
|
3
|
+
<% if quota.exhausted? %>
|
4
|
+
<%= t("pageflow.admin.entry.user_quota_exhausted") %>
|
5
|
+
<% else %>
|
6
|
+
<%= t("pageflow.admin.entry.entry_membership_hint") %>
|
7
|
+
<% end %>
|
8
|
+
</p>
|
9
|
+
</div>
|
@@ -1,2 +1,15 @@
|
|
1
1
|
json.call(audio_file, :duration_in_ms)
|
2
2
|
json.created_at audio_file.created_at.try(:utc).try(:iso8601, 0)
|
3
|
+
|
4
|
+
variants = [
|
5
|
+
:m4a,
|
6
|
+
:mp3,
|
7
|
+
:ogg,
|
8
|
+
audio_file.peak_data.present? ? :peak_data : nil
|
9
|
+
].compact
|
10
|
+
|
11
|
+
# Use JBuilder's private _key method to use format variants according
|
12
|
+
# to current key format (camel case/underscored). This ensures
|
13
|
+
# variants are consistent with the keys generated by
|
14
|
+
# ConfigHelper#config_file_url_templates_seed.
|
15
|
+
json.variants(variants.map { |varaint| json.__send__(:_key, varaint) })
|
File without changes
|
@@ -1,3 +1,15 @@
|
|
1
1
|
json.exceeding(@encoding_confirmation.exceeding?)
|
2
|
-
|
3
|
-
|
2
|
+
|
3
|
+
json.intro_html(
|
4
|
+
render_html_partial(
|
5
|
+
'pageflow/editor/encoding_confirmations/intro',
|
6
|
+
encoding_confirmation: @encoding_confirmation
|
7
|
+
)
|
8
|
+
)
|
9
|
+
|
10
|
+
json.summary_html(
|
11
|
+
render_html_partial(
|
12
|
+
'pageflow/editor/encoding_confirmations/summary',
|
13
|
+
encoding_confirmation: @encoding_confirmation
|
14
|
+
)
|
15
|
+
)
|
@@ -20,8 +20,23 @@ Paperclip.interpolates(:pageflow_attachments_version) do |attachment, style|
|
|
20
20
|
Pageflow::PaperclipInterpolations::Support.pageflow_attachments_version(attachment, style)
|
21
21
|
end
|
22
22
|
|
23
|
+
Paperclip.interpolates(:pageflow_hls_qualities) do |attachment, _style|
|
24
|
+
# Placeholder :pageflow_hls_qualities is included here to let
|
25
|
+
# VideoFileUrlTemplates preserve the palceholder in url templates.
|
26
|
+
%w[:pageflow_hls_qualities low medium high fullhd 4k].select { |quality|
|
27
|
+
attachment.instance.output_presences[quality]
|
28
|
+
}.join(',')
|
29
|
+
end
|
30
|
+
|
23
31
|
Paperclip.configure do |config|
|
24
|
-
config.register_processor(:pageflow_vtt,
|
32
|
+
config.register_processor(:pageflow_vtt,
|
33
|
+
Pageflow::PaperclipProcessors::Vtt)
|
34
|
+
|
35
|
+
config.register_processor(:pageflow_audio_waveform,
|
36
|
+
Pageflow::PaperclipProcessors::AudioWaveform)
|
37
|
+
|
38
|
+
config.register_processor(:noop,
|
39
|
+
Pageflow::PaperclipProcessors::Noop)
|
25
40
|
end
|
26
41
|
|
27
42
|
Paperclip::UriAdapter.register
|
data/config/locales/de.yml
CHANGED
@@ -178,16 +178,16 @@ de:
|
|
178
178
|
pageflow/entry:
|
179
179
|
account: Konto
|
180
180
|
author: Autor
|
181
|
-
created_at: Erstellt
|
181
|
+
created_at: Erstellt
|
182
182
|
credits: Credits
|
183
|
-
edited_at: Geändert
|
183
|
+
edited_at: Geändert
|
184
184
|
embed_code: Einbetten
|
185
185
|
first_published_at: Erstmals veröffentlicht am
|
186
186
|
keywords: Schlüsselwörter
|
187
187
|
locale: Sprache
|
188
188
|
own_role: Rolle
|
189
189
|
published?: Veröffentlichungstatus
|
190
|
-
published_at: Veröffentlicht
|
190
|
+
published_at: Veröffentlicht
|
191
191
|
published_revision_published_at: Veröffentlicht am
|
192
192
|
publisher: Herausgeber
|
193
193
|
share_image_id: Social Sharing Bild
|
@@ -732,6 +732,12 @@ de:
|
|
732
732
|
create: "%{model} erstellen"
|
733
733
|
submit: "%{model} speichern"
|
734
734
|
update: "%{model} aktualisieren"
|
735
|
+
i18n:
|
736
|
+
transliterate:
|
737
|
+
rule:
|
738
|
+
ä: ae
|
739
|
+
ö: oe
|
740
|
+
ü: ue
|
735
741
|
language: Deutsch
|
736
742
|
number:
|
737
743
|
currency:
|
@@ -1026,8 +1032,11 @@ de:
|
|
1026
1032
|
captions: Ton-Ersatz-Textspur
|
1027
1033
|
descriptions: Bild-Ersatz-Textspur
|
1028
1034
|
subtitles: Übersetzungs-Textspur
|
1035
|
+
consent_bar:
|
1036
|
+
feature_name: Consent-Leiste
|
1037
|
+
widget_type_name: Consent-Leiste
|
1029
1038
|
cookie_notice_bar:
|
1030
|
-
widget_type_name:
|
1039
|
+
widget_type_name: Cookie-Hinweis
|
1031
1040
|
default_theme:
|
1032
1041
|
name: Standard
|
1033
1042
|
delayed_text_fade_in:
|
@@ -1064,6 +1073,11 @@ de:
|
|
1064
1073
|
outro: Hier siehst Du dann eine Vorschau deines Pageflows.
|
1065
1074
|
classic_loading_spinner:
|
1066
1075
|
widget_type_info_box_text: Dies ist eine Vorschau der klassischen Lade-Ansicht. Wird angezeigt, während der Beitrag lädt.
|
1076
|
+
consent_bar:
|
1077
|
+
widget_type_info_box_text: |-
|
1078
|
+
Die Leiste wird beim ersten Öffnen von Beiträgen angezeigt,
|
1079
|
+
wenn Integrationen von Drittanbietern (z.B. Website Tracking
|
1080
|
+
oder Embeds) verwendet werden.
|
1067
1081
|
cookie_notice_bar:
|
1068
1082
|
widget_type_info_box_text: Der Hinweis wird beim ersten Öffnen von Beiträgen, die Cookies verwenden, am unteren Seitenrand angezeigt. Cookies werden gesetzt, falls ein Dienst zur Erhebnung von Nutzungsdaten (z.B. Google Analytics) verwendet wird oder wenn die Funktion 'Neue Seiten hervorheben' aktiv ist.
|
1069
1083
|
entries:
|
@@ -1541,29 +1555,7 @@ de:
|
|
1541
1555
|
meta_data:
|
1542
1556
|
general:
|
1543
1557
|
menu_item: Allgemein
|
1544
|
-
text:
|
1545
|
-
# Allgemein
|
1546
|
-
|
1547
|
-
## Titel des Pageflows
|
1548
|
-
|
1549
|
-
Hier kannst Du Deinem Pageflow einen Titel geben, der in der
|
1550
|
-
Titelleiste des Browserfensters angezeigt wird. Unter diesem
|
1551
|
-
Titel wird Dein Pageflow nach der Veröffentlichung auch in
|
1552
|
-
Suchmaschinen indiziert werden.
|
1553
|
-
|
1554
|
-
## Sprache
|
1555
|
-
|
1556
|
-
Wähle hier, in welcher Sprache Dein Pageflow ausgespielt
|
1557
|
-
wird. Hierbei geht es um die Frontend-Elemente wie
|
1558
|
-
z.B. Scroll-Hinweise, die Mouse-over-Texte der Navigation
|
1559
|
-
und das Impressum.
|
1560
|
-
|
1561
|
-
## Credits
|
1562
|
-
|
1563
|
-
Hier kannst Du Deine Impressums-Information im Freitext
|
1564
|
-
eingeben. Zudem können für alle Dateien unter „Dateien
|
1565
|
-
verwalten“ auch Bildrechte vergeben werden, die dann
|
1566
|
-
automatisch im Impressum angezeigt werden.
|
1558
|
+
text: "# Allgemein\n\n## Titel des Pageflows\n\nHier kannst Du Deinem Pageflow einen Titel geben, der in der\nTitelleiste des Browserfensters angezeigt wird. Unter diesem\nTitel wird Dein Pageflow nach der Veröffentlichung auch in\nSuchmaschinen indiziert werden.\n\n## Sprache\n\nWähle hier, in welcher Sprache Dein Pageflow ausgespielt\nwird. Hierbei geht es um die Frontend-Elemente wie das \nImpressum und die Datenschutz-Einstellung.\n\n## Credits\n\nHier kannst Du Deine Impressums-Information im Freitext\neingeben. Zudem können für alle Dateien unter „Dateien\nverwalten“ auch Bildrechte vergeben werden, die dann\nautomatisch im Impressum angezeigt werden."
|
1567
1559
|
menu_item: Titel und Optionen
|
1568
1560
|
social:
|
1569
1561
|
menu_item: Social
|
@@ -1695,6 +1687,8 @@ de:
|
|
1695
1687
|
entries:
|
1696
1688
|
global_links: Globale Links
|
1697
1689
|
image_rights: Bildrechte
|
1690
|
+
highdef_background_images:
|
1691
|
+
feature_name: Hochaufgelöste Hintergrundbilder
|
1698
1692
|
highdef_video_encoding:
|
1699
1693
|
feature_name: Full HD und 4K Videos
|
1700
1694
|
initial_password:
|
@@ -1787,6 +1781,7 @@ de:
|
|
1787
1781
|
ui:
|
1788
1782
|
configuration_editor:
|
1789
1783
|
tabs:
|
1784
|
+
consent_bar: Consent-Leiste
|
1790
1785
|
cookie_notice_bar: Cookie Hinweis
|
1791
1786
|
files: Dateien
|
1792
1787
|
general: Allgemein
|
@@ -1908,7 +1903,7 @@ de:
|
|
1908
1903
|
roles:
|
1909
1904
|
analytics: Zählpixel
|
1910
1905
|
background_media_control: Hintergrund-Media-Control
|
1911
|
-
cookie_notice:
|
1906
|
+
cookie_notice: Privatsphäre-Einstellungen
|
1912
1907
|
loading_spinner: Lade-Ansicht
|
1913
1908
|
mobile_navigation: Mobile Navigation
|
1914
1909
|
navigation: Navigationsleiste
|
@@ -1933,6 +1928,7 @@ de:
|
|
1933
1928
|
default: "%d.%m.%Y, %H:%M"
|
1934
1929
|
long: "%d.%m.%Y, %H:%M"
|
1935
1930
|
short: "%d. %B %Y, %H:%M Uhr"
|
1931
|
+
time_today: Heute, %H:%M
|
1936
1932
|
pm: nachmittags
|
1937
1933
|
views:
|
1938
1934
|
pagination:
|
data/config/locales/en.yml
CHANGED
@@ -178,16 +178,16 @@ en:
|
|
178
178
|
pageflow/entry:
|
179
179
|
account: Account
|
180
180
|
author: Author
|
181
|
-
created_at: Created
|
181
|
+
created_at: Created
|
182
182
|
credits: Credits
|
183
|
-
edited_at:
|
183
|
+
edited_at: Edited
|
184
184
|
embed_code: Embed
|
185
185
|
first_published_at: First published at
|
186
186
|
keywords: Keywords
|
187
187
|
locale: Language
|
188
188
|
own_role: Role
|
189
189
|
published?: Publication state
|
190
|
-
published_at: Published
|
190
|
+
published_at: Published
|
191
191
|
published_revision_published_at: Published since
|
192
192
|
publisher: Publisher
|
193
193
|
share_image_id: Social Sharing Image
|
@@ -1026,8 +1026,11 @@ en:
|
|
1026
1026
|
captions: Audio Replacement Text Track
|
1027
1027
|
descriptions: Image Description Text Track
|
1028
1028
|
subtitles: Translation Text Track
|
1029
|
+
consent_bar:
|
1030
|
+
feature_name: Consent bar
|
1031
|
+
widget_type_name: Consent bar
|
1029
1032
|
cookie_notice_bar:
|
1030
|
-
widget_type_name:
|
1033
|
+
widget_type_name: Cookied notice
|
1031
1034
|
default_theme:
|
1032
1035
|
name: Default
|
1033
1036
|
delayed_text_fade_in:
|
@@ -1066,6 +1069,10 @@ en:
|
|
1066
1069
|
outro: In this area, a live preview will be shown.
|
1067
1070
|
classic_loading_spinner:
|
1068
1071
|
widget_type_info_box_text: This is a preview of the classic loading spinner. It is displayed while the page is loading.
|
1072
|
+
consent_bar:
|
1073
|
+
widget_type_info_box_text: |-
|
1074
|
+
The bar is displayed when first viewing an entry that uses
|
1075
|
+
third party integrations (e.g., website tracking or embeds).
|
1069
1076
|
cookie_notice_bar:
|
1070
1077
|
widget_type_info_box_text: The notice is displayed when visiting a story that uses Cookies. Cookies are set, if an analytics integration is active or the 'Emphasize new pages' feature has been enabled.
|
1071
1078
|
entries:
|
@@ -1528,7 +1535,7 @@ en:
|
|
1528
1535
|
meta_data:
|
1529
1536
|
general:
|
1530
1537
|
menu_item: General
|
1531
|
-
text:
|
1538
|
+
text: |-
|
1532
1539
|
# General
|
1533
1540
|
|
1534
1541
|
## Title of the Pageflow
|
@@ -1540,7 +1547,7 @@ en:
|
|
1540
1547
|
|
1541
1548
|
## Language
|
1542
1549
|
|
1543
|
-
Decide in which language your Pageflow should be displayed. This refers to the frontend text such as
|
1550
|
+
Decide in which language your Pageflow should be displayed. This refers to the frontend text such as the legal notice and privacy settings.
|
1544
1551
|
|
1545
1552
|
## Credits
|
1546
1553
|
Here you can enter your imprint information in free text. In addition, image rights can be assigned for all files under "Manage files", which are then automatically displayed in the imprint.
|
@@ -1670,6 +1677,8 @@ en:
|
|
1670
1677
|
entries:
|
1671
1678
|
global_links: Global links
|
1672
1679
|
image_rights: Credits
|
1680
|
+
highdef_background_images:
|
1681
|
+
feature_name: High resolution background images
|
1673
1682
|
highdef_video_encoding:
|
1674
1683
|
feature_name: Full HD and 4K videos
|
1675
1684
|
initial_password:
|
@@ -1762,6 +1771,7 @@ en:
|
|
1762
1771
|
ui:
|
1763
1772
|
configuration_editor:
|
1764
1773
|
tabs:
|
1774
|
+
consent_bar: Consent bar
|
1765
1775
|
cookie_notice_bar: Cookie Notice
|
1766
1776
|
files: Files
|
1767
1777
|
general: General
|
@@ -1804,9 +1814,7 @@ en:
|
|
1804
1814
|
The text-block can be formatted with the buttons underneath the input field. [B= bold / I=italic / U=underlined / infinity symbol= Link/URL to an external website]
|
1805
1815
|
|
1806
1816
|
All changes are visible in the left front-end-view as soon as you leave the appropriate input field in the editor.
|
1807
|
-
thumbnail_image_id: 'The thumbnail replaces the automatically generated preview-picture in the navigation and overview.
|
1808
|
-
|
1809
|
-
'
|
1817
|
+
thumbnail_image_id: 'The thumbnail replaces the automatically generated preview-picture in the navigation and overview.'
|
1810
1818
|
transition: Choose the animation, that will be used when users scroll to this page.
|
1811
1819
|
templates:
|
1812
1820
|
inputs:
|
@@ -1886,7 +1894,7 @@ en:
|
|
1886
1894
|
roles:
|
1887
1895
|
analytics: Tracking
|
1888
1896
|
background_media_control: Background media control
|
1889
|
-
cookie_notice:
|
1897
|
+
cookie_notice: Privacy settings
|
1890
1898
|
loading_spinner: Loading View
|
1891
1899
|
mobile_navigation: Mobile navigation
|
1892
1900
|
navigation: Navigation bar
|
@@ -1911,6 +1919,7 @@ en:
|
|
1911
1919
|
default: "%a, %d %b %Y %H:%M:%S %z"
|
1912
1920
|
long: "%B %d, %Y %H:%M"
|
1913
1921
|
short: "%d %b %H:%M"
|
1922
|
+
time_today: Today, %H:%M
|
1914
1923
|
pm: pm
|
1915
1924
|
views:
|
1916
1925
|
pagination:
|
@@ -0,0 +1,15 @@
|
|
1
|
+
class CreatePageflowThemeCustomizationFiles < ActiveRecord::Migration[5.2]
|
2
|
+
def change
|
3
|
+
create_table :pageflow_theme_customization_files do |t|
|
4
|
+
t.references :theme_customization,
|
5
|
+
index: {name: 'index_pageflow_theme_customization_files_on_customization'}
|
6
|
+
t.string :type_name
|
7
|
+
t.string :attachment_file_name
|
8
|
+
t.string :attachment_content_type
|
9
|
+
t.integer :attachment_file_size
|
10
|
+
t.datetime :attachment_updated_at
|
11
|
+
|
12
|
+
t.timestamps
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|