diff --git a/src/applications/uiexample/examples/PhabricatorPagedFormExample.php b/src/applications/uiexample/examples/PhabricatorPagedFormExample.php index e34e4cf23e..64846f48db 100644 --- a/src/applications/uiexample/examples/PhabricatorPagedFormExample.php +++ b/src/applications/uiexample/examples/PhabricatorPagedFormExample.php @@ -18,24 +18,28 @@ final class PhabricatorPagedFormExample extends PhabricatorUIExample { $page1 = id(new PHUIFormPageView()) + ->setPageName(pht('Page 1')) ->addControl( id(new AphrontFormTextControl()) ->setName('page1') ->setLabel('Page 1')); $page2 = id(new PHUIFormPageView()) + ->setPageName(pht('Page 2')) ->addControl( id(new AphrontFormTextControl()) ->setName('page2') ->setLabel('Page 2')); $page3 = id(new PHUIFormPageView()) + ->setPageName(pht('Page 3')) ->addControl( id(new AphrontFormTextControl()) ->setName('page3') ->setLabel('Page 3')); $page4 = id(new PHUIFormPageView()) + ->setPageName(pht('Page 4')) ->addControl( id(new AphrontFormTextControl()) ->setName('page4') diff --git a/src/view/form/PHUIFormPageView.php b/src/view/form/PHUIFormPageView.php index ae17e08bd8..06eb8bcf8a 100644 --- a/src/view/form/PHUIFormPageView.php +++ b/src/view/form/PHUIFormPageView.php @@ -191,7 +191,9 @@ class PHUIFormPageView extends AphrontView { public function readFromObject($object) { foreach ($this->getControls() as $name => $control) { - $control->readValueFromDictionary($object); + if (is_array($object)) { + $control->readValueFromDictionary($object); + } } return $this; diff --git a/src/view/form/PHUIPagedFormView.php b/src/view/form/PHUIPagedFormView.php index a088980275..d68c5bbe2c 100644 --- a/src/view/form/PHUIPagedFormView.php +++ b/src/view/form/PHUIPagedFormView.php @@ -266,16 +266,17 @@ final class PHUIPagedFormView extends AphrontTagView { $errors = id(new AphrontErrorView())->setErrors($errors); } - $header = null; + $box = id(new PHUIObjectBoxView()) + ->setFormError($errors) + ->setForm($form); + if ($selected_page->getPageName()) { $header = id(new PHUIHeaderView()) ->setHeader($selected_page->getPageName()); + $box->setHeader($header); } - return id(new PHUIObjectBoxView()) - ->setHeader($header) - ->setFormError($errors) - ->setForm($form); + return $box; } }