mirror of
https://we.phorge.it/source/phorge.git
synced 2024-11-26 00:32:42 +01:00
Show current value in configuration list; show default vs non-default values
Summary: - When viewing a config list, show the current effective value. - Add an icon showing default vs nondefault values. Test Plan: {F28475} Reviewers: btrahan, codeblock Reviewed By: codeblock CC: aran Maniphest Tasks: T2255 Differential Revision: https://secure.phabricator.com/D4313
This commit is contained in:
parent
21efc7cb64
commit
25ca17da46
2 changed files with 40 additions and 1 deletions
|
@ -53,12 +53,44 @@ final class PhabricatorConfigGroupController
|
||||||
private function buildOptionList(array $options) {
|
private function buildOptionList(array $options) {
|
||||||
assert_instances_of($options, 'PhabricatorConfigOption');
|
assert_instances_of($options, 'PhabricatorConfigOption');
|
||||||
|
|
||||||
|
require_celerity_resource('config-options-css');
|
||||||
|
|
||||||
|
$db_values = array();
|
||||||
|
if ($options) {
|
||||||
|
$db_values = id(new PhabricatorConfigEntry())->loadAllWhere(
|
||||||
|
'configKey IN (%Ls) AND namespace = %s',
|
||||||
|
mpull($options, 'getKey'),
|
||||||
|
'default');
|
||||||
|
$db_values = mpull($db_values, null, 'getConfigKey');
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
$list = new PhabricatorObjectItemListView();
|
$list = new PhabricatorObjectItemListView();
|
||||||
foreach ($options as $option) {
|
foreach ($options as $option) {
|
||||||
|
$current_value = PhabricatorEnv::getEnvConfig($option->getKey());
|
||||||
|
$current_value = $this->prettyPrintJSON($current_value);
|
||||||
|
$current_value = phutil_render_tag(
|
||||||
|
'div',
|
||||||
|
array(
|
||||||
|
'class' => 'config-options-current-value',
|
||||||
|
),
|
||||||
|
'<span>'.pht('Current Value:').'</span> '.
|
||||||
|
phutil_escape_html($current_value));
|
||||||
|
|
||||||
|
|
||||||
$item = id(new PhabricatorObjectItemView())
|
$item = id(new PhabricatorObjectItemView())
|
||||||
->setHeader($option->getKey())
|
->setHeader($option->getKey())
|
||||||
->setHref('/config/edit/'.$option->getKey().'/')
|
->setHref('/config/edit/'.$option->getKey().'/')
|
||||||
->addAttribute(phutil_escape_html($option->getSummary()));
|
->addAttribute(phutil_escape_html($option->getSummary()))
|
||||||
|
->appendChild($current_value);
|
||||||
|
|
||||||
|
$db_value = idx($db_values, $option->getKey());
|
||||||
|
if ($db_value && !$db_value->getIsDeleted()) {
|
||||||
|
$item->addIcon('edit', pht('Customized'));
|
||||||
|
} else {
|
||||||
|
$item->addIcon('edit-grey', pht('Default'));
|
||||||
|
}
|
||||||
|
|
||||||
$list->addItem($item);
|
$list->addItem($item);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -37,4 +37,11 @@
|
||||||
background: #e0e0e0;
|
background: #e0e0e0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.config-options-current-value {
|
||||||
|
padding: 0 6px 2px;
|
||||||
|
white-space: pre-wrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
.config-options-current-value span {
|
||||||
|
color: #666666;
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue