mirror of
https://we.phorge.it/source/phorge.git
synced 2025-02-09 05:18:29 +01:00
Summary: Depends on D20005. I love icons. Test Plan: {F6145996} Reviewers: amckinley Reviewed By: amckinley Differential Revision: https://secure.phabricator.com/D20006
55 lines
1.3 KiB
PHP
55 lines
1.3 KiB
PHP
<?php
|
|
|
|
final class PhabricatorSSHKeysSettingsPanel extends PhabricatorSettingsPanel {
|
|
|
|
public function isManagementPanel() {
|
|
if ($this->getUser()->getIsMailingList()) {
|
|
return false;
|
|
}
|
|
|
|
return true;
|
|
}
|
|
|
|
public function getPanelKey() {
|
|
return 'ssh';
|
|
}
|
|
|
|
public function getPanelName() {
|
|
return pht('SSH Public Keys');
|
|
}
|
|
|
|
public function getPanelMenuIcon() {
|
|
return 'fa-file-text-o';
|
|
}
|
|
|
|
public function getPanelGroupKey() {
|
|
return PhabricatorSettingsAuthenticationPanelGroup::PANELGROUPKEY;
|
|
}
|
|
|
|
public function processRequest(AphrontRequest $request) {
|
|
$user = $this->getUser();
|
|
$viewer = $request->getUser();
|
|
|
|
$keys = id(new PhabricatorAuthSSHKeyQuery())
|
|
->setViewer($viewer)
|
|
->withObjectPHIDs(array($user->getPHID()))
|
|
->withIsActive(true)
|
|
->execute();
|
|
|
|
$table = id(new PhabricatorAuthSSHKeyTableView())
|
|
->setUser($viewer)
|
|
->setKeys($keys)
|
|
->setCanEdit(true)
|
|
->setNoDataString(pht("You haven't added any SSH Public Keys."));
|
|
|
|
$panel = new PHUIObjectBoxView();
|
|
$header = new PHUIHeaderView();
|
|
|
|
$ssh_actions = PhabricatorAuthSSHKeyTableView::newKeyActionsMenu(
|
|
$viewer,
|
|
$user);
|
|
|
|
return $this->newBox(pht('SSH Public Keys'), $table, array($ssh_actions));
|
|
}
|
|
|
|
}
|