Changeset View
Changeset View
Standalone View
Standalone View
src/view/phui/PHUITimelineEventView.php
| Show All 26 Lines | final class PHUITimelineEventView extends AphrontView { | ||||
| private $reallyMajorEvent; | private $reallyMajorEvent; | ||||
| private $hideCommentOptions = false; | private $hideCommentOptions = false; | ||||
| private $authorPHID; | private $authorPHID; | ||||
| private $badges = array(); | private $badges = array(); | ||||
| private $pinboardItems = array(); | private $pinboardItems = array(); | ||||
| private $isSilent; | private $isSilent; | ||||
| private $isMFA; | private $isMFA; | ||||
| private $isLockOverride; | private $isLockOverride; | ||||
| private $canInteract; | |||||
| public function setAuthorPHID($author_phid) { | public function setAuthorPHID($author_phid) { | ||||
| $this->authorPHID = $author_phid; | $this->authorPHID = $author_phid; | ||||
| return $this; | return $this; | ||||
| } | } | ||||
| public function getAuthorPHID() { | public function getAuthorPHID() { | ||||
| return $this->authorPHID; | return $this->authorPHID; | ||||
| ▲ Show 20 Lines • Show All 66 Lines • ▼ Show 20 Lines | public function setIsEditable($is_editable) { | ||||
| $this->isEditable = $is_editable; | $this->isEditable = $is_editable; | ||||
| return $this; | return $this; | ||||
| } | } | ||||
| public function getIsEditable() { | public function getIsEditable() { | ||||
| return $this->isEditable; | return $this->isEditable; | ||||
| } | } | ||||
| public function setCanInteract($can_interact) { | |||||
| $this->canInteract = $can_interact; | |||||
| return $this; | |||||
| } | |||||
| public function getCanInteract() { | |||||
| return $this->canInteract; | |||||
| } | |||||
| public function setIsRemovable($is_removable) { | public function setIsRemovable($is_removable) { | ||||
| $this->isRemovable = $is_removable; | $this->isRemovable = $is_removable; | ||||
| return $this; | return $this; | ||||
| } | } | ||||
| public function getIsRemovable() { | public function getIsRemovable() { | ||||
| return $this->isRemovable; | return $this->isRemovable; | ||||
| } | } | ||||
| ▲ Show 20 Lines • Show All 520 Lines • ▼ Show 20 Lines | $extra = javelin_tag( | ||||
| $extra)); | $extra)); | ||||
| return $extra; | return $extra; | ||||
| } | } | ||||
| private function getMenuItems($anchor) { | private function getMenuItems($anchor) { | ||||
| $xaction_phid = $this->getTransactionPHID(); | $xaction_phid = $this->getTransactionPHID(); | ||||
| $can_interact = $this->getCanInteract(); | |||||
| $viewer = $this->getViewer(); | |||||
| $is_admin = $viewer->getIsAdmin(); | |||||
| $items = array(); | $items = array(); | ||||
| if ($this->getIsEditable()) { | if ($this->getIsEditable()) { | ||||
| $items[] = id(new PhabricatorActionView()) | $items[] = id(new PhabricatorActionView()) | ||||
| ->setIcon('fa-pencil') | ->setIcon('fa-pencil') | ||||
| ->setHref('/transactions/edit/'.$xaction_phid.'/') | ->setHref('/transactions/edit/'.$xaction_phid.'/') | ||||
| ->setName(pht('Edit Comment')) | ->setName(pht('Edit Comment')) | ||||
| ->addSigil('transaction-edit') | ->addSigil('transaction-edit') | ||||
| ->setDisabled(!$can_interact) | |||||
| ->setMetadata( | ->setMetadata( | ||||
| array( | array( | ||||
| 'anchor' => $anchor, | 'anchor' => $anchor, | ||||
| )); | )); | ||||
| } | } | ||||
| if ($this->getQuoteTargetID()) { | if ($this->getQuoteTargetID()) { | ||||
| $ref = null; | $ref = null; | ||||
| ▲ Show 20 Lines • Show All 53 Lines • ▼ Show 20 Lines | if ($this->getIsEdited()) { | ||||
| ->setName(pht('View Edit History')) | ->setName(pht('View Edit History')) | ||||
| ->setWorkflow(true); | ->setWorkflow(true); | ||||
| } | } | ||||
| if ($this->getIsRemovable()) { | if ($this->getIsRemovable()) { | ||||
| $items[] = id(new PhabricatorActionView()) | $items[] = id(new PhabricatorActionView()) | ||||
| ->setType(PhabricatorActionView::TYPE_DIVIDER); | ->setType(PhabricatorActionView::TYPE_DIVIDER); | ||||
| $items[] = id(new PhabricatorActionView()) | $remove_item = id(new PhabricatorActionView()) | ||||
| ->setIcon('fa-trash-o') | ->setIcon('fa-trash-o') | ||||
| ->setHref('/transactions/remove/'.$xaction_phid.'/') | ->setHref('/transactions/remove/'.$xaction_phid.'/') | ||||
| ->setName(pht('Remove Comment')) | ->setName(pht('Remove Comment')) | ||||
| ->setColor(PhabricatorActionView::RED) | |||||
| ->addSigil('transaction-remove') | ->addSigil('transaction-remove') | ||||
| ->setMetadata( | ->setMetadata( | ||||
| array( | array( | ||||
| 'anchor' => $anchor, | 'anchor' => $anchor, | ||||
| )); | )); | ||||
| if (!$is_admin && !$can_interact) { | |||||
| $remove_item->setDisabled(!$is_admin && !$can_interact); | |||||
| } else { | |||||
| $remove_item->setColor(PhabricatorActionView::RED); | |||||
| } | |||||
| $items[] = $remove_item; | |||||
| } | } | ||||
| return $items; | return $items; | ||||
| } | } | ||||
| } | } | ||||