Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
109 commits
Select commit Hold shift + click to select a range
dd2a971
os2forms_fordelingskomponent
rimi-itk Nov 10, 2025
9c6d969
Added GitHub Action workflows
rimi-itk Nov 12, 2025
8459288
Set up code analysis
rimi-itk Nov 12, 2025
21b2ca1
Updated example forms
rimi-itk Nov 13, 2025
44faf4f
Made code analysis work
rimi-itk Nov 13, 2025
e826f03
Cleaned up
rimi-itk Jan 14, 2026
9ee3b7a
Added some tests
rimi-itk Jan 20, 2026
384cb84
Cleaned up and improved XML helper
rimi-itk Feb 6, 2026
08493c1
Cleaned up
rimi-itk Feb 6, 2026
8ccec62
Added preview stuff
rimi-itk Feb 9, 2026
b853f94
More stuff
rimi-itk Feb 10, 2026
fbba31e
Fixed composer stuff
rimi-itk Feb 10, 2026
4ff8636
Cleaned up
rimi-itk Feb 10, 2026
d3376a8
Updated handler
rimi-itk Feb 17, 2026
dd089cb
Test and refactoring
rimi-itk Feb 18, 2026
d4af067
Another commit
rimi-itk Feb 19, 2026
818b66b
Yet another commit
rimi-itk Feb 20, 2026
d7aef81
Cleaned up
rimi-itk Feb 20, 2026
8238be4
Code analysis
rimi-itk Feb 21, 2026
08be1fc
Cleaned up
rimi-itk Feb 21, 2026
2fa532b
Refactored preview
rimi-itk Feb 21, 2026
2990635
Updated route access checks
rimi-itk Feb 23, 2026
cbac551
Updated stuff
rimi-itk Feb 23, 2026
d05568c
More stuff
rimi-itk Feb 25, 2026
5440280
Cleaned up and improved
rimi-itk Feb 25, 2026
04a1c56
Cleaned up
rimi-itk Mar 2, 2026
832b1c2
FordelingskvitteringModtag
rimi-itk Mar 2, 2026
962604b
Merge branch 'feature/FordelingskvitteringModtag' into os2forms_forde…
rimi-itk Mar 2, 2026
aa8db20
Cleaned up
rimi-itk Mar 2, 2026
04edde2
Fixed route name
rimi-itk Mar 6, 2026
da92bc6
Cleaned up
rimi-itk Mar 9, 2026
86007c0
Handled “Dokumenter”
rimi-itk Mar 10, 2026
7d93a27
Added trigger files
rimi-itk Apr 20, 2026
1349021
Files settings
rimi-itk Apr 20, 2026
ea82b03
Recipient ID
rimi-itk Apr 21, 2026
30ff647
More stuff
rimi-itk Apr 23, 2026
8bec6a5
Added some XML examples
rimi-itk Apr 24, 2026
ca36627
Updated installation instructions
rimi-itk Apr 24, 2026
22b0480
Added SP241 example
rimi-itk Apr 24, 2026
c9bf867
Cleaned up preview
rimi-itk Apr 24, 2026
0a29c00
Updated stuff
rimi-itk Apr 24, 2026
51332b7
UTF-8
rimi-itk Apr 24, 2026
842912a
Cleaned up
rimi-itk Apr 24, 2026
68fa216
Renamed and stuff
rimi-itk Apr 27, 2026
4df218d
Refactored code and handled file upload before sending distribution o…
rimi-itk Apr 27, 2026
792bef5
Updated example
rimi-itk Apr 27, 2026
6065953
Misc
rimi-itk Apr 28, 2026
a4cbf64
Allow prepopulating example webform
rimi-itk Apr 28, 2026
a0917d0
Added debug module
rimi-itk Apr 28, 2026
1d54a80
Cleaned up debug module
rimi-itk Apr 28, 2026
899d60e
Misc
rimi-itk Apr 30, 2026
4919cc5
Cleaned up
rimi-itk Apr 30, 2026
2369386
Validated XML before starting queue job show
rimi-itk Apr 30, 2026
a920355
Cleaned up
rimi-itk Apr 30, 2026
3bde914
Added and used permission
rimi-itk May 1, 2026
7b4f3a1
Cleaned up
rimi-itk May 1, 2026
34d9913
Used serializer for XML stuff
rimi-itk May 1, 2026
a130baa
Updated example webform
rimi-itk May 1, 2026
88fe36c
Cleaned up
rimi-itk May 4, 2026
7074bb6
Updated examples
rimi-itk May 6, 2026
5c4ff9f
Updated SQL queries
rimi-itk May 6, 2026
506657f
Stopped generating random file names …
rimi-itk May 6, 2026
27a6e5e
Added SQL query
rimi-itk May 6, 2026
8bac7fd
Moved “Brugervendt nøgle” setting
rimi-itk May 12, 2026
3d59004
Added translations. Updated documentation. Updated example webforms.
rimi-itk May 12, 2026
11f493b
Cleaned up
rimi-itk May 13, 2026
bc14301
Updated example webforms
rimi-itk May 13, 2026
3caab49
Fixed typo in translation
rimi-itk May 13, 2026
a6be51c
Updated itk-dev/serviceplatformen
rimi-itk May 13, 2026
6ed2784
Cleeaned up example webforms
rimi-itk May 13, 2026
4a7482c
Update modules/os2forms_fordelingskomponent_examples/os2forms_fordeli…
rimi-itk May 18, 2026
883f100
Update src/Repository/AnvenderForsendelseRepository.php
rimi-itk May 18, 2026
b67ee7f
Update drush.services.yml
rimi-itk May 18, 2026
dcb085b
Added default queue
rimi-itk May 18, 2026
e6df9b4
Made Drush command actually do something
rimi-itk May 18, 2026
d8ca4ce
Cleaned up
rimi-itk May 18, 2026
ca8c241
Added check for PDF attachment
rimi-itk May 18, 2026
9ffa14d
Updated example webforms
rimi-itk May 26, 2026
754df9f
Cleaned up
rimi-itk May 29, 2026
9a0bcb5
Prettyprinted XML
rimi-itk Jun 1, 2026
b4caf33
Improved preview
rimi-itk Jun 1, 2026
8afb4c2
Added XML validation command
rimi-itk Jun 2, 2026
e808515
Cleaned up handling of files "Recipient authority"
rimi-itk Jun 2, 2026
c1a34a3
Updated project template
rimi-itk Jun 2, 2026
67ea31b
Made sure that file groups are always set
rimi-itk Jun 2, 2026
14be9b9
Generated and validated trigger file before file (and trigger file) u…
rimi-itk Jun 2, 2026
b6b7c3e
Fixed use statement
rimi-itk Jun 3, 2026
952804f
Updated example
rimi-itk Jun 3, 2026
8584f65
Improvements
rimi-itk Jun 8, 2026
3c137df
Added preview URLs and stuff to validate XML command output
rimi-itk Jun 9, 2026
f3aadff
Updated composer stuff
rimi-itk Jun 3, 2026
69aa181
Updated action tasks
rimi-itk Jun 9, 2026
c3fe1b1
Cleaned up
rimi-itk Jun 9, 2026
6e1b887
Updated actions
rimi-itk Jun 9, 2026
31db35c
Merge pull request #4 from itk-dev/feature/composer-install
rimi-itk Jun 9, 2026
e533692
Fixed double base64 encoding
rimi-itk Jun 9, 2026
cbae908
Updated actions
rimi-itk Jun 9, 2026
e728a4b
Cleaned up
rimi-itk Jun 9, 2026
5d74b29
Used composer token in actions
rimi-itk Jun 9, 2026
e835d20
Merge pull request #5 from itk-dev/feature/actions
rimi-itk Jun 9, 2026
625a5ba
Used COMPOSER_AUTH in actions
rimi-itk Jun 9, 2026
ea14e1c
Cleaned up
rimi-itk Jun 9, 2026
eb7a1da
Updated composer hacks
rimi-itk Jun 9, 2026
f15bcbf
Updated os2forms/os2forms
rimi-itk Jun 9, 2026
870dbb1
Used transaction ID for making SFTP filenames unique
rimi-itk Jun 10, 2026
bef583e
Updated Yaml rendering
rimi-itk Jun 11, 2026
c852c7f
Updated example form
rimi-itk Jun 11, 2026
5ca3fa9
Added os2forms_fordelingskomponent_xml_encode Twig filter
rimi-itk Jun 11, 2026
456c628
Added states
rimi-itk Jun 11, 2026
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
27 changes: 27 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# This file is copied from config/drupal-module/.editorconfig in https://github.com/itk-dev/devops_itkdev-docker.
# Feel free to edit the file, but consider making a pull request if you find a general issue with the file.

# EditorConfig is awesome: https://editorconfig.org

# top-most EditorConfig file
root = true

[*]
charset = utf-8
end_of_line = LF
indent_size = 4
indent_style = space
insert_final_newline = true
trim_trailing_whitespace = true

[*.{js,css,scss}]
indent_size = 2

[*.{yml,yaml}]
indent_size = 2

[config/sync/**/*.{yml,yaml}]
indent_size = 2

[*.{php,install,module,theme}]
indent_size = 2
2 changes: 2 additions & 0 deletions .env
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
COMPOSE_PROJECT_NAME=os2forms_fordelingskomponent
ITKDEV_TEMPLATE=drupal-module
27 changes: 27 additions & 0 deletions .github/workflows/changelog.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Do not edit this file! Make a pull request on changing
# github/workflows/changelog.yaml in
# https://github.com/itk-dev/devops_itkdev-docker if need be.

### ### Changelog
###
### Checks that changelog has been updated

name: Changelog

on:
pull_request:

jobs:
changelog:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v6
with:
fetch-depth: 2

- name: Git fetch
run: git fetch

- name: Check that changelog has been updated.
run: git diff --exit-code origin/${{ github.base_ref }} -- CHANGELOG.md && exit 1 || exit 0
92 changes: 92 additions & 0 deletions .github/workflows/composer.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
# Do not edit this file! Make a pull request on changing
# github/workflows/composer.yaml in
# https://github.com/itk-dev/devops_itkdev-docker if need be.

### ### Composer
###
### Validates composer.json and checks that it's normalized.
###
### #### Assumptions
###
### 1. A docker compose service named `phpfpm` can be run and `composer` can be
### run inside the `phpfpm` service.
### 2. [ergebnis/composer-normalize](https://github.com/ergebnis/composer-normalize)
### is a dev requirement in `composer.json`:
###
### ``` shell
### docker compose run --rm phpfpm composer require --dev ergebnis/composer-normalize
### ```
###
### Normalize `composer.json` by running
###
### ``` shell
### docker compose run --rm phpfpm composer normalize
### ```

name: Composer

env:
COMPOSE_USER: runner
# https://getcomposer.org/doc/03-cli.md#composer-auth
COMPOSER_AUTH: '{"github-oauth": {"github.com": "${{ secrets.GITHUB_TOKEN }}"} }'

on:
pull_request:
paths: &paths
- "composer.json"
- "compose.yaml"
push:
branches:
- main
- develop
paths: *paths

jobs:
composer-validate:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6

- name: Create docker network
run: |
docker network create frontend

- run: |
docker compose run --rm phpfpm composer validate --strict

composer-normalized:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6

- name: Create docker network
run: |
docker network create frontend

- &composer_install
name: Composer install
run: |
# Create a temporary composer file to install https://github.com/mglaman/composer-drupal-lenient before the real install needs it.
docker compose run --rm --env COMPOSER=composer.lenient.json phpfpm composer init --no-interaction
docker compose run --rm --env COMPOSER=composer.lenient.json phpfpm composer config --no-plugins allow-plugins.mglaman/composer-drupal-lenient true
docker compose run --rm --env COMPOSER_AUTH --env COMPOSER=composer.lenient.json phpfpm composer require mglaman/composer-drupal-lenient:^1
docker compose run --rm --env COMPOSER=composer.lenient.json phpfpm rm composer.lenient.*
# The real install.
docker compose run --rm --env COMPOSER_AUTH phpfpm composer install

- run: |
docker compose run --rm phpfpm composer normalize --dry-run

composer-audit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6

- name: Create docker network
run: |
docker network create frontend

- *composer_install

- run: |
docker compose run --rm phpfpm composer audit
45 changes: 45 additions & 0 deletions .github/workflows/markdown.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# Do not edit this file! Make a pull request on changing
# github/workflows/markdown.yaml in
# https://github.com/itk-dev/devops_itkdev-docker if need be.

### ### Markdown
###
### Lints Markdown files (`**/*.md`) in the project.
###
### [markdownlint-cli configuration
### files](https://github.com/igorshubovych/markdownlint-cli?tab=readme-ov-file#configuration),
### `.markdownlint.jsonc` and `.markdownlintignore`, control what is actually
### linted and how.
###
### #### Assumptions
###
### 1. A docker compose service named `markdownlint` for running `markdownlint`
### (from
### [markdownlint-cli](https://github.com/igorshubovych/markdownlint-cli))
### exists.

name: Markdown

on:
pull_request:
paths: &paths
- "**/*.md"
push:
branches:
- main
- develop
paths: *paths

jobs:
markdown-lint:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v6

- name: Create docker network
run: |
docker network create frontend

- run: |
docker compose run --rm markdownlint markdownlint '**/*.md'
76 changes: 76 additions & 0 deletions .github/workflows/php.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
# Do not edit this file! Make a pull request on changing
# github/workflows/drupal-module/php.yaml in
# https://github.com/itk-dev/devops_itkdev-docker if need be.

### ### Drupal module PHP
###
### Checks that PHP code adheres to the [Drupal coding
### standards](https://www.drupal.org/docs/develop/standards).
###
### #### Assumptions
###
### 1. A docker compose service named `phpfpm` can be run and `composer` can be
### run inside the `phpfpm` service.
### 2. [drupal/coder](https://www.drupal.org/project/coder) is a dev requirement
### in `composer.json`:
###
### ``` shell
### docker compose run --rm phpfpm composer require --dev drupal/coder
### ```
###
### Clean up and check code by running
###
### ``` shell
### docker compose run --rm phpfpm vendor/bin/phpcbf
### docker compose run --rm phpfpm vendor/bin/phpcs
### ```
###
### > [!NOTE]
### > The template adds `.phpcs.xml.dist` as [a configuration file for
### > PHP_CodeSniffer](https://github.com/squizlabs/PHP_CodeSniffer/wiki/Advanced-Usage#using-a-default-configuration-file)
### > and this makes it possible to override the actual configuration used in a
### > project by adding a more important configuration file, e.g. `.phpcs.xml`.

name: PHP

env:
COMPOSE_USER: runner
# https://getcomposer.org/doc/03-cli.md#composer-auth
COMPOSER_AUTH: '{"github-oauth": {"github.com": "${{ secrets.GITHUB_TOKEN }}"} }'

on:
pull_request:
paths: &paths
- "**/*.php"
- "composer.json"
- "compose.yaml"
push:
branches:
- main
- develop
paths: *paths

jobs:
coding-standards:
name: PHP - Check Coding Standards
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6

- name: Create docker network
run: |
docker network create frontend

- &composer_install
name: Composer install
run: |
# Create a temporary composer file to install https://github.com/mglaman/composer-drupal-lenient before the real install needs it.
docker compose run --rm --env COMPOSER=composer.lenient.json phpfpm composer init --no-interaction
docker compose run --rm --env COMPOSER=composer.lenient.json phpfpm composer config --no-plugins allow-plugins.mglaman/composer-drupal-lenient true
docker compose run --rm --env COMPOSER_AUTH --env COMPOSER=composer.lenient.json phpfpm composer require mglaman/composer-drupal-lenient:^1
docker compose run --rm --env COMPOSER=composer.lenient.json phpfpm rm composer.lenient.*
# The real install.
docker compose run --rm --env COMPOSER_AUTH phpfpm composer install

- run: |
docker compose run --rm phpfpm vendor/bin/phpcs
32 changes: 32 additions & 0 deletions .github/workflows/project.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: Project

env:
COMPOSE_USER: root
# https://getcomposer.org/doc/03-cli.md#composer-auth
COMPOSER_AUTH: '{"github-oauth": {"github.com": "${{ secrets.GITHUB_TOKEN }}"} }'

on:
pull_request:
push:
branches:
- main
- develop

jobs:
code-analysis:
name: PHP - Code analysis
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5

- run: |
./scripts/code-analysis

rector:
name: PHP - Rector
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5

- run: |
./scripts/rector
66 changes: 66 additions & 0 deletions .github/workflows/twig.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
# Do not edit this file! Make a pull request on changing
# github/workflows/twig.yaml in
# https://github.com/itk-dev/devops_itkdev-docker if need be.

### ### Twig
###
### Validates Twig files
###
### #### Assumptions
###
### 1. A docker compose service named `phpfpm` can be run and `composer` can be
### run inside the `phpfpm` service.
### 2. [vincentlanglet/twig-cs-fixer](https://github.com/VincentLanglet/Twig-CS-Fixer)
### is a dev requirement in `composer.json`:
###
### ``` shell
### docker compose run --rm phpfpm composer require --dev vincentlanglet/twig-cs-fixer
### ```
###
### 3. A [Configuration
### file](https://github.com/VincentLanglet/Twig-CS-Fixer/blob/main/docs/configuration.md#configuration-file)
### in the root of the project defines which files to check and rules to use.

name: Twig

env:
COMPOSE_USER: runner
# https://getcomposer.org/doc/03-cli.md#composer-auth
COMPOSER_AUTH: '{"github-oauth": {"github.com": "${{ secrets.GITHUB_TOKEN }}"} }'

on:
pull_request:
paths: &paths
- "**/*.twig"
- "composer.json"
- "compose.yaml"
push:
branches:
- main
- develop
paths: *paths

jobs:
twig-lint:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v6

- name: Create docker network
run: |
docker network create frontend

- &composer_install
name: Composer install
run: |
# Create a temporary composer file to install https://github.com/mglaman/composer-drupal-lenient before the real install needs it.
docker compose run --rm --env COMPOSER=composer.lenient.json phpfpm composer init --no-interaction
docker compose run --rm --env COMPOSER=composer.lenient.json phpfpm composer config --no-plugins allow-plugins.mglaman/composer-drupal-lenient true
docker compose run --rm --env COMPOSER_AUTH --env COMPOSER=composer.lenient.json phpfpm composer require mglaman/composer-drupal-lenient:^1
docker compose run --rm --env COMPOSER=composer.lenient.json phpfpm rm composer.lenient.*
# The real install.
docker compose run --rm --env COMPOSER_AUTH phpfpm composer install

- run: |
docker compose run --rm phpfpm vendor/bin/twig-cs-fixer lint
Loading
Loading