var ufEntityModel;
_.each(profileType, function (ptype) {
if ($.inArray(ptype, contactTypes) > -1) {
- ufEntityModel = [
- {'entity_name': 'contact_1', 'entity_type': ptype + 'Model'}
- ];
+ ufEntityModel = ptype + 'Model';
return true;
}
});
return ufEntityModel;
},
+ setUFGroupModel: function(entityType, allEntityModels) {
+ var ufGroupModel = this;
+
+ var newUfEntityModels = [];
+ _.each(allEntityModels, function (values) {
+ if (values.entity_name == 'contact_1') {
+ values.entity_type = entityType;
+ }
+ newUfEntityModels.push(new CRM.UF.UFEntityModel(values));
+ });
+
+ ufGroupModel.getRel('ufEntityCollection').reset(newUfEntityModels);
+ },
resetEntities: function() {
var ufGroupModel = this;
var deleteFieldList = [];
success: function(formData) {
// Note: With chaining, API returns some extraneous keys that aren't part of UFGroupModel
var ufGroupModel = new CRM.UF.UFGroupModel(_.pick(formData, _.keys(CRM.UF.UFGroupModel.prototype.schema)));
- ufGroupModel.getRel('ufEntityCollection').reset(ufGroupModel.getUFGroupModel());
+ ufGroupModel.setUFGroupModel(ufGroupModel.getUFGroupModel(), profileSelectorView.options.ufEntities);
ufGroupModel.getRel('ufFieldCollection').reset(_.values(formData["api.UFField.get"].values));
options.onLoad(ufGroupModel);
}
success: function(formData) {
// Note: With chaining, API returns some extraneous keys that aren't part of UFGroupModel
var ufGroupModel = new CRM.UF.UFGroupModel(_.pick(formData, _.keys(CRM.UF.UFGroupModel.prototype.schema)));
- ufGroupModel.getRel('ufEntityCollection').reset(ufGroupModel.getUFGroupModel());
+ ufGroupModel.setUFGroupModel(ufGroupModel.getUFGroupModel(), profileSelectorView.options.ufEntities);
ufGroupModel.getRel('ufFieldCollection').reset(_.values(formData["api.UFField.get"].values));
options.onLoad(ufGroupModel.deepCopy());
}