Added predefined expense selector onto the expenses.php page.
[timetracker.git] / WEB-INF / lib / form / Form.class.php
index 340637d..0fcbd62 100644 (file)
 // +----------------------------------------------------------------------+
 
 class Form {
-    var $formName      = "";
-       var $mAction       = "";
-       var $mMethod       = "post";
-       var $mEnctype      = "";
-       var $mId           = "";
+
+  var $name = '';
+  // TODO: refactoring ongoing down from here.
+
     var $error;
        var $debugFunction;
        var $mElements     = array();
        var $mRequest;
-//     var $mFormBean;
     
-    function Form($formid) {
-        $this->formName = $formid;
+    function __construct($formName) {
+        $this->name = $formName;
     }
     
     function setRequest(&$request) {
         $this->mRequest = &$request;
     }
-    
-/*    function setFormBean(&$bean) {
-        $this->mFormBean = &$bean;
-    }
-*/    
+
     function &getElement($name) {
        return $this->mElements[$name];
     }
@@ -72,20 +66,7 @@ class Form {
        // name
        // onsubmit
        // onreset
-       function setName($value) { $this->formName = $value; }
-    function getName() { return $this->formName; }
-    
-    function setId($value) { $this->mId = $value; }
-    function getId() { return $this->mId; }
-    
-    function setAction($value) { $this->mAction = $value; }
-    function getAction() { return $this->mAction; }
-    
-    function setMethod($value) { $this->mMethod = $value; }
-    function getMethod() { return $this->mMethod; }
-    
-    function setEnctype($value) { $this->mEnctype = $value; }
-    function getEnctype() { return $this->mEnctype; }
+    function getName() { return $this->name; }
     
     function isSubmit()        {
        if (!isset($this->mRequest)) return false;
@@ -225,7 +206,7 @@ class Form {
                                return($this->OutputError("Type not found for input element","AddInput"));
                }
                if ($el!=null) {
-                       $el->setFormName($this->formName);
+                       $el->setFormName($this->name);
                        if (isset($arguments["id"])) $el->setId($arguments["id"]);
                        if (isset($GLOBALS["I18N"])) $el->setLocalization($GLOBALS["I18N"]);
                        if (isset($arguments["render"])) $el->setRenderable($arguments["render"]);
@@ -251,34 +232,25 @@ class Form {
                            
                        if (isset($GLOBALS["I18N"])) $el->setLocalization($GLOBALS["I18N"]);
                
-                       $el->setFormName($this->formName);
+                       $el->setFormName($this->name);
                        $this->mElements[$el->getName()] = &$el;
                }
        }
        
        
        function toStringOpenTag() {
-        $html = "<form name=\"$this->formName\"";
+        $html = "<form name=\"$this->name\"";
         
-        if ($this->mId!="") 
-            $html .= " id=\"$this->mId\"";
-            
-        if ($this->mAction!="") 
-            $html .= " action=\"$this->mAction\"";
+        $html .= ' method="post"';
         
-        if ($this->mMethod!="") 
-            $html .= " method=\"$this->mMethod\"";
-        
-        // for upload forms
+        // Add enctype for file upload forms.
         foreach ($this->mElements as $elname=>$el) {
-            if (strtolower(get_class($this->mElements[$elname]))=="uploadfile") {
-               $this->mEnctype = "multipart/form-data";
+            if (strtolower(get_class($this->mElements[$elname])) == 'uploadfile') {
+                $html .= ' enctype="multipart/form-data"';
+                break;
             }
         }
-        
-        if ($this->mEnctype!="")
-               $html .= " enctype=\"$this->mEnctype\"";
-        
+
         $html .= ">";
         return $html;
     }
@@ -317,5 +289,3 @@ class Form {
        }
     }
 }
-
-?>
\ No newline at end of file