[ Index ]

PHP Cross Reference of Phabricator

title

Body

[close]

/src/applications/uiexample/examples/ -> PhabricatorPagedFormExample.php (source)

   1  <?php
   2  
   3  final class PhabricatorPagedFormExample extends PhabricatorUIExample {
   4  
   5    public function getName() {
   6      return pht('Form (Paged)');
   7    }
   8  
   9    public function getDescription() {
  10      return pht(
  11        'Use %s to render forms with multiple pages.',
  12        hsprintf('<tt>PHUIPagedFormView</tt>'));
  13    }
  14  
  15    public function renderExample() {
  16      $request = $this->getRequest();
  17      $user = $request->getUser();
  18  
  19  
  20      $page1 = id(new PHUIFormPageView())
  21        ->setPageName(pht('Page 1'))
  22        ->addControl(
  23          id(new AphrontFormTextControl())
  24            ->setName('page1')
  25            ->setLabel('Page 1'));
  26  
  27      $page2 = id(new PHUIFormPageView())
  28        ->setPageName(pht('Page 2'))
  29        ->addControl(
  30          id(new AphrontFormTextControl())
  31            ->setName('page2')
  32            ->setLabel('Page 2'));
  33  
  34      $page3 = id(new PHUIFormPageView())
  35        ->setPageName(pht('Page 3'))
  36        ->addControl(
  37          id(new AphrontFormTextControl())
  38            ->setName('page3')
  39            ->setLabel('Page 3'));
  40  
  41      $page4 = id(new PHUIFormPageView())
  42        ->setPageName(pht('Page 4'))
  43        ->addControl(
  44          id(new AphrontFormTextControl())
  45            ->setName('page4')
  46            ->setLabel('Page 4'));
  47  
  48      $form = new PHUIPagedFormView();
  49      $form->setUser($user);
  50  
  51      $form->addPage('page1', $page1);
  52      $form->addPage('page2', $page2);
  53      $form->addPage('page3', $page3);
  54      $form->addPage('page4', $page4);
  55  
  56      if ($request->isFormPost()) {
  57        $form->readFromRequest($request);
  58        if ($form->isComplete()) {
  59          return id(new AphrontDialogView())
  60            ->setUser($user)
  61            ->setTitle(pht('Form Complete'))
  62            ->appendChild(pht('You submitted the form. Well done!'))
  63            ->addCancelButton($request->getRequestURI(), pht('Again!'));
  64        }
  65      } else {
  66        $form->readFromObject(null);
  67      }
  68  
  69      return $form;
  70    }
  71  }


Generated: Sun Nov 30 09:20:46 2014 Cross-referenced by PHPXref 0.7.1