2016-01-12 10:27:39 -08:00
|
|
|
<?php
|
|
|
|
|
|
|
|
final class PhabricatorProjectMembersProfilePanel
|
|
|
|
extends PhabricatorProfilePanel {
|
|
|
|
|
|
|
|
const PANELKEY = 'project.members';
|
|
|
|
|
2016-01-12 15:06:43 -08:00
|
|
|
public function getPanelTypeName() {
|
|
|
|
return pht('Project Members');
|
|
|
|
}
|
|
|
|
|
|
|
|
private function getDefaultName() {
|
|
|
|
return pht('Members');
|
|
|
|
}
|
|
|
|
|
|
|
|
public function getDisplayName(
|
|
|
|
PhabricatorProfilePanelConfiguration $config) {
|
|
|
|
$name = $config->getPanelProperty('name');
|
|
|
|
|
|
|
|
if (strlen($name)) {
|
|
|
|
return $name;
|
|
|
|
}
|
|
|
|
|
|
|
|
return $this->getDefaultName();
|
|
|
|
}
|
|
|
|
|
|
|
|
public function buildEditEngineFields(
|
|
|
|
PhabricatorProfilePanelConfiguration $config) {
|
|
|
|
return array(
|
|
|
|
id(new PhabricatorTextEditField())
|
|
|
|
->setKey('name')
|
|
|
|
->setLabel(pht('Name'))
|
|
|
|
->setPlaceholder($this->getDefaultName())
|
|
|
|
->setValue($config->getPanelProperty('name')),
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
2016-01-12 10:27:39 -08:00
|
|
|
protected function newNavigationMenuItems(
|
|
|
|
PhabricatorProfilePanelConfiguration $config) {
|
|
|
|
|
|
|
|
$project = $config->getProfileObject();
|
|
|
|
|
|
|
|
$id = $project->getID();
|
|
|
|
|
2016-01-12 15:06:43 -08:00
|
|
|
$name = $this->getDisplayName($config);
|
2016-01-12 10:27:39 -08:00
|
|
|
$icon = 'fa-group';
|
|
|
|
$href = "/project/members/{$id}/";
|
|
|
|
|
2016-01-13 16:07:04 -08:00
|
|
|
$item = $this->newItem()
|
2016-01-12 10:27:39 -08:00
|
|
|
->setHref($href)
|
|
|
|
->setName($name)
|
|
|
|
->setIcon($icon);
|
|
|
|
|
|
|
|
return array(
|
|
|
|
$item,
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|