if (!empty($defaults)) {
foreach ($profileFields as $key => $val) {
-
if (array_key_exists($key, $defaults)) {
$htmlType = CRM_Utils_Array::value('html_type', $val);
if ($htmlType == 'Radio') {
- $elements["onbehalf[{$key}]"]['type'] = $htmlType;
- $elements["onbehalf[{$key}]"]['value'] = $defaults[$key];
+ $elements["onbehalf_{$key}"]['type'] = $htmlType;
+ $elements["onbehalf_{$key}"]['value'] = $defaults[$key];
}
elseif ($htmlType == 'CheckBox') {
+ $elements["onbehalf_{$key}"]['type'] = $htmlType;
foreach ($defaults[$key] as $k => $v) {
- $elements["onbehalf[{$key}][{$k}]"]['type'] = $htmlType;
- $elements["onbehalf[{$key}][{$k}]"]['value'] = $v;
+ $elements["onbehalf_{$key}"]['value'][$k] = $v;
}
}
elseif ($htmlType == 'Multi-Select') {
}
if (data[ele].type == 'Radio') {
if (data[ele].value) {
- cj("input[name='"+ ele +"']").filter("[value=" + data[ele].value + "]").prop('checked', true);
+ var fldName = ele.replace('onbehalf_', '');
+ cj("input[name='onbehalf["+ fldName +"]']").filter("[value='" + data[ele].value + "']").prop('checked', true);
}
}
else if (data[ele].type == 'CheckBox') {
- if (data[ele].value) {
- cj("input[name='"+ ele +"']").prop('checked','checked');
+ for (var selectedOption in data[ele].value) {
+ var fldName = ele.replace('onbehalf_', '');
+ cj("input[name='onbehalf["+ fldName+"]["+ selectedOption +"]']").prop('checked','checked');
}
}
else if (data[ele].type == 'Multi-Select') {
}
}
else {
- cj('#' + ele ).val(data[ele].value).change();
+ // do not set defaults to file type fields
+ if (cj('#' + ele).attr('type') != 'file') {
+ cj('#' + ele ).val(data[ele].value).change();
+ }
}
}
},