Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,18 @@ Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

## [4.16.5] - 2026-04-21

* [PR-648](https://github.com/itk-dev/deltag.aarhus.dk/pull/648)
* Update video display (7104)
* Fix timeline issue (7196 - 7197)
* 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)
Expand Down
1 change: 1 addition & 0 deletions composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down
45 changes: 37 additions & 8 deletions composer.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down Expand Up @@ -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
Expand Down
2 changes: 1 addition & 1 deletion config/sync/core.extension.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,6 @@ module:
field_group: 0
field_ui: 0
file: 0
file_resup: 0
filter: 0
flag: 0
hoeringsportal_activity: 0
Expand Down Expand Up @@ -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
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
10 changes: 6 additions & 4 deletions config/sync/openid_connect.client.generic.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,13 @@ settings:
client_id: client-id
client_secret: client-secret
iss_allowed_domains: ''
prompt: { }
issuer_url: ''
authorization_endpoint: 'http://idp-employee.deltag.local.itkdev.dk/connect/authorize'
token_endpoint: 'http://idp-employee.deltag.local.itkdev.dk/connect/token'
userinfo_endpoint: ''
end_session_endpoint: ''
authorization_endpoint: 'http://idp-employee.deltag.local.itkdev.dk/oauth2/authorize'
token_endpoint: 'http://idp-employee.deltag.local.itkdev.dk/oauth2/token'
userinfo_endpoint: 'http://idp-employee.deltag.local.itkdev.dk/oauth2/userinfo'
end_session_endpoint: 'http://idp-employee.deltag.local.itkdev.dk/oauth2/end_session'
scopes:
- openid
- email
- profile
9 changes: 9 additions & 0 deletions config/sync/user.role.public_meeting_editor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ dependencies:
- filter.format.email_html
- media.type.document
- media.type.image
- node.type.course
- node.type.public_meeting
module:
- entity_browser
Expand All @@ -33,26 +34,34 @@ permissions:
- 'access media overview'
- 'access toolbar'
- 'clone public_meeting content'
- 'create course content'
- 'create document media'
- 'create image media'
- 'create media'
- 'create public_meeting content'
- 'delete any course content'
- 'delete any public_meeting content'
- 'delete course revisions'
- 'delete own course content'
- 'delete own document media'
- 'delete own files'
- 'delete own image media'
- 'delete own public_meeting content'
- 'delete public_meeting revisions'
- 'edit any course content'
- 'edit any public_meeting content'
- 'edit own course content'
- 'edit own document media'
- 'edit own image media'
- 'edit own public_meeting content'
- 'publish any node type public_meeting'
- 'revert course revisions'
- 'revert public_meeting revisions'
- 'unpublish any node type public_meeting'
- 'update media'
- 'use text format email_html'
- 'view any unpublished public_meeting content'
- 'view course revisions'
- 'view own unpublished media'
- 'view public_meeting revisions'
- 'view the administration theme'
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,9 @@
use Drupal\hoeringsportal_activity\Helper\ActivityHelper;
use Drupal\node\NodeInterface;

/**
* Provides hooks for activity.
*/
readonly class ActivityHooks {

public function __construct(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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'] = [
Expand Down Expand Up @@ -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',
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -238,6 +238,7 @@ private function createHearingReplies(NodeInterface $node, int $numberOfReplies)
for ($i = 0; $i < $numberOfReplies; $i++) {
$data = [
'id' => 1000 * (int) $node->id() + $i,
'ref' => sprintf('HS%s-%d', $node->id(), $i + 1),
'date_created' => (new \DateTimeImmutable('2001-01-01'))->modify(sprintf('+%d days', $i))->format(\DateTimeImmutable::ATOM),
'subject' => sprintf('Reply %d', $i + 1),
'fields' => [
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ public function preprocessNode(array &$variables): void {
}

$variables['timeline_items'] = [];
$now = new \DateTimeImmutable();
$now = new DrupalDateTime();

$nodes = $this->getTimelineNodes($variables);

Expand Down Expand Up @@ -220,13 +220,13 @@ private function getTimelineNotes(array $variables) : ?array {
*
* @param \Drupal\node\NodeInterface $node
* The node entity to add.
* @param \DateTimeImmutable $now
* @param \Drupal\Core\Datetime\DrupalDateTime $now
* The current date and time.
*
* @return array
* The timeline item array.
*/
private function addNodeAsTimelineItem(NodeInterface $node, \DateTimeImmutable $now): array {
private function addNodeAsTimelineItem(NodeInterface $node, DrupalDateTime $now): array {
try {
$date = $this->determineDate($node);
if (!$date) {
Expand Down Expand Up @@ -259,13 +259,13 @@ private function addNodeAsTimelineItem(NodeInterface $node, \DateTimeImmutable $
*
* @param \Drupal\paragraphs\ParagraphInterface $paragraph
* The paragraph entity to add.
* @param \DateTimeImmutable $now
* @param \Drupal\Core\Datetime\DrupalDateTime $now
* The current date and time.
*
* @return array
* The timeline item array.
*/
private function addNoteAsTimelineItem(ParagraphInterface $paragraph, \DateTimeImmutable $now): array {
private function addNoteAsTimelineItem(ParagraphInterface $paragraph, DrupalDateTime $now): array {
try {
$date = $paragraph->field_date->date;
if (!$date) {
Expand Down Expand Up @@ -296,13 +296,13 @@ private function addNoteAsTimelineItem(ParagraphInterface $paragraph, \DateTimeI
/**
* Add "today" timeline item.
*
* @param \DateTimeImmutable $now
* @param \Drupal\Core\Datetime\DrupalDateTime $now
* The current date and time.
*
* @return array
* The timeline item array.
*/
private function addNowAsTimelineItem(\DateTimeImmutable $now): array {
private function addNowAsTimelineItem(DrupalDateTime $now): array {
return [
'id' => 'today',
'date' => $now->format('Y-m-d'),
Expand Down Expand Up @@ -380,14 +380,15 @@ private function determineImage(NodeInterface $node): ?File {
* The entity to determine status for.
* @param \Drupal\Core\Datetime\DrupalDateTime $date
* The item date.
* @param \DateTimeImmutable $now
* @param \Drupal\Core\Datetime\DrupalDateTime $now
* The current date.
*
* @return string
* The status string (upcoming, completed, or note).
*/
private function determineStatus(EntityInterface $entity, DrupalDateTime $date, \DateTimeImmutable $now): string {
private function determineStatus(EntityInterface $entity, DrupalDateTime $date, DrupalDateTime $now): string {
return match (TRUE) {
$date->format('Y-m-d') === $now->format('Y-m-d') => 'current',
$date > $now => 'upcoming',
$entity->getEntityTypeId() === 'node' => 'completed',
$entity->getEntityTypeId() === 'paragraph' => 'note',
Expand Down
8 changes: 4 additions & 4 deletions web/sites/development.services.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,12 @@ services:
class: Drupal\Core\Cache\NullBackendFactory
logger.channel.config_schema:
parent: logger.channel_base
arguments: [ 'config_schema' ]
arguments: ["config_schema"]
config.schema_checker:
class: Drupal\Core\Config\Development\LenientConfigSchemaChecker
arguments:
- '@config.typed'
- '@messenger'
- '@logger.channel.config_schema'
- "@config.typed"
- "@messenger"
- "@logger.channel.config_schema"
tags:
- { name: event_subscriber }
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,13 @@
0: {
type: 'text',
label: 'Decision'|t,
value: node.field_decision.value
value: node.field_decision.value,
},
1: {
type: 'text',
label: 'Decision date'|t,
value: node.field_decision_date.date|date('U')|format_date('hoeringsportal_date_long')
}
value: node.field_decision_date.date|date('U')|format_date('hoeringsportal_date_long'),
},
},
category: 'Decision'|t,
}) }}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@
<div class="row">
<div class="timeline">
{{ include(directory ~ '/templates/components/timeline.html.twig', {
project_status: node.field_project_status.value
project_status: node.field_project_status.value,
}) }}
</div>
</div>
Expand Down
Loading
Loading