@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 recaptime-dev/main 83 lines 2.2 kB view raw
1<?php 2 3final class PHUIInfoExample extends PhabricatorUIExample { 4 5 public function getName() { 6 return pht('Info View'); 7 } 8 9 public function getDescription() { 10 return pht( 11 'Use %s to render errors, warnings and notices.', 12 phutil_tag('tt', array(), 'PHUIInfoView')); 13 } 14 15 public function renderExample() { 16 $request = $this->getRequest(); 17 $user = $request->getUser(); 18 19 $sevs = array( 20 PHUIInfoView::SEVERITY_ERROR => pht('Error'), 21 PHUIInfoView::SEVERITY_WARNING => pht('Warning'), 22 PHUIInfoView::SEVERITY_NODATA => pht('No Data'), 23 PHUIInfoView::SEVERITY_NOTICE => pht('Notice'), 24 PHUIInfoView::SEVERITY_SUCCESS => pht('Success'), 25 ); 26 27 $button = id(new PHUIButtonView()) 28 ->setTag('a') 29 ->setText(pht('Resolve Issue')) 30 ->setHref('#'); 31 32 $views = array(); 33 // Only Title 34 foreach ($sevs as $sev => $title) { 35 $view = new PHUIInfoView(); 36 $view->setSeverity($sev); 37 $view->setTitle($title); 38 $views[] = $view; 39 } 40 $views[] = phutil_tag('br', array(), null); 41 42 // Only Body 43 foreach ($sevs as $sev => $title) { 44 $view = new PHUIInfoView(); 45 $view->setSeverity($sev); 46 $view->appendChild(pht('Several issues were encountered.')); 47 $view->addButton($button); 48 $views[] = $view; 49 } 50 $views[] = phutil_tag('br', array(), null); 51 52 // Only Errors 53 foreach ($sevs as $sev => $title) { 54 $view = new PHUIInfoView(); 55 $view->setSeverity($sev); 56 $view->setErrors( 57 array( 58 pht('Overcooked.'), 59 pht('Too much salt.'), 60 pht('Full of sand.'), 61 )); 62 $views[] = $view; 63 } 64 $views[] = phutil_tag('br', array(), null); 65 66 // All 67 foreach ($sevs as $sev => $title) { 68 $view = new PHUIInfoView(); 69 $view->setSeverity($sev); 70 $view->setTitle($title); 71 $view->appendChild(pht('Several issues were encountered.')); 72 $view->setErrors( 73 array( 74 pht('Overcooked.'), 75 pht('Too much salt.'), 76 pht('Full of sand.'), 77 )); 78 $views[] = $view; 79 } 80 81 return $views; 82 } 83}