@recaptime-dev's working patches + fork for Phorge, a community fork of Phabricator. (Upstream dev and stable branches are at upstream/main and upstream/stable respectively.) hq.recaptime.dev/wiki/Phorge
phorge phabricator
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Update Phlux to new UI

Summary: Updates view, list, edit pages on Phlux.

Test Plan: Create a variable, see variable, edit variable, view lists.

Reviewers: epriestley

Reviewed By: epriestley

Subscribers: Korvin

Differential Revision: https://secure.phabricator.com/D15602

+78 -46
+20 -10
src/applications/phlux/controller/PhluxEditController.php
··· 154 154 if ($is_new) { 155 155 $title = pht('Create Variable'); 156 156 $crumbs->addTextCrumb($title, $request->getRequestURI()); 157 + $header_icon = 'fa-plus-square'; 157 158 } else { 158 - $title = pht('Edit %s', $key); 159 + $title = pht('Edit Variable: %s', $key); 160 + $header_icon = 'fa-pencil'; 159 161 $crumbs->addTextCrumb($title, $request->getRequestURI()); 160 162 } 163 + $crumbs->setBorder(true); 161 164 162 - $form_box = id(new PHUIObjectBoxView()) 163 - ->setHeaderText($title) 165 + $box = id(new PHUIObjectBoxView()) 166 + ->setHeaderText(pht('Variable')) 164 167 ->setFormErrors($errors) 168 + ->setBackground(PHUIObjectBoxView::BLUE_PROPERTY) 165 169 ->setForm($form); 166 170 167 - return $this->buildApplicationPage( 168 - array( 169 - $crumbs, 170 - $form_box, 171 - ), 172 - array( 173 - 'title' => $title, 171 + $header = id(new PHUIHeaderView()) 172 + ->setHeader($title) 173 + ->setHeaderIcon($header_icon); 174 + 175 + $view = id(new PHUITwoColumnView()) 176 + ->setHeader($header) 177 + ->setFooter(array( 178 + $box, 174 179 )); 180 + 181 + return $this->newPage() 182 + ->setTitle($title) 183 + ->setCrumbs($crumbs) 184 + ->appendChild($view); 175 185 } 176 186 177 187 }
+20 -7
src/applications/phlux/controller/PhluxListController.php
··· 13 13 $vars = $query->executeWithCursorPager($pager); 14 14 15 15 $view = new PHUIObjectItemListView(); 16 + $view->setFlush(true); 16 17 foreach ($vars as $var) { 17 18 $key = $var->getVariableKey(); 18 19 ··· 28 29 29 30 $crumbs = $this->buildApplicationCrumbs(); 30 31 32 + $box = id(new PHUIObjectBoxView()) 33 + ->setHeaderText('Variables') 34 + ->setBackground(PHUIObjectBoxView::BLUE_PROPERTY) 35 + ->appendChild($view); 36 + 31 37 $title = pht('Variable List'); 38 + $header = id(new PHUIHeaderView()) 39 + ->setHeader($title) 40 + ->setHeaderIcon('fa-copy'); 32 41 33 42 $crumbs->addTextCrumb($title, $this->getApplicationURI()); 43 + $crumbs->setBorder(true); 34 44 35 - return $this->buildApplicationPage( 36 - array( 37 - $crumbs, 38 - $view, 45 + $view = id(new PHUITwoColumnView()) 46 + ->setHeader($header) 47 + ->setFooter(array( 48 + $box, 39 49 $pager, 40 - ), 41 - array( 42 - 'title' => $title, 43 50 )); 51 + 52 + return $this->newPage() 53 + ->setTitle($title) 54 + ->setCrumbs($crumbs) 55 + ->appendChild($view); 56 + 44 57 } 45 58 46 59 }
+38 -29
src/applications/phlux/controller/PhluxViewController.php
··· 15 15 return new Aphront404Response(); 16 16 } 17 17 18 - $crumbs = $this->buildApplicationCrumbs(); 19 - 20 18 $title = $var->getVariableKey(); 21 19 20 + $crumbs = $this->buildApplicationCrumbs(); 22 21 $crumbs->addTextCrumb($title, $request->getRequestURI()); 22 + $crumbs->setBorder(true); 23 + 24 + $curtain = $this->buildCurtainView($var); 23 25 24 26 $header = id(new PHUIHeaderView()) 25 27 ->setHeader($title) 26 28 ->setUser($viewer) 27 - ->setPolicyObject($var); 28 - 29 - $actions = id(new PhabricatorActionListView()) 30 - ->setUser($viewer) 31 - ->setObject($var); 32 - 33 - $can_edit = PhabricatorPolicyFilter::hasCapability( 34 - $viewer, 35 - $var, 36 - PhabricatorPolicyCapability::CAN_EDIT); 37 - 38 - $actions->addAction( 39 - id(new PhabricatorActionView()) 40 - ->setIcon('fa-pencil') 41 - ->setName(pht('Edit Variable')) 42 - ->setHref($this->getApplicationURI('/edit/'.$var->getVariableKey().'/')) 43 - ->setDisabled(!$can_edit) 44 - ->setWorkflow(!$can_edit)); 29 + ->setPolicyObject($var) 30 + ->setHeaderIcon('fa-copy'); 45 31 46 32 $display_value = json_encode($var->getVariableValue()); 47 33 48 34 $properties = id(new PHUIPropertyListView()) 49 35 ->setUser($viewer) 50 - ->setObject($var) 51 - ->setActionList($actions) 52 36 ->addProperty(pht('Value'), $display_value); 53 37 54 38 $timeline = $this->buildTransactionTimeline( ··· 57 41 $timeline->setShouldTerminate(true); 58 42 59 43 $object_box = id(new PHUIObjectBoxView()) 60 - ->setHeader($header) 44 + ->setHeaderText(pht('DETAILS')) 45 + ->setBackground(PHUIObjectBoxView::BLUE_PROPERTY) 61 46 ->addPropertyList($properties); 62 47 63 - return $this->buildApplicationPage( 64 - array( 65 - $crumbs, 48 + $view = id(new PHUITwoColumnView()) 49 + ->setHeader($header) 50 + ->setCurtain($curtain) 51 + ->setMainColumn(array( 66 52 $object_box, 67 53 $timeline, 68 - ), 69 - array( 70 - 'title' => $title, 71 54 )); 55 + 56 + return $this->newPage() 57 + ->setTitle($title) 58 + ->setCrumbs($crumbs) 59 + ->appendChild($view); 60 + } 61 + 62 + private function buildCurtainView(PhluxVariable $var) { 63 + $viewer = $this->getViewer(); 64 + 65 + $curtain = $this->newCurtainView($var); 66 + 67 + $can_edit = PhabricatorPolicyFilter::hasCapability( 68 + $viewer, 69 + $var, 70 + PhabricatorPolicyCapability::CAN_EDIT); 71 + 72 + $curtain->addAction( 73 + id(new PhabricatorActionView()) 74 + ->setIcon('fa-pencil') 75 + ->setName(pht('Edit Variable')) 76 + ->setHref($this->getApplicationURI('/edit/'.$var->getVariableKey().'/')) 77 + ->setDisabled(!$can_edit) 78 + ->setWorkflow(!$can_edit)); 79 + 80 + return $curtain; 72 81 } 73 82 74 83 }