Same name and namespace in other branches
  1. 4.7.x modules/node.module \node_form_submit()
  2. 5.x modules/node/node.module \node_form_submit()
  3. 7.x modules/node/node.pages.inc \node_form_submit()
1 string reference to 'node_form_submit'
node_form in modules/node/node.pages.inc
Generate the node add/edit form array.

File

modules/node/node.pages.inc, line 453
Page callbacks for adding, editing, deleting, and revisions management for content.

Code

function node_form_submit($form, &$form_state) {
  global $user;
  $node = node_form_submit_build_node($form, $form_state);
  $insert = empty($node->nid);
  node_save($node);
  $node_link = l(t('view'), 'node/' . $node->nid);
  $watchdog_args = array(
    '@type' => $node->type,
    '%title' => $node->title,
  );
  $t_args = array(
    '@type' => node_get_types('name', $node),
    '%title' => $node->title,
  );
  if ($insert) {
    watchdog('content', '@type: added %title.', $watchdog_args, WATCHDOG_NOTICE, $node_link);
    drupal_set_message(t('@type %title has been created.', $t_args));
  }
  else {
    watchdog('content', '@type: updated %title.', $watchdog_args, WATCHDOG_NOTICE, $node_link);
    drupal_set_message(t('@type %title has been updated.', $t_args));
  }
  if ($node->nid) {
    unset($form_state['rebuild']);
    $form_state['nid'] = $node->nid;
    $form_state['redirect'] = 'node/' . $node->nid;
  }
  else {

    // In the unlikely case something went wrong on save, the node will be
    // rebuilt and node form redisplayed the same way as in preview.
    drupal_set_message(t('The post could not be saved.'), 'error');
  }
}