3 final class PHUIActionPanelView
extends AphrontTagView
{
14 const COLOR_RED
= 'phui-action-panel-red';
15 const COLOR_ORANGE
= 'phui-action-panel-orange';
16 const COLOR_YELLOW
= 'phui-action-panel-yellow';
17 const COLOR_GREEN
= 'phui-action-panel-green';
18 const COLOR_BLUE
= 'phui-action-panel-blue';
19 const COLOR_INDIGO
= 'phui-action-panel-indigo';
20 const COLOR_VIOLET
= 'phui-action-panel-violet';
21 const COLOR_PINK
= 'phui-action-panel-pink';
23 public function setHref($href) {
28 public function setIcon($image) {
29 $this->fontIcon
= $image;
33 public function setImage($image) {
34 $this->image
= $image;
38 public function setBigText($text) {
39 $this->bigText
= $text;
43 public function setHeader($header) {
44 $this->header
= $header;
48 public function setSubHeader($sub) {
49 $this->subHeader
= $sub;
53 public function setState($state) {
54 $this->state
= $state;
58 public function setStatus($text) {
59 $this->status
= $text;
63 protected function getTagName() {
67 protected function getTagAttributes() {
68 require_celerity_resource('phui-action-panel-css');
71 $classes[] = 'phui-action-panel';
73 $classes[] = $this->state
;
76 $classes[] = 'phui-action-panel-bigtext';
80 'class' => implode(' ', $classes),
84 protected function getTagContent() {
87 if ($this->fontIcon
) {
88 $fonticon = id(new PHUIIconView())
89 ->setIcon($this->fontIcon
);
93 'class' => 'phui-action-panel-icon',
102 'class' => 'phui-action-panel-image',
103 'src' => $this->image
,
108 'class' => 'phui-action-panel-icon',
115 $header = phutil_tag(
118 'class' => 'phui-action-panel-header',
124 if ($this->subHeader
) {
125 $subheader = phutil_tag(
128 'class' => 'phui-action-panel-subheader',
136 'class' => 'phui-action-panel-row',
146 'class' => 'phui-action-panel-table',
153 'href' => $this->href
,
154 'class' => 'phui-action-panel-hitarea',
156 array($header, $table));