vTiger CRM 6.3 无法添加新用户:用户名灰显
vTiger CRM 6.3 Unable to add new user: username grayed out
我一直在为一家小公司使用 vTiger CRM 来简化他们的管理。到目前为止,一切都很好。但我偶然发现了以下问题:
由于某些未知原因,我无法将新用户添加到 CRM。用户名字段设置为必填,但显示为灰色,如下图所示:
在询问这里要做什么之前,我已经尝试了几件事:
- 确保设置了角色、配置文件和组。
- 在 CRM 的数据库中搜索,是否可以找到使用
SELECT * FROM vtiger_field WHERE uitype = 4
将字段设置为禁用的确切原因,但它只返回了应该被禁用的字段。不是用户名。
- 搜索 Google 是否有其他人遇到同样的问题。没有结果。
- 检查我是否可以通过 Studio 编辑字段。但是,无法编辑用户字段。
检查元素后,我认为它已设置为 readonly=""
。然而,搜索 layouts/vlayout/modules/Users/*.tpl
中的任何模板文件都没有发现任何结果。所以我认为 php 或 json 与 javascript 的结合正在改变这一点。元素的完整代码为:
<input id="Users_editView_fieldName_user_name" class="input-large " data-validation-engine="validate[required,funcCall[Vtiger_Base_Validator_Js.invokeValidation]]" name="user_name" value="" readonly="" data-fieldinfo="{"mandatory":true,"presence":true,"quickcreate":false,"masseditable":true,"defaultvalue":false,"type":"string","name":"user_name","label":"Gebruikersnaam"}" type="text">
所以现在我对如何解决这个问题有点不知所措。有没有人有这方面的经验或知道如何解决它?
原来用户名字段的uitype
设置为106
。在研究了 vTigers 代码之后,我发现我的一个模块在 modules/Users/models/View.php
:
中解决了这个问题
/**
* Function to check whether the current field is read-only
* @return <Boolean> - true/false
*/
public function isReadOnly() {
$currentUserModel = Users_Record_Model::getCurrentUserModel();
if(($currentUserModel->isAdminUser() == false && $this->get('uitype') == 98) || $this->get('uitype') == 106 || $this->get('uitype') == 156 || $this->get('uitype') == 115) {
return true;
}
}
如您所见,它禁用了 uitype = 106
: $this->get('uitype') == 106
的字段。解决方案是简单地从 if 语句中删除该条件。
我一直在为一家小公司使用 vTiger CRM 来简化他们的管理。到目前为止,一切都很好。但我偶然发现了以下问题:
由于某些未知原因,我无法将新用户添加到 CRM。用户名字段设置为必填,但显示为灰色,如下图所示:
在询问这里要做什么之前,我已经尝试了几件事:
- 确保设置了角色、配置文件和组。
- 在 CRM 的数据库中搜索,是否可以找到使用
SELECT * FROM vtiger_field WHERE uitype = 4
将字段设置为禁用的确切原因,但它只返回了应该被禁用的字段。不是用户名。 - 搜索 Google 是否有其他人遇到同样的问题。没有结果。
- 检查我是否可以通过 Studio 编辑字段。但是,无法编辑用户字段。
检查元素后,我认为它已设置为 readonly=""
。然而,搜索 layouts/vlayout/modules/Users/*.tpl
中的任何模板文件都没有发现任何结果。所以我认为 php 或 json 与 javascript 的结合正在改变这一点。元素的完整代码为:
<input id="Users_editView_fieldName_user_name" class="input-large " data-validation-engine="validate[required,funcCall[Vtiger_Base_Validator_Js.invokeValidation]]" name="user_name" value="" readonly="" data-fieldinfo="{"mandatory":true,"presence":true,"quickcreate":false,"masseditable":true,"defaultvalue":false,"type":"string","name":"user_name","label":"Gebruikersnaam"}" type="text">
所以现在我对如何解决这个问题有点不知所措。有没有人有这方面的经验或知道如何解决它?
原来用户名字段的uitype
设置为106
。在研究了 vTigers 代码之后,我发现我的一个模块在 modules/Users/models/View.php
:
/**
* Function to check whether the current field is read-only
* @return <Boolean> - true/false
*/
public function isReadOnly() {
$currentUserModel = Users_Record_Model::getCurrentUserModel();
if(($currentUserModel->isAdminUser() == false && $this->get('uitype') == 98) || $this->get('uitype') == 106 || $this->get('uitype') == 156 || $this->get('uitype') == 115) {
return true;
}
}
如您所见,它禁用了 uitype = 106
: $this->get('uitype') == 106
的字段。解决方案是简单地从 if 语句中删除该条件。