AChecker internationalization will occur in parallel with the development described in Enabling Change AChecker Redesign. Much of the effort will be taken on at the Department of Computer Science at the University of Bologna. Language in AChecker will be handled much like it is handled in ATutor, so code from ATutor can be reused to implement tools quickly. The following describes how language will be managed in AChecker.
Two tables will be created to manage languages, and language text for the interface and feedback messages of the application itself. The existing checks table in the current AChecker database will be extended with a language field, and function like the language text table, but for language associated with accessibility checks. The ATRC will create the accessibility check editor, which will be added to the Language Manager as it's being developed.
Some ATutor features can be reused or modified slightly to create language tools for AChecker.
ATutor _AT() language function
The _AT() function is used in ATutor to convert language tokens embedded in the application, with replacement language retrieved from the Language database. The function is found in the ATutor include/lib/output.inc.php file. An equivalent language function needs to be created for AChecker and be name _AC() preferably.
ATutor Language Tokens
All static language in the AChecker application will be removed and replaced with either template or message language tokens.
In the success feedback above a value ($thread_name) is passed to the $msg object, which gets inserted into the language that gets displayed by replacing a variable in the translation such as %s.
See the developer documentation for more about localization and feedback messages http://help.atutor.ca/developer/guidelines.html#localisation
ATutor Language Manager
The ATutor Language Manager (/admin/language.php) will have most of the code needed, with minor adjustments, to create a language manager for AChecker. The Editor tool provides the added ability to create and export any custom language for importing back into an upgraded version of the software.
The Translate tools, also found in the Language Manager can be used with only minor changes to adapt it to AChecker so translators can translate within AChecker itself.
NOTE: that the Check Editor described in the the Enabling Change project, will be associated with the language manager and translation tools in AChecker.
Atutor.ca Translation Site
The tools currently used on the ATutor community Web site, will be extended to include tools for translating AChecker, and for importing and exporting language package. These features will be developed by the ATRC. It may be helpful for the developers of the AChecker language tools to register as a translator on atutor.ca to see how the tools function, and understand how the language from AChecker will be managed once the whole system is in place.