Changes between Version 48 and Version 49 of Contribute/Code

11/13/12 09:36:05 (12 years ago)
Pat Tressel



  • Contribute/Code

    v48 v49  
    9898'''Reevaluate  : ''' If the XSL transformation is developed, then the mapping can be tested with the sample RM and SITREP files [[BR]]
    100 === Review code for quality of localized strings ===
    101 ''Not added to GCI spreadsheet -- this was a task for GCI 2011, so would need to identify what was not done.''[[BR]]
    102 All strings which appear in the user interface, such as in menus and forms and help info, should be "internationalized" -- marked to make them available to be translated into different languages. This is done by putting the strings inside of {{{T( )}}}, e.g. {{{T("This string will be written into language files to be translated")}}}. The strings in {{{T( )}}} are keys that are used to look up translated strings. By convention, the key strings are in US English.
    104 For GCI, you will need to review all the internationalized strings in the model and controller files for a single module, eg:
    105 * {{{controllers\}}}, {{{models\}}}, and {{{views/gis/*.html}}}
    106 * {{{controllers\}}}, {{{models\}}}, and {{{views/hrm/*.html}}}
    107 * {{{controllers\}}} and {{{views/default/*.html}}}
    109 Check for:
    110 * Incomplete or cut-off sentences in the translation strings
    111 * Avoid concatenation of localized strings with variables - use %s or %(key)s instead.  That is, instead of:[[br]]
    112   {{{T("My name is ") + name}}}[[br]]
    113   use this:[[br]]
    114   {{{T("My name is %s") % name}}}[[br]]
    115   And instead of:[[br]]
    116   {{{T("The item ") + item + T(" is not available in ") +}}}[[br]]
    117   use this:[[br]]
    118   {{{T("The item %(item)s is not available in %(place)s.") % {"item": item, "place":}}}}[[br]]
    119   This is better because the word order is not the same in all languages -- in the second form, the translator can move where the variables are inserted.
    120 * Look for fields without a label - e.g. Field("fieldname") as these cannot be localised.
    121 * Look at strings that have not been wrapped in {{{T( )}}} to see if they ought to be. But be cautious: Not all strings need to be localized, and some definitely should not be:
    122  * Strings that are used as keys in dicts, e.g. `{"this_is_a_key": 5}`, should not be localized.
    123  * A string that is intended to be in one specific language should not be localized (e.g. the language names in the language menu in {{{deployment-templates/models/}}}).
    124 * Consider improving consistency of wording / terminology - don't use different strings that mean the same thing, e.g. if there is {{{T("My name is")}}} in one place, avoid using {{{T("I am called")}}} somewhere else.
    126 You will need to download a working branch of Sahana Eden code for this task and push the changes you make to your own branch on Git.
    128 Please focus on modules which are [ enabled by default].
    130100== Intermediate ==
    155125 * Then add a Map-based BBOX selection & dropdowns for the filter (which prepopulate the real dropdowns for manual verification/amendment)
    157 === Recurring Requests ===
    158 ''Not added to GCI spreadsheet -- Dominic is currently implementing this.''
    159 e.g. Shelter needs 100 liters of water/week
    161 Want to be able to add Scheduling functionality to Requests.
    163 There is a wrapper for Web2Py's Scheduler class in {{{modules/s3/}}}
    165 Can use UI ideas/code from Sync
    167127=== Fix an Hard Ticket ===