form : add the prefix to allow the form to be subitted in array
git-svn-id: https://svn.fournier38.fr/svn/ProgSVN/trunk@2165 bf3deb0d-5f1a-0410-827f-c0cc1f45334c
This commit is contained in:
163
form.php
163
form.php
@@ -59,6 +59,8 @@ class form
|
||||
to check the defaults per example
|
||||
- [mandatory] : boolean to add a red star at end of label
|
||||
- [hidden] : hide the field (add a style='display:hidden' to the field)
|
||||
- [prefix] : the prefix added to the name (in XXX/YYY/ZZZ form).
|
||||
Will form an array to the result
|
||||
|
||||
@param array $fields The fields to be displayed
|
||||
*/
|
||||
@@ -171,7 +173,6 @@ die ("FORM/VERIFY : UNUSED and dirty\n");
|
||||
public function printHTML ($method = 'post', $values = NULL,
|
||||
$errors = array())
|
||||
{
|
||||
// TODO : textarea, file
|
||||
$this->method = strtolower ($method);
|
||||
$res = "";
|
||||
$res = "<form action='#' method='$method'";
|
||||
@@ -205,8 +206,10 @@ die ("FORM/VERIFY : UNUSED and dirty\n");
|
||||
$res .= " has-".$errors[$field->name][0];
|
||||
$res .= "'>\n";
|
||||
$res .= " <label class='col-sm-2 control-label' for='".
|
||||
$this->formName."_".
|
||||
htmlspecialchars ($field->name, ENT_QUOTES)."_0'";
|
||||
$this->formName."_";
|
||||
if (isset ($field->prefix))
|
||||
$res .= preg_replace ("#[/ ]#", "_", $field->prefix)."_";
|
||||
$res .= htmlspecialchars ($field->name, ENT_QUOTES)."_0'";
|
||||
if (isset ($field->hidden) && $field->hidden !== FALSE)
|
||||
$res .= " style='display:none'";
|
||||
$res .= ">";
|
||||
@@ -222,15 +225,21 @@ die ("FORM/VERIFY : UNUSED and dirty\n");
|
||||
foreach ($field->titles as $key=>$val)
|
||||
{
|
||||
$res .= " <input type='hidden'";
|
||||
$res .= " name='$this->formName"."[".
|
||||
htmlspecialchars ($field->name, ENT_QUOTES)."][$key]'";
|
||||
$res .= " name='$this->formName"."[";
|
||||
if (isset ($field->prefix))
|
||||
$res .= implode ("][", explode ("/", $field->prefix))."][";
|
||||
$res .= htmlspecialchars ($field->name, ENT_QUOTES)."][$key]'";
|
||||
$res .= " value='unset'";
|
||||
$res .= "/>";
|
||||
$res .= "<input type='checkbox'";
|
||||
$res .= " name='$this->formName"."[".
|
||||
htmlspecialchars ($field->name, ENT_QUOTES)."][$key]'";
|
||||
$res .= " id='$this->formName"."_".
|
||||
htmlspecialchars ($field->name, ENT_QUOTES)."_$key'";
|
||||
$res .= " name='$this->formName"."[";
|
||||
if (isset ($field->prefix))
|
||||
$res .= implode ("][", explode ("/", $field->prefix))."][";
|
||||
$res .= htmlspecialchars ($field->name, ENT_QUOTES)."][$key]'";
|
||||
$res .= " id='$this->formName"."_";
|
||||
if (isset ($field->prefix))
|
||||
$res .= preg_replace ("#[/ ]#", "_", $field->prefix)."_";
|
||||
$res .= htmlspecialchars ($field->name, ENT_QUOTES)."_$key'";
|
||||
if (isset ($field->readonly) && $field->readonly !== FALSE)
|
||||
$res .= " disabled='disabled'";
|
||||
if (isset ($values[$field->name][$key]) &&
|
||||
@@ -256,10 +265,14 @@ die ("FORM/VERIFY : UNUSED and dirty\n");
|
||||
case "hidden":
|
||||
// No $field->label, $field->multiple, $field->readonly, $field->hidden
|
||||
$res .= "<input type='hidden'";
|
||||
$res .= " name='$this->formName"."[".
|
||||
htmlspecialchars ($field->name, ENT_QUOTES)."]'";
|
||||
$res .= " id='$this->formName"."_".
|
||||
htmlspecialchars ($field->name, ENT_QUOTES)."'";
|
||||
$res .= " name='$this->formName"."[";
|
||||
if (isset ($field->prefix))
|
||||
$res .= implode ("][", explode ("/", $field->prefix))."][";
|
||||
$res .= htmlspecialchars ($field->name, ENT_QUOTES)."]'";
|
||||
$res .= " id='$this->formName"."_";
|
||||
if (isset ($field->prefix))
|
||||
$res .= preg_replace ("#[/ ]#", "_", $field->prefix)."_";
|
||||
$res .= htmlspecialchars ($field->name, ENT_QUOTES)."'";
|
||||
if (isset ($values[$field->name]))
|
||||
$res .= " value='".htmlspecialchars ($values[$field->name])."'";
|
||||
else
|
||||
@@ -274,8 +287,10 @@ die ("FORM/VERIFY : UNUSED and dirty\n");
|
||||
$res .= " has-".$errors[$field->name][0];
|
||||
$res .= "'>\n";
|
||||
$res .= " <label class='col-sm-2 control-label' for='".
|
||||
$this->formName."_".
|
||||
htmlspecialchars ($field->name, ENT_QUOTES)."'";
|
||||
$this->formName."_";
|
||||
if (isset ($field->prefix))
|
||||
$res .= preg_replace ("#[/ ]#", "_", $field->prefix)."_";
|
||||
$res .= htmlspecialchars ($field->name, ENT_QUOTES)."'";
|
||||
if (isset ($field->hidden) && $field->hidden !== FALSE)
|
||||
$res .= " style='display:none'";
|
||||
$res .= ">";
|
||||
@@ -287,10 +302,14 @@ die ("FORM/VERIFY : UNUSED and dirty\n");
|
||||
$res .= "</label>\n";
|
||||
$res .= " <div class='col-sm-10'>\n";
|
||||
$res .= " <input type='password'";
|
||||
$res .= " name='$this->formName"."[".
|
||||
htmlspecialchars ($field->name, ENT_QUOTES)."]'";
|
||||
$res .= " id='$this->formName"."_".
|
||||
htmlspecialchars ($field->name, ENT_QUOTES)."'";
|
||||
$res .= " name='$this->formName"."[";
|
||||
if (isset ($field->prefix))
|
||||
$res .= implode ("][", explode ("/", $field->prefix))."][";
|
||||
$res .= htmlspecialchars ($field->name, ENT_QUOTES)."]'";
|
||||
$res .= " id='$this->formName"."_";
|
||||
if (isset ($field->prefix))
|
||||
$res .= preg_replace ("#[/ ]#", "_", $field->prefix)."_";
|
||||
$res .= htmlspecialchars ($field->name, ENT_QUOTES)."'";
|
||||
if (isset ($values[$field->name]))
|
||||
$res .= " value='".htmlspecialchars ($values[$field->name],
|
||||
ENT_QUOTES)."'";
|
||||
@@ -317,8 +336,10 @@ die ("FORM/VERIFY : UNUSED and dirty\n");
|
||||
$res .= " has-".$errors[$field->name][0];
|
||||
$res .= "'>\n";
|
||||
$res .= " <label class='col-sm-2 control-label' for='".
|
||||
$this->formName."_".
|
||||
htmlspecialchars ($field->name, ENT_QUOTES)."_0'";
|
||||
$this->formName."_";
|
||||
if (isset ($field->prefix))
|
||||
$res .= preg_replace ("#[/ ]#", "_", $field->prefix)."_";
|
||||
$res .= htmlspecialchars ($field->name, ENT_QUOTES)."_0'";
|
||||
if (isset ($field->hidden) && $field->hidden !== FALSE)
|
||||
$res .= " style='display:none'";
|
||||
$res .= ">";
|
||||
@@ -332,18 +353,24 @@ die ("FORM/VERIFY : UNUSED and dirty\n");
|
||||
if (is_string ($field->defaults))
|
||||
$field->defaults = array ($field->defaults);
|
||||
$res .= " <input type='hidden'";
|
||||
$res .= " name='$this->formName"."[".
|
||||
htmlspecialchars ($field->name, ENT_QUOTES)."]'";
|
||||
$res .= " name='$this->formName"."[";
|
||||
if (isset ($field->prefix))
|
||||
$res .= implode ("][", explode ("/", $field->prefix))."][";
|
||||
$res .= htmlspecialchars ($field->name, ENT_QUOTES)."]'";
|
||||
$res .= " value='unset'";
|
||||
$res .= "/>\n";
|
||||
foreach ($field->titles as $key=>$val)
|
||||
{
|
||||
$res .= " <label class='radio'>";
|
||||
$res .= "<input type='radio'";
|
||||
$res .= " name='$this->formName"."[".
|
||||
htmlspecialchars ($field->name, ENT_QUOTES)."]'";
|
||||
$res .= " id='$this->formName"."_".
|
||||
htmlspecialchars ($field->name, ENT_QUOTES)."_$key'";
|
||||
$res .= " name='$this->formName"."[";
|
||||
if (isset ($field->prefix))
|
||||
$res .= implode ("][", explode ("/", $field->prefix))."][";
|
||||
$res .= htmlspecialchars ($field->name, ENT_QUOTES)."]'";
|
||||
$res .= " id='$this->formName"."_";
|
||||
if (isset ($field->prefix))
|
||||
$res .= preg_replace ("#[/ ]#", "_", $field->prefix)."_";
|
||||
$res .= htmlspecialchars ($field->name, ENT_QUOTES)."_$key'";
|
||||
$res .= " value='".htmlspecialchars ($val, ENT_QUOTES)."'";
|
||||
if (isset ($field->readonly) && $field->readonly !== FALSE)
|
||||
$res .= " readonly='readonly'";
|
||||
@@ -375,8 +402,10 @@ die ("FORM/VERIFY : UNUSED and dirty\n");
|
||||
$res .= " has-".$errors[$field->name][0];
|
||||
$res .= "'>\n";
|
||||
$res .= " <label class='col-sm-2 control-label' for='".
|
||||
$this->formName."_".
|
||||
htmlspecialchars ($field->name, ENT_QUOTES)."'";
|
||||
$this->formName."_";
|
||||
if (isset ($field->prefix))
|
||||
$res .= preg_replace ("#[/ ]#", "_", $field->prefix)."_";
|
||||
$res .= htmlspecialchars ($field->name, ENT_QUOTES)."'";
|
||||
if (isset ($field->hidden) && $field->hidden !== FALSE)
|
||||
$res .= " style='display:none'";
|
||||
$res .= ">";
|
||||
@@ -395,12 +424,20 @@ die ("FORM/VERIFY : UNUSED and dirty\n");
|
||||
{
|
||||
$res .= " <input type='hidden'";
|
||||
if (isset ($field->multiple) && $field->multiple !== FALSE)
|
||||
$res .= " name='$this->formName"."[".
|
||||
htmlspecialchars ($field->name, ENT_QUOTES)."][".
|
||||
{
|
||||
$res .= " name='$this->formName"."[";
|
||||
if (isset ($field->prefix))
|
||||
$res .= implode ("][", explode ("/", $field->prefix))."][";
|
||||
$res .= htmlspecialchars ($field->name, ENT_QUOTES)."][".
|
||||
htmlspecialchars ($key, ENT_QUOTES)."]'";
|
||||
}
|
||||
else
|
||||
$res .= " name='$this->formName"."[".
|
||||
htmlspecialchars ($field->name, ENT_QUOTES)."]'";
|
||||
{
|
||||
$res .= " name='$this->formName"."[";
|
||||
if (isset ($field->prefix))
|
||||
$res .= implode ("][", explode ("/", $field->prefix))."][";
|
||||
$res .= htmlspecialchars ($field->name, ENT_QUOTES)."]'";
|
||||
}
|
||||
$res .= " value='";
|
||||
$res .= htmlspecialchars ($key, ENT_QUOTES)."'";
|
||||
$res .= "/>\n";
|
||||
@@ -408,13 +445,17 @@ die ("FORM/VERIFY : UNUSED and dirty\n");
|
||||
}
|
||||
|
||||
$res .= " <select";
|
||||
$res .= " name='$this->formName"."[".
|
||||
htmlspecialchars ($field->name, ENT_QUOTES)."]";
|
||||
$res .= " name='$this->formName"."[";
|
||||
if (isset ($field->prefix))
|
||||
$res .= implode ("][", explode ("/", $field->prefix))."][";
|
||||
$res .= htmlspecialchars ($field->name, ENT_QUOTES)."]";
|
||||
if (isset ($field->multiple) && $field->multiple !== FALSE)
|
||||
$res .= "[]";
|
||||
$res .= "'";
|
||||
$res .= " id='$this->formName"."_".
|
||||
htmlspecialchars ($field->name, ENT_QUOTES)."'";
|
||||
$res .= " id='$this->formName"."_";
|
||||
if (isset ($field->prefix))
|
||||
$res .= preg_replace ("#[/ ]#", "_", $field->prefix)."_";
|
||||
$res .= htmlspecialchars ($field->name, ENT_QUOTES)."'";
|
||||
if (isset ($field->multiple) && $field->multiple !== FALSE)
|
||||
$res .= " multiple='multiple'";
|
||||
if (isset ($field->readonly) && $field->readonly !== FALSE)
|
||||
@@ -459,10 +500,14 @@ die ("FORM/VERIFY : UNUSED and dirty\n");
|
||||
$res .= "<div class='form-group'>\n";
|
||||
$res .= " <div class='col-sm-12'>\n";
|
||||
$res .= " <input type='submit'";
|
||||
$res .= " name='$this->formName"."[".
|
||||
htmlspecialchars ($field->name, ENT_QUOTES)."]'";
|
||||
$res .= " id='$this->formName"."_".
|
||||
htmlspecialchars ($field->name, ENT_QUOTES)."'";
|
||||
$res .= " name='$this->formName"."[";
|
||||
if (isset ($field->prefix))
|
||||
$res .= implode ("][", explode ("/", $field->prefix))."][";
|
||||
$res .= htmlspecialchars ($field->name, ENT_QUOTES)."]'";
|
||||
$res .= " id='$this->formName"."_";
|
||||
if (isset ($field->prefix))
|
||||
$res .= preg_replace ("#[/ ]#", "_", $field->prefix)."_";
|
||||
$res .= htmlspecialchars ($field->name, ENT_QUOTES)."'";
|
||||
if (isset ($field->readonly) && $field->readonly !== FALSE)
|
||||
$res .= " disabled='disabled'";
|
||||
if (isset ($field->defaults))
|
||||
@@ -485,8 +530,10 @@ die ("FORM/VERIFY : UNUSED and dirty\n");
|
||||
$res .= " has-".$errors[$field->name][0];
|
||||
$res .= "'>\n";
|
||||
$res .= " <label class='col-sm-2 control-label' for='".
|
||||
$this->formName."_".
|
||||
htmlspecialchars ($field->name, ENT_QUOTES)."'";
|
||||
$this->formName."_";
|
||||
if (isset ($field->prefix))
|
||||
$res .= preg_replace ("#[/ ]#", "_", $field->prefix)."_";
|
||||
$res .= htmlspecialchars ($field->name, ENT_QUOTES)."'";
|
||||
if (isset ($field->hidden) && $field->hidden !== FALSE)
|
||||
$res .= " style='display:none'";
|
||||
$res .= ">";
|
||||
@@ -498,10 +545,14 @@ die ("FORM/VERIFY : UNUSED and dirty\n");
|
||||
$res .= "</label>\n";
|
||||
$res .= " <div class='col-sm-10'>\n";
|
||||
$res .= " <textarea";
|
||||
$res .= " name='$this->formName"."[".
|
||||
htmlspecialchars ($field->name, ENT_QUOTES)."]'";
|
||||
$res .= " id='$this->formName"."_".
|
||||
htmlspecialchars ($field->name, ENT_QUOTES)."'";
|
||||
$res .= " name='$this->formName"."[";
|
||||
if (isset ($field->prefix))
|
||||
$res .= implode ("][", explode ("/", $field->prefix))."][";
|
||||
$res .= htmlspecialchars ($field->name, ENT_QUOTES)."]'";
|
||||
$res .= " id='$this->formName"."_";
|
||||
if (isset ($field->prefix))
|
||||
$res .= preg_replace ("#[/ ]#", "_", $field->prefix)."_";
|
||||
$res .= htmlspecialchars ($field->name, ENT_QUOTES)."'";
|
||||
if (isset ($field->readonly) && $field->readonly !== FALSE)
|
||||
$res .= " readonly='readonly'";
|
||||
$res .= " class='form-control'";
|
||||
@@ -527,8 +578,10 @@ die ("FORM/VERIFY : UNUSED and dirty\n");
|
||||
$res .= " has-".$errors[$field->name][0];
|
||||
$res .= "'>\n";
|
||||
$res .= " <label class='col-sm-2 control-label' for='".
|
||||
$this->formName."_".
|
||||
htmlspecialchars ($field->name, ENT_QUOTES)."'";
|
||||
$this->formName."_";
|
||||
if (isset ($field->prefix))
|
||||
$res .= preg_replace ("#[/ ]#", "_", $field->prefix)."_";
|
||||
$res .= htmlspecialchars ($field->name, ENT_QUOTES)."'";
|
||||
if (isset ($field->hidden) && $field->hidden !== FALSE)
|
||||
$res .= " style='display:none'";
|
||||
$res .= ">";
|
||||
@@ -540,10 +593,14 @@ die ("FORM/VERIFY : UNUSED and dirty\n");
|
||||
$res .= "</label>\n";
|
||||
$res .= " <div class='col-sm-10'>\n";
|
||||
$res .= " <input type='text'";
|
||||
$res .= " name='$this->formName"."[".
|
||||
htmlspecialchars ($field->name, ENT_QUOTES)."]'";
|
||||
$res .= " id='$this->formName"."_".
|
||||
htmlspecialchars ($field->name, ENT_QUOTES)."'";
|
||||
$res .= " name='$this->formName"."[";
|
||||
if (isset ($field->prefix))
|
||||
$res .= implode ("][", explode ("/", $field->prefix))."][";
|
||||
$res .= htmlspecialchars ($field->name, ENT_QUOTES)."]'";
|
||||
$res .= " id='$this->formName"."_";
|
||||
if (isset ($field->prefix))
|
||||
$res .= preg_replace ("#[/ ]#", "_", $field->prefix)."_";
|
||||
$res .= htmlspecialchars ($field->name, ENT_QUOTES)."'";
|
||||
if (isset ($values[$field->name]))
|
||||
$res .= " value='".htmlspecialchars ($values[$field->name],
|
||||
ENT_QUOTES)."'";
|
||||
|
||||
Reference in New Issue
Block a user