summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--modules/forge/libraries/Forge.php5
-rw-r--r--modules/gallery/tests/DrawForm_Test.php23
2 files changed, 21 insertions, 7 deletions
diff --git a/modules/forge/libraries/Forge.php b/modules/forge/libraries/Forge.php
index 5807c849..9179aaeb 100644
--- a/modules/forge/libraries/Forge.php
+++ b/modules/forge/libraries/Forge.php
@@ -299,7 +299,10 @@ class Forge_Core {
}
// Set the form open and close
- $form->open = form::$form_type(arr::remove('action', $this->attr), $this->attr, $hidden);
+ $form->open = form::$form_type(arr::remove('action', $this->attr), $this->attr);
+ foreach ($this->hidden as $hidden) {
+ $form->open .= form::hidden($hidden->name, $hidden->value);
+ }
$form->close = "</form>";
// Set the inputs
diff --git a/modules/gallery/tests/DrawForm_Test.php b/modules/gallery/tests/DrawForm_Test.php
index 90361d06..da8a6b04 100644
--- a/modules/gallery/tests/DrawForm_Test.php
+++ b/modules/gallery/tests/DrawForm_Test.php
@@ -23,7 +23,6 @@ class DrawForm_Test extends Unit_Test_Case {
$form->input("title")->label(t("Title"));
$form->textarea("description")->label(t("Text Area"));
$form->submit("")->value(t("Submit"));
- $rendered = $form->__toString();
$csrf = access::csrf_token();
$expected = "<form action=\"http://./index.php/test/controller\" method=\"post\" " .
@@ -45,7 +44,7 @@ class DrawForm_Test extends Unit_Test_Case {
" </li>\n" .
" </ul>\n" .
"</form>";
- $this->assert_same($expected, $rendered);
+ $this->assert_same($expected, (string) $form);
}
function group_test() {
@@ -54,7 +53,6 @@ class DrawForm_Test extends Unit_Test_Case {
$group->input("title")->label(t("Title"));
$group->textarea("description")->label(t("Text Area"));
$group->submit("")->value(t("Submit"));
- $rendered = $form->__toString();
$csrf = access::csrf_token();
$expected = "<form action=\"http://./index.php/test/controller\" method=\"post\" " .
@@ -79,7 +77,7 @@ class DrawForm_Test extends Unit_Test_Case {
" </ul>\n" .
" </fieldset>\n" .
"</form>";
- $this->assert_same($expected, $rendered);
+ $this->assert_same($expected, (string) $form);
}
function form_script_test() {
@@ -91,7 +89,6 @@ class DrawForm_Test extends Unit_Test_Case {
->url(url::file("test.js"))
->text("alert('Test Javascript');");
$group->submit("")->value(t("Submit"));
- $rendered = $form->__toString();
$csrf = access::csrf_token();
$expected = "<form action=\"http://./index.php/test/controller\" method=\"post\" " .
@@ -120,7 +117,21 @@ class DrawForm_Test extends Unit_Test_Case {
"alert('Test Javascript');\n" .
"</script>\n" .
"</form>";
- $this->assert_same($expected, $rendered);
+ $this->assert_same($expected, (string) $form);
+ }
+
+ function two_hiddens_test() {
+ $form = new Forge("test/controller", "", "post");
+ $form->hidden("HIDDEN_NAME")->value("HIDDEN_VALUE");
+
+ $csrf = access::csrf_token();
+ $expected = "<form action=\"http://./index.php/test/controller\" method=\"post\" class=\"form\">\n" .
+ "<input type=\"hidden\" name=\"csrf\" value=\"$csrf\" />" .
+ "<input type=\"hidden\" name=\"HIDDEN_NAME\" value=\"HIDDEN_VALUE\" />" .
+ " <ul>\n" .
+ " </ul>\n" .
+ "</form>";
+ $this->assert_same($expected, (string) $form);
}
}