From a17171e83a693e9052524de5a61605cda76c512a Mon Sep 17 00:00:00 2001 From: Dominique Fournier Date: Tue, 12 May 2015 09:03:24 +0000 Subject: [PATCH] form : add the cols,rows and prefix for fields git-svn-id: https://svn.fournier38.fr/svn/ProgSVN/trunk@2166 bf3deb0d-5f1a-0410-827f-c0cc1f45334c --- form.php | 85 ++++++++++++++++++++------------------------------------ 1 file changed, 30 insertions(+), 55 deletions(-) diff --git a/form.php b/form.php index b07bd35..bed3583 100644 --- a/form.php +++ b/form.php @@ -52,15 +52,12 @@ class form - [readonly] : put a read-only flag on the field (the user see it but can't interract on it. The value will be sent to next page - - [verify] : Tests to verify with error priority and associated - message (%s is replaced by field selected value). Order - test from main tests to minor tests. - \$tmpfield can be used as a copy of the current field, - 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 + - [rows] : Number of rows + - [cols] : Number of columns @param array $fields The fields to be displayed */ @@ -116,49 +113,11 @@ class form checked @param array $fieldsVerify The fields to verify @param array|null $valuesVerify The values of the fields to verify + @deprecated 0.17 */ public function verify (&$fieldsVerify, $valuesVerify = NULL) { -// TODO : Remove this function or be cleaner ! -die ("FORM/VERIFY : UNUSED and dirty\n"); - $ret = array (); - if ($this->debug) - echo "
";
-    foreach ($fieldsVerify as $field)
-    {
-      if (!isset ($field->verify))
-        continue;
-      if (!isset ($valuesVerify[$field->name]))
-        throw new Exception ("No value provided for $field->name", 500);
-      foreach ($field->verify as $test => $message)
-      {
-        $func = sprintf ($test, addslashes ($valuesVerify[$field->name]));
-        if ($this->debug)
-          echo "VERIFY: \"$func\" => ";
-        $tmpfield = $field;
-        $res = addslashes (serialize ($tmpfield));
-        // TODO : http://fr2.php.net/manual/en/reflectionfunction.invokeargs.php
-        //        to remove eval ?
-        $rc = eval ("\$tmpfield=unserialize(stripslashes('$res'));".
-                    "return $func;");
-        if ($this->debug)
-          var_dump ($rc);
-        if ($rc !== FALSE)
-        {
-          $ret[$field->name] = $message;
-          $field->error = $message;
-          break;
-        }
-      }
-    }
-    if ($this->debug)
-    {
-      echo "RESULT: ";
-      var_dump ($ret);
-      echo "
"; - } - - return $ret; + die ("FORM/VERIFY : UNUSED and deprecated\n"); } /** Return the fields in HTML code. If $values is provided, use it in place @@ -199,7 +158,7 @@ die ("FORM/VERIFY : UNUSED and dirty\n"); switch ($field->type) { case "checkbox": - // No $field->multiple + // No $field->multiple, $field->rows $field->cols // values ! $res .= "
prefix)) @@ -281,7 +241,7 @@ die ("FORM/VERIFY : UNUSED and dirty\n"); break; case "password": - // No $field->multiple + // No $field->multiple, $field->rows $field->cols $res .= "
name])) $res .= " has-".$errors[$field->name][0]; @@ -396,7 +356,7 @@ die ("FORM/VERIFY : UNUSED and dirty\n"); break; case "select": - // $values->$field + // $values->$field, $field->cols $res .= "
rows)) + $res .= " size='".$field->rows."'"; $res .= ">\n"; foreach ($field->defaults as $key=>$val) { @@ -496,7 +458,8 @@ die ("FORM/VERIFY : UNUSED and dirty\n"); break; case "submit": - // No $field->label, $field->multiple, $field->error + // No $field->label, $field->multiple, $field->error, $field->rows, + // $field->cols $res .= "
\n"; $res .= "
\n"; $res .= " hidden) && $field->hidden !== FALSE) $res .= " style='display:none'"; + if (!isset ($field->cols)) + $field->cols = 20; + $res .= " cols='".$field->cols."'"; + if (!isset ($field->rows)) + $field->rows = 4; + $res .= " rows='".$field->rows."'"; $res .= ">"; if (isset ($values[$field->name])) $res .= htmlspecialchars ($values[$field->name], ENT_QUOTES); @@ -572,7 +541,7 @@ die ("FORM/VERIFY : UNUSED and dirty\n"); break; default: - // No $field->multiple, $field->titles + // No $field->multiple, $field->titles, $field->rows, $field->cols $res .= "