diff --git a/code/controllers/CMSMain.php b/code/controllers/CMSMain.php index 11b53ef6..45cfcdb7 100644 --- a/code/controllers/CMSMain.php +++ b/code/controllers/CMSMain.php @@ -203,7 +203,9 @@ class CMSMain extends LeftAndMain implements CurrentPageIdentifier, PermissionPr } function LinkPageAdd() { - return singleton("CMSPageAddController")->Link(); + $link = singleton("CMSPageAddController")->Link(); + $this->extend('updateLinkPageAdd', $link); + return $link; } /** diff --git a/code/model/ErrorPage.php b/code/model/ErrorPage.php index 67548e82..16ac0ce6 100644 --- a/code/model/ErrorPage.php +++ b/code/model/ErrorPage.php @@ -88,6 +88,7 @@ class ErrorPage extends Page { // Ensure a static error page is created from latest error page content $response = Director::test(Director::makeRelative($pageNotFoundErrorPage->Link())); + $written = null; if($fh = fopen($pageNotFoundErrorPagePath, 'w')) { $written = fwrite($fh, $response->getBody()); fclose($fh); @@ -115,6 +116,7 @@ class ErrorPage extends Page { // Ensure a static error page is created from latest error page content $response = Director::test(Director::makeRelative($serverErrorPage->Link())); + $written = null; if($fh = fopen($serverErrorPagePath, 'w')) { $written = fwrite($fh, $response->getBody()); fclose($fh); diff --git a/javascript/SiteTreeURLSegmentField.js b/javascript/SiteTreeURLSegmentField.js index 1d1a6e8f..2605ac5a 100644 --- a/javascript/SiteTreeURLSegmentField.js +++ b/javascript/SiteTreeURLSegmentField.js @@ -11,9 +11,13 @@ * Constructor: onmatch */ onmatch : function() { - this._addActions(); // add elements and actions for editing - this.edit(); // toggle - this._autoInputWidth(); // set width of input field + // Only initialize the field if it contains an editable field. + // This ensures we don't get bogus previews on readonly fields. + if(this.find(':text').length) { + this._addActions(); // add elements and actions for editing + this.edit(); // toggle + this._autoInputWidth(); // set width of input field + } this._super(); },