Differential D15396 Diff 37133 src/applications/differential/constants/DifferentialRevisionStatus.php
Changeset View
Changeset View
Standalone View
Standalone View
src/applications/differential/constants/DifferentialRevisionStatus.php
<?php | <?php | ||||
/** | /** | ||||
* NOTE: you probably want {@class:ArcanistDifferentialRevisionStatus}. | * NOTE: you probably want {@class:ArcanistDifferentialRevisionStatus}. | ||||
* This class just contains a mapping for color within the Differential | * This class just contains a mapping for color within the Differential | ||||
* application. | * application. | ||||
*/ | */ | ||||
final class DifferentialRevisionStatus extends Phobject { | final class DifferentialRevisionStatus extends Phobject { | ||||
const COLOR_STATUS_DEFAULT = 'status'; | const COLOR_STATUS_DEFAULT = 'bluegrey'; | ||||
const COLOR_STATUS_DARK = 'status-dark'; | const COLOR_STATUS_DARK = 'indigo'; | ||||
const COLOR_STATUS_GREEN = 'status-green'; | const COLOR_STATUS_BLUE = 'blue'; | ||||
const COLOR_STATUS_RED = 'status-red'; | const COLOR_STATUS_GREEN = 'green'; | ||||
const COLOR_STATUS_RED = 'red'; | |||||
public static function getRevisionStatusColor($status) { | public static function getRevisionStatusColor($status) { | ||||
$default = self::COLOR_STATUS_DEFAULT; | $default = self::COLOR_STATUS_DEFAULT; | ||||
$map = array( | $map = array( | ||||
ArcanistDifferentialRevisionStatus::NEEDS_REVIEW => | ArcanistDifferentialRevisionStatus::NEEDS_REVIEW => | ||||
self::COLOR_STATUS_DEFAULT, | self::COLOR_STATUS_DEFAULT, | ||||
ArcanistDifferentialRevisionStatus::NEEDS_REVISION => | ArcanistDifferentialRevisionStatus::NEEDS_REVISION => | ||||
self::COLOR_STATUS_RED, | self::COLOR_STATUS_RED, | ||||
ArcanistDifferentialRevisionStatus::CHANGES_PLANNED => | ArcanistDifferentialRevisionStatus::CHANGES_PLANNED => | ||||
self::COLOR_STATUS_RED, | self::COLOR_STATUS_RED, | ||||
ArcanistDifferentialRevisionStatus::ACCEPTED => | ArcanistDifferentialRevisionStatus::ACCEPTED => | ||||
self::COLOR_STATUS_GREEN, | self::COLOR_STATUS_GREEN, | ||||
ArcanistDifferentialRevisionStatus::CLOSED => | ArcanistDifferentialRevisionStatus::CLOSED => | ||||
self::COLOR_STATUS_DARK, | self::COLOR_STATUS_DARK, | ||||
ArcanistDifferentialRevisionStatus::ABANDONED => | ArcanistDifferentialRevisionStatus::ABANDONED => | ||||
self::COLOR_STATUS_DARK, | self::COLOR_STATUS_DARK, | ||||
ArcanistDifferentialRevisionStatus::IN_PREPARATION => | ArcanistDifferentialRevisionStatus::IN_PREPARATION => | ||||
self::COLOR_STATUS_DARK, | self::COLOR_STATUS_BLUE, | ||||
); | ); | ||||
return idx($map, $status, $default); | return idx($map, $status, $default); | ||||
} | } | ||||
public static function getRevisionStatusIcon($status) { | public static function getRevisionStatusIcon($status) { | ||||
$default = 'fa-square-o bluegrey'; | $default = 'fa-square-o bluegrey'; | ||||
$map = array( | $map = array( | ||||
ArcanistDifferentialRevisionStatus::NEEDS_REVIEW => | ArcanistDifferentialRevisionStatus::NEEDS_REVIEW => | ||||
'fa-square-o bluegrey', | 'fa-square-o bluegrey', | ||||
ArcanistDifferentialRevisionStatus::NEEDS_REVISION => | ArcanistDifferentialRevisionStatus::NEEDS_REVISION => | ||||
'fa-refresh red', | 'fa-refresh', | ||||
ArcanistDifferentialRevisionStatus::CHANGES_PLANNED => | ArcanistDifferentialRevisionStatus::CHANGES_PLANNED => | ||||
'fa-headphones red', | 'fa-headphones', | ||||
ArcanistDifferentialRevisionStatus::ACCEPTED => | ArcanistDifferentialRevisionStatus::ACCEPTED => | ||||
'fa-check green', | 'fa-check', | ||||
ArcanistDifferentialRevisionStatus::CLOSED => | ArcanistDifferentialRevisionStatus::CLOSED => | ||||
'fa-check-square-o', | 'fa-check-square-o', | ||||
ArcanistDifferentialRevisionStatus::ABANDONED => | ArcanistDifferentialRevisionStatus::ABANDONED => | ||||
'fa-check-square-o', | 'fa-plane', | ||||
ArcanistDifferentialRevisionStatus::IN_PREPARATION => | ArcanistDifferentialRevisionStatus::IN_PREPARATION => | ||||
'fa-question-circle blue', | 'fa-question-circle', | ||||
); | ); | ||||
return idx($map, $status, $default); | return idx($map, $status, $default); | ||||
} | } | ||||
public static function renderFullDescription($status) { | public static function renderFullDescription($status) { | ||||
$color = self::getRevisionStatusColor($status); | |||||
$status_name = | $status_name = | ||||
ArcanistDifferentialRevisionStatus::getNameForRevisionStatus($status); | ArcanistDifferentialRevisionStatus::getNameForRevisionStatus($status); | ||||
$img = id(new PHUIIconView()) | $tag = id(new PHUITagView()) | ||||
->setIcon(self::getRevisionStatusIcon($status)); | ->setName($status_name) | ||||
->setIcon(self::getRevisionStatusIcon($status)) | |||||
$tag = phutil_tag( | ->setShade(self::getRevisionStatusColor($status)) | ||||
'span', | ->setType(PHUITagView::TYPE_SHADE); | ||||
array( | |||||
'class' => 'phui-header-status phui-header-'.$color, | |||||
), | |||||
array( | |||||
$img, | |||||
$status_name, | |||||
)); | |||||
return $tag; | return $tag; | ||||
} | } | ||||
public static function getClosedStatuses() { | public static function getClosedStatuses() { | ||||
$statuses = array( | $statuses = array( | ||||
ArcanistDifferentialRevisionStatus::CLOSED, | ArcanistDifferentialRevisionStatus::CLOSED, | ||||
ArcanistDifferentialRevisionStatus::ABANDONED, | ArcanistDifferentialRevisionStatus::ABANDONED, | ||||
Show All 30 Lines |