You are here

function _nodehierarchy_record_save in Node Hierarchy 7.4

Save a nodehierarchy record, resetting weights if applicable

2 calls to _nodehierarchy_record_save()
nodehierarchy_menu_overview_form_submit in nodehierarchy_menu/nodehierarchy_menu.module
Save the new weight for a nodehierarchy item after a reorder.
_nodehierarchy_save_node in ./nodehierarchy.admin.inc
Do the actual insertion or update. No permissions checking is done here.

File

./nodehierarchy.admin.inc, line 889
Admin functions for Node Hierarchy

Code

function _nodehierarchy_record_save(&$item) {
  if (!empty($item->nhid)) {

    // Remove the item if it's no longer needed.
    if (empty($item->pnid)) {
      _nodehierarchy_record_delete($item->nhid);
    }
    else {
      $existing_item = _nodehierarchy_record_load($item->nhid);

      // If the parent has been changed:
      if ($existing_item->pnid !== $item->pnid) {
        $item->cweight = _nodehierarchy_get_parent_next_child_weight($item->pnid);
      }
    }
  }
  else {
    $item->cweight = _nodehierarchy_get_parent_next_child_weight($item->pnid);
  }
  if ($item->pnid) {
    _nodehierarchy_record_write($item);
  }
}