Changeset View
Changeset View
Standalone View
Standalone View
src/view/phui/PHUIBigInfoView.php
- This file was added.
| <?php | |||||
| final class PHUIBigInfoView extends AphrontTagView { | |||||
| private $icon; | |||||
| private $title; | |||||
| private $description; | |||||
| private $actions = array(); | |||||
| public function setIcon($icon) { | |||||
| $this->icon = $icon; | |||||
| return $this; | |||||
| } | |||||
| public function setTitle($title) { | |||||
| $this->title = $title; | |||||
| return $this; | |||||
| } | |||||
| public function setDescription($description) { | |||||
| $this->description = $description; | |||||
| return $this; | |||||
| } | |||||
| public function addAction(PHUIButtonView $button) { | |||||
| $this->actions[] = $button; | |||||
| return $this; | |||||
| } | |||||
| protected function getTagName() { | |||||
| return 'div'; | |||||
| } | |||||
| protected function getTagAttributes() { | |||||
| $classes = array(); | |||||
| $classes[] = 'phui-big-info-view'; | |||||
| return array( | |||||
| 'class' => implode(' ', $classes), | |||||
| ); | |||||
| } | |||||
| protected function getTagContent() { | |||||
| require_celerity_resource('phui-big-info-view-css'); | |||||
| $icon = id(new PHUIIconView()) | |||||
| ->setIconFont($this->icon) | |||||
| ->addClass('phui-big-info-icon'); | |||||
| $icon = phutil_tag( | |||||
| 'div', | |||||
| array( | |||||
| 'class' => 'phui-big-info-icon-container', | |||||
| ), | |||||
| $icon); | |||||
| $title = phutil_tag( | |||||
| 'div', | |||||
| array( | |||||
| 'class' => 'phui-big-info-title', | |||||
| ), | |||||
| $this->title); | |||||
| $description = phutil_tag( | |||||
| 'div', | |||||
| array( | |||||
| 'class' => 'phui-big-info-description', | |||||
| ), | |||||
| $this->description); | |||||
| $buttons = array(); | |||||
| foreach ($this->actions as $button) { | |||||
| $buttons[] = phutil_tag( | |||||
| 'div', | |||||
| array( | |||||
| 'class' => 'phui-big-info-button', | |||||
| ), | |||||
| $button); | |||||
| } | |||||
| $actions = null; | |||||
| if ($buttons) { | |||||
| $actions = phutil_tag( | |||||
| 'div', | |||||
| array( | |||||
| 'class' => 'phui-big-info-actions', | |||||
| ), | |||||
| $buttons); | |||||
| } | |||||
| return array($icon, $title, $description, $actions); | |||||
| } | |||||
| } | |||||