BUGFIX CMSMain->delete()/deletefromlive() return to "Pages" overview when permanently deleting the record (= no readonly view available)

This commit is contained in:
Ingo Schommer 2012-03-12 13:26:43 +01:00
parent e9c7fb5e1e
commit a097266ded

View File

@ -687,8 +687,8 @@ class CMSMain extends LeftAndMain implements CurrentPageIdentifier, PermissionPr
) )
); );
// nothing to return // Redirect to pages overview
return ''; return $this->redirect(singleton('CMSPagesController')->Link());
} }
/** /**
@ -764,16 +764,20 @@ class CMSMain extends LeftAndMain implements CurrentPageIdentifier, PermissionPr
$record->Title $record->Title
) )
); );
// need a valid ID value even if the record doesn't have one in the database
// (its still present in the live tables)
$liveRecord = Versioned::get_one_by_stage(
'SiteTree',
'Live',
"\"SiteTree_Live\".\"ID\" = $recordID"
);
// If no live record exists, redirect to pages list
if(!$liveRecord) return $this->redirect(singleton('CMSPagesController')->Link());
if($this->isAjax()) { if($this->isAjax()) {
// need a valid ID value even if the record doesn't have one in the database $form = $this->getEditForm($liveRecord->ID);
// (its still present in the live tables) return $form->forTemplate();
$liveRecord = Versioned::get_one_by_stage(
'SiteTree',
'Live',
"\"SiteTree_Live\".\"ID\" = $recordID"
);
return ($liveRecord) ? $form->forTemplate() : "";
} else { } else {
$this->redirectBack(); $this->redirectBack();
} }