diff options
author | Antonio Gallo <tonicucoz@gmail.com> | 2014-09-16 08:03:29 +0000 |
---|---|---|
committer | Antonio Gallo <tonicucoz@gmail.com> | 2014-09-16 08:03:29 +0000 |
commit | 11972639df8315753123ebccdadee1f596807ad0 (patch) | |
tree | 7c932d7e2f0d66afa55e603960f86cef7b00c5ff /h-source/Library/Form/Form.php | |
parent | 6209923d6cfb2418ee926cccdc62a9383e14bd97 (diff) |
Integrated new EasyGiant Library
Diffstat (limited to 'h-source/Library/Form/Form.php')
-rwxr-xr-x | h-source/Library/Form/Form.php | 49 |
1 files changed, 39 insertions, 10 deletions
diff --git a/h-source/Library/Form/Form.php b/h-source/Library/Form/Form.php index d1899a4..9b05c51 100755 --- a/h-source/Library/Form/Form.php +++ b/h-source/Library/Form/Form.php @@ -2,7 +2,7 @@ // EasyGiant is a PHP framework for creating and managing dynamic content // -// Copyright (C) 2009 - 2011 Antonio Gallo +// Copyright (C) 2009 - 2014 Antonio Gallo (info@laboratoriolibero.com) // See COPYRIGHT.txt and LICENSE.txt. // // This file is part of EasyGiant @@ -25,6 +25,15 @@ if (!defined('EG')) die('Direct access not allowed!'); //create the HTML of the whole form class Form_Form { + //default attributes of the entries + public static $defaultEntryAttributes = array( + "entryClass" => null, + "className" => null, + "idName" => null, + "submitClass" => "btn btn-primary", + "formWrap" => null, + ); + public $entry = array(); //associative array containing the entries of the form (objects that inherit the class form_entryModel). Each element of the array corresponds to one field of the table public $action = null; //the action of the form @@ -53,8 +62,9 @@ class Form_Form { { throw new Exception("class <b>$entryObjName</b> not defined: the entry <b>$entryName</b> can't be set"); } + $this->entry[$entryName] = new $entryObjName($entryName); - $this->entry[$entryName]->labelString = $entryName.':'; + $this->entry[$entryName]->labelString = getFieldLabel($entryName); //set the type $this->entry[$entryName]->type = $entryType; if (isset($options)) @@ -72,17 +82,18 @@ class Form_Form { $type = array_key_exists('type',$entry) ? $entry['type'] : 'InputText'; $options = array_key_exists('options',$entry) ? $entry['options'] : null; $this->setEntry($name,$type,$options); - - $entryClass = array_key_exists('entryClass',$entry) ? $entry['entryClass'] : null; - $labelString = array_key_exists('labelString',$entry) ? $entry['labelString'] : "$name:"; - $idName = array_key_exists('idName',$entry) ? $entry['idName'] : null; - $className = array_key_exists('className',$entry) ? $entry['className'] : null; + + $entryClass = array_key_exists('entryClass',$entry) ? $entry['entryClass'] : self::$defaultEntryAttributes['entryClass']; + $labelString = array_key_exists('labelString',$entry) ? $entry['labelString'] : getFieldLabel($name); + $idName = array_key_exists('idName',$entry) ? $entry['idName'] : self::$defaultEntryAttributes['idName']; + $className = array_key_exists('className',$entry) ? $entry['className'] : self::$defaultEntryAttributes['className']; $labelClass = array_key_exists('labelClass',$entry) ? $entry['labelClass'] : null; $defaultValue = array_key_exists('defaultValue',$entry) ? $entry['defaultValue'] : null; $wrap = array_key_exists('wrap',$entry) ? $entry['wrap'] : array(); $deleteButton = array_key_exists('deleteButton',$entry) ? $entry['deleteButton'] : null; $reverse = array_key_exists('reverse',$entry) ? $entry['reverse'] : null; - + $attributes = array_key_exists('attributes',$entry) ? $entry['attributes'] : null; + $this->entry[$name]->entryClass = $entryClass; $this->entry[$name]->labelString = $labelString; $this->entry[$name]->idName = $idName; @@ -92,6 +103,7 @@ class Form_Form { $this->entry[$name]->wrap = $wrap; $this->entry[$name]->deleteButton = $deleteButton; $this->entry[$name]->reverse = $reverse; + $this->entry[$name]->attributes = $attributes; } } @@ -113,7 +125,7 @@ class Form_Form { $fid = isset($this->id) ? "id='".$this->id."'" : null; $fname = isset($this->name) ? "name='".$this->name."'" : null; $fclass = isset($this->className) ? "class='".$this->className."'" : null; - $fenctype = isset($this->enctype) ? " enctype=".$this->enctype." " : null; + $fenctype = isset($this->enctype) ? " enctype='".$this->enctype."' " : null; $htmlForm = "<form $fname $fclass $fid action='".Url::getRoot($this->action)."' method='".$this->method."' $fenctype>\n"; if (!isset($subset)) @@ -179,7 +191,19 @@ class Form_Form { { if (!is_array($value)) { - $htmlForm .= "<span class='submit_entry_$value'>".Html_Form::submit($name, $value, null, $name)."</span>"; + $submitClass= ""; + if (!is_array(self::$defaultEntryAttributes['submitClass'])) + { + $submitClass = self::$defaultEntryAttributes['submitClass']; + } + else + { + if (array_key_exists($value,self::$defaultEntryAttributes['submitClass'])) + { + $submitClass = self::$defaultEntryAttributes['submitClass'][$value]; + } + } + $htmlForm .= "<span class='submit_entry_$value'>".Html_Form::submit($name, $value, $submitClass, $name)."</span>"; } else { @@ -189,6 +213,11 @@ class Form_Form { } $htmlForm .= "</div>"; $htmlForm .= "</form>\n"; + + if (isset(self::$defaultEntryAttributes["formWrap"]) and is_array(self::$defaultEntryAttributes["formWrap"]) and count(self::$defaultEntryAttributes["formWrap"]) === 2) + { + return self::$defaultEntryAttributes["formWrap"][0] . $htmlForm . self::$defaultEntryAttributes["formWrap"][1]; + } return $htmlForm; } |