HTML_QuickForm2
[ class tree: HTML_QuickForm2 ] [ index: HTML_QuickForm2 ] [ all elements ]

Source for file default-renderer.php

Documentation is available at default-renderer.php

  1. <?php
  2. /**
  3.  * Usage example for HTML_QuickForm2 package: default renderer
  4.  *
  5.  * The example demonstrates how the default renderer can be used and abused.
  6.  * It also provides a default stylesheet.
  7.  */
  8. ?>
  9. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  10.     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  11. <html xmlns="http://www.w3.org/1999/xhtml">
  12.   <head>
  13.     <style type="text/css">
  14.       body { margin: 0; padding: 0; font: 80%/1.5 Arial,Helvetica,sans-serif; color: #111; background-color: #FFF; }
  15.       .quickform { margin: 5px; padding: 5px; background-color: #FFF; }
  16.       .quickform form fieldset { margin: 10px 0; padding: 10px; border: #DDD 1px solid; }
  17.       .quickform form legend { font-weight: bold; color: #666; }
  18.       .quickform form div.element { padding: 0.25em 0; }
  19.       .quickform form label,
  20.       .quickform span.qf-label { margin-right: 10px; padding-right: 10px; width: 150px; display: block; float: left; text-align: right; position: relative; }
  21.       .quickform form .required:after { position: absolute; right: 0; font-size: 120%; font-style: normal; color: #C00; content: "*"; }
  22.       .quickform form .qf-label-1 { margin-left:160px; padding-left:10px; color:#888; font-size: 85%; }
  23.       .quickform div.reqnote { font-size: 92%; color: #555; }
  24.       .quickform div.reqnote em { font-style: normal; color: #C00; }
  25.       .quickform div.reqnote strong { color:#000; font-weight: bold; }
  26.       .quickform div.errors { background-color: #FEE; border: 1px solid #ECC; padding:5px; margin:0 0 20px 0 }
  27.       .quickform div.errors p,
  28.       .quickform div.errors ul { margin:0; }
  29.       .quickform div.error input { border-color: #C00; background-color: #FEF; }
  30.       .quickform div.qf-checkable label,
  31.       .quickform div.qf-checkable input { display: inline; float: none; }
  32.       .quickform div.qf-checkable div,
  33.       .quickform div.qf-message { margin-left: 170px; }
  34.       .quickform div.qf-message { font-size: 88%; color: #C00; }
  35.     </style>
  36.     <title>HTML_QuickForm2 default renderer example</title>
  37.   </head>
  38.   <body>
  39. <?php
  40.  
  41. require_once 'HTML/QuickForm2.php';
  42. require_once 'HTML/QuickForm2/Renderer.php';
  43.  
  44. $form = new HTML_QuickForm2('example');
  45. $fs $form->addFieldset()->setLabel('Your information');
  46.  
  47. $username $fs->addText('username')->setLabel('Username');
  48. $username->addRule('required''Username is required');
  49.  
  50. $password $fs->addPassword('pass')
  51.             ->setLabel(array('Password''Password should be 8 characters at minimum'));
  52. $password->addRule('required''Password is required');
  53.  
  54. $form->addHidden('my_hidden1')->setValue('1');
  55. $form->addHidden('my_hidden2')->setValue('2');
  56. $form->addSubmit('submit'array('value' => 'Send''id' => 'submit'));
  57.  
  58. if ($form->validate()) {
  59.     $form->toggleFrozen(true);
  60. }
  61.  
  62.  
  63. $renderer HTML_QuickForm2_Renderer::factory('default')
  64.     ->setOption(array(
  65.         'group_hiddens' => true,
  66.         'group_errors'  => true,
  67.         'required_note' => '<strong>Note:</strong> Required fields are marked with an asterisk (<em>*</em>).'
  68.     ))
  69.     ->setTemplateForId('submit''<div class="element">{element} or <a href="/">Cancel</a></div>')
  70.     ->setTemplateForClass(
  71.         'HTML_QuickForm2_Element_Input',
  72.         '<div class="element<qf:error> error</qf:error>"><qf:error>{error}</qf:error>' .
  73.         '<label for="{id}" class="qf-label<qf:required> required</qf:required>">{label}</label>' .
  74.         '{element}' .
  75.         '<qf:label_2><div class="qf-label-1">{label_2}</div></qf:label_2></div>'
  76.     );
  77.  
  78. echo $form->render($renderer);
  79. ?>
  80. </body>
  81. </html>

Documentation generated on Wed, 10 Apr 2019 08:56:08 -0400 by phpDocumentor 1.4.4. PEAR Logo Copyright © PHP Group 2004.