diff --git a/CHANGELOG.md b/CHANGELOG.md index 5d59d9afa..0cec4f429 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,10 @@ Versioning](https://semver.org/spec/v2.0.0.html). * Fix permission bug for activities (7217) * Update fixture +* [PR-649](https://github.com/itk-dev/deltag.aarhus.dk/pull/649) + * Fix deprecation in hoeringsportal_deskpro + * Fix display bug in dialogue file_resup module + ## [4.16.4] - 2026-04-17 * [PR-645](https://github.com/itk-dev/deltag.aarhus.dk/pull/645) diff --git a/composer.json b/composer.json index a74117c0b..d78b9cfda 100755 --- a/composer.json +++ b/composer.json @@ -79,6 +79,7 @@ "itk-dev/azure-ad-delta-sync-drupal": "^2.0", "itk-dev/composer-virtualenv": "^1.0", "itk-dev/itk_azure_video": "^2.0", + "itk-dev/itk_dropzonejs_image_widget": "^1.0", "itk-dev/itk_pretix": "^1.5", "itk-dev/itk_siteimprove": "^1.2", "itk-dev/itk_video": "^1.0", diff --git a/composer.lock b/composer.lock index 0c88b0fbd..f425bf0ca 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "6a86efa39839dd403cecedbf8c7e8122", + "content-hash": "91f00350f4eb49c889830350025ca9f4", "packages": [ { "name": "asm89/stack-cors", @@ -67,7 +67,7 @@ "version": "4.0.0", "source": { "type": "git", - "url": "https://github.com/jquery/jquery-dist.git", + "url": "git@github.com:jquery/jquery-dist.git", "reference": "cfd8e3a885dca7b406791c1eed472af9dd717e8e" }, "dist": { @@ -7227,6 +7227,35 @@ }, "time": "2025-07-04T10:49:56+00:00" }, + { + "name": "itk-dev/itk_dropzonejs_image_widget", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/itk-dev/itk_dropzonejs_image_widget.git", + "reference": "ebcd8c59fe4cf272ae28b2266b2d594a4e3fa8fd" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/itk-dev/itk_dropzonejs_image_widget/zipball/ebcd8c59fe4cf272ae28b2266b2d594a4e3fa8fd", + "reference": "ebcd8c59fe4cf272ae28b2266b2d594a4e3fa8fd", + "shasum": "" + }, + "type": "drupal-module", + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Module that provides an dropzone widget for drupal image fields", + "keywords": [ + "drupal" + ], + "support": { + "issues": "https://github.com/itk-dev/itk_dropzonejs_image_widget/issues", + "source": "https://github.com/itk-dev/itk_dropzonejs_image_widget/tree/1.0.0" + }, + "time": "2026-04-22T11:11:58+00:00" + }, { "name": "itk-dev/itk_pretix", "version": "1.5.0", diff --git a/config/sync/core.entity_form_display.node.dialogue_proposal.default.yml b/config/sync/core.entity_form_display.node.dialogue_proposal.default.yml index de2ad4bc5..fd7d69625 100644 --- a/config/sync/core.entity_form_display.node.dialogue_proposal.default.yml +++ b/config/sync/core.entity_form_display.node.dialogue_proposal.default.yml @@ -17,7 +17,7 @@ dependencies: - node.type.dialogue_proposal module: - hoeringsportal_data - - svg_image + - itk_dropzonejs_image_widget id: node.dialogue_proposal.default targetEntityType: node bundle: dialogue_proposal @@ -60,12 +60,13 @@ content: placeholder: '' third_party_settings: { } field_image_upload: - type: image_image + type: itk_dropzonejs_image_widget weight: 5 region: content settings: - progress_indicator: throbber preview_image_style: thumbnail + dropzone_description: 'Drag and drop an image here or click to upload' + progress_indicator: throbber third_party_settings: { } field_location: type: hoeringsportal_data_map_default diff --git a/config/sync/core.extension.yml b/config/sync/core.extension.yml index 380240aba..9fbc3cdce 100644 --- a/config/sync/core.extension.yml +++ b/config/sync/core.extension.yml @@ -41,7 +41,6 @@ module: field_group: 0 field_ui: 0 file: 0 - file_resup: 0 filter: 0 flag: 0 hoeringsportal_activity: 0 @@ -70,6 +69,7 @@ module: inline_form_errors: 0 itk_admin: 0 itk_admin_links: 0 + itk_dropzonejs_image_widget: 0 itk_media_entity: 0 itk_pretix: 0 itk_siteimprove: 0 diff --git a/config/sync/field.field.node.dialogue_proposal.field_image_upload.yml b/config/sync/field.field.node.dialogue_proposal.field_image_upload.yml index a14e5504e..86f1c8a8f 100644 --- a/config/sync/field.field.node.dialogue_proposal.field_image_upload.yml +++ b/config/sync/field.field.node.dialogue_proposal.field_image_upload.yml @@ -6,13 +6,7 @@ dependencies: - field.storage.node.field_image_upload - node.type.dialogue_proposal module: - - file_resup - image -third_party_settings: - file_resup: - enabled: true - max_upload_size: '10 MB' - auto_upload: true id: node.dialogue_proposal.field_image_upload field_name: field_image_upload entity_type: node diff --git a/web/modules/custom/hoeringsportal_deskpro/src/Form/HearingTicketAddForm.php b/web/modules/custom/hoeringsportal_deskpro/src/Form/HearingTicketAddForm.php index 954794934..917b17ad5 100644 --- a/web/modules/custom/hoeringsportal_deskpro/src/Form/HearingTicketAddForm.php +++ b/web/modules/custom/hoeringsportal_deskpro/src/Form/HearingTicketAddForm.php @@ -62,8 +62,8 @@ public function buildForm(array $form, FormStateInterface $form_state) { $this->initialize(); $file_validators = [ - 'file_validate_size' => [10490000], - 'file_validate_extensions' => ['jpg jpeg gif png txt doc docx xls xlsx pdf ppt pptx pps odt ods odp'], + 'FileSizeLimit' => ['fileLimit' => 10490000], + 'FileExtension' => ['extensions' => 'jpg jpeg gif png txt doc docx xls xlsx pdf ppt pptx pps odt ods odp'], ]; $form['hearing_intro_text'] = [ @@ -240,7 +240,7 @@ public function validateForm(array &$form, FormStateInterface $form_state) { $organization = trim($form_state->getValue('organization')); $representations = $this->config->getRepresentations(); - if ($representations[$representation]['require_organization'] && empty($organization)) { + if (($representations[$representation]['require_organization'] ?? FALSE) && empty($organization)) { // @todo Customer has to decide if we need an organization name. // $form_state->setErrorByName( // 'organization',