<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -33,7 +33,9 @@ class Joeh_Template_Helper_Form extends Joeh_Template_Helper {
     }
 
     public function text($object, $property, array $htmlOptions = array()) {
-        $htmlOptions['id'] = sprintf('%s_%s', $object, $property);
+        if(!isset($htmlOptions['id'])) {
+            $htmlOptions['id'] = sprintf('%s_%s', $object, $property);
+        }
         $name = sprintf('%s[%s]', $object, $property);
         $value = null;
 
@@ -48,7 +50,21 @@ class Joeh_Template_Helper_Form extends Joeh_Template_Helper {
         return $this-&gt;input('text', $name, $value, $htmlOptions);
     }
 
-    public function textarea($name, $value = '', array $htmlOptions = array()) {
+    public function textarea($object, $property, array $htmlOptions = array()) {
+        if(!isset($htmlOptions['id'])) {
+            $htmlOptions['id'] = sprintf('%s_%s', $object, $property);
+        }
+        $name = sprintf('%s[%s]', $object, $property);
+        $value = null;
+
+        if(isset($this-&gt;{$object}) &amp;&amp; isset($this-&gt;{$object}-&gt;{$property})) {
+            $value = $this-&gt;{$object}-&gt;{$property};
+        }
+
+        return $this-&gt;textareaTag($name, $value, $htmlOptions);
+    }
+
+    public function textareaTag($name, $value = '', array $htmlOptions = array()) {
         if($value === null) {
             $value = '';
         }
@@ -242,7 +258,21 @@ class Joeh_Template_Helper_Form extends Joeh_Template_Helper {
         return $html;
     }
 
-    public function hidden($name, $value = null, array $htmlOptions = array()) {
+    public function hidden($object, $property, array $htmlOptions = array()) {
+        if(!isset($htmlOptions['id'])) {
+            $htmlOptions['id'] = sprintf('%s_%s', $object, $property);
+        }
+        $name = sprintf('%s[%s]', $object, $property);
+        $value = null;
+
+        if(isset($this-&gt;{$object}) &amp;&amp; isset($this-&gt;{$object}-&gt;{$property})) {
+            $value = $this-&gt;{$object}-&gt;{$property};
+        }
+
+        return $this-&gt;hiddenTag($name, $value, $htmlOptions = array());
+    }
+
+    public function hiddenTag($name, $value = null, array $htmlOptions = array()) {
         return $this-&gt;input('hidden', $name, $value, $htmlOptions);
     }
 </diff>
      <filename>lib/Joeh/Template/Helper/Form.php</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>521a53da9545b2c5e637486864333ec9b8a6b187</id>
    </parent>
  </parents>
  <author>
    <name>rafaelss</name>
    <email>rafael.ssouza@gmail.com</email>
  </author>
  <url>http://github.com/rafaelss/joeh-template/commit/fab924f8bee5fb2197a64315599ca9717b057691</url>
  <id>fab924f8bee5fb2197a64315599ca9717b057691</id>
  <committed-date>2009-02-03T11:04:05-08:00</committed-date>
  <authored-date>2009-02-03T11:04:05-08:00</authored-date>
  <message>added textarea helper and textareaTag helper</message>
  <tree>f02167b9de00eda0968a4a313d4fa035cf25458e</tree>
  <committer>
    <name>rafaelss</name>
    <email>rafael.ssouza@gmail.com</email>
  </committer>
</commit>
