From 367f2298972137ba9c1c1c1acc0ed3ae951303bf Mon Sep 17 00:00:00 2001 From: Andrew O'Neil Date: Mon, 24 Sep 2007 05:04:21 +0000 Subject: [PATCH] Save & Publish fixes, merged from trunk r42087 and r42082 git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/cms/branches/2.1.0@42502 467b73ca-7a2a-4603-9d3b-597d59a354a9 --- code/LeftAndMain.php | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/code/LeftAndMain.php b/code/LeftAndMain.php index 9b91ff17..1cfb6357 100644 --- a/code/LeftAndMain.php +++ b/code/LeftAndMain.php @@ -425,8 +425,6 @@ JS; FormResponse::add("$('sitetree').setNodeIdx(\"$id\", \"$record->ID\");"); FormResponse::add("$('Form_EditForm').elements.ID.value = \"$record->ID\";"); } - - $title = Convert::raw2js($record->TreeTitle()); if($added = DataObjectLog::getAdded('SiteTree')) { foreach($added as $page) { @@ -447,7 +445,6 @@ JS; } } - FormResponse::add("$('sitetree').setNodeTitle(\"$record->ID\", \"$title\");"); $message = "Saved."; @@ -479,20 +476,23 @@ JS; $record->write(); - $result .= $this->getActionUpdateJS($record); - FormResponse::status_message($message, "good"); - - FormResponse::update_status($record->Status); - - - } - - // If the 'Save & Publish' button was clicked, also publish the page - if(isset($urlParams['publish']) && $urlParams['publish'] == 1) { - $this->performPublish($record); - return $this->tellBrowserAboutPublicationChange($record, "Published '$record->Title' successfully"); - } else { - return FormResponse::respond(); + // If the 'Save & Publish' button was clicked, also publish the page + if(isset($urlParams['publish']) && $urlParams['publish'] == 1) { + $this->performPublish($record); + // BUGFIX: Changed icon sometimes shows after "Save & Publish" button is clicked http://support.silverstripe.com/gsoc/ticket/31 + $record->setClassName($record->ClassName); + $newClass = $record->ClassName; + $publishedRecord = $record->newClassInstance($newClass); + return $this->tellBrowserAboutPublicationChange($publishedRecord, "Published '$record->Title' successfully"); + } else { + // BUGFIX: Changed icon only shows after Save button is clicked twice http://support.silverstripe.com/gsoc/ticket/76 + $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(); + } } }