Redesign Config Application

Summary: Ref T11132, significantly cleans up the Config app, new layout, icons, spacing, etc. Some minor todos around re-designing "issues", mobile support, and maybe another pass at actual Group pages.

Test Plan: Visit and test every page in the config app, set new items, resolve setup issues, etc.

Reviewers: epriestley

Reviewed By: epriestley

Subscribers: PHID-OPKG-gm6ozazyms6q6i22gyam, Korvin

Maniphest Tasks: T11132

Differential Revision: https://secure.phabricator.com/D16468
This commit is contained in:
Chad Little
2016-08-29 15:36:13 -07:00
parent 00796e592b
commit 60d1762a85
45 changed files with 505 additions and 460 deletions

View File

@@ -13,31 +13,37 @@ final class PhabricatorConfigGroupController
return new Aphront404Response();
}
$group_uri = PhabricatorConfigGroupConstants::getGroupURI(
$options->getGroup());
$group_name = PhabricatorConfigGroupConstants::getGroupShortName(
$options->getGroup());
$nav = $this->buildSideNavView();
$nav->selectFilter($group_uri);
$title = pht('%s Configuration', $options->getName());
$list = $this->buildOptionList($options->getOptions());
$box = id(new PHUIObjectBoxView())
->setBackground(PHUIObjectBoxView::BLUE_PROPERTY)
->setObjectList($list);
$crumbs = $this
->buildApplicationCrumbs()
->addTextCrumb(pht('Config'), $this->getApplicationURI())
->addTextCrumb($options->getName(), $this->getApplicationURI())
->addTextCrumb($group_name, $this->getApplicationURI($group_uri))
->addTextCrumb($options->getName())
->setBorder(true);
$header = id(new PHUIHeaderView())
->setHeader($title)
->setHeaderIcon('fa-sliders');
->setProfileHeader(true);
$view = id(new PHUITwoColumnView())
$content = id(new PhabricatorConfigPageView())
->setHeader($header)
->setFooter($box);
->setContent($list);
return $this->newPage()
->setTitle($title)
->setCrumbs($crumbs)
->appendChild($view);
->setNavigation($nav)
->appendChild($content)
->addClass('white-background');
}
private function buildOptionList(array $options) {
@@ -62,6 +68,7 @@ final class PhabricatorConfigGroupController
$engine->process();
$list = new PHUIObjectItemListView();
$list->setBig(true);
foreach ($options as $option) {
$summary = $engine->getOutput($option, 'summary');
@@ -89,13 +96,13 @@ final class PhabricatorConfigGroupController
$db_value = idx($db_values, $option->getKey());
if ($db_value && !$db_value->getIsDeleted()) {
$item->addIcon('edit', pht('Customized'));
$item->addIcon('fa-edit', pht('Customized'));
}
if ($option->getHidden()) {
$item->addIcon('unpublish', pht('Hidden'));
$item->addIcon('fa-eye-slash', pht('Hidden'));
} else if ($option->getLocked()) {
$item->addIcon('lock', pht('Locked'));
$item->addIcon('fa-lock', pht('Locked'));
}
$list->addItem($item);