Skip to content

[Candidate Identifier (Rework)] Add Candidate Identifiers Module - #11279

Draft
HachemJ wants to merge 79 commits into
aces:mainfrom
HachemJ:AddCandidateIdentifiersModule
Draft

HachemJ wants to merge 79 commits into
aces:mainfrom
HachemJ:AddCandidateIdentifiersModule

Conversation

@HachemJ

@HachemJ HachemJ commented Nov 2, 2026

Copy link
Copy Markdown
Contributor

Brief summary of changes

This PR adds a new Candidate Identifiers module to view and manage candidate identifiers.

I followed the structure of existing modules, mainly candidate_list, for the data framework and table setup.

The module displays identifiers in a filterable table, showing the CandID, PSCID, identifier type, value, and dates added and edited.

Users can add, edit, and delete identifiers from the table. The add form supports both manual and automatically generated identifiers. PSCIDs cannot be edited, and required identifiers cannot be deleted.

The main files are:

  • candidate_identifiers.class.inc Sets up the data framework and provides the available identifier types.
  • candidateidentifierrow.class.inc and candidateidentifierrowprovisioner.class.inc Retrieve the identifiers to display, taking user permissions and project access into account.
  • candidateIdentifiersIndex.js Handles the table, filtering, and delete action.
  • addIdentifierForm.js and editIdentifierForm.js Handle adding and editing identifiers.

This PR depends on #11261.

Testing instructions (if applicable)

  1. Open the Candidate Identifiers module and check that identifiers are displayed correctly.
  2. Try filtering the table using the different columns.
  3. Add an identifier with a manually entered value and check that it appears in the table.
  4. Add an identifier with an automatically generated value and check that it is generated correctly.
  5. Edit an existing identifier and check that the new value is saved.
  6. Check that PSCIDs cannot be edited.
  7. Delete an identifier and check that it is removed from the table.
  8. Check that required identifiers cannot be deleted.
  9. Check that users only see identifiers they have access to.

@github-actions github-actions Bot added Language: SQL PR or issue that update SQL code Language: PHP PR or issue that update PHP code Language: Javascript PR or issue that update Javascript code Module: api PR or issue related to api module Module: configuration PR or issue related to configuration module Module: new_profile PR or issue related to new_profile module Multilingual Any tasks related to making LORIS multilingual labels Nov 2, 2026
@HachemJ HachemJ added the State: Blocked PR or issue awaiting an external event such as the merge or another PR to proceed label Nov 2, 2026

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Language: Javascript PR or issue that update Javascript code Language: PHP PR or issue that update PHP code Language: SQL PR or issue that update SQL code Module: api PR or issue related to api module Module: configuration PR or issue related to configuration module Module: new_profile PR or issue related to new_profile module Multilingual Any tasks related to making LORIS multilingual State: Blocked PR or issue awaiting an external event such as the merge or another PR to proceed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant