diff --git a/src/applications/phriction/controller/PhrictionEditController.php b/src/applications/phriction/controller/PhrictionEditController.php index c18a77d953..c2df932fb5 100644 --- a/src/applications/phriction/controller/PhrictionEditController.php +++ b/src/applications/phriction/controller/PhrictionEditController.php @@ -14,10 +14,12 @@ final class PhrictionEditController $request = $this->getRequest(); $user = $request->getUser(); + $current_version = null; if ($this->id) { $document = id(new PhrictionDocumentQuery()) ->setViewer($user) ->withIDs(array($this->id)) + ->needContent(true) ->requireCapabilities( array( PhabricatorPolicyCapability::CAN_VIEW, @@ -28,6 +30,8 @@ final class PhrictionEditController return new Aphront404Response(); } + $current_version = $document->getContent()->getVersion(); + $revert = $request->getInt('revert'); if ($revert) { $content = id(new PhrictionContent())->loadOneWhere( @@ -38,7 +42,7 @@ final class PhrictionEditController return new Aphront404Response(); } } else { - $content = id(new PhrictionContent())->load($document->getContentID()); + $content = $document->getContent(); } } else { @@ -56,6 +60,7 @@ final class PhrictionEditController if ($document) { $content = $document->getContent(); + $current_version = $content->getVersion(); } else { if (PhrictionDocument::isProjectSlug($slug)) { $project = id(new PhabricatorProjectQuery()) @@ -104,7 +109,6 @@ final class PhrictionEditController $overwrite = $request->getBool('overwrite'); if (!$overwrite) { $edit_version = $request->getStr('contentVersion'); - $current_version = $content->getVersion(); if ($edit_version != $current_version) { $dialog = $this->newDialog() ->setTitle(pht('Edit Conflict!')) @@ -229,7 +233,7 @@ final class PhrictionEditController ->setAction($request->getRequestURI()->getPath()) ->addHiddenInput('slug', $document->getSlug()) ->addHiddenInput('nodraft', $request->getBool('nodraft')) - ->addHiddenInput('contentVersion', $content->getVersion()) + ->addHiddenInput('contentVersion', $current_version) ->appendChild( id(new AphrontFormTextControl()) ->setLabel(pht('Title')) diff --git a/src/applications/phriction/controller/PhrictionHistoryController.php b/src/applications/phriction/controller/PhrictionHistoryController.php index 622747e525..a5e00d5633 100644 --- a/src/applications/phriction/controller/PhrictionHistoryController.php +++ b/src/applications/phriction/controller/PhrictionHistoryController.php @@ -108,25 +108,27 @@ final class PhrictionHistoryController if ($vs_previous) { $item->addIcon( - 'arrow_left', + 'fa-reply', pht('Show Change'), array( 'href' => $vs_previous, )); } else { - $item->addIcon('arrow_left-grey', + $item->addIcon( + 'fa-reply grey', phutil_tag('em', array(), pht('No previous change'))); } if ($vs_head) { $item->addIcon( - 'merge', + 'fa-reply-all', pht('Show Later Changes'), array( 'href' => $vs_head, )); } else { - $item->addIcon('merge-grey', + $item->addIcon( + 'fa-reply-all grey', phutil_tag('em', array(), pht('No later changes'))); }