hi
I'm working on project, translation and localization MovableType4.2 for Persian ( Farsi ).
recently i have problem with modify params.
for example i have a callback : MT::App::CMS::template_param.edit_entry
in this callback i want to change English numbers to Farsi numbers like 5 => ۵.
and i do this:
$param->{num_comments} = Farsi::Util::farsi_numbers($param->{num_comments});
then i use MT->log and in this phase every thing is fine and i can see number five (۵) but in edit_entry template comments number shows as zero (0).
i checked edit_entry template, when i use sorry my codes didn't show above , i checked edit_entry template, when i use
<$mt:var name="num_comments"$>
then i can see number five (۵) in browser after compile template but in codes like
<__trans phrase="<a href="[_2]">[quant,_1,comment,comments]</a>" params="<$mt:var name="num_comments"$>%%<$mt:var name="script_url">?__mode=list_comments&filter_key=_comments_by_entry&filter_val=<$mt:var name="id" escape="url"$>&blog_id=<$mt:var name="blog_id" escape="url"$>">
it return zero for comments number, i think __trans make this happen.now i want to know is this right? and is there any other way to do this works?
Reported on Movable Type 4.2
I could be mistaken, but it sounds like Perl isn't interpeting ۵ as a number. What you could try instead is to set the comment number using European (or Arab-Hindi if you prefer) numerals and then put a transformation callback on the template output to do a search-and-replace from European numerals to Persian numerals.
what kind of transformation do think i can use? i use template_param for this, but not worked!
template_output IIRC.