function blogapi_status_error_check
6.x blogapi.module | blogapi_status_error_check($node, $original_status) |
Check that the user has permission to save the node with the chosen status.
Return value
TRUE if no error, or the blogapi_error().
2 calls to blogapi_status_error_check()
- blogapi_blogger_edit_post in drupal-6.x/
modules/ blogapi/ blogapi.module - Blogging API callback. Modifies the specified blog node.
- blogapi_blogger_new_post in drupal-6.x/
modules/ blogapi/ blogapi.module - Blogging API callback. Inserts a new blog post as a node.
File
- drupal-6.x/
modules/ blogapi/ blogapi.module, line 326 - Enable users to post using applications that support XML-RPC blog APIs.
Code
function blogapi_status_error_check($node, $original_status) {
$node = (object) $node;
$node_type_default = variable_get('node_options_' . $node->type, array('status', 'promote'));
// If we don't have the 'administer nodes' permission and the status is
// changing or for a new node the status is not the content type's default,
// then return an error.
if (!user_access('administer nodes') && (($node->status != $original_status) || (empty($node->nid) && $node->status != in_array('status', $node_type_default)))) {
if ($node->status) {
return blogapi_error(t('You do not have permission to publish this type of post. Please save it as a draft instead.'));
}
else {
return blogapi_error(t('You do not have permission to save this post as a draft. Please publish it instead.'));
}
}
return TRUE;
}