Page MenuHomePhabricator

D18764.id45029.diff
No OneTemporary

D18764.id45029.diff

diff --git a/src/applications/differential/query/DifferentialRevisionRequiredActionResultBucket.php b/src/applications/differential/query/DifferentialRevisionRequiredActionResultBucket.php
--- a/src/applications/differential/query/DifferentialRevisionRequiredActionResultBucket.php
+++ b/src/applications/differential/query/DifferentialRevisionRequiredActionResultBucket.php
@@ -138,7 +138,7 @@
$results = array();
foreach ($objects as $key => $object) {
- if (!$this->hasReviewersWithStatus($object, $phids, $reviewing, false)) {
+ if (!$this->hasReviewersWithStatus($object, $phids, $reviewing, true)) {
continue;
}
diff --git a/src/applications/differential/query/DifferentialRevisionResultBucket.php b/src/applications/differential/query/DifferentialRevisionResultBucket.php
--- a/src/applications/differential/query/DifferentialRevisionResultBucket.php
+++ b/src/applications/differential/query/DifferentialRevisionResultBucket.php
@@ -54,7 +54,7 @@
DifferentialRevision $revision,
array $phids,
array $statuses,
- $current = null) {
+ $include_voided = null) {
foreach ($revision->getReviewers() as $reviewer) {
$reviewer_phid = $reviewer->getReviewerPHID();
@@ -67,11 +67,10 @@
continue;
}
- if ($current !== null) {
+ if ($include_voided !== null) {
if ($status == DifferentialReviewerStatus::STATUS_ACCEPTED) {
- $diff_phid = $revision->getActiveDiffPHID();
- $is_current = $reviewer->isAccepted($diff_phid);
- if ($is_current !== $current) {
+ $is_voided = (bool)$reviewer->getVoidedPHID();
+ if ($is_voided !== $include_voided) {
continue;
}
}
diff --git a/src/applications/differential/view/DifferentialReviewersView.php b/src/applications/differential/view/DifferentialReviewersView.php
--- a/src/applications/differential/view/DifferentialReviewersView.php
+++ b/src/applications/differential/view/DifferentialReviewersView.php
@@ -47,6 +47,7 @@
$action_phid = $reviewer->getLastActionDiffPHID();
$is_current_action = $this->isCurrent($action_phid);
+ $is_voided = (bool)$reviewer->getVoidedPHID();
$comment_phid = $reviewer->getLastCommentDiffPHID();
$is_current_comment = $this->isCurrent($comment_phid);
@@ -86,7 +87,7 @@
break;
case DifferentialReviewerStatus::STATUS_ACCEPTED:
- if ($is_current_action) {
+ if ($is_current_action && !$is_voided) {
$icon = PHUIStatusItemView::ICON_ACCEPT;
$color = 'green';
if ($authority_name !== null) {
@@ -97,7 +98,12 @@
} else {
$icon = 'fa-check-circle-o';
$color = 'bluegrey';
- if ($authority_name !== null) {
+
+ if (!$is_current_action && $is_voided) {
+ // The reviewer accepted the revision, but later the author
+ // used "Request Review" to request an updated review.
+ $label = pht('Accepted Earlier');
+ } else if ($authority_name !== null) {
$label = pht('Accepted Prior Diff (by %s)', $authority_name);
} else {
$label = pht('Accepted Prior Diff');

File Metadata

Mime Type
text/plain
Expires
Tue, May 21, 5:03 PM (3 w, 4 d ago)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
6304912
Default Alt Text
D18764.id45029.diff (3 KB)

Event Timeline