Skip to content

Commit f5e2f95

Browse files
committed
Add setHeader to PHUITwoColumnView for consistent page layouts
Summary: Working towards making PHUITwoColumnView into a page layout engine. Adds header support. Test Plan: Use new header on Profile and Profiles. No visual changes, less duplicated code. Reviewers: epriestley Reviewed By: epriestley Subscribers: Korvin Differential Revision: https://secure.phabricator.com/D15292
1 parent 12d8520 commit f5e2f95

File tree

6 files changed

+30
-33
lines changed

6 files changed

+30
-33
lines changed

resources/celerity/map.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@
9494
'rsrc/css/application/policy/policy.css' => '957ea14c',
9595
'rsrc/css/application/ponder/ponder-view.css' => '4486434b',
9696
'rsrc/css/application/project/project-card-view.css' => '9418c97d',
97-
'rsrc/css/application/project/project-view.css' => '4c832c27',
97+
'rsrc/css/application/project/project-view.css' => '83bb6654',
9898
'rsrc/css/application/releeph/releeph-core.css' => '9b3c5733',
9999
'rsrc/css/application/releeph/releeph-preview-branch.css' => 'b7a6f4a5',
100100
'rsrc/css/application/releeph/releeph-request-differential-create-dialog.css' => '8d8b92cd',
@@ -154,7 +154,7 @@
154154
'rsrc/css/phui/phui-status.css' => '888cedb8',
155155
'rsrc/css/phui/phui-tag-view.css' => '9d5d4400',
156156
'rsrc/css/phui/phui-timeline-view.css' => '2efceff8',
157-
'rsrc/css/phui/phui-two-column-view.css' => 'c75bfc5b',
157+
'rsrc/css/phui/phui-two-column-view.css' => '0763177e',
158158
'rsrc/css/phui/workboards/phui-workboard-color.css' => 'ac6fe6a7',
159159
'rsrc/css/phui/workboards/phui-workboard.css' => 'e6d89647',
160160
'rsrc/css/phui/workboards/phui-workcard.css' => '3646fb96',
@@ -841,7 +841,7 @@
841841
'phui-tag-view-css' => '9d5d4400',
842842
'phui-theme-css' => 'ab7b848c',
843843
'phui-timeline-view-css' => '2efceff8',
844-
'phui-two-column-view-css' => 'c75bfc5b',
844+
'phui-two-column-view-css' => '0763177e',
845845
'phui-workboard-color-css' => 'ac6fe6a7',
846846
'phui-workboard-view-css' => 'e6d89647',
847847
'phui-workcard-view-css' => '3646fb96',
@@ -857,7 +857,7 @@
857857
'policy-transaction-detail-css' => '82100a43',
858858
'ponder-view-css' => '4486434b',
859859
'project-card-view-css' => '9418c97d',
860-
'project-view-css' => '4c832c27',
860+
'project-view-css' => '83bb6654',
861861
'releeph-core' => '9b3c5733',
862862
'releeph-preview-branch' => 'b7a6f4a5',
863863
'releeph-request-differential-create-dialog' => '8d8b92cd',

src/applications/people/controller/PhabricatorPeopleProfileViewController.php

Lines changed: 5 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -56,9 +56,11 @@ public function handleRequest(AphrontRequest $request) {
5656

5757
$projects = $this->buildProjectsView($user);
5858
$badges = $this->buildBadgesView($user);
59+
require_celerity_resource('project-view-css');
5960

60-
$columns = id(new PHUITwoColumnView())
61-
->addClass('project-view-badges')
61+
$home = id(new PHUITwoColumnView())
62+
->setHeader($header)
63+
->addClass('project-view-home')
6264
->setMainColumn(
6365
array(
6466
$properties,
@@ -76,17 +78,6 @@ public function handleRequest(AphrontRequest $request) {
7678
$crumbs = $this->buildApplicationCrumbs();
7779
$crumbs->setBorder(true);
7880

79-
require_celerity_resource('project-view-css');
80-
$home = phutil_tag(
81-
'div',
82-
array(
83-
'class' => 'project-view-home',
84-
),
85-
array(
86-
$header,
87-
$columns,
88-
));
89-
9081
return $this->newPage()
9182
->setTitle($user->getUsername())
9283
->setNavigation($nav)
@@ -217,6 +208,7 @@ private function buildBadgesView(PhabricatorUser $user) {
217208

218209
$box = id(new PHUIObjectBoxView())
219210
->setHeaderText(pht('Badges'))
211+
->addClass('project-view-badges')
220212
->appendChild($flex)
221213
->setBackground(PHUIObjectBoxView::GREY);
222214

src/applications/project/controller/PhabricatorProjectProfileController.php

Lines changed: 4 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -83,8 +83,11 @@ public function handleRequest(AphrontRequest $request) {
8383

8484
$feed = $this->renderStories($stories);
8585
$feed = phutil_tag_div('project-view-feed', $feed);
86+
require_celerity_resource('project-view-css');
8687

87-
$columns = id(new PHUITwoColumnView())
88+
$home = id(new PHUITwoColumnView())
89+
->setHeader($header)
90+
->addClass('project-view-home')
8891
->setMainColumn(
8992
array(
9093
$properties,
@@ -101,17 +104,6 @@ public function handleRequest(AphrontRequest $request) {
101104
$crumbs = $this->buildApplicationCrumbs();
102105
$crumbs->setBorder(true);
103106

104-
require_celerity_resource('project-view-css');
105-
$home = phutil_tag(
106-
'div',
107-
array(
108-
'class' => 'project-view-home',
109-
),
110-
array(
111-
$header,
112-
$columns,
113-
));
114-
115107
return $this->newPage()
116108
->setNavigation($nav)
117109
->setCrumbs($crumbs)

src/view/phui/PHUITwoColumnView.php

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ final class PHUITwoColumnView extends AphrontTagView {
55
private $mainColumn;
66
private $sideColumn;
77
private $display;
8+
private $header;
89

910
const DISPLAY_LEFT = 'phui-side-column-left';
1011
const DISPLAY_RIGHT = 'phui-side-column-right';
@@ -19,6 +20,11 @@ public function setSideColumn($side) {
1920
return $this;
2021
}
2122

23+
public function setHeader(PHUIHeaderView $header) {
24+
$this->header = $header;
25+
return $this;
26+
}
27+
2228
public function setDisplay($display) {
2329
$this->display = $display;
2430
return $this;
@@ -35,7 +41,6 @@ public function getDisplay() {
3541
protected function getTagAttributes() {
3642
$classes = array();
3743
$classes[] = 'phui-two-column-view';
38-
$classes[] = 'grouped';
3944
$classes[] = $this->getDisplay();
4045

4146
return array(
@@ -66,6 +71,14 @@ protected function getTagContent() {
6671
$order = array($main, $side);
6772
}
6873

69-
return phutil_tag_div('phui-two-column-row', $order);
74+
$inner = phutil_tag_div('phui-two-column-row', $order);
75+
$table = phutil_tag_div('phui-two-column-content', $inner);
76+
77+
$header = null;
78+
if ($this->header) {
79+
$header = phutil_tag_div('phui-two-column-header', $this->header);
80+
}
81+
82+
return array($header, $table);
7083
}
7184
}

webroot/rsrc/css/application/project/project-view.css

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@
5151
}
5252

5353
.project-view-feed .phui-object-box.phui-box-border {
54-
padding: 0 16px 8px 16px;
54+
padding: 0 4px 8px 4px;
5555
border: none;
5656
}
5757

webroot/rsrc/css/phui/phui-two-column-view.css

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
* @provides phui-two-column-view-css
33
*/
44

5-
.phui-two-column-view {
5+
.phui-two-column-content {
66
display: table;
77
width: 100%;
88
}

0 commit comments

Comments
 (0)