Description:
Current user profile page has input field for reviewing interests (in Role tab), which is using /en/user/getInterests endpoint for autocomplete.
With new GDPR Reviewer workflow coming from #11836, user will be able to update these reviewing interests while accepting invitation. Accepting invitation process is happening without having any user role, therefore to replicate this functionality it needs to rely on publicly available endpoint. Confirmed with @asmecher that for this use case its safe enough to go ahead with that.
/end/user/getInterests has its own specific format. Which would require another form field instead of using existing FieldControlledVocab to be able correctly map it.
Proposed solution
Introducing new endpoint under /api/v1/vocabs/interests?term=test path. Its separate endpoint to the /vocabs endpoint as there are couple of differences:
- authorisation is different as its publicly available
- its not multilingual
- its not context bounded
PRs:
pkp-lib: #12014
ojs: pkp/ojs#5173
omp: pkp/omp#2175
ops: pkp/ops#1143