function flag_node_save in Flag 7.2
Same name and namespace in other branches
- 7.3 flag.module \flag_node_save()
Shared saving routine between flag_node_insert() and flag_node_update().
2 calls to flag_node_save()
- flag_node_insert in ./
flag.module - Implements hook_node_insert().
- flag_node_update in ./
flag.module - Implements hook_node_update().
File
- ./
flag.module, line 653 - The Flag module.
Code
function flag_node_save($node) {
global $user;
// Response to the flag checkboxes added to the form in flag_form_alter().
$remembered = FALSE;
if (isset($node->flag)) {
foreach ($node->flag as $name => $state) {
$flag = flag_get_flag($name);
// Flagging may trigger actions. We want actions to get the current
// node, not a stale database-loaded one:
if (!$remembered) {
$flag
->remember_content($node->nid, $node);
// Actions may modify a node, and we don't want to overwrite this
// modification:
$remembered = TRUE;
}
flag($state ? 'flag' : 'unflag', $name, $node->nid, $user);
}
}
}