elofgren: BUGFIX: Fix the following Save/Publish bugs:

"Changed icon only shows after Save button is clicked twice" http://support.silverstripe.com/gsoc/ticket/76 
"Changed icon sometimes shows after "Save & Publish" button is clicked" http://support.silverstripe.com/gsoc/ticket/31 
(merged from branches/gsoc)


git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/cms/trunk@42080 467b73ca-7a2a-4603-9d3b-597d59a354a9
This commit is contained in:
Ingo Schommer 2007-09-16 15:02:57 +00:00
parent 51f02e506b
commit 5dc37e418d

View File

@ -433,8 +433,6 @@ JS;
FormResponse::add("$('Form_EditForm').elements.ID.value = \"$record->ID\";"); FormResponse::add("$('Form_EditForm').elements.ID.value = \"$record->ID\";");
} }
$title = Convert::raw2js($record->TreeTitle());
if($added = DataObjectLog::getAdded('SiteTree')) { if($added = DataObjectLog::getAdded('SiteTree')) {
foreach($added as $page) { foreach($added as $page) {
if($page->ID != $record->ID) $result .= $this->addTreeNodeJS($page); if($page->ID != $record->ID) $result .= $this->addTreeNodeJS($page);
@ -454,7 +452,6 @@ JS;
} }
} }
FormResponse::add("$('sitetree').setNodeTitle(\"$record->ID\", \"$title\");");
$message = _t('LeftAndMain.SAVEDUP'); $message = _t('LeftAndMain.SAVEDUP');
@ -486,19 +483,25 @@ JS;
$record->write(); $record->write();
$result .= $this->getActionUpdateJS($record); // If the 'Save & Publish' button was clicked, also publish the page
FormResponse::status_message($message, "good"); if (isset($urlParams['publish']) && $urlParams['publish'] == 1) {
$this->performPublish($record);
FormResponse::update_status($record->Status); // BUGFIX: Changed icon sometimes shows after "Save & Publish" button is clicked http://support.silverstripe.com/gsoc/ticket/31
if(substr($id,0,3) != 'new') {
$publishedRecord = DataObject::get_one($className, "`$className`.ID = $id");
} } else {
// If the 'Save & Publish' button was clicked, also publish the page $publishedRecord = $this->getNewItem($id, false);
if (isset($urlParams['publish']) && $urlParams['publish'] == 1) { }
$this->performPublish($record); return $this->tellBrowserAboutPublicationChange($publishedRecord, "Published '$record->Title' successfully");
return $this->tellBrowserAboutPublicationChange($record, "Published '$record->Title' successfully"); } else {
} else { // BUGFIX: Changed icon only shows after Save button is clicked twice http://support.silverstripe.com/gsoc/ticket/76
return FormResponse::respond(); $title = Convert::raw2js($record->TreeTitle());
FormResponse::add("$('sitetree').setNodeTitle(\"$record->ID\", \"$title\");");
$result .= $this->getActionUpdateJS($record);
FormResponse::status_message($message, "good");
FormResponse::update_status($record->Status);
return FormResponse::respond();
}
} }
} }