Hi Malcolm -
We hadn't been considering any changes to our language pack mechanism as we thought it was working well for everybody.
Were you aware of the <prefix>.lang.override.php mechanism? Whenever we load a lang file, we also load the override file to load in any modifications made to the language pack. You can safely put any changes into the override file and we will never stomp on those override files as we release patches and major revisions.
For instance, you want to modify the US English drop down list of case statuses from the out of the box values to include a new status of "In Review".
- The original values are set in include/language/en_us.lang.php and are:
'case_status_dom' =>
array (
'New' => 'New',
'Assigned' => 'Assigned',
'Closed' => 'Closed',
'Pending Input' => 'Pending Input',
'Rejected' => 'Rejected',
'Duplicate' => 'Duplicate',
), - To safely modify these values, create a new file called include/language/en_us.lang.override.php and set its contents to be:
<?php
$app_list_strings['case_status_dom'] =
array (
'New' => 'New',
'Assigned' => 'Assigned',
'Review' => 'In Review',
'Closed' => 'Closed',
'Pending Input' => 'Pending Input',
'Rejected' => 'Rejected',
'Duplicate' => 'Duplicate',
);
?>
Note that you can add or remove drop down values and that the key stored in the database (in this case "Review") does not need to match the display value ("In Review").
And as stated above, these changes will carry forward from release to release as we never will distribute a en_us.lang.override.php file.
Regards,
Bookmarks