[ Index ] |
PHP Cross Reference of Phabricator |
[Summary view] [Print] [Text view]
1 <?php 2 3 final class PhabricatorSettingsPanelSSHKeys 4 extends PhabricatorSettingsPanel { 5 6 public function isEditableByAdministrators() { 7 return true; 8 } 9 10 public function getPanelKey() { 11 return 'ssh'; 12 } 13 14 public function getPanelName() { 15 return pht('SSH Public Keys'); 16 } 17 18 public function getPanelGroup() { 19 return pht('Authentication'); 20 } 21 22 public function isEnabled() { 23 return true; 24 } 25 26 public function processRequest(AphrontRequest $request) { 27 $user = $this->getUser(); 28 $viewer = $request->getUser(); 29 30 $keys = id(new PhabricatorAuthSSHKeyQuery()) 31 ->setViewer($viewer) 32 ->withObjectPHIDs(array($user->getPHID())) 33 ->execute(); 34 35 $table = id(new PhabricatorAuthSSHKeyTableView()) 36 ->setUser($viewer) 37 ->setKeys($keys) 38 ->setCanEdit(true) 39 ->setNoDataString("You haven't added any SSH Public Keys."); 40 41 $panel = new PHUIObjectBoxView(); 42 $header = new PHUIHeaderView(); 43 44 $upload_icon = id(new PHUIIconView()) 45 ->setIconFont('fa-upload'); 46 $upload_button = id(new PHUIButtonView()) 47 ->setText(pht('Upload Public Key')) 48 ->setHref('/auth/sshkey/upload/?objectPHID='.$user->getPHID()) 49 ->setWorkflow(true) 50 ->setTag('a') 51 ->setIcon($upload_icon); 52 53 try { 54 PhabricatorSSHKeyGenerator::assertCanGenerateKeypair(); 55 $can_generate = true; 56 } catch (Exception $ex) { 57 $can_generate = false; 58 } 59 60 $generate_icon = id(new PHUIIconView()) 61 ->setIconFont('fa-lock'); 62 $generate_button = id(new PHUIButtonView()) 63 ->setText(pht('Generate Keypair')) 64 ->setHref('/auth/sshkey/generate/?objectPHID='.$user->getPHID()) 65 ->setTag('a') 66 ->setWorkflow(true) 67 ->setDisabled(!$can_generate) 68 ->setIcon($generate_icon); 69 70 $header->setHeader(pht('SSH Public Keys')); 71 $header->addActionLink($generate_button); 72 $header->addActionLink($upload_button); 73 74 $panel->setHeader($header); 75 $panel->appendChild($table); 76 77 return $panel; 78 } 79 80 }
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 |