Adding support of operationnal errors in form

git-svn-id: https://svn.fournier38.fr/svn/ProgSVN/trunk@1305 bf3deb0d-5f1a-0410-827f-c0cc1f45334c
This commit is contained in:
2014-05-20 17:03:44 +00:00
parent 1a62acca09
commit bb18deadab

View File

@@ -112,7 +112,8 @@ class form
@param string|null $method The method to use to transmit the form (POST, @param string|null $method The method to use to transmit the form (POST,
GET) GET)
@param array|null $values The default values of the fields */ @param array|null $values The default values of the fields */
public function printHTML ($method = 'post', $values = NULL) public function printHTML ($method = 'post', $values = NULL,
$errors = array())
{ {
// TODO : textarea, file // TODO : textarea, file
$res = ""; $res = "";
@@ -137,8 +138,8 @@ class form
// No $field->multiple // No $field->multiple
// values ! // values !
$res .= "<div class='form-group"; $res .= "<div class='form-group";
if (isset ($field->error)) if (isset ($errors[$field->name]))
$res .= " has-".key ($field->error); $res .= " has-".$errors[$field->name][0];
$res .= "'>\n"; $res .= "'>\n";
$res .= " <label class='col-sm-2 control-label' for='". $res .= " <label class='col-sm-2 control-label' for='".
$this->formName."_". $this->formName."_".
@@ -172,9 +173,9 @@ class form
$res .= "$val\n"; $res .= "$val\n";
} }
if (isset ($field->error)) if (isset ($errors[$field->name]))
$res .= " <span class='help-block'>".reset ($field->error). $res .= " <span class='help-block'>".$errors[$field->name][1].
"</span>\n"; "</span>\n";
$res .= " </div>\n"; // End controls $res .= " </div>\n"; // End controls
$res .= " </div>\n"; // End form-group $res .= " </div>\n"; // End form-group
break; break;
@@ -196,8 +197,8 @@ class form
case "password": case "password":
// No $field->multiple // No $field->multiple
$res .= "<div class='form-group"; $res .= "<div class='form-group";
if (isset ($field->error)) if (isset ($errors[$field->name]))
$res .= " has-".key ($field->error); $res .= " has-".$errors[$field->name][0];
$res .= "'>\n"; $res .= "'>\n";
$res .= " <label class='col-sm-2 control-label' for='". $res .= " <label class='col-sm-2 control-label' for='".
$this->formName."_". $this->formName."_".
@@ -219,9 +220,9 @@ class form
$res .= " readonly='readonly'"; $res .= " readonly='readonly'";
$res .= " class='form-control'"; $res .= " class='form-control'";
$res .= "/>\n"; $res .= "/>\n";
if (isset ($field->error)) if (isset ($errors[$field->name]))
$res .= " <span class='help-block'>".reset ($field->error). $res .= " <span class='help-block'>".$errors[$field->name][1].
"</span>\n"; "</span>\n";
$res .= " </div>\n"; // End controls $res .= " </div>\n"; // End controls
$res .= " </div>\n"; // End form-group $res .= " </div>\n"; // End form-group
break; break;
@@ -229,8 +230,8 @@ class form
case "radio": case "radio":
// No $field->multiple // No $field->multiple
$res .= "<div class='form-group"; $res .= "<div class='form-group";
if (isset ($field->error)) if (isset ($errors[$field->name]))
$res .= " has-".key ($field->error); $res .= " has-".$errors[$field->name][0];
$res .= "'>\n"; $res .= "'>\n";
$res .= " <label class='col-sm-2 control-label' for='". $res .= " <label class='col-sm-2 control-label' for='".
$this->formName."_". $this->formName."_".
@@ -267,9 +268,9 @@ class form
$res .= "</label>\n"; // End label radio $res .= "</label>\n"; // End label radio
} }
if (isset ($field->error)) if (isset ($errors[$field->name]))
$res .= " <span class='help-block'>".reset ($field->error). $res .= " <span class='help-block'>".$errors[$field->name][1].
"</span>\n"; "</span>\n";
$res .= " </div>\n"; // End controls $res .= " </div>\n"; // End controls
$res .= " </div>\n"; // End form-group $res .= " </div>\n"; // End form-group
break; break;
@@ -277,8 +278,8 @@ class form
case "select": case "select":
// $values->$field // $values->$field
$res .= "<div class='form-group"; $res .= "<div class='form-group";
if (isset ($field->error)) if (isset ($errors[$field->name]))
$res .= " has-".key ($field->error); $res .= " has-".$errors[$field->name][0];
$res .= "'>\n"; $res .= "'>\n";
$res .= " <label class='col-sm-2 control-label' for='". $res .= " <label class='col-sm-2 control-label' for='".
$this->formName."_". $this->formName."_".
@@ -333,9 +334,9 @@ class form
} }
$res .= " </select>\n"; $res .= " </select>\n";
if (isset ($field->error)) if (isset ($errors[$field->name]))
$res .= " <span class='help-block'>".reset ($field->error). $res .= " <span class='help-block'>".$errors[$field->name][1].
"</span>\n"; "</span>\n";
} }
else else
{ {
@@ -365,8 +366,8 @@ class form
default: default:
// No $field->multiple, $field->titles // No $field->multiple, $field->titles
$res .= "<div class='form-group"; $res .= "<div class='form-group";
if (isset ($field->error)) if (isset ($errors[$field->name]))
$res .= " has-".key ($field->error); $res .= " has-".$errors[$field->name][0];
$res .= "'>\n"; $res .= "'>\n";
$res .= " <label class='col-sm-2 control-label' for='". $res .= " <label class='col-sm-2 control-label' for='".
$this->formName."_". $this->formName."_".
@@ -388,9 +389,9 @@ class form
$res .= " readonly='readonly'"; $res .= " readonly='readonly'";
$res .= " class='form-control'"; $res .= " class='form-control'";
$res .= "/>\n"; $res .= "/>\n";
if (isset ($field->error)) if (isset ($errors[$field->name]))
$res .= " <span class='help-block'>".reset ($field->error). $res .= " <span class='help-block'>".$errors[$field->name][1].
"</span>\n"; "</span>\n";
$res .= " </div>\n"; // End controls $res .= " </div>\n"; // End controls
$res .= " </div>\n"; // End form-group $res .= " </div>\n"; // End form-group
break; break;