From bac4ff2046a9413ad53caca47842b63d3e5a5385 Mon Sep 17 00:00:00 2001 From: Tim Almdal Date: Thu, 27 Nov 2008 16:19:07 +0000 Subject: 1) Create a Theme_View class that combines the functionality of the Theme class with the View class. 2) Only define the form.html.php::DrawForm method once if there are multiple forms on the page (i.e. comments and add tags) --- themes/default/views/form.html.php | 70 ++++++++++++++++++++------------------ 1 file changed, 36 insertions(+), 34 deletions(-) (limited to 'themes') diff --git a/themes/default/views/form.html.php b/themes/default/views/form.html.php index 1873c53e..41bdc0f9 100644 --- a/themes/default/views/form.html.php +++ b/themes/default/views/form.html.php @@ -10,43 +10,45 @@ if ($title) { print ""; } -function DrawForm($inputs, $level=1) { - $error_messages = array(); - $prefix = str_repeat(" ", $level); +if (!function_exists("DrawForm")) { + function DrawForm($inputs, $level=1) { + $error_messages = array(); + $prefix = str_repeat(" ", $level); - foreach ($inputs as $input) { - if ($input->type == 'group') { - print "$prefix
\n"; - print "$prefix $input->name\n"; - print "$prefix \n"; - print "$prefix
\n"; - } else { - if ($input->error_messages()) { - print "$prefix
  • \n"; - } else if ($input->type) { - print "$prefix
  • \n"; + foreach ($inputs as $input) { + if ($input->type == 'group') { + print "$prefix
    \n"; + print "$prefix $input->name\n"; + print "$prefix
      \n"; + DrawForm($input->inputs, $level + 2); + DrawForm($input->hidden, $level + 2); + print "$prefix
    \n"; + print "$prefix
    \n"; } else { - // no type means its a "hidden" so don't wrap it in
  • - } - if ($input->label()) { - print "$prefix {$input->label()}\n"; - } - print "$prefix {$input->render()}\n"; - if ($input->message()) { - print "$prefix

    {$input->message()}

    \n"; - } - if ($input->error_messages()) { - foreach ($input->error_messages() as $error_message) { - print "$prefix

    \n"; - print "$prefix $error_message\n"; - print "$prefix

    \n"; + if ($input->error_messages()) { + print "$prefix
  • \n"; + } else if ($input->type) { + print "$prefix
  • \n"; + } else { + // no type means its a "hidden" so don't wrap it in
  • + } + if ($input->label()) { + print "$prefix {$input->label()}\n"; + } + print "$prefix {$input->render()}\n"; + if ($input->message()) { + print "$prefix

    {$input->message()}

    \n"; + } + if ($input->error_messages()) { + foreach ($input->error_messages() as $error_message) { + print "$prefix

    \n"; + print "$prefix $error_message\n"; + print "$prefix

    \n"; + } + } + if ($input->type) { + print "$prefix
  • \n"; } - } - if ($input->type) { - print "$prefix\n"; } } } -- cgit v1.2.3