The Translation Dashboard Coordinator (TDC) is a web-based platform designed to assist coordinators in managing and facilitating translation efforts within the WikiProject Medicine community. It provides tools for monitoring translations, managing users, overseeing projects, and administering campaigns.
TDC serves as a coordination hub for translation projects, enabling coordinators to:
- Monitor recent and in-process translations
- Manage translated pages and translation types
- Track WikiData QIDs for translated content
- Coordinate users and translation projects
- Administer translation campaigns
- Provide statistics and process monitoring
The TDC system follows a layered architecture design pattern, separating concerns between presentation, business logic, and data persistence layers.
- Data Access Layer: Retrieves data either directly from a SQL database or from an external API, determined by the
$use_td_apiglobal variable. - Language Support System: Manages language codes, names, and translations through a structured set of tables.
- Translation Dashboard: View and manage translations.
- Recent Translations: View the most recently translated pages.
- In-Process Monitoring: Track translations currently in progress.
- Pages Users to Main: Move translated pages from user namespaces to the main namespace.
- User Management: Manage user email lists and assignments.
- Project Management: Track ongoing translation projects.
- Campaign Management: Organize translation campaigns.
- QID Management: Manage Wikidata QIDs for translated pages.
- Translation Type: Configure translation types.
- Settings: Adjust platform settings and configurations.
The TDC system organizes translation-related data in structured tables, including:
- Language codes and names
- Translation types
- User assignments
- Project and campaign data
The typical data flow through the TDC system follows this pattern:
- User (coordinator) accesses the web interface.
- Request is routed through
index.phpto the appropriate module. - Module authenticates user and performs security checks.
- Module requests data through the data access layer.
- Data is retrieved from the SQL database or external API.
- Module processes data and renders the response.
The TDC system includes security features such as CSRF protection and user authentication to ensure safe and authorized access to the platform.
The project is open-source and available on GitHub: Mdwiki-TD/tdc. Developers can contribute to the project, report issues, and suggest enhancements through the GitHub repository.
| Endpoint | Method | Description |
|---|---|---|
/ |
GET | Main entry — recent translations dashboard |
?ty=reports |
GET | View publish reports with filters |
?ty=stat |
GET | Per-category article statistics |
?ty=sidebar |
GET | Sidebar HTML (for AJAX reload) |
?ty=categories |
GET | Translation languages with Wikidata category status |
?ty=Campaigns |
GET/POST | List and edit translation campaigns |
?ty=Campaigns/post |
POST | Save/update/delete campaign categories |
?ty=projects |
GET/POST | Manage project groups |
?ty=projects/post |
POST | Save project changes |
?ty=settings |
GET/POST | Manage application settings |
?ty=settings/post |
POST | Save settings changes |
sugust.php |
GET | JSON endpoint for article suggestions (?title=&lang=) |
| Endpoint | Method | Description |
|---|---|---|
?ty=last |
GET | Recent translations table |
?ty=last1 |
GET | Recent translations (SQL-based) |
?ty=process |
GET | Translations currently in progress |
?ty=process_total |
GET | Per-user translation count summary |
?ty=last_coord |
GET | Coordinator view of recent translations |
?ty=recent_helps |
GET | Helper utilities for recent translations |
?ty=pages_users_to_main |
GET | Pages needing move to main namespace |
?ty=pages_users_to_main/fix_it |
GET/POST | Edit page transfer details |
| Endpoint | Method | Description |
|---|---|---|
?ty=translated |
GET | Paginated list of all translated pages |
?ty=translated/edit_page |
GET/POST | Edit or delete a translated page |
?ty=tt |
GET | List articles by translate type |
?ty=tt/edit_translate_type |
GET/POST | Edit or add translate type |
?ty=tt/post |
POST | Save translate type changes |
?ty=add |
GET/POST | Add new translation entries |
?ty=add/post |
POST | Save new translation rows |
| Endpoint | Method | Description |
|---|---|---|
?ty=qids |
GET | List Wikidata QIDs |
?ty=qids/edit_qid |
GET/POST | Edit or add a QID entry |
?ty=qids/post |
POST | Save QID changes |
| Endpoint | Method | Description |
|---|---|---|
?ty=Emails |
GET/POST | List users with emails and project filters |
?ty=Emails/post |
POST | Save user email/wiki/project edits |
?ty=Emails/msg |
GET/POST | Compose and send email to translator |
?ty=Emails/edit_user |
GET | Edit or add a single user |
?ty=users_no_inprocess |
GET/POST | Manage users excluded from "in process" |
?ty=users_no_inprocess/post |
POST | Save exclusion list changes |
| Endpoint | Method | Description |
|---|---|---|
?ty=admins |
GET/POST | List, add, delete coordinators |
?ty=admins/post |
POST | Save coordinator changes |
?ty=full_translators |
GET/POST | Manage full article translators |
?ty=full_translators/post |
POST | Save full translator changes |
| Endpoint | Method | Description |
|---|---|---|
?ty=wikirefs_options |
GET | Per-language fix wikirefs settings |
?ty=wikirefs_options/edit |
GET/POST | Edit language settings |