function webform_component_update in Webform 7.3
Same name and namespace in other branches
- 5.2 webform_components.inc \webform_component_update()
- 6.3 includes/webform.components.inc \webform_component_update()
- 6.2 webform_components.inc \webform_component_update()
- 7.4 includes/webform.components.inc \webform_component_update()
Update an existing component with new values.
Parameters
$component: A full component containing a nid, cid, and all other fields from the component form. Additional properties are stored in the extra array.
2 calls to webform_component_update()
- webform_component_edit_form_submit in includes/
webform.components.inc - Submit handler for webform_component_edit_form().
- webform_node_update in ./
webform.module - Implements hook_node_update().
File
- includes/
webform.components.inc, line 810 - Webform module component handling.
Code
function webform_component_update($component) {
// Allow modules to modify the component before saving.
foreach (module_implements('webform_component_presave') as $module) {
$function = $module . '_webform_component_presave';
$function($component);
}
$component['value'] = isset($component['value']) ? $component['value'] : NULL;
$component['mandatory'] = isset($component['mandatory']) ? $component['mandatory'] : 0;
$component['extra']['private'] = isset($component['extra']['private']) ? $component['extra']['private'] : 0;
db_update('webform_component')
->fields(array(
'pid' => $component['pid'],
'form_key' => $component['form_key'],
'name' => $component['name'],
'type' => $component['type'],
'value' => isset($component['value']) ? $component['value'] : '',
'extra' => serialize($component['extra']),
'mandatory' => $component['mandatory'],
'weight' => $component['weight'],
))
->condition('nid', $component['nid'])
->condition('cid', $component['cid'])
->execute();
// Post-update actions.
module_invoke_all('webform_component_update', $component);
}