@recaptime-dev's working patches + fork for Phorge, a community fork of Phabricator. (Upstream dev and stable branches are at upstream/main and upstream/stable respectively.) hq.recaptime.dev/wiki/Phorge
phorge phabricator
at upstream/main 173 lines 5.4 kB view raw
1<?php 2 3final class PHUIBadgeExample extends PhabricatorUIExample { 4 5 public function getName() { 6 return pht('Badge'); 7 } 8 9 public function getDescription() { 10 return pht('Celebrate the moments of your life.'); 11 } 12 13 public function getCategory() { 14 return pht('Single Use'); 15 } 16 17 public function renderExample() { 18 19 $badges1 = array(); 20 $badges1[] = id(new PHUIBadgeView()) 21 ->setIcon('fa-users') 22 ->setHeader(pht('High Command')) 23 ->setHref('/') 24 ->setSource('Projects (automatic)') 25 ->addByline(pht('Dec 31, 1969')) 26 ->addByline('3 Members'); 27 28 $badges1[] = id(new PHUIBadgeView()) 29 ->setIcon('fa-lock') 30 ->setHeader(pht('Blessed Committers')) 31 ->setSource('Projects (automatic)') 32 ->addByline(pht('Dec 31, 1969')) 33 ->addByline('12 Members'); 34 35 $badges1[] = id(new PHUIBadgeView()) 36 ->setIcon('fa-camera-retro') 37 ->setHeader(pht('Design')) 38 ->setSource('Projects (automatic)') 39 ->addByline(pht('Dec 31, 1969')) 40 ->addByline('2 Members'); 41 42 $badges1[] = id(new PHUIBadgeView()) 43 ->setIcon('fa-lock') 44 ->setHeader(pht('Blessed Reviewers')) 45 ->setSource('Projects (automatic)') 46 ->addByline(pht('Dec 31, 1969')) 47 ->addByline('3 Members'); 48 49 $badges1[] = id(new PHUIBadgeView()) 50 ->setIcon('fa-umbrella') 51 ->setHeader(pht('Wikipedia')) 52 ->setSource('Projects (automatic)') 53 ->addByline(pht('Dec 31, 1969')) 54 ->addByline('22 Members'); 55 56 $badges2 = array(); 57 $badges2[] = id(new PHUIBadgeView()) 58 ->setIcon('fa-user') 59 ->setHeader(pht('User')) 60 ->setSubhead(pht('Confirmed your account.')) 61 ->setQuality(PhabricatorBadgesQuality::POOR) 62 ->setSource(pht('People (automatic)')) 63 ->addByline(pht('Dec 31, 1969')) 64 ->addByline('212 Issued (100%)'); 65 66 $badges2[] = id(new PHUIBadgeView()) 67 ->setIcon('fa-code') 68 ->setHeader(pht('Code Contributor')) 69 ->setSubhead(pht('Wrote code that was acceptable')) 70 ->setQuality(PhabricatorBadgesQuality::COMMON) 71 ->setSource('Diffusion (automatic)') 72 ->addByline(pht('Dec 31, 1969')) 73 ->addByline('200 Awarded (98%)'); 74 75 $badges2[] = id(new PHUIBadgeView()) 76 ->setIcon('fa-bug') 77 ->setHeader(pht('Task Master')) 78 ->setSubhead(pht('Closed over 100 tasks')) 79 ->setQuality(PhabricatorBadgesQuality::UNCOMMON) 80 ->setSource('Maniphest (automatic)') 81 ->addByline(pht('Dec 31, 1969')) 82 ->addByline('56 Awarded (43%)'); 83 84 $badges2[] = id(new PHUIBadgeView()) 85 ->setIcon('fa-star') 86 ->setHeader(pht('Code Weaver')) 87 ->setSubhead(pht('Landed 1,000 Commits')) 88 ->setQuality(PhabricatorBadgesQuality::RARE) 89 ->setSource('Diffusion (automatic)') 90 ->addByline(pht('Dec 31, 1969')) 91 ->addByline('42 Awarded (20%)'); 92 93 $badges2[] = id(new PHUIBadgeView()) 94 ->setIcon('fa-users') 95 ->setHeader(pht('Security Team')) 96 ->setSubhead(pht('<script>alert(1);</script>')) 97 ->setQuality(PhabricatorBadgesQuality::EPIC) 98 ->setSource('Projects (automatic)') 99 ->addByline(pht('Dec 31, 1969')) 100 ->addByline('21 Awarded (10%)'); 101 102 $badges2[] = id(new PHUIBadgeView()) 103 ->setIcon('fa-user') 104 ->setHeader(pht('Administrator')) 105 ->setSubhead(pht('Drew the short stick')) 106 ->setQuality(PhabricatorBadgesQuality::LEGENDARY) 107 ->setSource(pht('People (automatic)')) 108 ->addByline(pht('Dec 31, 1969')) 109 ->addByline('3 Awarded (1.4%)'); 110 111 $badges2[] = id(new PHUIBadgeView()) 112 ->setIcon('fa-compass') 113 ->setHeader(pht('Lead Developer')) 114 ->setSubhead(pht('Lead Developer of Software')) 115 ->setQuality(PhabricatorBadgesQuality::HEIRLOOM) 116 ->setSource(pht('Direct Award')) 117 ->addByline(pht('Dec 31, 1969')) 118 ->addByline('1 Awarded (0.4%)'); 119 120 $badges3 = array(); 121 $badges3[] = id(new PHUIBadgeMiniView()) 122 ->setIcon('fa-book') 123 ->setHeader(pht('Documenter')); 124 125 $badges3[] = id(new PHUIBadgeMiniView()) 126 ->setIcon('fa-star') 127 ->setHeader(pht('Contributor')); 128 129 $badges3[] = id(new PHUIBadgeMiniView()) 130 ->setIcon('fa-bug') 131 ->setHeader(pht('Bugmeister')); 132 133 $badges3[] = id(new PHUIBadgeMiniView()) 134 ->setIcon('fa-heart') 135 ->setHeader(pht('Funder')) 136 ->setQuality(PhabricatorBadgesQuality::UNCOMMON); 137 138 $badges3[] = id(new PHUIBadgeMiniView()) 139 ->setIcon('fa-user') 140 ->setHeader(pht('Administrator')) 141 ->setQuality(PhabricatorBadgesQuality::RARE); 142 143 $badges3[] = id(new PHUIBadgeMiniView()) 144 ->setIcon('fa-camera-retro') 145 ->setHeader(pht('Designer')) 146 ->setQuality(PhabricatorBadgesQuality::EPIC); 147 148 $flex1 = new PHUIBadgeBoxView(); 149 $flex1->addItems($badges1); 150 151 $box1 = id(new PHUIObjectBoxView()) 152 ->setHeaderText(pht('Project Membership')) 153 ->appendChild($flex1); 154 155 $flex2 = new PHUIBadgeBoxView(); 156 $flex2->addItems($badges2); 157 158 $box2 = id(new PHUIObjectBoxView()) 159 ->setHeaderText(pht('Achievements')) 160 ->appendChild($flex2); 161 162 $flex3 = new PHUIBadgeBoxView(); 163 $flex3->addItems($badges3); 164 $flex3->setCollapsed(true); 165 $flex3->addClass('ml'); 166 167 $box3 = id(new PHUIObjectBoxView()) 168 ->setHeaderText(pht('PHUIBadgeMiniView')) 169 ->appendChild($flex3); 170 171 return array($box1, $box2, $box3); 172 } 173}