Error message

You are browsing documentation for drupal 7.x, which is not supported anymore. Read the updated version of this page for drupal 11.x (the latest version).

function node_object_prepare

Prepares a node object for editing.

Fills in a few default values, and then invokes hook_prepare() on the node type module, and hook_node_prepare() on all modules.

Parameters

$node: A node object.

1 call to node_object_prepare()
node_form in modules/node/node.pages.inc
Form constructor for the node add/edit form.

File

modules/node/node.module, line 979

Code

function node_object_prepare ($node) {
 // Set up default values, if required.
 $node_options = variable_get ('node_options_' . $node->type , array(
 'status',
 'promote',
 ));
 // If this is a new node, fill in the default values.
 if (!isset($node->nid) || isset($node->is_new )) {
 foreach (array(
 'status',
 'promote',
 'sticky',
 ) as $key) {
 // Multistep node forms might have filled in something already.
 if (!isset($node->{$key})) {
 $node->{$key} = (int) in_array ($key, $node_options);
 }
 }
 global $user;
 $node->uid = $user->uid;
 $node->created = REQUEST_TIME ;
 }
 else {
 $node->date = format_date ($node->created, 'custom', 'Y-m-d H:i:s O');
 // Remove the log message from the original node object.
 $node->log = NULL;
 }
 // Always use the default revision setting.
 $node->revision = in_array ('revision', $node_options);
 node_invoke ($node, 'prepare');
 module_invoke_all ('node_prepare', $node);
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.