Skip to content

the code should be more modular (HTML generation)

In the current state of the code, data retrieval, request handling and HTML render are entangled together, which makes it hard to maintain and improve.

A few pages now use Template::Toolkit, which allows us to decouple HTML rendering from data processing and make the code clearer.

Here's the checklist of routes handled by ddtss-cgi:

  • / displays the list of languages
  • /createlogin displays the user creation form
  • /userlist/<lang> displays the list of users for <lang>
  • /teamconfig/<lang> displays the language config form for <lang> (admin only)
  • /logout
  • /login
  • /rosettaimport I don't know the purpose of this route
  • /suggestion I don't know the purpose of this route
  • /messageto/<user> displays the small popup page to send a message to a user
  • /messagetoteam/<lang> displays the small popup page to send a message to a team (admin only)
  • /messagetoproject displays the small popup page to send a global message (admin only)
  • /delmessage
  • /delteammessage
  • /delprojectmessage
  • /<lang> displays the main page for <lang>
  • /<lang>/forexternalreview I don't know the purpose of this route
  • /<lang>/translate displays the description translation form (uses common parts with /<lang>/forreview)
  • /<lang>/forreview displays the description review form (uses common parts with /<lang>/translate)
  • /<lang>/translated displays the translation logs
  • /<lang>/wordlist displays the wordlist for <lang>
  • /fetch displays the waiting screen when a description is being fetched

Some pages should be very easy to migrate (<lang>/translated for instance). If contributors are interested, I can split this issue and assign a (perceived) level of complexity on each sub-issue. I intend to tackle the harder half to let opportunities for first contributions.

Edited by Thomas Vincent