'commented on', self::ACTION_ACCEPT => 'accepted', self::ACTION_REJECT => 'requested changes to', self::ACTION_RETHINK => 'planned changes to', self::ACTION_ABANDON => 'abandoned', self::ACTION_CLOSE => 'closed', self::ACTION_REQUEST => 'requested a review of', self::ACTION_RECLAIM => 'reclaimed', self::ACTION_UPDATE => 'updated', self::ACTION_RESIGN => 'resigned from', self::ACTION_SUMMARIZE => 'summarized', self::ACTION_TESTPLAN => 'explained the test plan for', self::ACTION_CREATE => 'created', self::ACTION_ADDREVIEWERS => 'added reviewers to', self::ACTION_ADDCCS => 'added CCs to', self::ACTION_CLAIM => 'commandeered', self::ACTION_REOPEN => 'reopened', ); if (!empty($verbs[$action])) { return $verbs[$action]; } else { return 'brazenly "'.$action.'ed"'; } } public static function getActionVerb($action) { $verbs = array( self::ACTION_COMMENT => pht('Comment'), self::ACTION_ACCEPT => pht("Accept Revision \xE2\x9C\x94"), self::ACTION_REJECT => pht("Request Changes \xE2\x9C\x98"), self::ACTION_RETHINK => pht("Plan Changes \xE2\x9C\x98"), self::ACTION_ABANDON => pht('Abandon Revision'), self::ACTION_REQUEST => pht('Request Review'), self::ACTION_RECLAIM => pht('Reclaim Revision'), self::ACTION_RESIGN => pht('Resign as Reviewer'), self::ACTION_ADDREVIEWERS => pht('Add Reviewers'), self::ACTION_ADDCCS => pht('Add CCs'), self::ACTION_CLOSE => pht('Close Revision'), self::ACTION_CLAIM => pht('Commandeer Revision'), self::ACTION_REOPEN => pht('Reopen'), ); if (!empty($verbs[$action])) { return $verbs[$action]; } else { return 'brazenly '.$action; } } public static function allowReviewers($action) { if ($action == DifferentialAction::ACTION_ADDREVIEWERS || $action == DifferentialAction::ACTION_REQUEST || $action == DifferentialAction::ACTION_RESIGN) { return true; } return false; } }