I want to change dates shown everywhere in processmaker to another format(Persian calendar). I have my custom class to format dates. What is the best way to override the default function which returns the formatted date? I just found the CurDate method in the G class. Changed it's returned value but dates are still shown in gregorian format. Is there any other method for formatting dates?
I prefer an OOP solution to override the default function instead of hacking the core, if possible.
Thanks.
http://processmakerplus.com/
For daynaform in PM2.x
1.Add
jalali.js
(Download) file to path\opt\processmaker\gulliver\js\widgets\pcal
2.Change the maborak file in path
\processmaker\gulliver\js\maborak\core\maborak.js
changed setup calendar like thismaborak.js
3.In path
\processmaker\gulliver\system\class.headPublisher.php
and infunction printHeader ()
you must add jalali.js file to header dynaform like this$this->addScriptFile("/js/widgets/pcal/jalali.js");
class.publisher.phpFor other place like current date top of the home page must in path
processmaker\workflow\engine\skinEngine\skinEngine.php
and infunction _default()
replace$smarty->assign('udate', G::getformatedDate(date('Y-m-d'), 'M d, yyyy', SYS_LANG))
withFor dynaform in PM 3.x
1.Add bootstrap date picker file(Download) to path
processmaker\workflow\public_html\lib\pmdynaform\libs\datepicker\jalali
2.Add address this file to external lib
/lib/pmdynaform/libs/datepicker/jalali/bootstrap-datepicker.js,/lib/pmdynaform/libs/datepicker/jalali/bootstrap-datepicker.css,/lib/pmdynaform/libs/datepicker/jalali/bootstrap-datepicker.fa.js
3.Add input(
id=txt_dateSabt
) to dynaform and create data picker with this java script code$("#txt_dateSabt").find("input").datepicker();
Sample dynaform with jalali date picker