This post is part of the sub-series on Internationalizing a ClassicPress plugin which is part of the Internationalizing a ClassicPress plugin series.
A plugin can have a lot of strings to translate; the larger the plugin the more translations there are likely to be. It is quite common for developers to look for ways to reduce typing the same parameter every time through the use of variables or constants, but this must be resisted when it comes to setting the text domain parameter of the localization functions.
The reason for this is that it is not just the PHP of the plugin which needs to parse the translatable strings, but also the gettext libraries which are used to produce the POT templates, used by translators.
gettext is not a PHP parser, so it is unable to read variables or constants; it can only read the strings.
The Inside Microsoft Dynamics GP blog has started a series Feature of the Day posts for Microsoft Dynamics GP "October 2019" Release on which I am following and adding commentary. The index for this series of posts is here.
The third Feature of the Day is new workflows for Security Role and Task approval.
The last two new workflows are Security Task Approval and Security Roles Approval:
- Security Task Approval lets you edit the operations that are assigned to a task or create a new task; and if the workflow is active, the workflow actions will display on Security Task Setup.
- Security Roles Approval lets you edit the operations that are assigned to a role or create a new role; and if the workflow is active, the workflow actions will display on Security Role Setup.
With these Security Approval workflows, you can require that any changes made in these windows be submitted for review and approval:
No changes made for Security Tasks or Security Roles will be implemented until the workflow task has been final approved.
I've fielded lots of questions over the years from clients asking how they can find out who has changed a role or task. These workflows will allow them to control changes with only a limited number of users able to approve a change and make it live.