vTiger 终于在6.0.0发布的不久再一次更新到6.1.0了。
个人认为6.0.0是个开始,6.1.0就算是正式进入现代的WEB世界了。
至于vTiger CRM是做什么用的,有什么好的地方,偶就不介绍了,网上的资料太多了。
本人只是vTiger的一个爱好者,所以从今天开始会陆续不断的发布一些针对vTiger的优化补丁,以便于更适合咱们中国人使用,哈哈。
下面是vTiger CRM 6.1.0 的资源信息
官网地址:https://www.vtiger.com
官方在线演示地址: https://demo.vtiger.com/index.php
官方源码下载地址: https://www.vtiger.com/open-source-downloads/
声明:此博文会被陆续更新,在下方会持续增加更新的内容。
@ ============================================================= @
[+]新增 [-]删除 [^]升级 [V]优化 [#]修复 【】重要
(2014-10-09) [设置数据汉化部分] [跳转查看]
(2014-10-09) [跳转查看]
[^] JS 控件的汉化记录
chosen(下拉框)
修改文件:/libraries/jquery/chosen/chosen.jquery.js 此文件为 chosen 控件的未进行压缩的源码。
大概98行:
this.default_text_default = this.is_multiple ? "Select Some Options" : "Select an Option";
修改为:
if ( typeof app.vtranslate == 'function' )
{ this.default_text_default = this.is_multiple ? app.vtranslate('JS_SELECT_AN_OPTION') : app.vtranslate('JS_SELECT_AN_OPTION'); }
else
{ this.default_text_default = this.is_multiple ? "Select Some Options" : "Select an Option"; }
调用vTiger的语言函数来进行翻译
validationEngine (输入框验证)
此控件本身没有什么问题,只是因为在 includes/runtime/Controller.php 中的 getHeaderScripts 方法是使用 Vtiger_Language_Handler::getShortLanguageName()
来获取当前的语言环境的,然后中文这个家伙比较特殊 通常为 zh-CN、zh-TW、zh-HK,然后他获取的方法只是提取了 zh 也就是说在vTiger中要加载JS的语言包需要将
中文的扩展名修改为zh.js才可以,所以偶就附加了一个文件 /libraries/jquery/posabsolute-jQuery-Validation-Engine/js/languages
datepicker (日期选择)
本来挺标准的一个东西,然后vTiger 6.1.0 版本中附加上了 bootstrap 的 eternicode-bootstrap-datepicker 所以语言就被这个玩意给控制了,当然 bootstrap 的
这个也附带有语言包,但同样会面临到上面说的 zh后面的那个杠杠的问题,因为这个控件获取当前语言的方式是根据当前HTML中的Body对象中的附加属性language中的值
代码在 resources/app.js 491 行
var language = jQuery('body').data('language');
var lang = language.split('_');
坑爹还是取了个_用来分割,所以还是剩下了孤独的zh,所以偶干脆就省事(当然也是效率最高的方式,因为不用多一个HTTP的请求)直接在
libraries/bootstrap/js/eternicode-bootstrap-datepicker/js/bootstrap-datepicker.js 中的 574 行直接附加了 zh 的翻译,代码就不贴了,直接看文件就好。
datepick (日期选择的扩展)
增加文件: libraries/jquery/jquery.datepick.package-4.1.0/jquery.datepick-zh.js 同上一样的问题,所以馁懂滴……
修改文件:
modules\Settings\Workflows\views\Edit.php [189 行]
modules\Reports\views\ChartEdit.php [263 行]
modules\Reports\views\Edit.php [332 行]
增加代码:
// 获取当前的语言 修正没有加载语言补丁的Bug 2014-10-09 12:41:54 By Coco老爸
$currentLanguage = Vtiger_Language_Handler::getShortLanguageName();
$jsFileNames[] = "~libraries/jquery/jquery.datepick.package-4.1.0/jquery.datepick-$currentLanguage.js";
[^] TPL 的修改记录
layouts
└─vlayout
└─modules
├─Settings
│ ├─Profiles
│ │ DetailView.tpl # 调整了一下因为中文后那几个小圆点和文件之间的间距
│ │
│ └─Vtiger
│ ListViewContents.tpl # 增加了状态字段内容的翻译 也就是那个 Active 的东东
│
├─Users
│ ListViewContents.tpl # 增加了状态字段内容的翻译 也就是那个 Active 的东东
│
└─Vtiger
ModalFooter.tpl # 只是调整了一下那个《取消》按钮的对齐
[^] PHP 的修改记录
modules
├─Reports
│ └─views
│ ChartEdit.php
│ Edit.php
│
└─Settings
└─Workflows
└─views
Edit.php
全部是为了修正 datepick (日期选择的扩展) 加载语言文件而已。
modules
└─Settings
├─CronTasks
│ └─models
│ Module.php # 将定时任务的描述显示出来
(2014-10-08) [跳转查看]
[#] 修复2014-09-25增加的左侧边栏收缩效果的Bug
[V] 设置优化 之 取消跳转验证 2010-10-08 可选择使用 [跳转查看]
[V] 中文补丁 (设置模块) Title 2010-10-08 可选择使用 [跳转查看]
(2014-09-25) [跳转查看]
[+] 将所有主题的默认字体修改为 'Microsoft Yahei'
[^] 将列表界面的左边栏的收缩增加动画效果,需HTML5浏览器支持。
[#] 修复部分因为CSS原因造成的不整齐的问题。