});
return allMatched;
},
+ getUFGroupModel: function() {
+ var ufGroupModel = this;
+
+ // set proper entity model based on selected profile
+ var contactTypes = ['Individual', 'Household', 'Organization'];
+ var profileType = ufGroupModel.get('group_type');
+ profileType = profileType.split(',');
+ var ufEntityModel;
+ _.each(profileType, function (ptype) {
+ if ($.inArray(ptype, contactTypes) > -1) {
+ ufEntityModel = [
+ {'entity_name': 'contact_1', 'entity_type': ptype + 'Model'}
+ ];
+ return true;
+ }
+ });
+
+ return ufEntityModel;
+ },
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(profileSelectorView.options.ufEntities);
+ ufGroupModel.getRel('ufEntityCollection').reset(ufGroupModel.getUFGroupModel());
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(profileSelectorView.options.ufEntities);
+ ufGroupModel.getRel('ufEntityCollection').reset(ufGroupModel.getUFGroupModel());
ufGroupModel.getRel('ufFieldCollection').reset(_.values(formData["api.UFField.get"].values));
options.onLoad(ufGroupModel.deepCopy());
}