function content_lock_content_lock_skip_locking in Content locking (anti-concurrent editing) 6
Same name and namespace in other branches
- 6.2 content_lock.module \content_lock_content_lock_skip_locking()
- 7.3 content_lock.module \content_lock_content_lock_skip_locking()
- 7 content_lock.module \content_lock_content_lock_skip_locking()
- 7.2 content_lock.module \content_lock_content_lock_skip_locking()
File
- ./content_lock.module, line 207
- Allows users to lock documents for modification.
Code
function content_lock_content_lock_skip_locking($node, $form_id, $form, $form_state) {
global $user;
$nid = $form['nid']['#value'];
$node_type_blacklist = array(
'user' => TRUE,
);
$form_id_blacklist = array(
'comment_form' => TRUE,
);
if ($node != NULL) {
$form_id_blacklist['node_type_form'] = TRUE;
}
drupal_alter('content_lock_form_id_blacklist', $form_id_blacklist, $node);
if ($node_type_blacklist[$node->type] === TRUE || $form_id_blacklist[$form_id] === TRUE || $user->uid <= 0 || !user_access('check out documents') || $node == NULL || empty($nid)) {
return TRUE;
}
$old_format = $node->format;
if (!empty($form_state['values']['content_lock_old_format'])) {
$old_format = $form_state['values']['content_lock_old_format'];
}
$form['content_lock_old_format'] = array(
'#type' => 'hidden',
'#value' => $old_format,
);
$node->content_lock_old_format = $old_format;
if (!_content_lock_is_lockable_node($node)) {
return TRUE;
}
return FALSE;
}