SugarCRM日历模块:记录为链接

时间:2014-04-21 18:48:14

标签: javascript php sugarcrm

有没有办法让日历模块上显示的记录(任务,电话,会议等)已经显示为记录本身的链接?在CE 6.5.16中,它们只是常规文本字段,它是"信息"它们旁边的图标允许用户导航到记录的详细信息视图。

有关详细信息,请参阅此处: http://tinypic.com/view.php?pic=2ai31vb&s=8#.U1VnfPldVCY

我希望通过将其作为链接从一开始就可以为我的用户提供便利。虽然我一直在使用/modules/Calendar/Cal.js,我认为这是将它们作为链接的来源,但我没有取得任何进展。有没有人做过类似于我试图做的任何修改?有没有办法让它升级安全?

1 个答案:

答案 0 :(得分:0)

最后想出了如何解决这个问题,但这不是安全升级。我只需要修改一个文件:modules / Calendar / Calendar.js。要创建任务/会议/呼叫名称作为其各自详细信息视图的链接,您必须输入以下行:

item.name = item.name.link("http://xxx.x.x.x/<crm-root>/index.php?action=DetailView&module=" +item.module_name + "&record=" + item.record);

之后:

time_start="...&nbsp;";          

之前:

var head_text=CAL.get_header_text(item.type,time_start,item.name,item.record);

但是,这只会影响月度日历视图。要进行此更改也会影响每周和每日日历视图,请在以下位置添加相同的行:

CAL.basic.remove(item);if(CAL.style=="basic"||item.days>1){CAL.basic.add(item);return;}

之前:

var head_text=CAL.get_header_text(item.type,item.time_start,item.name,item.record);

这些更改会使名称成为链接,但是会出现2个恼人的问题。 一个是在每周和每日视图中,会议和呼叫的状态通常在名称下定义。更改后,它将显示为“未定义”。要解决此问题并显示正确的状态,请执行此行所在的更改:

var el=CAL.create_item({item:item,type:'advanced',head_text:head_text, ...

找到

"item_text:item_text" 

在该行内并将其更改为

"item_text:item.status"

在月度/日历视图上点击会议或通话记录时,还会显示编辑视图弹出窗口的另一个问题。我想我将来会解决这个问题,但现在这样做了。