You are here

function field_weight_node_update in Field display weights (per node) 7.2

Implements hook_node_update().

When we create a new revision, we want to copy the field_weight definitions from the old revision if any exist.

File

./field_weight.module, line 355
Field display weight module.

Code

function field_weight_node_update($node) {

  // Don't need to do anything if no new revision
  if ($node->original->vid !== $node->vid) {
    $field_weights = field_weight_get_node_weight($node->original->vid);

    // ...or if there are no field weights
    if ($field_weights) {

      // And just save it with the new vid
      db_merge('field_weight')
        ->key(array(
        'vid' => $node->vid,
      ))
        ->fields(array(
        'nid' => $node->nid,
        'vid' => $node->vid,
        'type' => $node->type,
        'field_weights' => serialize($field_weights),
      ))
        ->execute();
    }
  }
}