vTiger CRM 6.1.0 更新补丁 20150109

注释:此补丁其实早就已经做好,只是一直没有时间打包发布,就算是迟来的礼物吧!


[+]新增 [-]删除 [^]升级 [#]修复 【】重要


(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 # 将定时任务的描述显示出来

补丁下载地址:http://pan.baidu.com/s/1i3AAFHz

你可能感兴趣的:(crm,vTiger,6.1.0,优化补丁,20150109)