Changeset View
Changeset View
Standalone View
Standalone View
src/view/phui/PHUITimelineEventView.php
Show All 10 Lines | final class PHUITimelineEventView extends AphrontView { | ||||
private $dateCreated; | private $dateCreated; | ||||
private $anchor; | private $anchor; | ||||
private $isEditable; | private $isEditable; | ||||
private $isEdited; | private $isEdited; | ||||
private $transactionPHID; | private $transactionPHID; | ||||
private $isPreview; | private $isPreview; | ||||
private $eventGroup = array(); | private $eventGroup = array(); | ||||
private $hideByDefault; | private $hideByDefault; | ||||
private $token; | |||||
private $tokenRemoved; | |||||
public function setHideByDefault($hide_by_default) { | public function setHideByDefault($hide_by_default) { | ||||
$this->hideByDefault = $hide_by_default; | $this->hideByDefault = $hide_by_default; | ||||
return $this; | return $this; | ||||
} | } | ||||
public function getHideByDefault() { | public function getHideByDefault() { | ||||
return $this->hideByDefault; | return $this->hideByDefault; | ||||
▲ Show 20 Lines • Show All 82 Lines • ▼ Show 20 Lines | public function setIcon($icon) { | ||||
return $this; | return $this; | ||||
} | } | ||||
public function setColor($color) { | public function setColor($color) { | ||||
$this->color = $color; | $this->color = $color; | ||||
return $this; | return $this; | ||||
} | } | ||||
public function setToken($token, $removed=false) { | |||||
$this->token = $token; | |||||
$this->tokenRemoved = $removed; | |||||
return $this; | |||||
} | |||||
public function getEventGroup() { | public function getEventGroup() { | ||||
return array_merge(array($this), $this->eventGroup); | return array_merge(array($this), $this->eventGroup); | ||||
} | } | ||||
public function addEventToGroup(PHUITimelineEventView $event) { | public function addEventToGroup(PHUITimelineEventView $event) { | ||||
$this->eventGroup[] = $event; | $this->eventGroup[] = $event; | ||||
return $this; | return $this; | ||||
} | } | ||||
▲ Show 20 Lines • Show All 48 Lines • ▼ Show 20 Lines | if ($title !== null || $extra) { | ||||
'span', | 'span', | ||||
array( | array( | ||||
'class' => 'phui-timeline-icon sprite-icons '. | 'class' => 'phui-timeline-icon sprite-icons '. | ||||
'icons-'.$this->icon.'-white', | 'icons-'.$this->icon.'-white', | ||||
), | ), | ||||
'')); | '')); | ||||
} | } | ||||
$token = null; | |||||
if ($this->token) { | |||||
$token = id(new PHUIIconView()) | |||||
->addClass('phui-timeline-token') | |||||
->setSpriteSheet(PHUIIconView::SPRITE_TOKENS) | |||||
->setSpriteIcon($this->token); | |||||
if ($this->tokenRemoved) { | |||||
$token->addClass('strikethrough'); | |||||
} | |||||
} | |||||
$title = phutil_tag( | $title = phutil_tag( | ||||
'div', | 'div', | ||||
array( | array( | ||||
'class' => implode(' ', $title_classes), | 'class' => implode(' ', $title_classes), | ||||
), | ), | ||||
array($icon, $title, $extra)); | array($icon, $token, $title, $extra)); | ||||
} | } | ||||
return $title; | return $title; | ||||
} | } | ||||
public function render() { | public function render() { | ||||
$events = $this->getEventGroup(); | $events = $this->getEventGroup(); | ||||
▲ Show 20 Lines • Show All 196 Lines • Show Last 20 Lines |