1,623
edits
| Line 24: | Line 24: | ||
* Actionable links, making contributing straightforward | * Actionable links, making contributing straightforward | ||
=Requirements= | =Requirements= | ||
* Ideally, this Localization Dashboard page would be a standard wiki page, but the generated parts of the page would be included somehow (e.g. using | * The status of an article can be one of the following: | ||
** Not translated -- no translation of the article exists in the current locale | |||
** Translated -- the article is already translated | |||
** Needs review -- the translated article exists in the staging area only | |||
* Ideally, this Localization Dashboard page would be a standard wiki page, but the generated parts of the page would be included somehow (e.g. using something like {localizationStatus(KB, 1, 15)}). | |||
**This would allow other locales to easily translate the dashboard while not messing up with the generated content. And obviously, for locales that are fine with using this dashboard in English, that would just work automatically using our l10n fallback mechanism. So, these people would see the descriptions etc in English, but the generated data would be based on their native locale. | **This would allow other locales to easily translate the dashboard while not messing up with the generated content. And obviously, for locales that are fine with using this dashboard in English, that would just work automatically using our l10n fallback mechanism. So, these people would see the descriptions etc in English, but the generated data would be based on their native locale. | ||
**If we allow generated content be inserted using a syntax like {localizationTable(articleList, startIndex, numberOfArticles, statusFilter)}, that would give us a lot of flexibility in how we want to present the work. | **If we allow generated content be inserted using a syntax like {localizationTable(articleList, startIndex, numberOfArticles, statusFilter)}, that would give us a lot of flexibility in how we want to present the work. | ||
***For example, if we wanted to provide a separate list of the articles waiting for review, we could use {localizationTable(KB, 0, 0, needsReview)} | ***For example, if we wanted to provide a separate list of the articles waiting for review, we could use {localizationTable(KB, 0, 0, needsReview)} | ||
***Another example, if we wanted to list the next 15 articles in need of review or translation, we would use: {localizationTable(KB, 0, 15, untranslated+needsReview)} | ***Another example, if we wanted to list the '''next 15 articles''' in need of review or translation (rather than just showing the status of the first 15 articles), we would use: {localizationTable(KB, 0, 15, untranslated+needsReview)} | ||
*** This way, we have the flexibility to change the way we present the information, and we even allow locales to customize their view based on what works best for them. | *** This way, we have the flexibility to change the way we present the information, and we even allow locales to customize their view based on what works best for them. | ||
* Because the [http://support.mozilla.com/en-US/kb/Weekly+common+issues Weekly Common Issues] list is calculated using a combination of TikiWiki data and web analytics software (in our case Omniture), we need the ability for an external system to "tell" TikiWiki the priority of the KB. Marc Laporte mentioned a tracker db; seems like a fine solution to me. So, a tracker would contain a list of articles in a specific order. | * Because the [http://support.mozilla.com/en-US/kb/Weekly+common+issues Weekly Common Issues] list is calculated using a combination of TikiWiki data and web analytics software (in our case Omniture), we need the ability for an external system to "tell" TikiWiki the priority of the KB. Marc Laporte mentioned a tracker db; seems like a fine solution to me. So, a tracker would contain a list of articles in a specific order. | ||
| Line 41: | Line 45: | ||
* Another function with the same signature that returns a summary (total number of articles, and number of translated articles). | * Another function with the same signature that returns a summary (total number of articles, and number of translated articles). | ||
* A function that can draw a progress bar based on the summary in the function above. | * A function that can draw a progress bar based on the summary in the function above. | ||
edits