message customization in Freemarker templates in Leila E
Goals
internally "deprecate" Mifos "Labels" functionality
remove it in the F release
use of "Labels" requires the creation of patchwork messages in string bundles, we want to avoid this in Freemarker templates to avoid further technical debt
instead of customizing particular words and phrases, customization will happen by creating properties files similar to the ones shipped by Mifos
don't use Mifos "Labels" in Freemarker templates
TODO
In order of priority.
implement ability for an MFI to customize translated messages
this should hopefully be doable by modifying the spring configuration
user must also be able to specify their variant in applicationConfiguration.custom.properties; suggested key is "Localization.Variant"
upon upgrade to Leila E, generate properties files necessary for customizing messages in Mifos (create a Java-based database upgrade that does this)
properties file would be something like: MIFOS_CONF/L10n/messages_zh_CN_MFICustom.properties. "zh" = language, "CN" = country, "MFICustom" is the variant. Sometimes "CN_MFICustom" is called the specialization. See java.util.ResourceBundle javadoc for more info.
default variant is "MFICustom" (in applicationConfiguration.default.properties), and may be overridden in applicationConfiguration.custom.properties
in release E, when "Submit" is click on the Labels page, existing actions (maintaining the Labels) would still occur. Additionally, the properties files in MIFOS_CONF/L10n would be maintained (using the same code in the Java-based database upgrade mentioned above).