Skip to content
Draft
Show file tree
Hide file tree
Changes from 82 commits
Commits
Show all changes
475 commits
Select commit Hold shift + click to select a range
6fa293a
Merge pull request #1124 from McNamara84/fix/elmogem-platforms-visibi…
Daetha Sep 3, 2026
2f8ea62
link in the help-section has been updated
Ali-GeoFZ Sep 4, 2026
159b82e
removing the old method for fetching labs
Ali-GeoFZ Sep 4, 2026
572f3b6
load MSL laboratories from ERNIE cache
Ali-GeoFZ Sep 4, 2026
59c0fd4
Obsolete line removed
Ali-GeoFZ Sep 4, 2026
d34c982
load and save MSL laboratories via API
Ali-GeoFZ Sep 4, 2026
3be1652
upload-function has been adjusted
Ali-GeoFZ Sep 4, 2026
35e55c2
removing old labs json file and MOCK_LABS adjusted
Ali-GeoFZ Sep 4, 2026
cc67323
fixed jest-tests
Ali-GeoFZ Sep 4, 2026
7b1e74b
added comment for stage.copy configuration
Sep 4, 2026
cfb4313
Merge pull request #1133 from McNamara84/feature/chore/named-volumes
Daetha Sep 4, 2026
1c18358
update laboratory API mocks
Ali-GeoFZ Sep 7, 2026
7a3dc2e
Merge remote-tracking branch 'origin/dev' into feature/msl-laboratori…
Ali-GeoFZ Sep 7, 2026
cb6180c
added ernie variabels to the ci-file
Ali-GeoFZ Sep 7, 2026
c7a1883
Revert "added ernie variabels to the ci-file"
Ali-GeoFZ Sep 7, 2026
83138ef
Update playwright.yml
Ali-GeoFZ Sep 7, 2026
7f28aaa
Update playwright.yml
Ali-GeoFZ Sep 7, 2026
5315aef
Update settings.elmo.php
Ali-GeoFZ Sep 7, 2026
a174ebf
Revert "Update playwright.yml"
Ali-GeoFZ Sep 7, 2026
2a31243
Revert "Update playwright.yml"
Ali-GeoFZ Sep 7, 2026
bc45bd0
Revert "Update settings.elmo.php"
Ali-GeoFZ Sep 7, 2026
f40727b
Update playwright.yml
Ali-GeoFZ Sep 7, 2026
0ac91d9
Update playwright.yml
Ali-GeoFZ Sep 7, 2026
9bf9d8d
test has been skiped
Ali-GeoFZ Sep 7, 2026
c357699
configure ERNIE for Playwright tests
Ali-GeoFZ Sep 7, 2026
c0a60bc
Revert "test has been skiped"
Ali-GeoFZ Sep 7, 2026
85b6c62
Update extended-data-save-and-download.spec.ts
Ali-GeoFZ Sep 7, 2026
877719e
test: accept roleless institution contributors as Other
Ali-GeoFZ Sep 7, 2026
829067e
expose ERNIE secrets during settings creation
Ali-GeoFZ Sep 7, 2026
2acb705
Merge pull request #1207 from McNamara84/chore/update-playwright-ci
Ali-GeoFZ Sep 7, 2026
b28c294
Merge branch 'dev' into feature/msl-laboratories-ernie-api
Ali-GeoFZ Sep 8, 2026
d1d667d
refresh MSL laboratories cache and sync database
Ali-GeoFZ Sep 8, 2026
0d85f73
Revert "refresh MSL laboratories cache and sync database"
Ali-GeoFZ Sep 8, 2026
c2d4a15
removing one of the two healthchecks
Ali-GeoFZ Sep 8, 2026
7b0bd6d
update the ernie-url in elmo
Ali-GeoFZ Sep 8, 2026
690813d
added MSL labs cache status logging
Ali-GeoFZ Sep 8, 2026
0a1cb58
Merge pull request #1193 from McNamara84/feature/msl-laboratories-ern…
Ali-GeoFZ Sep 8, 2026
0f8b051
Merge pull request #1208 from McNamara84/update-ernie-url
Ali-GeoFZ Sep 9, 2026
2af14cd
- A new section for thesauri has been added. - the Thesauri section …
Ali-GeoFZ Sep 9, 2026
c62fe5a
changelog was updated
Ali-GeoFZ Sep 9, 2026
b665078
Merge branch 'main' into chore/sync-main-to-dev
Sep 9, 2026
b506796
Merge pull request #1211 from McNamara84/chore/sync-main-to-dev
Daetha Sep 9, 2026
851a64e
Improve handling of help buttons in cloned rows
Ali-GeoFZ Sep 9, 2026
058625a
Merge remote-tracking branch 'origin/dev' into fix-showing-all-of-hel…
Ali-GeoFZ Sep 9, 2026
811b9c6
help-section zu title type has been expanded
Ali-GeoFZ Sep 9, 2026
e5611a8
renaming thsaurus file from thesaurusKeywords.html to thesaurus-keywo…
Ali-GeoFZ Sep 9, 2026
0402b3c
renaming file from resourceinformation-title.js to resourceInformatio…
Ali-GeoFZ Sep 9, 2026
68fc98b
file was renamed
Ali-GeoFZ Sep 9, 2026
466fb85
added a function to extend the DataCite part of the XML
Sep 9, 2026
bf149e3
ran the addition function in the send email workflow
Sep 9, 2026
f7e94f7
look up the datacite prefix inside the resource element
Sep 9, 2026
af1303a
save xml fixtures as globals
Sep 9, 2026
682f90e
added 2 more test cases with data for ICGEM Datacite Addition
Sep 9, 2026
ac3b693
added variables about ELMO-GEM version and XML sending to data servic…
Sep 9, 2026
afbceb9
added tests for safeguard mechanisms in applyElmoGemAdditionsToDataci…
Sep 9, 2026
28b4906
Fix inconsistent help button visibility in author forms
Ali-GeoFZ Sep 10, 2026
23d9a43
Show relation type definitions in help dialog
Ali-GeoFZ Sep 10, 2026
c15519b
Revert "Show relation type definitions in help dialog"
Ali-GeoFZ Sep 10, 2026
600aead
refactor: update parameter documentation for saveALL function to clar…
Sep 10, 2026
2dea4e4
isolated the wholefile generation process into a helper
Sep 10, 2026
c229d8d
refactor: enhance ICGEM submission handling and streamline file gener…
Sep 10, 2026
4f63cfe
created a test file for the 3 scenarios
Sep 10, 2026
97ac7a9
satisfy phpStan
Sep 10, 2026
d75ca93
improve logging
Sep 10, 2026
ea4d3d0
added payload output for the simulate path
Sep 10, 2026
f82f1b9
deduplicate classes definition
Sep 10, 2026
a9257bf
deduplicate contributor addition for elmo-gem
Sep 11, 2026
e2e9451
deduplicate keywords by uuid for additionof elmogem-specific keywords
Sep 11, 2026
3b48476
removed example file from git tracking
Sep 11, 2026
f10217c
relocated function applyElmoGemAdditionsToDataciteXml into send email…
Sep 11, 2026
a9b59d8
Merge pull request #1213 from McNamara84/fix-showing-all-of-help-buttons
Ali-GeoFZ Sep 11, 2026
faa6599
relocate generateEmailText into mail_helper
Sep 11, 2026
23662ff
adjust the tests
Sep 11, 2026
a36bae3
use the helper function in the main flow for send xml file
Sep 11, 2026
6cec87a
renamed PHP classes and tests to use PascalCase.php
Sep 11, 2026
a4a74ba
removed the version before rename
Sep 11, 2026
2a6d7ab
improved the flow in generateFile
Sep 14, 2026
37a0a7e
improve error logging for simulated email path
Sep 14, 2026
7409080
change to centralised settings instead of hardcoded ones
Sep 14, 2026
d6b0858
establish a communication contract: settings array has all the parame…
Sep 14, 2026
6d49eaf
remove mail warapper for ELMOGEM, render the email text based on context
Sep 14, 2026
dae5bd3
rewrite functions using shared objects: settings and generated, move …
Sep 14, 2026
406f602
renamed send_file_helper in snake_case for naming standards
Sep 14, 2026
2397e90
corrected the test class name
Sep 14, 2026
fd160de
removed unused class mocks in PHP unit test
Sep 14, 2026
f9fb1f9
relocated markDataCiteEnvelopeAsSubmitted because it belongs to the s…
Sep 14, 2026
d059cb7
documented the use of generator parameter in generateDatasetPayloadBy…
Sep 14, 2026
912edae
removed generator = xml from tests
Sep 14, 2026
3c9db9b
updated function reference in IssueRegression test
Sep 14, 2026
b1747ce
remove mock skipping in ICGEM Controller
Sep 14, 2026
61663de
simplify logging
Sep 14, 2026
7721ddc
add in-line comments
Sep 14, 2026
b2d3576
added comment about usage of confirmation dialog
Sep 15, 2026
7391b0f
change the button label reset to clear
Sep 15, 2026
f9d316d
updated changelog
Sep 15, 2026
1c1d5f2
Adjusted the button reset to clear
Sep 15, 2026
b473fb1
added a class to author affiliation and toggle its visbility in help.js
Sep 15, 2026
f2a1c67
added tests to check the of/onn help status across author persons and…
Sep 15, 2026
d35a2d9
added export statement and reapply mechanics after author switch
Sep 15, 2026
f3e9d95
added syncAffiliationHelpButtons
Sep 15, 2026
8ff14e0
added jest testing
Sep 15, 2026
807fa04
Merge pull request #1222 from McNamara84/feature/issue#1140
Daetha Sep 15, 2026
e2afe14
include help.js as a module
Sep 15, 2026
c2c8796
run sync on structural changes: add, move, change type
Sep 16, 2026
fcb4bc5
using visibilityOn/Off function for affiliation helper for screen rea…
Sep 16, 2026
53679b5
dispatcha new event that author.js can consume
Sep 16, 2026
a055d1f
added a playwright test case for deleting the first author
Sep 16, 2026
242e197
added a special function to sync the other help buttons
Sep 16, 2026
9a75d0d
improted the visibility functions to reuse them
Sep 16, 2026
45d335a
added a function to sync other field and toggle help icons based on p…
Sep 16, 2026
c27ed5a
restore visibility on the .css level
Sep 16, 2026
c44913e
target the help buttons with id
Sep 17, 2026
6d24277
adjusted tests to include help button ids in mockup
Sep 17, 2026
333c391
for each field set visibility based on help icon. being on and the in…
Sep 18, 2026
041ba0e
added a jest that covers the tricky moment with switching the type th…
Sep 18, 2026
339d062
added playwright test for the same feature
Sep 18, 2026
3768fd6
corrected the auto-addable keywords and contributors in applyElmoGemA…
Sep 18, 2026
0484b37
add model name to the title in the save workflow to close issue #1150
Sep 18, 2026
89fd418
covered the model title addition to the dataset title with tests
Sep 18, 2026
3467e89
improved error propagation in researcher confirmation flow
Sep 18, 2026
da5aba0
reuse $mail object instead of recreating
Sep 18, 2026
3af6fe7
refactored researcher confirmation email to send emails and log warnings
Sep 18, 2026
93a9a8c
enhance researcher confirmation email handling and add tests for inva…
Sep 18, 2026
219a74d
Refactor thesaurus keyword JS into helpers with a readiness contract.
Sep 10, 2026
e472bc4
renamed test to confirm naming convention
Sep 4, 2026
e7311e1
Sync ERNIE vocabularies into the database when the container starts.
Sep 10, 2026
9cf8cc2
Sync ERNIE vocabularies into the database when the container starts.
Sep 10, 2026
8ac8968
Move ELMO-GEM Playwright tests into flows/elmogem-specific.
Sep 10, 2026
212bd9f
Expand ELMO-GEM roundtrip coverage and turn keyword upload assertions…
Sep 10, 2026
f7af4de
improved color contrast in the tooltip for a better accessibility
Sep 10, 2026
eeae252
added ernie smoke tests to webkit in CI (ususally this is the fastest…
Sep 18, 2026
c38e5ca
added smoke test to generic config on local playwright
Sep 18, 2026
bec37bb
update CI settings from $showGcmdThesauri
Sep 18, 2026
f023b0f
implemented a full thorough examination of the thesaurus keywords
Sep 18, 2026
7d239ab
made sure the playwright has access to GitHub secrets: ERNIE_API_KEY
Sep 18, 2026
f6e5b56
added a check for if ERNIE_URLis undefined
Sep 18, 2026
723a93a
removed the actual coverage test from the jest test
Sep 18, 2026
da74247
added the metatest to the end of roundtrip. compares ids in html with…
Sep 18, 2026
cdb57d3
added helper function for the playwright
Sep 18, 2026
2d9525d
adjusted the helper function to enable cloning rows with incriment ids
Sep 18, 2026
34c42ef
added data sources into the metatest
Sep 18, 2026
772c729
bug fix: reformulated setupIdentifierTypesDropdown to return a Promis…
Sep 18, 2026
27abd1e
bug fix: await identifierType to be settled before uploading a value
Sep 18, 2026
0dbbf4a
include the new identifierType Promise return in datasource test
Sep 18, 2026
ac0d083
called attention upon a fact that the warning-only metatest will alwa…
Sep 18, 2026
38cb669
add the contents of file_format from xml into the generated Datacite …
Sep 18, 2026
cc2fded
equip the tests with a mock of postData to simulate the real behavior
Sep 18, 2026
dc09736
made file_format in ICGEM inambiguous by renaming into icgem_file_format
Sep 18, 2026
470d308
corrected the test assertion
Sep 18, 2026
c5c1f32
Merge pull request #1218 from McNamara84/feature/elmogem-roundtrip-co…
Daetha Sep 18, 2026
2bb3d52
Merge branch 'dev' into feature/elmogem-metadata-enhancement
Sep 18, 2026
0a25026
adjust the roundtrip test to adapt to model name being added to the t…
Sep 21, 2026
ecd5901
added a test cases:
Sep 21, 2026
ab4c79e
addded a test case of toggling the help buttons between adding of rows
Sep 21, 2026
082a108
added test cases in jest for only the first contact person
Sep 21, 2026
a2842ee
showing the help icons for the first input field that is shown
Sep 21, 2026
cad2ce3
renamed to ggms-definition according to the naming convention
Sep 21, 2026
59a57f5
Merge pull request #1224 from McNamara84/fix/issue#1220
Daetha Sep 21, 2026
71d7c12
corrected the uuid of the added keyword
Sep 22, 2026
a6ef5d6
adjust the test accordingly
Sep 22, 2026
248a4fd
Merge pull request #1214 from McNamara84/feature/elmogem-metadata-enh…
Daetha Sep 22, 2026
40e3057
Feature: Redesign and several bugfixes for Related Work form group (#…
McNamara84 Sep 22, 2026
4ee0194
Fix: Restore MSL default free keywords after clear (#1233)
McNamara84 Sep 22, 2026
f1a95d8
Fix: Grouping of uploaded satellite data sources (#1234)
McNamara84 Sep 23, 2026
b93a3e1
Merge branch 'main' into chore/main-dev-sync
Sep 23, 2026
b504713
fixed typo in description test
Sep 23, 2026
6b680e0
refactored set the dafault license to function
Sep 23, 2026
26b5a7f
redefined into type = module
Sep 23, 2026
56c58a2
rewrite set browser timezone as a function and bind it to clear
Sep 23, 2026
6cb6285
export and import clearAllFields
Sep 23, 2026
1699000
use setUpAutocompleteFunder from global scope
Sep 23, 2026
f96d7cc
reformulated from exact match to text containing '(CC-BY-4.0)'
Sep 23, 2026
ffb023c
export function into classic scripts
Sep 23, 2026
dbf327b
fixed typo in related test
Sep 23, 2026
d4e3ee8
inject clear form dependencies into test environment
Sep 23, 2026
b48a6cc
increase color contrast on tooltips
Sep 24, 2026
ae3a8e0
change the order of function call
Sep 24, 2026
cee70a0
expose setupIdentifierTypesDropdown to global scope
Sep 24, 2026
a800655
set up things as modules also in test mock
Sep 24, 2026
430276e
changed the comment
Sep 24, 2026
9ecd7be
export setCCBYasDefault for testing
Sep 24, 2026
db72f3e
assign select.js to window
Sep 24, 2026
9c7a661
add a test that asserts CCBY and timezone
Sep 24, 2026
53ac65a
corrected broken commands in compose.gem
Sep 24, 2026
bcc001e
changelog
Sep 24, 2026
c8b63d0
Merge pull request #1239 from McNamara84/fix/gem-compose
Daetha Sep 24, 2026
0e288ce
Merge pull request #1237 from McNamara84/chore/main-dev-sync
Daetha Sep 24, 2026
bec2e77
added first value as a fallback and adjustet test
Sep 25, 2026
502085a
set opacity to 1
Sep 25, 2026
27ce371
fix race between sending the feedback and spinner
Sep 25, 2026
1684ff4
Merge pull request #1238 from McNamara84/fix/license-clear
Daetha Sep 25, 2026
a230229
leave Max values epmpy for a point upload
Sep 28, 2026
4782de2
update the readme to indicate the way to go with the points
Sep 28, 2026
686a3fc
call updateMapOverlay
Sep 28, 2026
11d8631
adjust jest tests
Sep 28, 2026
4449ca6
included 2 new variables into the email submit process
Sep 28, 2026
ca9f844
added new variables to the env-files
Sep 28, 2026
26cedfb
described the new variables in the Readme
Sep 28, 2026
f5915b6
adjusted the tests
Sep 28, 2026
a230c75
changelog
Sep 28, 2026
c7d771c
renamed the file intoPascalCase
Sep 28, 2026
63b3c6f
Feature: Redesign of Contributors form group (#1235)
McNamara84 Sep 29, 2026
ad45b41
Merge branch 'dev' into feature/elmogem-env-control
Sep 29, 2026
3f98e55
set main flow in the script as mapReady variable
Sep 29, 2026
0e921aa
Wait for mapReady (settings fetch + initMap) before updating map over…
Sep 29, 2026
e1339cb
Merge pull request #1245 from McNamara84/feature/elmogem-env-control
Daetha Sep 29, 2026
111ab8e
Feature: Full Changelog Redesign with Badges and Issue and PR Links (…
McNamara84 Sep 29, 2026
acc6e0b
outfactored whenMapReady as a function and checked for map being fals…
Sep 30, 2026
6c3a92b
upgraded brace-expansion to fix a vulnerability
Sep 30, 2026
028c1eb
extended help text for ggm data sources
Sep 30, 2026
c5ca1ea
renamed to reference Model
Sep 30, 2026
da7750d
described the type codes for data sources
Sep 30, 2026
d868a15
Merge pull request #1243 from McNamara84/fix/complete-1167
Daetha Oct 1, 2026
2e353de
relocated add button below, remove button is always in the rows
Oct 1, 2026
4a3e0e1
adjust layouts for smaller screen sizes and implement a light frame
Oct 1, 2026
4a68ef2
make the add data source button smaller and give satellites more space
Oct 1, 2026
631e2b9
locate the remove button in the row
Oct 1, 2026
616068a
relocated the jstree open jstree modal under the input field to enabl…
Oct 1, 2026
a9c34c1
rename the jstree modal button to Open Thesaurus
Oct 1, 2026
4c5308a
adjusted tests to select reference model instead of just model
Oct 1, 2026
0e3a1f0
Merge branch 'dev' into feature/mds-rename
Oct 2, 2026
d96736f
updated changelog with multiple PRs closed by Daetha
Oct 2, 2026
c876ab3
optimise the tests not to hardcode any values, number of enttries or …
Oct 2, 2026
10c3415
forward XML_SUBMIT_ADDRESS in docker-compose.gem
Oct 2, 2026
3b275b6
switched fully to ICGEM_SUBMIT_ADDRESS for the ELMO-GEM submit email
Oct 2, 2026
772e648
added test to check that options match the api
Oct 5, 2026
1e22b5b
commented the example usage of an endpoint
Oct 5, 2026
504fa2b
Merge pull request #1254 from McNamara84/fix/issue-1244
Daetha Oct 6, 2026
6ec1c91
Merge pull request #1252 from McNamara84/fix/changelog-tests
Daetha Oct 6, 2026
af0ed6f
Merge pull request #1253 from McNamara84/hotfix/elmogem-forward-submi…
Daetha Oct 6, 2026
8b88b78
Merge branch 'dev' into feature/mds-rename
Oct 6, 2026
81cfb59
ensure the exact number of rows in data sources FG
Oct 6, 2026
84ff92b
refactor the translate function to use translateElements function fro…
Oct 6, 2026
6556ffd
enrich translations vocabulary
Oct 6, 2026
bc3b87d
added tests to data sources: translations, upload with 0 or changing …
Oct 6, 2026
e14c295
improve the description of test pack
Oct 6, 2026
bcfcde1
mention uploadXmlIntoForm outfactor in related tests
Oct 6, 2026
2215247
cover the applyTranslationsTo function with tests
Oct 6, 2026
95766ef
added css rules for the button and padding for smaller screens
Oct 6, 2026
7a9b1ab
test generated for the layout adjustments
Oct 6, 2026
08c8c11
fix the tests: give the visual design some range.
Oct 6, 2026
7d782f3
fixing tests: selecting options explicitly
Oct 6, 2026
ab9121c
Merge pull request #1250 from McNamara84/feature/mds-rename
Daetha Oct 6, 2026
1557836
Feature: Redesign of Resource Information Form Group (#1249)
McNamara84 Oct 6, 2026
042f7ff
corrected the wording to Author Institution Name
Oct 7, 2026
033dce2
corrected the name of Contributor Institution Name: capitalised
Oct 7, 2026
b685fd4
Fix: Remove dead code (#1259)
McNamara84 Oct 9, 2026
e9c1b14
Merge branch 'dev' into fix/issue-#1256
Oct 9, 2026
5ab3d92
Merge pull request #1258 from McNamara84/fix/issue-#1256
Daetha Oct 9, 2026
6ca3dac
Fix: Several bugfixes on the Dark theme (#1265)
McNamara84 Oct 9, 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
2 changes: 1 addition & 1 deletion .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Contributing to ELMO

Thank you for your interest in contributing to ELMO! We welcome contributions of all kinds.
Thank you for your interest in contributing to ELMO! We welcome contributions of all kinds. Before adding or renaming files, read the [project structure](../docs/project-structure.md) and [file-name conventions](../docs/file-naming-conventions.md).

## Branching Strategy

Expand Down
44 changes: 33 additions & 11 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -1,13 +1,18 @@
name: Bug Report
description: Report a bug or unexpected behavior in one of the ELMOs
title: "[BUG] "
labels: ["bug"]
labels: ["bug", "DoR not met"]
projects: ["McNamara84/10"]
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to report a bug! Please fill out the sections below.

## Use ELMO terms

Please use the exact terms shown in the affected ELMO. Do not use abbreviations. For example, a digital dataset is named **Resource**, and a physical sample is named **IGSN**.

- type: textarea
id: description
attributes:
Expand All @@ -22,11 +27,9 @@ body:
attributes:
label: Steps to Reproduce
description: Step-by-step instructions to reproduce the behavior.
placeholder: |
1. Go to '...'
2. Click on '...'
3. Scroll down to '...'
4. See error
value: |
1. Open the affected ELMO
2. Navigate to page ... with route /...
validations:
required: true

Expand Down Expand Up @@ -66,18 +69,37 @@ body:
required: false

- type: input
id: ernie-version
id: elmo-version
attributes:
label: ELMO Version
description: Which version of ELMO are you using?
placeholder: e.g. ELMO-MSL v2.0.6
label: ELMO Version / Branch
description: Which ELMO version or branch are you using?
placeholder: e.g. ELMO-MSL v2.0.6, main
validations:
required: false

- type: checkboxes
id: definition-of-ready
attributes:
label: Definition of Ready
description: Check every item that is already true for this bug report.
options:
- label: The affected ELMO page, route, or workflow is named.
- label: If the bug is reported from stakeholders, the bug was reproduced by at least one team member.
- label: The affected Resource or Sample is named/linked when relevant.
- label: The user role, browser, ELMO version or branch, and environment are added when relevant.
- label: The current behavior and expected behavior are clear.
- label: The steps to reproduce are testable.
- label: Screenshots, logs, or error messages are attached when they could be helpful.

- type: textarea
id: additional-context
attributes:
label: Additional Context
description: Any other context about the problem.
validations:
required: false
required: false

- type: markdown
attributes:
value: |
**Ready for work?** This issue is created with the `DoR not met` label by default. Remove it only when the Definition of Ready is met.
31 changes: 28 additions & 3 deletions .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
@@ -1,20 +1,25 @@
name: Feature Request
description: Suggest a new feature or improvement for one of the ELMOs
title: "[FEATURE] "
labels: ["enhancement"]
labels: ["enhancement", "DoR not met"]
projects: ["McNamara84/10"]
body:
- type: markdown
attributes:
value: |
Thanks for suggesting a feature! Please describe your idea below.

## Use ELMO terms

Please use the exact terms shown in the affected ELMO. Do not use abbreviations. For example, a digital dataset is named **Resource**, and a physical sample is named **IGSN**.

- type: textarea
id: user-story
attributes:
label: User Story
description: Describe the feature from a user's perspective.
value: |
As a **…**, I want **…**, so that **…**.
As a **...**, I want **...**, so that **...**.
validations:
required: true

Expand Down Expand Up @@ -46,10 +51,30 @@ body:
validations:
required: false

- type: checkboxes
id: definition-of-ready
attributes:
label: Definition of Ready
description: Check every item that is already true for this feature request.
options:
- label: The user role or target user (not Product Owner, not Scrum Master) is named at least in the user story.
- label: The user story follows the INVEST criteria (Independent, Negotiable, Valuable, Estimable, Small, Testable).
- label: The affected ELMO page, route, workflow, or data type is named.
- label: The problem or user need is clear.
- label: The acceptance criteria follow the Given-When-Then format.
- label: Acceptance criteria are testable.
- label: Relevant Resource or Sample is included/linked when relevant.
- label: Sketches, mockups, or wireframes are attached when they could be helpful.

- type: textarea
id: additional-context
attributes:
label: Additional Context
description: Any mockups, references, or further information.
validations:
required: false
required: false

- type: markdown
attributes:
value: |
**Ready for work?** This issue is created with the `DoR not met` label by default. Remove it only when the Definition of Ready is met.
33 changes: 33 additions & 0 deletions .github/workflows/mirror-to-gitlab.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
name: Mirror latest release to GitLab

on:
workflow_dispatch: # manual trigger for initial setup
release:
types: [published]

jobs:
mirror:
runs-on: ubuntu-latest
steps:
- name: Checkout repository with full history
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Get latest release
id: release
env:
GH_TOKEN: ${{ github.token }}
run: |
TAG=$(gh release view --json tagName --jq .tagName)
echo "tag=$TAG" >> "$GITHUB_OUTPUT"
echo "Latest release: $TAG"

- name: Push tag and state to GitLab
env:
GITLAB_TOKEN: ${{ secrets.GITLAB_TOKEN }}
TAG: ${{ steps.release.outputs.tag }}
run: |
git remote add gitlab "https://oauth2:${GITLAB_TOKEN}@git.gfz-potsdam.de/data_services/elmo.git"
git push gitlab "refs/tags/${TAG}:refs/tags/${TAG}"
git push --force gitlab "refs/tags/${TAG}^{commit}:refs/heads/main"
Comment on lines +10 to +33
9 changes: 8 additions & 1 deletion .github/workflows/phpunit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,8 @@ jobs:

steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Set up PHP
uses: shivammathur/setup-php@v2
Expand Down Expand Up @@ -65,6 +67,11 @@ jobs:
- name: Validate composer.json and composer.lock
run: composer validate --strict

- name: Check file-name conventions
env:
FILE_NAME_BASE: ${{ github.event.pull_request.base.sha || github.event.before }}
run: composer check:file-names -- --base="$FILE_NAME_BASE"

- name: Install JS dependencies
run: npm ci

Expand Down Expand Up @@ -179,7 +186,7 @@ jobs:
PHP

- name: Initialize database structure and lookup data
run: php -r "require 'install.php'; createDatabaseStructure(\$connection); insertLookupData(\$connection);"
run: php -r "require 'scripts/install.php'; createDatabaseStructure(\$connection); insertLookupData(\$connection);"

- name: Start PHP built-in web server
run: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/playwright.yml
Original file line number Diff line number Diff line change
Expand Up @@ -179,7 +179,7 @@ jobs:
EOF

- name: Initialize database structure and lookup data
run: php -r "require 'install.php'; createDatabaseStructure(\$connection); insertLookupData(\$connection);"
run: php -r "require 'scripts/install.php'; createDatabaseStructure(\$connection); insertLookupData(\$connection);"

- name: Shrink large JSON fixtures for faster page loads
run: echo '[{"crossRefId":"100000001","name":"National Science Foundation"}]' > json/funders.json
Expand Down
37 changes: 29 additions & 8 deletions .htaccess
Original file line number Diff line number Diff line change
@@ -1,16 +1,37 @@
<IfModule mod_rewrite.c>
# Enable the RewriteEngine module, which allows URL rewriting
RewriteEngine On

# If the requested filename exists as a file (-f) or directory (-d), skip the next rule
# CLI maintenance tools are never public HTTP endpoints.
RewriteRule ^scripts(?:/|$) - [R=404,L]

# Temporary compatibility aliases for the former root endpoints.
RewriteRule ^api\.php$ api/deprecated_v1.php [QSA,L]
RewriteRule ^doc/privacyPolicy\.html$ doc/privacy-policy.html [L]
RewriteRule ^log_page_event\.php$ endpoints/log_page_event.php [QSA,L]
RewriteRule ^send_feedback_mail\.php$ endpoints/send_feedback_mail.php [QSA,L]
RewriteRule ^send_xml_file\.php$ endpoints/send_xml_file.php [QSA,L]

# Temporary compatibility aliases for browser icons moved to assets/icons.
RewriteRule ^apple-touch-icon\.png$ assets/icons/apple-touch-icon.png [L]
RewriteRule ^favicon-96x96\.png$ assets/icons/favicon-96x96.png [L]
RewriteRule ^favicon\.ico$ assets/icons/favicon.ico [L]
RewriteRule ^favicon\.svg$ assets/icons/favicon.svg [L]
RewriteRule ^web-app-manifest-192x192\.png$ assets/icons/web-app-manifest-192x192.png [L]
RewriteRule ^web-app-manifest-512x512\.png$ assets/icons/web-app-manifest-512x512.png [L]

# Temporary compatibility aliases for logos moved to assets/logos.
RewriteRule ^logos/doi\.logo\.svg$ assets/logos/doi-logo.svg [L]
RewriteRule ^logos/EPOS_logo\.png$ assets/logos/epos-logo.png [L]
RewriteRule ^logos/GFZ_Data_Services_logo\.png$ assets/logos/gfz-data-services-logo.svg [L]
RewriteRule ^logos/GFZ-logo\.png$ assets/logos/gfz-logo.svg [L]
RewriteRule ^logos/orcid\.logo\.png$ assets/logos/orcid-logo.png [L]
RewriteRule ^logos/ror-logo\.svg$ assets/logos/ror-logo.svg [L]

# Existing files and directories are served without additional routing.
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]

# For API requests: rewrite URLs starting with 'api/' to 'api/index.php'
# API v2 uses the shared API front controller.
RewriteRule ^api/(.*)$ api/index.php [QSA,L]

# For all other requests (if needed), rewrite to 'index.php'
# Uncomment the following line if you want all other routes to point to 'index.php'
# RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>
</IfModule>
Loading
Loading