CenterForDigitalHumanities / CenterForDigitalHumanities/TPEN-interfaces
Support TPEN28 Project Import into TPEN3.0 via Authenticated Cross-System Link
- Dominant language
- JavaScript
- Stars
- 2
- Forks
- 3
- PR merge metrics
- No merged PRs in 30d
Description
Overview :
User logs in to TPEN3.0 and receives an auth token (userToken). User clicks a “Link TPEN28 Project” button on TPEN3.0. They are redirected to the TPEN28 login page, passing the TPEN3.0 redirect_uri.After successful TPEN28 login, user is redirected back to TPEN3.0 with their UID from TPEN28 in the URL. TPEN3.0 uses the /import28/:uid endpoint to retrieve the corresponding project from TPEN28. Clone/import it into TPEN3.0 via the manifest endpoint. On successful import a list of collaborators from the original project is shown. User can send invitations to each collaborator to join the cloned project in TPEN3.0. A button is provided to open the newly imported project in TPEN3.0.
✅ Implementation Tasks:
- [x] Add cross-domain cookie support for secure credential exchange.
- [x] Use getAuthToken() to retrieve TPEN3.0 token for auth headers.
- [x] Redirect logic with redirect_uri from TPEN3 to TPEN28 and back.
- [x] Secure /import28/:uid endpoint with appropriate CORS config and Auth0 middleware.
- [x] Parse and display collaborators from the imported manifest.
- [x] Allow inviting collaborators via TPEN3 Project.addMember() method.
- [x] Redirect to the cloned project’s management interface.
- [ ] Involve Hotkeys
- [ ] Project Tools
- [ ] Remove localhost on a good spot
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.