move populate assigned user and assigned teams to view
This commit is contained in:
@@ -84,7 +84,8 @@
|
||||
"columns": {
|
||||
"role": "userRole"
|
||||
},
|
||||
"view": "User.Fields.Teams"
|
||||
"view": "views/user/fields/teams",
|
||||
"default": "javascript: return {teamsIds: []}"
|
||||
},
|
||||
"roles": {
|
||||
"type": "linkMultiple",
|
||||
|
||||
@@ -122,7 +122,6 @@ Espo.define('controllers/record', 'controller', function (Dep) {
|
||||
create: function (options) {
|
||||
options = options || {};
|
||||
this.getModel(function (model) {
|
||||
model.populateDefaults();
|
||||
if (options.relate) {
|
||||
model.setRelate(options.relate);
|
||||
}
|
||||
|
||||
@@ -98,34 +98,23 @@ Espo.define('model', [], function () {
|
||||
var defaultValue = this.getFieldParam(field, 'default');
|
||||
|
||||
if (defaultValue != null) {
|
||||
var defaultValue = this._getDefaultValue(defaultValue);
|
||||
var defaultValue = this.parseDefaultValue(defaultValue);
|
||||
defaultHash[field] = defaultValue;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var user = this.getUser();
|
||||
if (user) {
|
||||
if (this.hasField('assignedUser')) {
|
||||
this.set('assignedUserId', this.getUser().id);
|
||||
this.set('assignedUserName', this.getUser().get('name'));
|
||||
}
|
||||
var defaultTeamId = this.getUser().get('defaultTeamId');
|
||||
if (defaultTeamId) {
|
||||
if (this.hasField('teams') && !this.getFieldParam('teams', 'default')) {
|
||||
defaultHash['teamsIds'] = [defaultTeamId];
|
||||
defaultHash['teamsNames'] = {};
|
||||
defaultHash['teamsNames'][defaultTeamId] = this.getUser().get('defaultTeamName')
|
||||
}
|
||||
defaultHash = Espo.Utils.cloneDeep(defaultHash);
|
||||
for (var attr in defaultHash) {
|
||||
if (this.has(attr)) {
|
||||
delete defaultHash[attr];
|
||||
}
|
||||
}
|
||||
|
||||
defaultHash = Espo.Utils.cloneDeep(defaultHash);
|
||||
|
||||
this.set(defaultHash, {silent: true});
|
||||
},
|
||||
|
||||
_getDefaultValue: function (defaultValue) {
|
||||
parseDefaultValue: function (defaultValue) {
|
||||
if (typeof defaultValue == 'string' && defaultValue.indexOf('javascript:') === 0 ) {
|
||||
var code = defaultValue.substring(11);
|
||||
defaultValue = (new Function( "with(this) { " + code + "}")).call(this);
|
||||
|
||||
@@ -115,7 +115,6 @@ Espo.define('views/modals/edit', 'views/modal', function (Dep) {
|
||||
}, this);
|
||||
model.fetch();
|
||||
} else {
|
||||
model.populateDefaults();
|
||||
if (this.options.relate) {
|
||||
model.setRelate(this.options.relate);
|
||||
}
|
||||
|
||||
@@ -429,6 +429,33 @@ Espo.define('views/record/base', ['view', 'view-record-helper'], function (Dep,
|
||||
return data;
|
||||
},
|
||||
|
||||
populateDefaults: function () {
|
||||
this.model.populateDefaults();
|
||||
|
||||
var defaultHash = {};
|
||||
|
||||
if (this.model.hasField('assignedUser')) {
|
||||
defaultHash['assignedUserId'] = this.getUser().id;
|
||||
defaultHash['assignedUserName'] = this.getUser().get('name');
|
||||
}
|
||||
var defaultTeamId = this.getUser().get('defaultTeamId');
|
||||
if (defaultTeamId) {
|
||||
if (this.model.hasField('teams') && !this.model.getFieldParam('teams', 'default')) {
|
||||
defaultHash['teamsIds'] = [defaultTeamId];
|
||||
defaultHash['teamsNames'] = {};
|
||||
defaultHash['teamsNames'][defaultTeamId] = this.getUser().get('defaultTeamName')
|
||||
}
|
||||
}
|
||||
|
||||
for (var attr in defaultHash) {
|
||||
if (this.model.has(attr)) {
|
||||
delete defaultHash[attr];
|
||||
}
|
||||
}
|
||||
|
||||
this.model.set(defaultHash, {silent: true});
|
||||
},
|
||||
|
||||
showDuplicate: function (duplicates) {
|
||||
},
|
||||
|
||||
|
||||
@@ -75,6 +75,9 @@ Espo.define('views/record/edit', 'views/record/detail', function (Dep) {
|
||||
},
|
||||
|
||||
setup: function () {
|
||||
if (this.model.isNew()) {
|
||||
this.populateDefaults();
|
||||
}
|
||||
Dep.prototype.setup.call(this);
|
||||
},
|
||||
|
||||
|
||||
Reference in New Issue
Block a user