0

我对 Sugarcrm 有一个非常具体的问题。

我正在使用版本Enterprise 6.5.16,我走到了死胡同。

我目前拥有的:

当用户在他的主页上时,他有一个名为“我的未决案例”的 Dashlet,其中显示了分配给/或​​由他创建的每个未决案例。

对于此 dashlet 的每一行,我们都会显示一个 quickEdit 图标。(你知道,小笔)。当用户点击那个小图标时,它会打开快速创建(或快速编辑?)弹出窗口。

我想要实现的是:

我希望,当用户单击该图标时,Sugar 不会打开弹出窗口,而是在 EditView 上打开一个新的浏览器选项卡。

所以基本上,在主页上,当用户想要从仪表板编辑“Case01--Issue”,而不是弹出快速创建(或快速编辑)表单时,我想打开一个新的浏览器选项卡,其中包含“Case01”的完整编辑视图 - 问题”。

我需要做什么?我在 custom/modules/Cases/metadata/dashletviewdefs.php 或其他地方都没有看到图标的定义。

提前感谢您的帮助和时间!

盖尔

4

3 回答 3

0

您应该创建自己的 dashlet(复制现有的“自定义”文件夹中的一个),将所有标准条目替换为您自己的。也添加 DashletGenericDisplay.tpl 的副本,并将其命名为 CustomMyCasesDashlet.tpl。不需要扩展 MyCasesDashlet 类。您可以留下“扩展 DashletGeneric”。在构造函数 CustomMyCasesDashlet() 中只需添加以下行:

$this->displayTpl = 'custom/modules/Cases/Dashlets/CustomMyCasesDashlet/CustomMyCasesDashlet.tpl';

注意$this->。有必要覆盖 DashletGeneric 字段。

于 2014-12-26T12:40:59.820 回答
0

“我的案例”dashlet 和大多数 dashlet 扩展了 DashletGeneric 类,该类位于/include/Dashlets/DashletGeneric.php. 这使用了同一目录下的模板文件 DashletGenericDisplay.tpl,这是显示快速编辑按钮的模板。

要删除或更改快速编辑按钮,您将扩展 My Cases 并坚持使用您自己创建的自定义 smarty 模板。在/custom/modules/Cases/Dashlets/CustomMyCasesDashlet/CustomMyCasesDashlet.php你可能有以下内容:

<?php
require_once('modules/Cases/Dashlets/MyCasesDashlet/MyCasesDashlet.php');
class CustomMyCasesDashlet extends MyCasesDashlet{
  $displayTpl = 'custom/modules/Cases/Dashlets/CustomMyCasesDashlet/CustomMyCasesDashlet.tpl';
}

然后,您将原始模板复制到 CustomMyCasesDashlet::displayTpl 引用的新文件和位置,并根据需要进行调整。

为了使您的 Dashlet 在系统中正确注册,您还需要您的 CustomMyCasesDashlet.meta.php 文件。将原始文件复制到您的自定义目录并根据需要调整标签——关键是用 CustomMyCasesDashlet 替换对 MyCasesDashlet 的引用。

于 2014-03-18T20:07:42.163 回答
0

modules/Cases/Dashlets/MyCasesDashlet/MyCasesDashlet.php复制文件并将其粘贴到custom/modules/Cases/Dashlets/MyCasesDashlet/MyCasesDashlet

如果自定义目录中没有 Cases 文件夹,请创建一个。

复制文件后,添加一个属性以加载您的自定义 TPL 文件。

默认 DashletGenericDisplay.tpl 文件位于 include/Dashlets/

class MyCasesDashlet extends DashletGeneric {

    var $displayTpl = "custom/modules/Cases/Dashlets/DashletGenericDisplay.tpl";
于 2018-10-26T08:52:51.977 回答