Path: blob/master/src/view/phui/PHUIActionPanelView.php
12249 views
<?php12final class PHUIActionPanelView extends AphrontTagView {34private $href;5private $fontIcon;6private $image;7private $header;8private $subHeader;9private $bigText;10private $state;11private $status;1213const COLOR_RED = 'phui-action-panel-red';14const COLOR_ORANGE = 'phui-action-panel-orange';15const COLOR_YELLOW = 'phui-action-panel-yellow';16const COLOR_GREEN = 'phui-action-panel-green';17const COLOR_BLUE = 'phui-action-panel-blue';18const COLOR_INDIGO = 'phui-action-panel-indigo';19const COLOR_VIOLET = 'phui-action-panel-violet';20const COLOR_PINK = 'phui-action-panel-pink';2122public function setHref($href) {23$this->href = $href;24return $this;25}2627public function setIcon($image) {28$this->fontIcon = $image;29return $this;30}3132public function setImage($image) {33$this->image = $image;34return $this;35}3637public function setBigText($text) {38$this->bigText = $text;39return $this;40}4142public function setHeader($header) {43$this->header = $header;44return $this;45}4647public function setSubHeader($sub) {48$this->subHeader = $sub;49return $this;50}5152public function setState($state) {53$this->state = $state;54return $this;55}5657public function setStatus($text) {58$this->status = $text;59return $this;60}6162protected function getTagName() {63return 'div';64}6566protected function getTagAttributes() {67require_celerity_resource('phui-action-panel-css');6869$classes = array();70$classes[] = 'phui-action-panel';71if ($this->state) {72$classes[] = $this->state;73}74if ($this->bigText) {75$classes[] = 'phui-action-panel-bigtext';76}7778return array(79'class' => implode(' ', $classes),80);81}8283protected function getTagContent() {8485$icon = null;86if ($this->fontIcon) {87$fonticon = id(new PHUIIconView())88->setIcon($this->fontIcon);89$icon = phutil_tag(90'span',91array(92'class' => 'phui-action-panel-icon',93),94$fonticon);95}9697if ($this->image) {98$image = phutil_tag(99'img',100array(101'class' => 'phui-action-panel-image',102'src' => $this->image,103));104$icon = phutil_tag(105'span',106array(107'class' => 'phui-action-panel-icon',108),109$image);110}111112$header = null;113if ($this->header) {114$header = phutil_tag(115'span',116array(117'class' => 'phui-action-panel-header',118),119$this->header);120}121122$subheader = null;123if ($this->subHeader) {124$subheader = phutil_tag(125'span',126array(127'class' => 'phui-action-panel-subheader',128),129$this->subHeader);130}131132$row = phutil_tag(133'span',134array(135'class' => 'phui-action-panel-row',136),137array(138$icon,139$subheader,140));141142$table = phutil_tag(143'span',144array(145'class' => 'phui-action-panel-table',146),147$row);148149return phutil_tag(150'a',151array(152'href' => $this->href,153'class' => 'phui-action-panel-hitarea',154),155array($header, $table));156157}158159}160161162