function draggableviews_handler_cck::save in DraggableViews 6.3
Overrides draggableviews_handler::save
File
- modules/
draggableviews_cck/ draggableviews_handler_cck.inc, line 27 - The default implementation for draggableviews.
Class
Code
function save($nid, $value) {
$node = node_load(array(
'nid' => $nid,
));
$type = content_types($node->type);
// Get field.
if (isset($type['fields'][$this->real_field_name])) {
$field =& $node->{$this->real_field_name};
}
else {
// This note doesn't this field.
return;
}
if (!isset($value)) {
// Sometimes there is no value available (e.g. a root node without a parent).
$value = 0;
}
// Differ between certain field types.
switch ($this->field_type) {
case 'nodereference':
$field[0]['nid'] = $value;
break;
default:
case 'number_integer':
$field[0]['value'] = $value;
break;
}
// If we didn't set $node->date then node_submit() would set it to the current timestamp.
$node->date = format_date($node->created, 'custom', 'Y-m-d H:i:s O');
// Submit node: Set teaser, format, author and date.
node_submit($node);
// Finally save the node.
node_save($node);
}