[ Index ] |
PHP Cross Reference of Phabricator |
[Summary view] [Print] [Text view]
1 <?php 2 3 final class PhabricatorSettingsPanelTokens 4 extends PhabricatorSettingsPanel { 5 6 public function getPanelKey() { 7 return 'tokens'; 8 } 9 10 public function getPanelName() { 11 return pht('Temporary Tokens'); 12 } 13 14 public function getPanelGroup() { 15 return pht('Sessions and Logs'); 16 } 17 18 public function isEnabled() { 19 return true; 20 } 21 22 public function processRequest(AphrontRequest $request) { 23 $viewer = $request->getUser(); 24 25 $tokens = id(new PhabricatorAuthTemporaryTokenQuery()) 26 ->setViewer($viewer) 27 ->withObjectPHIDs(array($viewer->getPHID())) 28 ->execute(); 29 30 $rows = array(); 31 foreach ($tokens as $token) { 32 33 if ($token->isRevocable()) { 34 $button = javelin_tag( 35 'a', 36 array( 37 'href' => '/auth/token/revoke/'.$token->getID().'/', 38 'class' => 'small grey button', 39 'sigil' => 'workflow', 40 ), 41 pht('Revoke')); 42 } else { 43 $button = javelin_tag( 44 'a', 45 array( 46 'class' => 'small grey button disabled', 47 ), 48 pht('Revoke')); 49 } 50 51 if ($token->getTokenExpires() >= time()) { 52 $expiry = phabricator_datetime($token->getTokenExpires(), $viewer); 53 } else { 54 $expiry = pht('Expired'); 55 } 56 57 $rows[] = array( 58 $token->getTokenReadableTypeName(), 59 $expiry, 60 $button, 61 ); 62 } 63 64 $table = new AphrontTableView($rows); 65 $table->setNoDataString(pht("You don't have any active tokens.")); 66 $table->setHeaders( 67 array( 68 pht('Type'), 69 pht('Expires'), 70 pht(''), 71 )); 72 $table->setColumnClasses( 73 array( 74 'wide', 75 'right', 76 'action', 77 )); 78 79 80 $terminate_icon = id(new PHUIIconView()) 81 ->setIconFont('fa-exclamation-triangle'); 82 $terminate_button = id(new PHUIButtonView()) 83 ->setText(pht('Revoke All')) 84 ->setHref('/auth/token/revoke/all/') 85 ->setTag('a') 86 ->setWorkflow(true) 87 ->setIcon($terminate_icon); 88 89 $header = id(new PHUIHeaderView()) 90 ->setHeader(pht('Temporary Tokens')) 91 ->addActionLink($terminate_button); 92 93 $panel = id(new PHUIObjectBoxView()) 94 ->setHeader($header) 95 ->appendChild($table); 96 97 return $panel; 98 } 99 100 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Sun Nov 30 09:20:46 2014 | Cross-referenced by PHPXref 0.7.1 |