The first important thing for me is to see a real localization environment in the Xoops core.
You can find some of my opinions in this very old topic in sf.net forums:
http://sourceforge.net/projects/xoops/forums/forum/347994/topic/1603580i can sum up them here as below:
1- The locale.php:
1-1- formatTimestamp function: for output date is implemented long time ago. already in xoopslocal class
1-2- strtotime function: for input date. This php function is "Hardcoded" totally in xoops core and xoops modules and still is not implemented. Therefore local date can not be input in the fields. eg: xoopspoll module.
I mean developers should use something like this:
XoopsLocal::strtotime($_item['pubdate'])
1-3- substr function. already done in xoopslocal class. no instruction for using it.
1-4- utf8_encode, convert_encoding functions. already in xoopslocal class
1-5- trim function. i dont know how to use this.
1-6- number_format and money_format finctions. module developers should use them. already are in xoopslocal class. number_format would be a very useful function for languages that have non latin numbers
now all developers just hardcoded their numbers.
2- The locale.js
It can be used for implementing local calendars like hegira calendar. currently xoops use include/calendar.js and it is totally hardcoded in core and modules
3- The locale.css
xoops.css should be removed and the main css would be locale.css. we can used it for RTL languages, ...
these localization can be done easily in my point of view if developers do not use hardcoded php functions but use xoops sanitizers and xoopslocal functions.
4- choose one pdf generator php class and Implement it in core. IMO the FPDF is the best.