From c40f6e63ca1caeffe80daa07a6e162d01326ff2e Mon Sep 17 00:00:00 2001 From: Chad Little Date: Fri, 1 Apr 2016 14:14:25 +0000 Subject: [PATCH] Update Herald edit/transcripts to modern UI Summary: Walks through various object, rule, create forms and transcripts in Herald. Slightly nicer looking. Test Plan: Make rules, see rules, edit rules, see transcripts. Reviewers: epriestley Reviewed By: epriestley Subscribers: Korvin Differential Revision: https://secure.phabricator.com/D15559 --- resources/celerity/map.php | 6 ++-- .../herald/controller/HeraldNewController.php | 29 ++++++++++--------- .../controller/HeraldRuleController.php | 20 +++++++++---- .../HeraldTestConsoleController.php | 14 +++++++-- .../controller/HeraldTranscriptController.php | 18 +++++++++--- webroot/rsrc/css/phui/phui-form-view.css | 3 +- 6 files changed, 59 insertions(+), 31 deletions(-) diff --git a/resources/celerity/map.php b/resources/celerity/map.php index de2d9a9c28..a4917e52e6 100644 --- a/resources/celerity/map.php +++ b/resources/celerity/map.php @@ -7,7 +7,7 @@ */ return array( 'names' => array( - 'core.pkg.css' => '26886078', + 'core.pkg.css' => '2d0339fc', 'core.pkg.js' => 'e5484f37', 'darkconsole.pkg.js' => 'e7393ebb', 'differential.pkg.css' => '7ba78475', @@ -133,7 +133,7 @@ return array( 'rsrc/css/phui/phui-document.css' => '9c71d2bf', 'rsrc/css/phui/phui-feed-story.css' => '04aec08f', 'rsrc/css/phui/phui-fontkit.css' => '9cda225e', - 'rsrc/css/phui/phui-form-view.css' => '4a1a0f5e', + 'rsrc/css/phui/phui-form-view.css' => '6a51768e', 'rsrc/css/phui/phui-form.css' => 'aac1d51d', 'rsrc/css/phui/phui-head-thing.css' => 'fd311e5f', 'rsrc/css/phui/phui-header-view.css' => '230254d3', @@ -821,7 +821,7 @@ return array( 'phui-font-icon-base-css' => '6449bce8', 'phui-fontkit-css' => '9cda225e', 'phui-form-css' => 'aac1d51d', - 'phui-form-view-css' => '4a1a0f5e', + 'phui-form-view-css' => '6a51768e', 'phui-head-thing-view-css' => 'fd311e5f', 'phui-header-view-css' => '230254d3', 'phui-hovercard' => '1bd28176', diff --git a/src/applications/herald/controller/HeraldNewController.php b/src/applications/herald/controller/HeraldNewController.php index c25b4c839b..e9fa1e66bd 100644 --- a/src/applications/herald/controller/HeraldNewController.php +++ b/src/applications/herald/controller/HeraldNewController.php @@ -114,6 +114,7 @@ final class HeraldNewController extends HeraldController { $cancel_text = null; $cancel_uri = $this->getApplicationURI(); + $title = pht('Create Herald Rule'); break; case 1: $rule_types = $this->renderRuleTypeControl( @@ -123,14 +124,6 @@ final class HeraldNewController extends HeraldController { $form ->addHiddenInput('content_type', $content_type) ->addHiddenInput('step', 2) - ->appendChild( - id(new AphrontFormStaticControl()) - ->setLabel(pht('Rule for')) - ->setValue( - phutil_tag( - 'strong', - array(), - idx($content_type_map, $content_type)))) ->appendChild($rule_types); $cancel_text = pht('Back'); @@ -141,6 +134,8 @@ final class HeraldNewController extends HeraldController { 'step' => 0, )); $cancel_uri = $this->getApplicationURI($cancel_uri); + $title = pht('Create Herald Rule: %s', + idx($content_type_map, $content_type)); break; case 2: $adapter = HeraldAdapter::getAdapterForContentType($content_type); @@ -187,10 +182,11 @@ final class HeraldNewController extends HeraldController { 'step' => 1, )); $cancel_uri = $this->getApplicationURI($cancel_uri); + $title = pht('Create Herald Rule: %s', + idx($content_type_map, $content_type)); break; } - $form ->appendChild( id(new AphrontFormSubmitControl()) @@ -199,21 +195,28 @@ final class HeraldNewController extends HeraldController { $form_box = id(new PHUIObjectBoxView()) ->setFormErrors($errors) - ->setHeaderText(pht('Create Herald Rule')) + ->setBackground(PHUIObjectBoxView::BLUE_PROPERTY) ->setForm($form); $crumbs = $this ->buildApplicationCrumbs() - ->addTextCrumb(pht('Create Rule')); + ->addTextCrumb(pht('Create Rule')) + ->setBorder(true); - $title = pht('Create Herald Rule'); + $header = id(new PHUIHeaderView()) + ->setHeader($title) + ->setHeaderIcon('fa-plus-square'); + + $view = id(new PHUITwoColumnView()) + ->setHeader($header) + ->setFooter($form_box); return $this->newPage() ->setTitle($title) ->setCrumbs($crumbs) ->appendChild( array( - $form_box, + $view, )); } diff --git a/src/applications/herald/controller/HeraldRuleController.php b/src/applications/herald/controller/HeraldRuleController.php index 0289dce2e6..74ce553f9c 100644 --- a/src/applications/herald/controller/HeraldRuleController.php +++ b/src/applications/herald/controller/HeraldRuleController.php @@ -235,26 +235,34 @@ final class HeraldRuleController extends HeraldController { $this->setupEditorBehavior($rule, $handles, $adapter); $title = $rule->getID() - ? pht('Edit Herald Rule') - : pht('Create Herald Rule'); + ? pht('Edit Herald Rule: %s', $rule->getName()) + : pht('Create Herald Rule: %s', idx($content_type_map, $content_type)); + + $icon = $rule->getID() ? 'fa-pencil' : 'fa-plus-square'; $form_box = id(new PHUIObjectBoxView()) - ->setHeaderText($title) ->setFormErrors($errors) ->setForm($form); $crumbs = $this ->buildApplicationCrumbs() - ->addTextCrumb($title); + ->addTextCrumb($title) + ->setBorder(true); - $title = pht('Edit Rule'); + $header = id(new PHUIHeaderView()) + ->setHeader($title) + ->setHeaderIcon('fa-plus-square'); + + $view = id(new PHUITwoColumnView()) + ->setHeader($header) + ->setFooter($form_box); return $this->newPage() ->setTitle($title) ->setCrumbs($crumbs) ->appendChild( array( - $form_box, + $view, )); } diff --git a/src/applications/herald/controller/HeraldTestConsoleController.php b/src/applications/herald/controller/HeraldTestConsoleController.php index 1e12825291..1dd6034bb5 100644 --- a/src/applications/herald/controller/HeraldTestConsoleController.php +++ b/src/applications/herald/controller/HeraldTestConsoleController.php @@ -98,21 +98,29 @@ final class HeraldTestConsoleController extends HeraldController { ->setValue(pht('Test Rules'))); $box = id(new PHUIObjectBoxView()) - ->setHeaderText(pht('Herald Test Console')) ->setFormErrors($errors) ->setForm($form); $crumbs = id($this->buildApplicationCrumbs()) - ->addTextCrumb(pht('Test Console')); + ->addTextCrumb(pht('Test Console')) + ->setBorder(true); $title = pht('Test Console'); + $header = id(new PHUIHeaderView()) + ->setHeader($title) + ->setHeaderIcon('fa-desktop'); + + $view = id(new PHUITwoColumnView()) + ->setHeader($header) + ->setFooter($box); + return $this->newPage() ->setTitle($title) ->setCrumbs($crumbs) ->appendChild( array( - $box, + $view, )); } diff --git a/src/applications/herald/controller/HeraldTranscriptController.php b/src/applications/herald/controller/HeraldTranscriptController.php index afb7b36558..e15c7ed52c 100644 --- a/src/applications/herald/controller/HeraldTranscriptController.php +++ b/src/applications/herald/controller/HeraldTranscriptController.php @@ -79,16 +79,25 @@ final class HeraldTranscriptController extends HeraldController { ->addTextCrumb( pht('Transcripts'), $this->getApplicationURI('/transcript/')) - ->addTextCrumb($xscript->getID()); + ->addTextCrumb($xscript->getID()) + ->setBorder(true); - $title = pht('Transcript'); + $title = pht('Transcript: %s', $xscript->getID()); + + $header = id(new PHUIHeaderView()) + ->setHeader($title) + ->setHeaderIcon('fa-file'); + + $view = id(new PHUITwoColumnView()) + ->setHeader($header) + ->setFooter($content); return $this->newPage() ->setTitle($title) ->setCrumbs($crumbs) ->appendChild( array( - $content, + $view, )); } @@ -232,7 +241,8 @@ final class HeraldTranscriptController extends HeraldController { $action_map = mgroup($action_map, 'getRuleID'); $rule_list = id(new PHUIObjectItemListView()) - ->setNoDataString(pht('No Herald rules applied to this object.')); + ->setNoDataString(pht('No Herald rules applied to this object.')) + ->setFlush(true); $rule_xscripts = $xscript->getRuleTranscripts(); $rule_xscripts = msort($rule_xscripts, 'getRuleID'); diff --git a/webroot/rsrc/css/phui/phui-form-view.css b/webroot/rsrc/css/phui/phui-form-view.css index 8973a7441b..6f88db302f 100644 --- a/webroot/rsrc/css/phui/phui-form-view.css +++ b/webroot/rsrc/css/phui/phui-form-view.css @@ -263,11 +263,10 @@ table.aphront-form-control-checkbox-layout th { } .phui-form-inset { - margin: 4px 0 8px; + margin: 12px 0; padding: 8px; background: #f7f9fd; border: 1px solid {$lightblueborder}; - border-bottom: 1px solid {$blueborder}; border-radius: 3px; }