Path: blob/master/src/view/form/control/PHUIFormIconSetControl.php
12256 views
<?php12final class PHUIFormIconSetControl3extends AphrontFormControl {45private $iconSet;67public function setIconSet(PhabricatorIconSet $icon_set) {8$this->iconSet = $icon_set;9return $this;10}1112public function getIconSet() {13return $this->iconSet;14}1516protected function getCustomControlClass() {17return 'phui-form-iconset-control';18}1920protected function renderInput() {21Javelin::initBehavior('choose-control');2223$set = $this->getIconSet();2425$input_id = celerity_generate_unique_node_id();26$display_id = celerity_generate_unique_node_id();2728$is_disabled = $this->getDisabled();2930$classes = array();31$classes[] = 'button';32$classes[] = 'button-grey';3334if ($is_disabled) {35$classes[] = 'disabled';36}3738$button = javelin_tag(39'a',40array(41'href' => '#',42'class' => implode(' ', $classes),43'sigil' => 'phui-form-iconset-button',44),45$set->getChooseButtonText());4647$icon = $set->getIcon($this->getValue());48if ($icon) {49$display = $set->renderIconForControl($icon);50} else {51$display = null;52}5354$display_cell = phutil_tag(55'td',56array(57'class' => 'phui-form-iconset-display-cell',58'id' => $display_id,59),60$display);6162$button_cell = phutil_tag(63'td',64array(65'class' => 'phui-form-iconset-button-cell',66),67$button);6869$row = phutil_tag(70'tr',71array(),72array($display_cell, $button_cell));7374$layout = javelin_tag(75'table',76array(77'class' => 'phui-form-iconset-table',78'sigil' => 'phui-form-iconset',79'meta' => array(80'uri' => $set->getSelectURI(),81'inputID' => $input_id,82'displayID' => $display_id,83),84),85$row);8687$hidden_input = phutil_tag(88'input',89array(90'type' => 'hidden',91'disabled' => ($is_disabled ? 'disabled' : null),92'name' => $this->getName(),93'value' => $this->getValue(),94'id' => $input_id,95));9697return array(98$hidden_input,99$layout,100);101}102103}104105106