2

我想将 processmaker 中随处显示的日期更改为另一种格式(波斯日历)。我有我的自定义类来格式化日期。覆盖返回格式化日期的默认函数的最佳方法是什么?我刚刚在 G 类中找到了 CurDate 方法。更改了它的返回值,但日期仍以公历格式显示。还有其他格式化日期的方法吗?

如果可能的话,我更喜欢 OOP 解决方案来覆盖默认功能而不是破解核心。

谢谢。

4

1 回答 1

4

http://processmakerplus.com/

对于 PM2.x 中的 daynaform

1.添加 jalali.js下载)文件到路径\opt\processmaker\gulliver\js\widgets\pcal

\processmaker\gulliver\js\maborak\core\maborak.js2.像这样更改路径更改设置日历中的maborak文件

 Calendar.setup({
        inputField: id,
        ifFormat: mask,
        dateType: 'jalali',
        button: id + "[btn]",
        bottomBar: true,
        showsTime: showTIme,
        opacity: 1,
    });

maborak.js

3.在路径\processmaker\gulliver\system\class.headPublisher.php中,function printHeader ()您必须将 jalali.js 文件添加到标题 dynaform,如 $this->addScriptFile("/js/widgets/pcal/jalali.js");class.publisher.php

对于其他地方,如主页的当前日期顶部必须在路径processmaker\workflow\engine\skinEngine\skinEngine.phpfunction _default()替换中

$smarty->assign('udate', G::getformatedDate(date('Y-m-d'), 'M d, yyyy', SYS_LANG))

include_once("includes/inc.jdf.php");
$smarty->assign('udate', jdate('d F Y'));   

对于 PM 3.x 中的 dynaform

1.将引导日期选择器文件(下载)添加到路径processmaker\workflow\public_html\lib\pmdynaform\libs\datepicker\jalali

2.将此文件地址添加到外部库中

/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.将input( id=txt_dateSabt) 添加到 dynaform 并使用此 java 脚本代码创建数据选择器$("#txt_dateSabt").find("input").datepicker();

带有 jalali 日期选择器的示例 dynaform 在此处输入图像描述 在此处输入图像描述

于 2015-07-23T03:57:34.940 回答