php 自定义字段erp,在SuiteCRM中创建自定义字段类型
像许多SuiteCRM一样,字段类型是可自定义的,您可以添加自己的字段类型。这篇文章将说明如何将颜色选择器添加为自定义字段类型。
SuiteCRM LOGO
首先,我们需要为Studio添加选项,以允许创建我们新类型的字段。为此,我们添加了一个custom/modules/DynamicFields/templates/Fields/TemplateColourPicker.php 包含以下内容的新文件 :
if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
require_once('modules/DynamicFields/templates/Fields/TemplateField.php');
class TemplateColourPicker extends TemplateField{
var $type='ColourPicker';
function get_field_def(){
$def = parent::get_field_def();
$def['dbType'] = 'varchar';
return $def;
}
}
接下来,我们创建语言文件 custom/Extensionmodules/ModuleBuilder/Ext/Language/en_us.ColourPicker.php 并为我们的新字段类型定义标签:
$mod_strings['fieldTypes']['ColourPicker'] = 'Colour Picker';
快速修复并重建后,这使我们可以选择创建一个类型为“ Colour Picker”的字段:
然后可以按常规方式通过工作室将其添加到视图等中。
但是,我们的领域很无聊,并且什么也没做。让我们给它一些个性。
我们将使用TinyColorPicker向该字段添加一些功能。这将保存在一个新目录中custom/include/SugarFields/Fields/ColourPicker/js/jqColorPicker.min.js
接下来,我们将添加两个模板,其中一个用于Detail视图custom/include/SugarFields/Fields/ColourPicker/DetailView.tpl:
{if strlen({{sugarvar key='value' string=true}}) <= 0}
{assign var="value" value={{sugarvar key='default_value' string=true}} }
{else}
{assign var="value" value={{sugarvar key='value' string=true}} }
{/if}
id='{{if empty($displayParams.idName)}}{{sugarvar key='name'}}{{else}}{{$displayParams.idName}}{{/if}}' size='{{$displayParams.size|default:30}}'
{{if isset($displayParams.maxlength)}}maxlength='{{$displayParams.maxlength}}'{{elseif isset($vardef.len)}}maxlength='{{$vardef.len}}'{{/if}}
value='{$value}' title='{{$vardef.help}}' {{if !empty($tabindex)}} tabindex='{{$tabindex}}' {{/if}}
{{if !empty($displayParams.accesskey)}} accesskey='{{$displayParams.accesskey}}' {{/if}} {{$displayParams.field}}>
{literal}
$(document).ready(function(){
$('#{/literal}{{if empty($displayParams.idName)}}{{sugarvar key='name'}}{{else}}{{$displayParams.idName}}{{/if}}{literal}').colorPicker();
});
{/literal}
另一个用于编辑视图 custom/include/SugarFields/Fields/ColourPicker/EditView.tpl:
{if strlen({{sugarvar key='value' string=true}}) <= 0}
{assign var="value" value={{sugarvar key='default_value' string=true}} }
{else}
{assign var="value" value={{sugarvar key='value' string=true}} }
{/if}
id='{{if empty($displayParams.idName)}}{{sugarvar key='name'}}{{else}}{{$displayParams.idName}}{{/if}}' size='{{$displayParams.size|default:30}}'
{{if isset($displayParams.maxlength)}}maxlength='{{$displayParams.maxlength}}'{{elseif isset($vardef.len)}}maxlength='{{$vardef.len}}'{{/if}}
value='{$value}' title='{{$vardef.help}}' {{if !empty($tabindex)}} tabindex='{{$tabindex}}' {{/if}}
{{if !empty($displayParams.accesskey)}} accesskey='{{$displayParams.accesskey}}' {{/if}} {{$displayParams.field}}>
{literal}
$(document).ready(function(){
$('#{/literal}{{if empty($displayParams.idName)}}{{sugarvar key='name'}}{{else}}{{$displayParams.idName}}{{/if}}{literal}').colorPicker();
});
{/literal}
快速修复和重建后(并假定已将字段添加到视图中)。您会看到新字段:
SuiteCRM 全功能,不限用户,3600元/终生使用
SuiteCRM 与 Salesforce 和 Dynamics 一样强大,具有更高的技术独立性和定制性。业务咨询与服务,请联系:188-9654-1629
我们提供的服务包括:插件开发、主题开发、安装和配置、CRM升级、CRM部署、支持与维护、用户培训…
推荐阅读
php 自定义字段erp,在SuiteCRM中创建自定义字段类型相关推荐
- hive 元数据 自定义_如何在Hive中创建自定义函数UDF及如何直接通过Impala的同步元数据重用UDF的jar文件-阿里云开发者社区...
如何在Hive中创建自定义函数UDF及使用 如何在Impala中使用Hive的自定义函数 UDF函数开发 使用Intellij工具开发Hive的UDF函数,进行编译: 1.使用Intellij工具通过 ...
- java 自定义事件_在Java中创建自定义事件
你可能想调查一下观测器模式. 下面是一些让自己开始工作的示例代码:import java.util.*;// An interface to be implemented by everyone in ...
- 微软word开机自启动_如何在Microsoft Word中创建自定义封面
微软word开机自启动 A great cover page draws in readers. If you use Microsoft Word, you're in luck, because ...
- 在OpenCart中创建自定义送货方式:第一部分
尽管OpenCart核心本身提供了许多有用的运送方法,但始终有机会需要创建自己的运送方法. 另一方面,作为一名Web开发人员,您将始终尝试探索自己选择的框架,以了解如何创建自己的自定义内容! 在本系列 ...
- 如何在android中创建自定义对话框?
本文翻译自:How to create a Custom Dialog box in android? I want to create a custom dialog box like below ...
- NI Multisim元件库:在Multisim中创建自定义元器件
转载于: http://www.ni.com/tutorial/3173/zhs/ 概览 「在Multisim中创建自定义元器件」与「在 NI Ultiboard中创建自定义元器件」为您提供了关于如何 ...
- 在Windows Media Player 12中创建自定义播放列表
A playlist is a group of songs or media files that are grouped together based on a theme. Today we'l ...
- 如何在ASP.NET Core中创建自定义AuthorizeAttribute?
本文翻译自:How do you create a custom AuthorizeAttribute in ASP.NET Core? I'm trying to make a custom aut ...
- 如何在WordPress中创建自定义主页
Often users ask us if it's possible to create a custom homepage in WordPress. 用户经常问我们是否可以在WordPress中 ...
- 在Fritzing中创建自定义元件
topic 参考地址: 第1步:收集所有信息 图1. 数据表中的元件尺寸 图2. ML8511分线板 图3. 所需尺寸 第2步:面包板视图 图4. 主窗口 图5. 文件属性窗口 图6. 新矩形 图8. ...
最新文章
- CF338D GCD Table(拓展中国剩余定理,细节处理,2900分)
- Bitcoin.com推出BCH新图表,加大对BCH的支持
- ZYAR20A 亚克力2驱 蓝牙 298寻迹避障机器人 —— 小车黑线循迹实验 四驱
- labelme 语义分割数据集_labelme安装以及使用教程——自制语义分割数据集(保姆级示范)...
- CF741D Arpa’s letter-marked tree and Mehrdad’s Dokhtar-kosh paths 树启 + 状压
- arm linux串口控制led,通信程序设计 - Linux下ARM和单片机的串口通信设计
- Android P (1)---开发指南
- bzoj1565【NOI2009】植物大战僵尸(最小割)
- Educational Codeforces Round 65 (Rated for Div. 2) C. News Distribution
- 互联网对实体经济的三轮冲击
- 模式识别之特征提取算法
- java764位_jdk7 64位下载
- 开源绘图工具drawio
- Pr 音频效果参考:振幅与压限
- .NET之盛派微信SDK简单操作
- Java实现打开浏览器的N种办法
- ubuntu下安装goldendict及离线词库
- 安卓执法仪录像之进程间共享内存
- 4K、高清、无水印视频素材库
- 使用pyecharts遇到的坑(去掉地图标识小红点)!