Page MenuHomePhabricator

D20315.id48507.diff
No OneTemporary

D20315.id48507.diff

diff --git a/resources/celerity/map.php b/resources/celerity/map.php
--- a/resources/celerity/map.php
+++ b/resources/celerity/map.php
@@ -9,7 +9,7 @@
'names' => array(
'conpherence.pkg.css' => '3c8a0668',
'conpherence.pkg.js' => '020aebcf',
- 'core.pkg.css' => 'b797945d',
+ 'core.pkg.css' => '2dd936d6',
'core.pkg.js' => 'eb53fc5b',
'differential.pkg.css' => '8d8360fb',
'differential.pkg.js' => '67e02996',
@@ -132,7 +132,7 @@
'rsrc/css/phui/object-item/phui-oi-color.css' => 'b517bfa0',
'rsrc/css/phui/object-item/phui-oi-drag-ui.css' => 'da15d3dc',
'rsrc/css/phui/object-item/phui-oi-flush-ui.css' => '490e2e2e',
- 'rsrc/css/phui/object-item/phui-oi-list-view.css' => '909f3844',
+ 'rsrc/css/phui/object-item/phui-oi-list-view.css' => 'a65865a7',
'rsrc/css/phui/object-item/phui-oi-simple-ui.css' => '6a30fa46',
'rsrc/css/phui/phui-action-list.css' => 'c4972757',
'rsrc/css/phui/phui-action-panel.css' => '6c386cbf',
@@ -853,7 +853,7 @@
'phui-oi-color-css' => 'b517bfa0',
'phui-oi-drag-ui-css' => 'da15d3dc',
'phui-oi-flush-ui-css' => '490e2e2e',
- 'phui-oi-list-view-css' => '909f3844',
+ 'phui-oi-list-view-css' => 'a65865a7',
'phui-oi-simple-ui-css' => '6a30fa46',
'phui-pager-css' => 'd022c7ad',
'phui-pinboard-view-css' => '1f08f5d8',
diff --git a/src/applications/harbormaster/controller/HarbormasterPlanViewController.php b/src/applications/harbormaster/controller/HarbormasterPlanViewController.php
--- a/src/applications/harbormaster/controller/HarbormasterPlanViewController.php
+++ b/src/applications/harbormaster/controller/HarbormasterPlanViewController.php
@@ -455,12 +455,16 @@
private function newBuildsView(HarbormasterBuildPlan $plan) {
$viewer = $this->getViewer();
+ $limit = 10;
$builds = id(new HarbormasterBuildQuery())
->setViewer($viewer)
->withBuildPlanPHIDs(array($plan->getPHID()))
- ->setLimit(10)
+ ->setLimit($limit + 1)
->execute();
+ $more_results = (count($builds) > $limit);
+ $builds = array_slice($builds, 0, $limit);
+
$list = id(new HarbormasterBuildView())
->setViewer($viewer)
->setBuilds($builds)
@@ -472,6 +476,11 @@
$this->getApplicationURI('/build/'),
array('plan' => $plan->getPHID()));
+ if ($more_results) {
+ $list->newTailButton()
+ ->setHref($more_href);
+ }
+
$more_link = id(new PHUIButtonView())
->setTag('a')
->setIcon('fa-list-ul')
@@ -491,14 +500,18 @@
private function newRulesView(HarbormasterBuildPlan $plan) {
$viewer = $this->getViewer();
+ $limit = 10;
$rules = id(new HeraldRuleQuery())
->setViewer($viewer)
->withDisabled(false)
->withAffectedObjectPHIDs(array($plan->getPHID()))
->needValidateAuthors(true)
- ->setLimit(10)
+ ->setLimit($limit + 1)
->execute();
+ $more_results = (count($rules) > $limit);
+ $rules = array_slice($rules, 0, $limit);
+
$list = id(new HeraldRuleListView())
->setViewer($viewer)
->setRules($rules)
@@ -510,6 +523,11 @@
'/herald/',
array('affectedPHID' => $plan->getPHID()));
+ if ($more_results) {
+ $list->newTailButton()
+ ->setHref($more_href);
+ }
+
$more_link = id(new PHUIButtonView())
->setTag('a')
->setIcon('fa-list-ul')
diff --git a/src/view/phui/PHUIObjectItemListView.php b/src/view/phui/PHUIObjectItemListView.php
--- a/src/view/phui/PHUIObjectItemListView.php
+++ b/src/view/phui/PHUIObjectItemListView.php
@@ -12,6 +12,7 @@
private $drag;
private $allowEmptyList;
private $itemClass = 'phui-oi-standard';
+ private $tail = array();
public function setAllowEmptyList($allow_empty_list) {
$this->allowEmptyList = $allow_empty_list;
@@ -72,6 +73,18 @@
return 'ul';
}
+ public function newTailButton() {
+ $button = id(new PHUIButtonView())
+ ->setTag('a')
+ ->setColor(PHUIButtonView::GREY)
+ ->setIcon('fa-chevron-down')
+ ->setText(pht('View All Results'));
+
+ $this->tail[] = $button;
+
+ return $button;
+ }
+
protected function getTagAttributes() {
$classes = array();
$classes[] = 'phui-oi-list-view';
@@ -149,9 +162,20 @@
$pager = $this->pager;
}
+ $tail = array();
+ foreach ($this->tail as $tail_item) {
+ $tail[] = phutil_tag(
+ 'li',
+ array(
+ 'class' => 'phui-oi-tail',
+ ),
+ $tail_item);
+ }
+
return array(
$header,
$items,
+ $tail,
$pager,
$this->renderChildren(),
);
diff --git a/webroot/rsrc/css/phui/object-item/phui-oi-list-view.css b/webroot/rsrc/css/phui/object-item/phui-oi-list-view.css
--- a/webroot/rsrc/css/phui/object-item/phui-oi-list-view.css
+++ b/webroot/rsrc/css/phui/object-item/phui-oi-list-view.css
@@ -720,3 +720,9 @@
.differential-revision-small .phui-icon-view {
color: #6699ba;
}
+
+.phui-oi-tail {
+ text-align: center;
+ padding: 8px 0;
+ background: linear-gradient({$lightbluebackground}, #fff 66%, #fff);
+}

File Metadata

Mime Type
text/plain
Expires
Fri, Feb 28, 11:00 AM (14 h, 23 m)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
7213950
Default Alt Text
D20315.id48507.diff (5 KB)

Event Timeline