diff --git a/code/controllers/CMSPageHistoryController.php b/code/controllers/CMSPageHistoryController.php
index 1d83e705..6f5b9b7a 100644
--- a/code/controllers/CMSPageHistoryController.php
+++ b/code/controllers/CMSPageHistoryController.php
@@ -23,24 +23,32 @@ class CMSPageHistoryController extends CMSMain {
 	/**
 	 * @return array
 	 */
-	function show() {
-		return array(
-			'EditForm' => $this->ShowVersionForm(
-				$this->request->param('VersionID')
-			)
+	function show($request) {
+		$form = $this->ShowVersionForm(
+			$request->param('VersionID')
 		);
+		if($this->isAjax()) {
+				$content = $form->forTemplate();
+		} else {
+			$content = $this->customise(array('EditForm' => $form))->renderWith($this->getViewer('show'));
+		}
+		return $content;
 	}
 	
 	/**
 	 * @return array
 	 */
-	function compare() {
-		return array(
-			'EditForm' => $this->CompareVersionsForm(
-				$this->request->param('VersionID'), 
-				$this->request->param('OtherVersionID')
-			)
+	function compare($request) {
+		$form = $this->CompareVersionsForm(
+			$request->param('VersionID'), 
+			$request->param('OtherVersionID')
 		);
+		if($this->isAjax()) {
+			$content = $form->forTemplate();
+		} else {
+			$content = $this->customise(array('EditForm' => $form))->renderWith($this->getViewer('show'));
+		}
+		return $content;
 	}
 	
 	/**
@@ -92,7 +100,7 @@ class CMSPageHistoryController extends CMSMain {
 		
 		if($compareID) {
 			$link = Controller::join_links(
-				$this->Link('version'),
+				$this->Link('show'),
 				$id
 			);