diff --git a/config/sync/block.block.hoeringsportal_branding.yml b/config/sync/block.block.hoeringsportal_branding.yml index 9e9af266..4d705f52 100644 --- a/config/sync/block.block.hoeringsportal_branding.yml +++ b/config/sync/block.block.hoeringsportal_branding.yml @@ -11,7 +11,7 @@ _core: id: hoeringsportal_branding theme: hoeringsportal region: header -weight: -3 +weight: -2 provider: null plugin: system_branding_block settings: diff --git a/config/sync/block.block.hoeringsportal_messages.yml b/config/sync/block.block.hoeringsportal_messages.yml index e345bb12..d8a299fe 100644 --- a/config/sync/block.block.hoeringsportal_messages.yml +++ b/config/sync/block.block.hoeringsportal_messages.yml @@ -11,7 +11,7 @@ _core: id: hoeringsportal_messages theme: hoeringsportal region: header -weight: -1 +weight: -3 provider: null plugin: system_messages_block settings: diff --git a/config/sync/block.block.primaernavigation.yml b/config/sync/block.block.primaernavigation.yml index 3b226f52..64d95558 100644 --- a/config/sync/block.block.primaernavigation.yml +++ b/config/sync/block.block.primaernavigation.yml @@ -11,7 +11,7 @@ dependencies: id: primaernavigation theme: hoeringsportal region: header -weight: -2 +weight: -1 provider: null plugin: 'system_menu_block:main' settings: diff --git a/config/sync/block_content.type.aside_contact_info.yml b/config/sync/block_content.type.aside_contact_info.yml new file mode 100644 index 00000000..896166c1 --- /dev/null +++ b/config/sync/block_content.type.aside_contact_info.yml @@ -0,0 +1,8 @@ +uuid: b76efb53-f492-4eff-9b4f-894978914ed2 +langcode: da +status: true +dependencies: { } +id: aside_contact_info +label: 'Aside contact info' +revision: 0 +description: 'Used to show contact info on a page' diff --git a/config/sync/core.entity_form_display.block_content.aside_contact_info.default.yml b/config/sync/core.entity_form_display.block_content.aside_contact_info.default.yml new file mode 100644 index 00000000..5b64d040 --- /dev/null +++ b/config/sync/core.entity_form_display.block_content.aside_contact_info.default.yml @@ -0,0 +1,75 @@ +uuid: 16de0d95-93de-4a01-9242-3e8f4c17d76f +langcode: da +status: true +dependencies: + config: + - block_content.type.aside_contact_info + - field.field.block_content.aside_contact_info.body + - field.field.block_content.aside_contact_info.field_department + - field.field.block_content.aside_contact_info.field_email + - field.field.block_content.aside_contact_info.field_phone_number + - field.field.block_content.aside_contact_info.field_title + module: + - text +id: block_content.aside_contact_info.default +targetEntityType: block_content +bundle: aside_contact_info +mode: default +content: + body: + type: text_textarea_with_summary + weight: 4 + region: content + settings: + rows: 9 + summary_rows: 3 + placeholder: '' + show_summary: false + third_party_settings: { } + field_department: + type: string_textfield + weight: 2 + region: content + settings: + size: 60 + placeholder: '' + third_party_settings: { } + field_email: + type: email_default + weight: 6 + region: content + settings: + placeholder: '' + size: 60 + third_party_settings: { } + field_phone_number: + type: number + weight: 5 + region: content + settings: + placeholder: '' + third_party_settings: { } + field_title: + type: string_textfield + weight: 3 + region: content + settings: + size: 60 + placeholder: '' + third_party_settings: { } + info: + type: string_textfield + weight: 1 + region: content + settings: + size: 60 + placeholder: '' + third_party_settings: { } + langcode: + type: language_select + weight: 0 + region: content + settings: + include_locked: true + third_party_settings: { } +hidden: { } diff --git a/config/sync/core.entity_form_display.node.project_main_page.default.yml b/config/sync/core.entity_form_display.node.project_main_page.default.yml new file mode 100644 index 00000000..ef9611cf --- /dev/null +++ b/config/sync/core.entity_form_display.node.project_main_page.default.yml @@ -0,0 +1,172 @@ +uuid: ad0bc723-13f0-421f-8b13-0a8741900357 +langcode: da +status: true +dependencies: + config: + - entity_browser.browser.itk_image_browser + - field.field.node.project_main_page.body + - field.field.node.project_main_page.field_aside_block + - field.field.node.project_main_page.field_content_sections + - field.field.node.project_main_page.field_project_image + - field.field.node.project_main_page.field_short_description + - node.type.project_main_page + module: + - allowed_formats + - entity_browser + - maxlength + - paragraphs + - path + - publication_date + - text +id: node.project_main_page.default +targetEntityType: node +bundle: project_main_page +mode: default +content: + body: + type: text_textarea_with_summary + weight: 3 + region: content + settings: + rows: 9 + summary_rows: 3 + placeholder: '' + show_summary: false + third_party_settings: + allowed_formats: + hide_help: '1' + hide_guidelines: '1' + maxlength: + maxlength_js: null + maxlength_js_label: 'Content limited to @limit characters, remaining: @remaining' + maxlength_js_summary: null + maxlength_js_label_summary: 'Content limited to @limit characters, remaining: @remaining' + maxlength_js_enforce: false + created: + type: datetime_timestamp + weight: 8 + region: content + settings: { } + third_party_settings: { } + field_aside_block: + type: entity_reference_autocomplete + weight: 4 + region: content + settings: + match_operator: CONTAINS + match_limit: 10 + size: 100 + placeholder: '' + third_party_settings: { } + field_content_sections: + type: paragraphs + weight: 5 + region: content + settings: + title: Paragraph + title_plural: Paragraphs + edit_mode: open + closed_mode: summary + autocollapse: none + closed_mode_threshold: 0 + add_mode: dropdown + form_display_mode: default + default_paragraph_type: '' + features: + collapse_edit_all: collapse_edit_all + duplicate: duplicate + third_party_settings: { } + field_project_image: + type: entity_browser_entity_reference + weight: 2 + region: content + settings: + entity_browser: itk_image_browser + field_widget_display: rendered_entity + field_widget_edit: false + field_widget_remove: true + field_widget_replace: true + open: true + field_widget_display_settings: + view_mode: node_form_display + selection_mode: selection_append + third_party_settings: { } + field_short_description: + type: text_textarea + weight: 1 + region: content + settings: + rows: 5 + placeholder: '' + third_party_settings: + allowed_formats: + hide_help: '1' + hide_guidelines: '1' + maxlength: + maxlength_js: null + maxlength_js_label: 'Content limited to @limit characters, remaining: @remaining' + maxlength_js_enforce: false + langcode: + type: language_select + weight: 6 + region: content + settings: + include_locked: true + third_party_settings: { } + path: + type: path + weight: 12 + region: content + settings: { } + third_party_settings: { } + promote: + type: boolean_checkbox + weight: 10 + region: content + settings: + display_label: true + third_party_settings: { } + published_at: + type: publication_date_timestamp + weight: 9 + region: content + settings: { } + third_party_settings: { } + status: + type: boolean_checkbox + weight: 14 + region: content + settings: + display_label: true + third_party_settings: { } + sticky: + type: boolean_checkbox + weight: 11 + region: content + settings: + display_label: true + third_party_settings: { } + title: + type: string_textfield + weight: 0 + region: content + settings: + size: 60 + placeholder: '' + third_party_settings: { } + uid: + type: entity_reference_autocomplete + weight: 7 + region: content + settings: + match_operator: CONTAINS + match_limit: 10 + size: 60 + placeholder: '' + third_party_settings: { } + url_redirects: + weight: 13 + region: content + settings: { } + third_party_settings: { } +hidden: { } diff --git a/config/sync/core.entity_view_display.block_content.aside_contact_info.default.yml b/config/sync/core.entity_view_display.block_content.aside_contact_info.default.yml new file mode 100644 index 00000000..874d7dd4 --- /dev/null +++ b/config/sync/core.entity_view_display.block_content.aside_contact_info.default.yml @@ -0,0 +1,59 @@ +uuid: 30cbd187-b0c8-4814-8661-2a61e3f18429 +langcode: da +status: true +dependencies: + config: + - block_content.type.aside_contact_info + - field.field.block_content.aside_contact_info.body + - field.field.block_content.aside_contact_info.field_department + - field.field.block_content.aside_contact_info.field_email + - field.field.block_content.aside_contact_info.field_phone_number + - field.field.block_content.aside_contact_info.field_title + module: + - text +id: block_content.aside_contact_info.default +targetEntityType: block_content +bundle: aside_contact_info +mode: default +content: + body: + type: text_default + label: visually_hidden + settings: { } + third_party_settings: { } + weight: 2 + region: content + field_department: + type: string + label: visually_hidden + settings: + link_to_entity: false + third_party_settings: { } + weight: 0 + region: content + field_email: + type: basic_string + label: visually_hidden + settings: { } + third_party_settings: { } + weight: 4 + region: content + field_phone_number: + type: number_integer + label: visually_hidden + settings: + thousand_separator: '' + prefix_suffix: true + third_party_settings: { } + weight: 3 + region: content + field_title: + type: string + label: visually_hidden + settings: + link_to_entity: false + third_party_settings: { } + weight: 1 + region: content +hidden: + langcode: true diff --git a/config/sync/core.entity_view_display.node.project_main_page.default.yml b/config/sync/core.entity_view_display.node.project_main_page.default.yml new file mode 100644 index 00000000..51cf461e --- /dev/null +++ b/config/sync/core.entity_view_display.node.project_main_page.default.yml @@ -0,0 +1,84 @@ +uuid: e6793b90-c788-430a-8f86-d6ecfbc24e07 +langcode: da +status: true +dependencies: + config: + - field.field.node.project_main_page.body + - field.field.node.project_main_page.field_aside_block + - field.field.node.project_main_page.field_content_sections + - field.field.node.project_main_page.field_project_image + - field.field.node.project_main_page.field_short_description + - node.type.project_main_page + module: + - entity_reference_revisions + - text + - user +id: node.project_main_page.default +targetEntityType: node +bundle: project_main_page +mode: default +content: + body: + type: text_default + label: hidden + settings: { } + third_party_settings: { } + weight: 3 + region: content + field_aside_block: + type: entity_reference_entity_view + label: visually_hidden + settings: + view_mode: default + link: false + third_party_settings: { } + weight: 5 + region: content + field_content_sections: + type: entity_reference_revisions_entity_view + label: hidden + settings: + view_mode: default + link: '' + third_party_settings: { } + weight: 4 + region: content + field_project_image: + type: entity_reference_entity_view + label: hidden + settings: + view_mode: default + link: false + third_party_settings: { } + weight: 0 + region: content + field_short_description: + type: text_default + label: hidden + settings: { } + third_party_settings: { } + weight: 2 + region: content + published_at: + type: timestamp + label: above + settings: + date_format: medium + custom_date_format: '' + timezone: '' + tooltip: + date_format: long + custom_date_format: '' + time_diff: + enabled: false + future_format: '@interval hence' + past_format: '@interval ago' + granularity: 2 + refresh: 60 + third_party_settings: { } + weight: 6 + region: content +hidden: + langcode: true + links: true + sharing_buttons: true diff --git a/config/sync/core.entity_view_display.node.project_main_page.teaser.yml b/config/sync/core.entity_view_display.node.project_main_page.teaser.yml new file mode 100644 index 00000000..d10ec31c --- /dev/null +++ b/config/sync/core.entity_view_display.node.project_main_page.teaser.yml @@ -0,0 +1,45 @@ +uuid: 044634a5-28aa-44f8-b7a8-2e2ab2bcc205 +langcode: da +status: true +dependencies: + config: + - core.entity_view_mode.node.teaser + - field.field.node.project_main_page.body + - field.field.node.project_main_page.field_aside_block + - field.field.node.project_main_page.field_content_sections + - field.field.node.project_main_page.field_project_image + - field.field.node.project_main_page.field_short_description + - node.type.project_main_page + module: + - text + - user +id: node.project_main_page.teaser +targetEntityType: node +bundle: project_main_page +mode: teaser +content: + body: + type: text_summary_or_trimmed + label: hidden + settings: + trim_length: 600 + third_party_settings: { } + weight: 101 + region: content + links: + settings: { } + third_party_settings: { } + weight: 100 + region: content + sharing_buttons: + settings: { } + third_party_settings: { } + weight: 100 + region: content +hidden: + field_aside_block: true + field_content_sections: true + field_project_image: true + field_short_description: true + langcode: true + published_at: true diff --git a/config/sync/field.field.block_content.aside_contact_info.body.yml b/config/sync/field.field.block_content.aside_contact_info.body.yml new file mode 100644 index 00000000..46fc2aef --- /dev/null +++ b/config/sync/field.field.block_content.aside_contact_info.body.yml @@ -0,0 +1,26 @@ +uuid: 0224e593-3045-4c91-b1aa-0fbfe99e564a +langcode: da +status: true +dependencies: + config: + - block_content.type.aside_contact_info + - field.storage.block_content.body + - filter.format.filtered_html + module: + - text +id: block_content.aside_contact_info.body +field_name: body +entity_type: block_content +bundle: aside_contact_info +label: Address +description: 'Used to show the address' +required: false +translatable: true +default_value: { } +default_value_callback: '' +settings: + display_summary: false + required_summary: false + allowed_formats: + - filtered_html +field_type: text_with_summary diff --git a/config/sync/field.field.block_content.aside_contact_info.field_department.yml b/config/sync/field.field.block_content.aside_contact_info.field_department.yml new file mode 100644 index 00000000..a03aa80f --- /dev/null +++ b/config/sync/field.field.block_content.aside_contact_info.field_department.yml @@ -0,0 +1,19 @@ +uuid: d5371c92-4311-44aa-9c77-0dc93f87de6f +langcode: da +status: true +dependencies: + config: + - block_content.type.aside_contact_info + - field.storage.block_content.field_department +id: block_content.aside_contact_info.field_department +field_name: field_department +entity_type: block_content +bundle: aside_contact_info +label: Department +description: 'Used as the name of the department' +required: false +translatable: false +default_value: { } +default_value_callback: '' +settings: { } +field_type: string diff --git a/config/sync/field.field.block_content.aside_contact_info.field_email.yml b/config/sync/field.field.block_content.aside_contact_info.field_email.yml new file mode 100644 index 00000000..e92e36b0 --- /dev/null +++ b/config/sync/field.field.block_content.aside_contact_info.field_email.yml @@ -0,0 +1,19 @@ +uuid: 513cf7bd-93af-4cf2-86da-267e6200942d +langcode: da +status: true +dependencies: + config: + - block_content.type.aside_contact_info + - field.storage.block_content.field_email +id: block_content.aside_contact_info.field_email +field_name: field_email +entity_type: block_content +bundle: aside_contact_info +label: Email +description: 'Used to show the email address' +required: false +translatable: false +default_value: { } +default_value_callback: '' +settings: { } +field_type: email diff --git a/config/sync/field.field.block_content.aside_contact_info.field_phone_number.yml b/config/sync/field.field.block_content.aside_contact_info.field_phone_number.yml new file mode 100644 index 00000000..55d157c1 --- /dev/null +++ b/config/sync/field.field.block_content.aside_contact_info.field_phone_number.yml @@ -0,0 +1,23 @@ +uuid: c4654dcf-a9fa-4ac0-aed6-ff1c9cbd34dc +langcode: da +status: true +dependencies: + config: + - block_content.type.aside_contact_info + - field.storage.block_content.field_phone_number +id: block_content.aside_contact_info.field_phone_number +field_name: field_phone_number +entity_type: block_content +bundle: aside_contact_info +label: 'Phone number' +description: 'Used to show the phone number' +required: false +translatable: false +default_value: { } +default_value_callback: '' +settings: + min: 8 + max: null + prefix: '' + suffix: '' +field_type: integer diff --git a/config/sync/field.field.block_content.aside_contact_info.field_title.yml b/config/sync/field.field.block_content.aside_contact_info.field_title.yml new file mode 100644 index 00000000..cfcd86e7 --- /dev/null +++ b/config/sync/field.field.block_content.aside_contact_info.field_title.yml @@ -0,0 +1,19 @@ +uuid: 493c9ce9-2b21-42ae-bbd8-1aed626187d3 +langcode: da +status: true +dependencies: + config: + - block_content.type.aside_contact_info + - field.storage.block_content.field_title +id: block_content.aside_contact_info.field_title +field_name: field_title +entity_type: block_content +bundle: aside_contact_info +label: Title +description: 'Used to show the title' +required: false +translatable: false +default_value: { } +default_value_callback: '' +settings: { } +field_type: string diff --git a/config/sync/field.field.node.project_main_page.body.yml b/config/sync/field.field.node.project_main_page.body.yml new file mode 100644 index 00000000..96c6b825 --- /dev/null +++ b/config/sync/field.field.node.project_main_page.body.yml @@ -0,0 +1,26 @@ +uuid: 59bde97b-ec4c-4f5d-b4c6-bd06498c95f9 +langcode: da +status: true +dependencies: + config: + - field.storage.node.body + - filter.format.filtered_html + - node.type.project_main_page + module: + - text +id: node.project_main_page.body +field_name: body +entity_type: node +bundle: project_main_page +label: Body +description: '' +required: false +translatable: true +default_value: { } +default_value_callback: '' +settings: + display_summary: true + required_summary: false + allowed_formats: + - filtered_html +field_type: text_with_summary diff --git a/config/sync/field.field.node.project_main_page.field_aside_block.yml b/config/sync/field.field.node.project_main_page.field_aside_block.yml new file mode 100644 index 00000000..331df0fd --- /dev/null +++ b/config/sync/field.field.node.project_main_page.field_aside_block.yml @@ -0,0 +1,29 @@ +uuid: 71e37109-71f8-4a80-87b1-388e61edc386 +langcode: da +status: true +dependencies: + config: + - block_content.type.aside_contact_info + - field.storage.node.field_aside_block + - node.type.project_main_page +id: node.project_main_page.field_aside_block +field_name: field_aside_block +entity_type: node +bundle: project_main_page +label: 'Aside block' +description: 'Used to add a block with contact information. The blocks can be managed under the blocks section' +required: false +translatable: false +default_value: { } +default_value_callback: '' +settings: + handler: 'default:block_content' + handler_settings: + target_bundles: + aside_contact_info: aside_contact_info + sort: + field: _none + direction: ASC + auto_create: false + auto_create_bundle: '' +field_type: entity_reference diff --git a/config/sync/field.field.node.project_main_page.field_content_sections.yml b/config/sync/field.field.node.project_main_page.field_content_sections.yml new file mode 100644 index 00000000..7c1dd4a0 --- /dev/null +++ b/config/sync/field.field.node.project_main_page.field_content_sections.yml @@ -0,0 +1,68 @@ +uuid: faa73256-1e67-45f3-9e0b-47d0bd8c8b23 +langcode: da +status: true +dependencies: + config: + - field.storage.node.field_content_sections + - node.type.project_main_page + - paragraphs.paragraphs_type.content_block + - paragraphs.paragraphs_type.image + - paragraphs.paragraphs_type.info_box + - paragraphs.paragraphs_type.introduction + - paragraphs.paragraphs_type.teaser_row + - paragraphs.paragraphs_type.text + module: + - entity_reference_revisions +id: node.project_main_page.field_content_sections +field_name: field_content_sections +entity_type: node +bundle: project_main_page +label: 'Content sections' +description: 'Used to create page sections with the Drupal Paragraphs module' +required: false +translatable: false +default_value: { } +default_value_callback: '' +settings: + handler: 'default:paragraph' + handler_settings: + target_bundles: + text: text + image: image + content_block: content_block + info_box: info_box + introduction: introduction + teaser_row: teaser_row + negate: 0 + target_bundles_drag_drop: + content_block: + weight: -19 + enabled: true + content_list: + weight: -18 + enabled: false + image: + weight: -20 + enabled: true + info_box: + weight: -17 + enabled: true + introduction: + weight: -16 + enabled: true + projekt_billede_galleri: + weight: -15 + enabled: false + teaser_row: + weight: -14 + enabled: true + text: + weight: -21 + enabled: true + timeline_items: + weight: -13 + enabled: false + timeline_period: + weight: -12 + enabled: false +field_type: entity_reference_revisions diff --git a/config/sync/field.field.node.project_main_page.field_project_image.yml b/config/sync/field.field.node.project_main_page.field_project_image.yml new file mode 100644 index 00000000..4e393f50 --- /dev/null +++ b/config/sync/field.field.node.project_main_page.field_project_image.yml @@ -0,0 +1,29 @@ +uuid: e43642ff-af87-4ae5-9960-dc1542092e7c +langcode: da +status: true +dependencies: + config: + - field.storage.node.field_project_image + - media.type.image + - node.type.project_main_page +id: node.project_main_page.field_project_image +field_name: field_project_image +entity_type: node +bundle: project_main_page +label: 'Project image' +description: 'Used to show project image' +required: false +translatable: false +default_value: { } +default_value_callback: '' +settings: + handler: 'default:media' + handler_settings: + target_bundles: + image: image + sort: + field: _none + direction: ASC + auto_create: false + auto_create_bundle: '' +field_type: entity_reference diff --git a/config/sync/field.field.node.project_main_page.field_short_description.yml b/config/sync/field.field.node.project_main_page.field_short_description.yml new file mode 100644 index 00000000..036b1371 --- /dev/null +++ b/config/sync/field.field.node.project_main_page.field_short_description.yml @@ -0,0 +1,24 @@ +uuid: 3ce90002-01d0-4a7d-be40-fa48cd799e83 +langcode: da +status: true +dependencies: + config: + - field.storage.node.field_short_description + - filter.format.filtered_html + - node.type.project_main_page + module: + - text +id: node.project_main_page.field_short_description +field_name: field_short_description +entity_type: node +bundle: project_main_page +label: 'Short description' +description: 'Short description of the project.' +required: false +translatable: false +default_value: { } +default_value_callback: '' +settings: + allowed_formats: + - filtered_html +field_type: text_long diff --git a/config/sync/field.field.paragraph.teaser_row.field_project_hearing_1.yml b/config/sync/field.field.paragraph.teaser_row.field_project_hearing_1.yml index 3fbbedce..62527e9d 100644 --- a/config/sync/field.field.paragraph.teaser_row.field_project_hearing_1.yml +++ b/config/sync/field.field.paragraph.teaser_row.field_project_hearing_1.yml @@ -4,8 +4,14 @@ status: true dependencies: config: - field.storage.paragraph.field_project_hearing_1 + - node.type.citizen_proposal - node.type.hearing + - node.type.landing_page + - node.type.page_map - node.type.project + - node.type.project_main_page + - node.type.public_meeting + - node.type.static_page - paragraphs.paragraphs_type.teaser_row id: paragraph.teaser_row.field_project_hearing_1 field_name: field_project_hearing_1 @@ -21,10 +27,17 @@ settings: handler: 'default:node' handler_settings: target_bundles: + public_meeting: public_meeting + citizen_proposal: citizen_proposal hearing: hearing + page_map: page_map + landing_page: landing_page + project_main_page: project_main_page project: project + static_page: static_page sort: field: _none + direction: ASC auto_create: false auto_create_bundle: hearing field_type: entity_reference diff --git a/config/sync/field.field.paragraph.teaser_row.field_project_hearing_2.yml b/config/sync/field.field.paragraph.teaser_row.field_project_hearing_2.yml index 04497566..28f3f2dc 100644 --- a/config/sync/field.field.paragraph.teaser_row.field_project_hearing_2.yml +++ b/config/sync/field.field.paragraph.teaser_row.field_project_hearing_2.yml @@ -4,8 +4,14 @@ status: true dependencies: config: - field.storage.paragraph.field_project_hearing_2 + - node.type.citizen_proposal - node.type.hearing + - node.type.landing_page + - node.type.page_map - node.type.project + - node.type.project_main_page + - node.type.public_meeting + - node.type.static_page - paragraphs.paragraphs_type.teaser_row id: paragraph.teaser_row.field_project_hearing_2 field_name: field_project_hearing_2 @@ -21,10 +27,17 @@ settings: handler: 'default:node' handler_settings: target_bundles: + public_meeting: public_meeting + citizen_proposal: citizen_proposal hearing: hearing + page_map: page_map + landing_page: landing_page + project_main_page: project_main_page project: project + static_page: static_page sort: field: _none + direction: ASC auto_create: false auto_create_bundle: hearing field_type: entity_reference diff --git a/config/sync/field.field.paragraph.teaser_row.field_project_hearing_3.yml b/config/sync/field.field.paragraph.teaser_row.field_project_hearing_3.yml index dea681a7..d65f447b 100644 --- a/config/sync/field.field.paragraph.teaser_row.field_project_hearing_3.yml +++ b/config/sync/field.field.paragraph.teaser_row.field_project_hearing_3.yml @@ -4,8 +4,14 @@ status: true dependencies: config: - field.storage.paragraph.field_project_hearing_3 + - node.type.citizen_proposal - node.type.hearing + - node.type.landing_page + - node.type.page_map - node.type.project + - node.type.project_main_page + - node.type.public_meeting + - node.type.static_page - paragraphs.paragraphs_type.teaser_row id: paragraph.teaser_row.field_project_hearing_3 field_name: field_project_hearing_3 @@ -21,10 +27,17 @@ settings: handler: 'default:node' handler_settings: target_bundles: + public_meeting: public_meeting + citizen_proposal: citizen_proposal hearing: hearing + page_map: page_map + landing_page: landing_page + project_main_page: project_main_page project: project + static_page: static_page sort: field: _none + direction: ASC auto_create: false auto_create_bundle: hearing field_type: entity_reference diff --git a/config/sync/field.storage.block_content.field_department.yml b/config/sync/field.storage.block_content.field_department.yml new file mode 100644 index 00000000..9df72755 --- /dev/null +++ b/config/sync/field.storage.block_content.field_department.yml @@ -0,0 +1,21 @@ +uuid: 26ecf910-5c6c-44c7-8641-a33d602c8b2d +langcode: da +status: true +dependencies: + module: + - block_content +id: block_content.field_department +field_name: field_department +entity_type: block_content +type: string +settings: + max_length: 255 + case_sensitive: false + is_ascii: false +module: core +locked: false +cardinality: 1 +translatable: true +indexes: { } +persist_with_no_fields: false +custom_storage: false diff --git a/config/sync/field.storage.block_content.field_email.yml b/config/sync/field.storage.block_content.field_email.yml new file mode 100644 index 00000000..04abe2a8 --- /dev/null +++ b/config/sync/field.storage.block_content.field_email.yml @@ -0,0 +1,18 @@ +uuid: c63af57f-f4f5-4b47-9910-a560c3f41cfe +langcode: da +status: true +dependencies: + module: + - block_content +id: block_content.field_email +field_name: field_email +entity_type: block_content +type: email +settings: { } +module: core +locked: false +cardinality: 1 +translatable: true +indexes: { } +persist_with_no_fields: false +custom_storage: false diff --git a/config/sync/field.storage.block_content.field_phone_number.yml b/config/sync/field.storage.block_content.field_phone_number.yml new file mode 100644 index 00000000..037018fa --- /dev/null +++ b/config/sync/field.storage.block_content.field_phone_number.yml @@ -0,0 +1,20 @@ +uuid: f7bfe7e7-d2b0-493c-a79e-1bb34b5b6787 +langcode: da +status: true +dependencies: + module: + - block_content +id: block_content.field_phone_number +field_name: field_phone_number +entity_type: block_content +type: integer +settings: + unsigned: false + size: normal +module: core +locked: false +cardinality: 1 +translatable: true +indexes: { } +persist_with_no_fields: false +custom_storage: false diff --git a/config/sync/field.storage.block_content.field_title.yml b/config/sync/field.storage.block_content.field_title.yml new file mode 100644 index 00000000..6cdf53a4 --- /dev/null +++ b/config/sync/field.storage.block_content.field_title.yml @@ -0,0 +1,21 @@ +uuid: e49804a3-1776-417a-b2c6-2e259638658f +langcode: da +status: true +dependencies: + module: + - block_content +id: block_content.field_title +field_name: field_title +entity_type: block_content +type: string +settings: + max_length: 255 + case_sensitive: false + is_ascii: false +module: core +locked: false +cardinality: 1 +translatable: true +indexes: { } +persist_with_no_fields: false +custom_storage: false diff --git a/config/sync/field.storage.node.field_aside_block.yml b/config/sync/field.storage.node.field_aside_block.yml new file mode 100644 index 00000000..64deb229 --- /dev/null +++ b/config/sync/field.storage.node.field_aside_block.yml @@ -0,0 +1,20 @@ +uuid: 1e16e13d-7104-4edc-a028-a02aa5937cc4 +langcode: da +status: true +dependencies: + module: + - block_content + - node +id: node.field_aside_block +field_name: field_aside_block +entity_type: node +type: entity_reference +settings: + target_type: block_content +module: core +locked: false +cardinality: 1 +translatable: true +indexes: { } +persist_with_no_fields: false +custom_storage: false diff --git a/config/sync/field.storage.node.field_content_sections.yml b/config/sync/field.storage.node.field_content_sections.yml new file mode 100644 index 00000000..571e5738 --- /dev/null +++ b/config/sync/field.storage.node.field_content_sections.yml @@ -0,0 +1,21 @@ +uuid: 546f277d-6031-4f19-a651-6643e85e5bd1 +langcode: da +status: true +dependencies: + module: + - entity_reference_revisions + - node + - paragraphs +id: node.field_content_sections +field_name: field_content_sections +entity_type: node +type: entity_reference_revisions +settings: + target_type: paragraph +module: entity_reference_revisions +locked: false +cardinality: -1 +translatable: true +indexes: { } +persist_with_no_fields: false +custom_storage: false diff --git a/config/sync/field.storage.node.field_project_image.yml b/config/sync/field.storage.node.field_project_image.yml new file mode 100644 index 00000000..039c2120 --- /dev/null +++ b/config/sync/field.storage.node.field_project_image.yml @@ -0,0 +1,20 @@ +uuid: dfba2475-90c5-4c6f-b53f-563e697108e3 +langcode: da +status: true +dependencies: + module: + - media + - node +id: node.field_project_image +field_name: field_project_image +entity_type: node +type: entity_reference +settings: + target_type: media +module: core +locked: false +cardinality: 1 +translatable: true +indexes: { } +persist_with_no_fields: false +custom_storage: false diff --git a/config/sync/field.storage.node.field_short_description.yml b/config/sync/field.storage.node.field_short_description.yml new file mode 100644 index 00000000..23430509 --- /dev/null +++ b/config/sync/field.storage.node.field_short_description.yml @@ -0,0 +1,19 @@ +uuid: 78978e3a-0c7c-4db6-843e-06d1e6f2c3c6 +langcode: da +status: true +dependencies: + module: + - node + - text +id: node.field_short_description +field_name: field_short_description +entity_type: node +type: text_long +settings: { } +module: text +locked: false +cardinality: 1 +translatable: true +indexes: { } +persist_with_no_fields: false +custom_storage: false diff --git a/config/sync/language.content_settings.block_content.aside_contact_info.yml b/config/sync/language.content_settings.block_content.aside_contact_info.yml new file mode 100644 index 00000000..c5f0ec2c --- /dev/null +++ b/config/sync/language.content_settings.block_content.aside_contact_info.yml @@ -0,0 +1,11 @@ +uuid: f7222482-1df5-429f-8792-c9500635c819 +langcode: da +status: true +dependencies: + config: + - block_content.type.aside_contact_info +id: block_content.aside_contact_info +target_entity_type_id: block_content +target_bundle: aside_contact_info +default_langcode: site_default +language_alterable: false diff --git a/config/sync/language.content_settings.node.project_main_page.yml b/config/sync/language.content_settings.node.project_main_page.yml new file mode 100644 index 00000000..af77a653 --- /dev/null +++ b/config/sync/language.content_settings.node.project_main_page.yml @@ -0,0 +1,11 @@ +uuid: 443acb1b-8079-475e-8c87-300d5cf37643 +langcode: da +status: true +dependencies: + config: + - node.type.project_main_page +id: node.project_main_page +target_entity_type_id: node +target_bundle: project_main_page +default_langcode: site_default +language_alterable: false diff --git a/config/sync/node.type.project_main_page.yml b/config/sync/node.type.project_main_page.yml new file mode 100644 index 00000000..6a9d80ce --- /dev/null +++ b/config/sync/node.type.project_main_page.yml @@ -0,0 +1,18 @@ +uuid: 3062fc41-f061-44c7-a8af-c903afb41305 +langcode: da +status: true +dependencies: + module: + - menu_ui +third_party_settings: + menu_ui: + available_menus: + - main + parent: 'main:' +name: Project +type: project_main_page +description: 'Use this to create a project page' +help: '' +new_revision: true +preview_mode: 1 +display_submitted: true diff --git a/config/sync/paragraphs.paragraphs_type.teaser_row.yml b/config/sync/paragraphs.paragraphs_type.teaser_row.yml index 50348925..1fada715 100644 --- a/config/sync/paragraphs.paragraphs_type.teaser_row.yml +++ b/config/sync/paragraphs.paragraphs_type.teaser_row.yml @@ -6,5 +6,5 @@ id: teaser_row label: 'Teaser række' icon_uuid: null icon_default: null -description: 'En række teasers af projekter, høringer og statiske sider' +description: 'En række teasers der linker til andet indhold' behavior_plugins: { } diff --git a/patches/hoeringsportal_deskpro.hack.patch b/patches/hoeringsportal_deskpro.hack.patch new file mode 100644 index 00000000..445d6902 --- /dev/null +++ b/patches/hoeringsportal_deskpro.hack.patch @@ -0,0 +1,37 @@ +diff --git a/web/modules/custom/hoeringsportal_deskpro/hoeringsportal_deskpro.module b/web/modules/custom/hoeringsportal_deskpro/hoeringsportal_deskpro.module +index d5026c3..5ce33a3 100644 +--- a/web/modules/custom/hoeringsportal_deskpro/hoeringsportal_deskpro.module ++++ b/web/modules/custom/hoeringsportal_deskpro/hoeringsportal_deskpro.module +@@ -73,6 +73,7 @@ function hoeringsportal_deskpro_theme() { + * Implements hook_form_alter(). + */ + function hoeringsportal_deskpro_form_alter(&$form, FormStateInterface $form_state, $form_id) { ++ return; + if ($form_id === 'node_hearing_form' || $form_id === 'node_hearing_edit_form') { + // Department as select control. + if (isset($form['field_deskpro_department_id']['widget'][0]['value']['#type']) +diff --git a/web/modules/custom/hoeringsportal_deskpro/src/Plugin/Validation/Constraint/AgentEmailContraintValidator.php b/web/modules/custom/hoeringsportal_deskpro/src/Plugin/Validation/Constraint/AgentEmailContraintValidator.php +index 16f827f..abbdd65 100644 +--- a/web/modules/custom/hoeringsportal_deskpro/src/Plugin/Validation/Constraint/AgentEmailContraintValidator.php ++++ b/web/modules/custom/hoeringsportal_deskpro/src/Plugin/Validation/Constraint/AgentEmailContraintValidator.php +@@ -41,6 +41,7 @@ public static function create(ContainerInterface $container) { + * {@inheritDoc} + */ + public function validate($value, Constraint $constraint) { ++ return; + // This is a single-item field so we only need to + // validate the first item. + $item = $value->first(); +diff --git a/web/modules/custom/hoeringsportal_deskpro/src/Service/DeskproService.php b/web/modules/custom/hoeringsportal_deskpro/src/Service/DeskproService.php +index e020e97..cd206df 100644 +--- a/web/modules/custom/hoeringsportal_deskpro/src/Service/DeskproService.php ++++ b/web/modules/custom/hoeringsportal_deskpro/src/Service/DeskproService.php +@@ -531,6 +531,8 @@ public function getDefaultTicketLanguage() { + * Convenience function for getting data from the Deskpro client. + */ + private function get($endpoint, array $query = []) { ++ return new ApiResponse([], [], []); ++ + $cache = \Drupal::cache('data'); + $cacheKey = __METHOD__ . '||' . json_encode(func_get_args()); + $cacheTtl = $this->config->getCacheTtl(); diff --git a/web/themes/custom/hoeringsportal/assets/css/_bootstrap-custom.scss b/web/themes/custom/hoeringsportal/assets/css/_bootstrap-custom.scss index 803141cc..0445c813 100755 --- a/web/themes/custom/hoeringsportal/assets/css/_bootstrap-custom.scss +++ b/web/themes/custom/hoeringsportal/assets/css/_bootstrap-custom.scss @@ -53,6 +53,10 @@ $orange: #ff5f31; $orange-light: #ffcfc1; $red: #d32f2f; $red-light: #f2c0c0; +$color-white: $white; +$color-petroleum-100: oklch(98% 0.017 196.88); +$color-peach-100: oklch(94% 0.02 56.12); +$color-peach-200: oklch(90% 0.02 56.12); // Set primary color $primary: $petroleum; diff --git a/web/themes/custom/hoeringsportal/assets/css/_custom-variables.scss b/web/themes/custom/hoeringsportal/assets/css/_custom-variables.scss index 5e431ba1..f9bf7ee1 100755 --- a/web/themes/custom/hoeringsportal/assets/css/_custom-variables.scss +++ b/web/themes/custom/hoeringsportal/assets/css/_custom-variables.scss @@ -23,4 +23,3 @@ $font-size-teaser: 1.625rem !default; //26px $font-size-teaser-responsive: 1.25rem !default; //20px $shadow: 0 .25rem 1rem rgb(0 0 0 / 16%); - diff --git a/web/themes/custom/hoeringsportal/assets/css/hoeringsportal.scss b/web/themes/custom/hoeringsportal/assets/css/hoeringsportal.scss index c4bc7520..7ccc8954 100755 --- a/web/themes/custom/hoeringsportal/assets/css/hoeringsportal.scss +++ b/web/themes/custom/hoeringsportal/assets/css/hoeringsportal.scss @@ -3,6 +3,7 @@ "bootstrap-custom", "layout/aside", "layout/page-map", + "layout/page-project", "base", "module/nav", "module/hero", @@ -32,4 +33,5 @@ "module/newsletter", "module/proposal", "module/animation", + "module/header-v2", "../../node_modules/slick-carousel/slick/slick"; diff --git a/web/themes/custom/hoeringsportal/assets/css/layout/_aside.scss b/web/themes/custom/hoeringsportal/assets/css/layout/_aside.scss index cf8fc3c1..15ae2cee 100755 --- a/web/themes/custom/hoeringsportal/assets/css/layout/_aside.scss +++ b/web/themes/custom/hoeringsportal/assets/css/layout/_aside.scss @@ -6,3 +6,9 @@ padding-top: $spacer * 2; padding-bottom: $spacer * 2; } + +.aside-block { + background-color: $color-petroleum-100; + + +} diff --git a/web/themes/custom/hoeringsportal/assets/css/layout/_page-project.scss b/web/themes/custom/hoeringsportal/assets/css/layout/_page-project.scss new file mode 100644 index 00000000..062c13d9 --- /dev/null +++ b/web/themes/custom/hoeringsportal/assets/css/layout/_page-project.scss @@ -0,0 +1,22 @@ +.page--project_main_page { + + background-color: $color-white; + + h2 { + font-size: clamp(1.25rem, calc(1.25vw + $font-size-base), 1.6rem); + } + + h2 + p strong { + font-size: clamp(1.1rem, 0.8vw + 1rem, 1.3rem); + font-weight: normal; + line-height: 1.6; + margin-top: 2vh; + margin-bottom: 2vh; + display: inline-block; + } + + p { + font-size: 1.1rem; + line-height: 1.65; + } +} diff --git a/web/themes/custom/hoeringsportal/assets/css/module/_header-v2.scss b/web/themes/custom/hoeringsportal/assets/css/module/_header-v2.scss new file mode 100644 index 00000000..1e95583f --- /dev/null +++ b/web/themes/custom/hoeringsportal/assets/css/module/_header-v2.scss @@ -0,0 +1,35 @@ +.header-v2 { + .image-wrapper { + max-height: 50vh; + overflow: hidden; + + img { + object-fit: cover; + width: 100%; + height: auto; + } + } + + .content-wrapper { + padding-top: $spacer * 2; + padding-bottom: $spacer * 2; + background-color: $color-peach-100; + border-bottom: 5px solid $color-peach-200; + + @include media-breakpoint-up(md) { + padding-top: $spacer * 5; + padding-bottom: $spacer * 5; + margin-left: 5vw; + margin-right: 5vw; + margin-top: -$spacer * 5; + } + } + + h1 { + font-size: clamp(1.5rem, calc(2vw + $font-size-base), 2.5rem); + } + + p { + font-size: clamp(1rem, calc(0.75vw + $font-size-base), 1.25rem); + } +} diff --git a/web/themes/custom/hoeringsportal/templates/components/header-v2.html.twig b/web/themes/custom/hoeringsportal/templates/components/header-v2.html.twig new file mode 100644 index 00000000..76ecb59f --- /dev/null +++ b/web/themes/custom/hoeringsportal/templates/components/header-v2.html.twig @@ -0,0 +1,11 @@ +
+
+ {{ image }} +
+
+
+

{{ title }}

+ {{ description }} +
+
+
diff --git a/web/themes/custom/hoeringsportal/templates/field/field--block-content--aside-contact-info.html.twig b/web/themes/custom/hoeringsportal/templates/field/field--block-content--aside-contact-info.html.twig new file mode 100755 index 00000000..560e13ec --- /dev/null +++ b/web/themes/custom/hoeringsportal/templates/field/field--block-content--aside-contact-info.html.twig @@ -0,0 +1,49 @@ +{# +/** + * @file + * Theme override for a field. + * + * To override output, copy the "field.html.twig" from the templates directory + * to your theme's directory and customize it, just like customizing other + * Drupal templates such as page.html.twig or node.html.twig. + * + * Instead of overriding the theming for all fields, you can also just override + * theming for a subset of fields using + * @link themeable Theme hook suggestions. @endlink For example, + * here are some theme hook suggestions that can be used for a field_foo field + * on an article node type: + * - field--node--field-foo--article.html.twig + * - field--node--field-foo.html.twig + * - field--node--article.html.twig + * - field--field-foo.html.twig + * - field--text-with-summary.html.twig + * - field.html.twig + * + * Available variables: + * - attributes: HTML attributes for the containing element. + * - label_hidden: Whether to show the field label or not. + * - title_attributes: HTML attributes for the title. + * - label: The label for the field. + * - multiple: TRUE if a field can contain multiple items. + * - items: List of all the field items. Each item contains: + * - attributes: List of HTML attributes for each item. + * - content: The field item's content. + * - entity_type: The entity type to which the field belongs. + * - field_name: The name of the field. + * - field_type: The type of the field. + * - label_display: The display settings for the label. + * + * @see template_preprocess_field() + */ +#} + +
{{ label }}
+{% if multiple %} +
+{% endif %} +{% for item in items %} + {{ item.content }} +{% endfor %} +{% if multiple %} +
+{% endif %} diff --git a/web/themes/custom/hoeringsportal/templates/field/field--node--field-aside-block.html.twig b/web/themes/custom/hoeringsportal/templates/field/field--node--field-aside-block.html.twig new file mode 100644 index 00000000..979e9282 --- /dev/null +++ b/web/themes/custom/hoeringsportal/templates/field/field--node--field-aside-block.html.twig @@ -0,0 +1,69 @@ +{# +/** + * @file + * Theme override for a field. + * + * To override output, copy the "field.html.twig" from the templates directory + * to your theme's directory and customize it, just like customizing other + * Drupal templates such as page.html.twig or node.html.twig. + * + * Instead of overriding the theming for all fields, you can also just override + * theming for a subset of fields using + * @link themeable Theme hook suggestions. @endlink For example, + * here are some theme hook suggestions that can be used for a field_foo field + * on an article node type: + * - field--node--field-foo--article.html.twig + * - field--node--field-foo.html.twig + * - field--node--article.html.twig + * - field--field-foo.html.twig + * - field--text-with-summary.html.twig + * - field.html.twig + * + * Available variables: + * - attributes: HTML attributes for the containing element. + * - label_hidden: Whether to show the field label or not. + * - title_attributes: HTML attributes for the title. + * - label: The label for the field. + * - multiple: TRUE if a field can contain multiple items. + * - items: List of all the field items. Each item contains: + * - attributes: List of HTML attributes for each item. + * - content: The field item's content. + * - entity_type: The entity type to which the field belongs. + * - field_name: The name of the field. + * - field_type: The type of the field. + * - label_display: The display settings for the label. + * + * @see template_preprocess_field() + */ +#} + +
+ {% for item in items %} + {% if item.content.field_department %} +
+ {{ item.content.field_department }} +
+ {% endif %} + {% if item.content.field_title %} +
+ {{ item.content.field_title }} +
+ {% endif %} + {% if item.content.body %} +
+ {{ item.content.body }} +
+ {% endif %} + {% if item.content.field_phone_number %} +
+ {{ 'Phone'|trans }}:{{ item.content.field_phone_number }} +
+ {% endif %} + {% if item.content.field_email %} +
+ {{ 'Email'|trans }}:{{ item.content.field_email }} +
+ {% endif %} + {{ item.content|without('field_department', 'field_title', 'body', 'field_phone_number', 'field_email') }} + {% endfor %} +
diff --git a/web/themes/custom/hoeringsportal/templates/node/node--project-main-page.html.twig b/web/themes/custom/hoeringsportal/templates/node/node--project-main-page.html.twig new file mode 100755 index 00000000..1b6498cb --- /dev/null +++ b/web/themes/custom/hoeringsportal/templates/node/node--project-main-page.html.twig @@ -0,0 +1,50 @@ +{# +/** + * @file + * Display Suite 2 column stacked template. + * + * Available variables: + * - outer_wrapper: outer wrapper element + * - header_wrapper: wrapper element around header region + * - left_wrapper: wrapper element around left region + * - right_wrapper: wrapper element around right region + * - footer_wrapper: wrapper element around footer region + * - attributes: layout attributes + * - header_attributes: attributes for header region + * - left_attributes: attributes for left region + * - right_attributes: attributes for right region + * - footer_attributes: attributes for footer region + * - header: content of header region + * - left: content of left region + * - right: content of right region + * - footer: content of footer region + */ +#} + + {# Header #} + {% include directory ~ '/templates/components/header-v2.html.twig' with {'image': content.field_project_image, 'title': node.label, 'description': content.field_short_description} %} + + {# Main container #} +
+
+
+ {{ content|without('field_project_image', 'field_short_description', 'field_aside_block', 'field_content_sections', 'published_at') }} +
+
+ {{ content.field_aside_block }} +
+
+
+
+ {{ content.field_content_sections }} +
+
+
+ {{ content.published_at }} +
+
+ + {# Newsletter signup #} + {% if node_newsletter %} + {% include '@hoeringsportal/newsletter-bottom-link.html.twig' %} + {% endif %} diff --git a/web/themes/custom/hoeringsportal/templates/paragraph/paragraph--content-block.html.twig b/web/themes/custom/hoeringsportal/templates/paragraph/paragraph--content-block.html.twig index fa4fd406..9b10f831 100644 --- a/web/themes/custom/hoeringsportal/templates/paragraph/paragraph--content-block.html.twig +++ b/web/themes/custom/hoeringsportal/templates/paragraph/paragraph--content-block.html.twig @@ -38,20 +38,22 @@ * @ingroup themeable */ #} -
-
- {% if content.field_paragraph_title['#items'] is not empty %} -

{{ content.field_paragraph_title }}

- {% endif %} -
- {% block paragraph %} -
- {{ content|without('field_paragraph_image', 'field_paragraph_title') }} -
-
- {{ content.field_paragraph_image }} -
- {% endblock paragraph %} +
+
+
+ {% if content.field_paragraph_title['#items'] is not empty %} +

{{ content.field_paragraph_title }}

+ {% endif %} +
+ {% block paragraph %} +
+ {{ content|without('field_paragraph_image', 'field_paragraph_title') }} +
+
+ {{ content.field_paragraph_image }} +
+ {% endblock paragraph %} +
diff --git a/web/themes/custom/hoeringsportal/templates/paragraph/paragraph--info-box.html.twig b/web/themes/custom/hoeringsportal/templates/paragraph/paragraph--info-box.html.twig index d42725a9..1541034e 100644 --- a/web/themes/custom/hoeringsportal/templates/paragraph/paragraph--info-box.html.twig +++ b/web/themes/custom/hoeringsportal/templates/paragraph/paragraph--info-box.html.twig @@ -38,13 +38,15 @@ * @ingroup themeable */ #} -
- {% block paragraph %} - {% if content.field_paragraph_title['#items'] is not empty %} -

{{ content.field_paragraph_title }}

- {% endif %} - {% block content %} - {{ content.field_content_block_text }} - {% endblock %} - {% endblock paragraph %} +
+
+ {% block paragraph %} + {% if content.field_paragraph_title['#items'] is not empty %} +

{{ content.field_paragraph_title }}

+ {% endif %} + {% block content %} + {{ content.field_content_block_text }} + {% endblock %} + {% endblock paragraph %} +
diff --git a/web/themes/custom/hoeringsportal/templates/paragraph/paragraph--teaser-row.html.twig b/web/themes/custom/hoeringsportal/templates/paragraph/paragraph--teaser-row.html.twig index 0d2e0dea..35b55f2e 100644 --- a/web/themes/custom/hoeringsportal/templates/paragraph/paragraph--teaser-row.html.twig +++ b/web/themes/custom/hoeringsportal/templates/paragraph/paragraph--teaser-row.html.twig @@ -38,25 +38,27 @@ * @ingroup themeable */ #} -
-
- {% if content.field_paragraph_title['#items'] is not empty %} -

{{ content.field_paragraph_title }}

- {% endif %} -
- {% block paragraph %} - {% block content %} - {% if (paragraph.field_type.value == 'one_project_two_static') %} - {{ content|without('field_paragraph_title', 'field_project_hearing_2', 'field_project_hearing_3') }} - {% endif %} - {% if (paragraph.field_type.value == 'two_projects') %} - {{ content|without('field_paragraph_title', 'field_static_pages', 'field_project_hearing_3') }} - {% endif %} - {% if (paragraph.field_type.value == 'three_projects') %} - {{ content|without('field_paragraph_title', 'field_static_pages') }} - {% endif %} - {% endblock %} - {% endblock paragraph %} +
+
+
+ {% if content.field_paragraph_title['#items'] is not empty %} +

{{ content.field_paragraph_title }}

+ {% endif %} +
+ {% block paragraph %} + {% block content %} + {% if (paragraph.field_type.value == 'one_project_two_static') %} + {{ content|without('field_paragraph_title', 'field_project_hearing_2', 'field_project_hearing_3') }} + {% endif %} + {% if (paragraph.field_type.value == 'two_projects') %} + {{ content|without('field_paragraph_title', 'field_static_pages', 'field_project_hearing_3') }} + {% endif %} + {% if (paragraph.field_type.value == 'three_projects') %} + {{ content|without('field_paragraph_title', 'field_static_pages') }} + {% endif %} + {% endblock %} + {% endblock paragraph %} +
diff --git a/web/themes/custom/hoeringsportal/templates/paragraph/paragraph.html.twig b/web/themes/custom/hoeringsportal/templates/paragraph/paragraph.html.twig index e901bc05..1f460ec1 100644 --- a/web/themes/custom/hoeringsportal/templates/paragraph/paragraph.html.twig +++ b/web/themes/custom/hoeringsportal/templates/paragraph/paragraph.html.twig @@ -38,15 +38,17 @@ * @ingroup themeable */ #} -
-
- {% block paragraph %} - {% if content.field_paragraph_title['#items'] is not empty %} -

{{ content.field_paragraph_title }}

- {% endif %} - {% block content %} - {{ content|without('field_paragraph_title') }} - {% endblock %} - {% endblock paragraph %} +
+
+
+ {% block paragraph %} + {% if content.field_paragraph_title['#items'] is not empty %} +

{{ content.field_paragraph_title }}

+ {% endif %} + {% block content %} + {{ content|without('field_paragraph_title') }} + {% endblock %} + {% endblock paragraph %} +