mohamad wrote: ↑Mon Mar 25, 2019 4:07 pm
I want to make the Jalali calendar in all of ProcessMaker's parts like process information, inbox,process map, and where ever.
At the moment, I can make Jalali calendar in dynaforms, How can I make it? Probably, I have to change various files in different paths to solve my problem. I would be appreciated if you help me so as to tackle my issue
This is going to be difficult and it is probably better to not try to do this. However, if you are crazy enough to try, here are 4 possible ways to do this:
1. Maybe you could edit the file workflow/engine/src/ProcessMaker/Util/DateTime.php and change the functions convertTimeZone() and convertDataToTimeZone() to convert to a Jalali date.
2. Another option is to change the code of workflow/engine/classes/model/AppDelegation.php and workflow/engine/classes/model/Application.php files to write Jalali dates to the APP_DELEGATION and APPLICATION tables. For example, you could change $this->setDelDelegateDate(...) to code to insert a Jalali date, but MySQL expects the datetime fields to be written in the format "YYYY-MM-DD HH:MM:SS". (You might have to change these fields from datetime to string. I don't know how Jalali dates work, so I can't really tell you what is necessary.)
3. Create a plugin that displays your own case lists in place of the Home
page or create an external web page to display the case lists using REST or web services. You can replace all the datetimes with Jalali dates.
4. Use the Custom Case List Builder
to display the Jalali Dates in separate columns. This is probably the easiest solution and the only one that I can recommend. To get the datetimes for a case, you can use the Cases::LoadCase(@@APPLICATION, @%INDEX) function in a trigger to get information about the the current case. See: https://wiki.processmaker.com/3.0/Inter ... Case.28.29