Daniel O'Connor
2011-03-27 07:20:26 UTC
clockwerx Sun, 27 Mar 2011 07:20:26 +0000
Revision: http://svn.php.net/viewvc?view=revision&revision=309731
Log:
Swapped to HTML_QuickForm2, added HTML5 attributes, removed table layout (temporarily), defined interim HTML_QuickForm2_Elements_InputUrl
Changed paths:
U pear/pearweb/trunk/public_html/package-new.php
Modified: pear/pearweb/trunk/public_html/package-new.php
===================================================================
--- pear/pearweb/trunk/public_html/package-new.php 2011-03-27 07:18:07 UTC (rev 309730)
+++ pear/pearweb/trunk/public_html/package-new.php 2011-03-27 07:20:26 UTC (rev 309731)
@@ -18,8 +18,20 @@
$Id$
*/
-require_once 'HTML/QuickForm.php';
+require_once 'HTML/QuickForm2.php';
+require_once 'HTML/QuickForm2/Renderer.php';
+require_once 'HTML/QuickForm2/Element/Input.php';
+/** @todo Shift ! */
+if (!class_exists('HTML_QuickForm2_Element_InputUrl')) {
+ class HTML_QuickForm2_Element_InputUrl extends HTML_QuickForm2_Element_Input
+ {
+ protected $attributes = array('type' => 'url');
+ }
+
+ HTML_QuickForm2_Factory::registerElement('url', 'HTML_QuickForm2_Element_InputUrl');
+}
+
if (!defined('PEAR_COMMON_PACKAGE_NAME_PREG')) {
define('PEAR_COMMON_PACKAGE_NAME_PREG', '/^([A-Z][a-zA-Z0-9_]+|[a-z][a-z0-9_]+)\z/');
}
@@ -143,35 +155,13 @@
}
}
-$form = new HTML_QuickForm('package-new', 'post', 'package-new.php');
+$form = new HTML_QuickForm2('package-new', 'post', 'package-new.php');
$form->removeAttribute('name');
-$renderer =& $form->defaultRenderer();
-$renderer->setElementTemplate('
- <tr>
- <th class="form-label_left">
- <!-- BEGIN required --><span style="color: #ff0000">*</span><!-- END required -->
- {label}
- </th>
- <td class="form-input">
- <!-- BEGIN error --><span style="color: #ff0000">{error}</span><br /><!-- END error -->
- {element}
- </td>
- </tr>
-');
+$renderer = HTML_QuickForm2_Renderer::factory('default');
-$renderer->setFormTemplate('
-<form{attributes}>
- <div>
- {hidden}
- <table border="0" class="form-holder" cellspacing="1">
- {content}
- </table>
- </div>
-</form>');
-
// Set defaults for the form elements
- $form->setDefaults(array(
+ $form->addDataSource(new HTML_QuickForm2_DataSource_Array(array(
'name' => isset($_POST['name']) ? $_POST['name'] : '',
'license' => isset($_POST['license']) ? $_POST['license'] : '',
'category' => isset($_POST['category']) ? $_POST['category'] : '',
@@ -179,19 +169,17 @@
'desc' => isset($_POST['desc']) ? $_POST['desc'] : '',
'homepage' => isset($_POST['homepage']) ? $_POST['homepage'] : '',
'cvs_link' => isset($_POST['cvs_link']) ? $_POST['cvs_link'] : '',
- ));
+ )));
- $form->addElement('html', '<caption class="form-caption">Register Package</caption>');
- $form->addElement('text', 'name', 'Package Name', array('size' => 20));
- $form->addElement('text', 'license', 'License', array('size' => 20));
- $form->addElement('select', 'category', 'Category', $categories);
- $form->addElement('textarea', 'summary', 'Summary', array('cols' => 60));
- $form->addElement('textarea', 'desc', 'Full description', array('cols' => 60, 'rows' => 3));
- $form->addElement('text', 'homepage', 'Additional project homepage', array('size' => 40));
- $form->addElement('text', 'cvs_link', 'Version control web URL', array('size' => 40));
- $form->addElement('static', null, null, '<small>For example: http://svn.php.net/repository/pear/packages/XML_Parser/trunk</small>');
+ $form->addElement('text', 'name', array('size' => 20, 'required' => 'required'))->setLabel("Package Name");
+ $form->addElement('text', 'license', array('size' => 20, 'required' => 'required', 'placeholder' => 'BSD'))->setLabel("License");
+ $form->addElement('select', 'category', array('required' => 'required'))->setLabel("Category")->loadOptions($categories);
+ $form->addElement('textarea', 'summary', array('cols' => 60, 'required' => 'required'))->setLabel("Summary");
+ $form->addElement('textarea', 'desc', array('cols' => 60, 'rows' => 5, 'required' => 'required'))->setLabel("Full description");
+ $form->addElement('url', 'homepage', array('size' => 40, 'placeholder' => 'http://example.com'))->setLabel("Additional project homepage");
+ $form->addElement('url', 'cvs_link', array('size' => 40, 'placeholder' => 'http://svn.php.net/repository/pear/packages/XML_Parser/trunk/'))->setLabel("Version control web URL");
$form->addElement('submit', 'submit', 'Submit Request');
- $form->display();
+ print $form->render($renderer);
if ($jumpto) {
echo "\n<script type=\"text/javascript\">\n<!--\n";
Revision: http://svn.php.net/viewvc?view=revision&revision=309731
Log:
Swapped to HTML_QuickForm2, added HTML5 attributes, removed table layout (temporarily), defined interim HTML_QuickForm2_Elements_InputUrl
Changed paths:
U pear/pearweb/trunk/public_html/package-new.php
Modified: pear/pearweb/trunk/public_html/package-new.php
===================================================================
--- pear/pearweb/trunk/public_html/package-new.php 2011-03-27 07:18:07 UTC (rev 309730)
+++ pear/pearweb/trunk/public_html/package-new.php 2011-03-27 07:20:26 UTC (rev 309731)
@@ -18,8 +18,20 @@
$Id$
*/
-require_once 'HTML/QuickForm.php';
+require_once 'HTML/QuickForm2.php';
+require_once 'HTML/QuickForm2/Renderer.php';
+require_once 'HTML/QuickForm2/Element/Input.php';
+/** @todo Shift ! */
+if (!class_exists('HTML_QuickForm2_Element_InputUrl')) {
+ class HTML_QuickForm2_Element_InputUrl extends HTML_QuickForm2_Element_Input
+ {
+ protected $attributes = array('type' => 'url');
+ }
+
+ HTML_QuickForm2_Factory::registerElement('url', 'HTML_QuickForm2_Element_InputUrl');
+}
+
if (!defined('PEAR_COMMON_PACKAGE_NAME_PREG')) {
define('PEAR_COMMON_PACKAGE_NAME_PREG', '/^([A-Z][a-zA-Z0-9_]+|[a-z][a-z0-9_]+)\z/');
}
@@ -143,35 +155,13 @@
}
}
-$form = new HTML_QuickForm('package-new', 'post', 'package-new.php');
+$form = new HTML_QuickForm2('package-new', 'post', 'package-new.php');
$form->removeAttribute('name');
-$renderer =& $form->defaultRenderer();
-$renderer->setElementTemplate('
- <tr>
- <th class="form-label_left">
- <!-- BEGIN required --><span style="color: #ff0000">*</span><!-- END required -->
- {label}
- </th>
- <td class="form-input">
- <!-- BEGIN error --><span style="color: #ff0000">{error}</span><br /><!-- END error -->
- {element}
- </td>
- </tr>
-');
+$renderer = HTML_QuickForm2_Renderer::factory('default');
-$renderer->setFormTemplate('
-<form{attributes}>
- <div>
- {hidden}
- <table border="0" class="form-holder" cellspacing="1">
- {content}
- </table>
- </div>
-</form>');
-
// Set defaults for the form elements
- $form->setDefaults(array(
+ $form->addDataSource(new HTML_QuickForm2_DataSource_Array(array(
'name' => isset($_POST['name']) ? $_POST['name'] : '',
'license' => isset($_POST['license']) ? $_POST['license'] : '',
'category' => isset($_POST['category']) ? $_POST['category'] : '',
@@ -179,19 +169,17 @@
'desc' => isset($_POST['desc']) ? $_POST['desc'] : '',
'homepage' => isset($_POST['homepage']) ? $_POST['homepage'] : '',
'cvs_link' => isset($_POST['cvs_link']) ? $_POST['cvs_link'] : '',
- ));
+ )));
- $form->addElement('html', '<caption class="form-caption">Register Package</caption>');
- $form->addElement('text', 'name', 'Package Name', array('size' => 20));
- $form->addElement('text', 'license', 'License', array('size' => 20));
- $form->addElement('select', 'category', 'Category', $categories);
- $form->addElement('textarea', 'summary', 'Summary', array('cols' => 60));
- $form->addElement('textarea', 'desc', 'Full description', array('cols' => 60, 'rows' => 3));
- $form->addElement('text', 'homepage', 'Additional project homepage', array('size' => 40));
- $form->addElement('text', 'cvs_link', 'Version control web URL', array('size' => 40));
- $form->addElement('static', null, null, '<small>For example: http://svn.php.net/repository/pear/packages/XML_Parser/trunk</small>');
+ $form->addElement('text', 'name', array('size' => 20, 'required' => 'required'))->setLabel("Package Name");
+ $form->addElement('text', 'license', array('size' => 20, 'required' => 'required', 'placeholder' => 'BSD'))->setLabel("License");
+ $form->addElement('select', 'category', array('required' => 'required'))->setLabel("Category")->loadOptions($categories);
+ $form->addElement('textarea', 'summary', array('cols' => 60, 'required' => 'required'))->setLabel("Summary");
+ $form->addElement('textarea', 'desc', array('cols' => 60, 'rows' => 5, 'required' => 'required'))->setLabel("Full description");
+ $form->addElement('url', 'homepage', array('size' => 40, 'placeholder' => 'http://example.com'))->setLabel("Additional project homepage");
+ $form->addElement('url', 'cvs_link', array('size' => 40, 'placeholder' => 'http://svn.php.net/repository/pear/packages/XML_Parser/trunk/'))->setLabel("Version control web URL");
$form->addElement('submit', 'submit', 'Submit Request');
- $form->display();
+ print $form->render($renderer);
if ($jumpto) {
echo "\n<script type=\"text/javascript\">\n<!--\n";