Commit bea70831 authored by webchick's avatar webchick
Browse files

Issue #1429442 by Jody Lynn, gnuget, nrambeck, sun: Fixed Access denied page...

Issue #1429442 by Jody Lynn, gnuget, nrambeck, sun: Fixed Access denied page shown after submitting form that creates a unpublished node.
parent 3daa24de
......@@ -70,6 +70,7 @@ function testForumIndexStatus() {
'status' => FALSE,
);
$this->drupalPost("node/{$node->nid}/edit", $edit, t('Save'));
$this->drupalGet("node/{$node->nid}");
$this->assertText(t('Access denied'), 'Unpublished node is no longer accessible.');
// Verify that the node no longer appears on the index.
......
......@@ -391,7 +391,7 @@ public function save(array $form, array &$form_state) {
if ($node->nid) {
$form_state['values']['nid'] = $node->nid;
$form_state['nid'] = $node->nid;
$form_state['redirect'] = 'node/' . $node->nid;
$form_state['redirect'] = node_access('view', $node) ? 'node/' . $node->nid : '<front>';
}
else {
// In the unlikely case something went wrong on save, the node will be
......
......@@ -95,4 +95,23 @@ function testFailedPageCreation() {
$records = db_query("SELECT wid FROM {watchdog} WHERE variables LIKE '%Test exception for rollback.%'")->fetchAll();
$this->assertTrue(count($records) > 0, t('Rollback explanatory error logged to watchdog.'));
}
/**
* Create an unpublished node and confirm correct redirect behavior.
*/
function testUnpublishedNodeCreation() {
// Set "Basic page" content type to be unpublished by default.
variable_set('node_options_page', array());
// Set the front page to the default "node" page.
config('system.site')->set('page.front', 'node')->save();
// Create a node.
$edit = array();
$edit["title"] = $this->randomName(8);
$edit["body[" . LANGUAGE_NOT_SPECIFIED . "][0][value]"] = $this->randomName(16);
$this->drupalPost('node/add/page', $edit, t('Save'));
// Check that the user was redirected to the home page.
$this->assertText(t('Welcome to Drupal'), t('The user is redirected to the home page.'));
}
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment