Correct a parameter order swap in "diffusion.historyquery" for Mercurial
[phabricator.git] / src / applications / flag / view / PhabricatorFlagSelectControl.php
blob0cc01fb12302ee79d79a818e66c3f402b702326e
1 <?php
3 final class PhabricatorFlagSelectControl extends AphrontFormControl {
5 protected function getCustomControlClass() {
6 return 'phabricator-flag-select-control';
9 protected function renderInput() {
10 require_celerity_resource('phabricator-flag-css');
12 $colors = PhabricatorFlagColor::getColorNameMap();
14 $value_map = array_fuse($this->getValue());
16 $file_map = array(
17 PhabricatorFlagColor::COLOR_RED => 'red',
18 PhabricatorFlagColor::COLOR_ORANGE => 'orange',
19 PhabricatorFlagColor::COLOR_YELLOW => 'yellow',
20 PhabricatorFlagColor::COLOR_GREEN => 'green',
21 PhabricatorFlagColor::COLOR_BLUE => 'blue',
22 PhabricatorFlagColor::COLOR_PINK => 'pink',
23 PhabricatorFlagColor::COLOR_PURPLE => 'purple',
24 PhabricatorFlagColor::COLOR_CHECKERED => 'finish',
27 $out = array();
28 foreach ($colors as $const => $name) {
29 // TODO: This should probably be a sprite sheet.
30 $partial = $file_map[$const];
31 $uri = '/rsrc/image/icon/fatcow/flag_'.$partial.'.png';
32 $uri = celerity_get_resource_uri($uri);
34 $icon = id(new PHUIIconView())
35 ->setImage($uri);
37 $input = phutil_tag(
38 'input',
39 array(
40 'type' => 'checkbox',
41 'name' => $this->getName().'[]',
42 'value' => $const,
43 'checked' => isset($value_map[$const])
44 ? 'checked'
45 : null,
46 'class' => 'phabricator-flag-select-checkbox',
47 ));
49 $label = phutil_tag(
50 'label',
51 array(
52 'class' => 'phabricator-flag-select-label',
54 array(
55 $icon,
56 $input,
57 ));
59 $out[] = $label;
62 return $out;