summaryrefslogtreecommitdiff
path: root/modules/node/node.module
diff options
context:
space:
mode:
authorDries Buytaert <dries@buytaert.net>2006-05-14 12:56:44 +0000
committerDries Buytaert <dries@buytaert.net>2006-05-14 12:56:44 +0000
commit7817781c73febc00521407fc8b6c267ba2a6f4e1 (patch)
tree558dc80e179696b935250ead2473656f4f7400b3 /modules/node/node.module
parent4d9725455963e4d3b39f264217b3b0950d138d04 (diff)
downloadbrdo-7817781c73febc00521407fc8b6c267ba2a6f4e1.tar.gz
brdo-7817781c73febc00521407fc8b6c267ba2a6f4e1.tar.bz2
- Patch #48671 by Jaza: admin form fields not getting rendered at bottom of node form like they should.
Diffstat (limited to 'modules/node/node.module')
-rw-r--r--modules/node/node.module44
1 files changed, 32 insertions, 12 deletions
diff --git a/modules/node/node.module b/modules/node/node.module
index 530e24ced..bd03b311c 100644
--- a/modules/node/node.module
+++ b/modules/node/node.module
@@ -1677,23 +1677,43 @@ function node_form_add_preview($form) {
}
function theme_node_form($form) {
- $output = '<div class="node-form">';
+ $output = "\n<div class=\"node-form\">\n";
if (isset($form['node_preview'])) {
$output .= form_render($form['node_preview']);
}
- $output .= ' <div class="standard">';
+ // Admin form fields and submit buttons must be rendered first, because
+ // they need to go to the bottom of the form, and so should not be part of
+ // the catch-all call to form_render().
+ $admin = '';
+ if (isset($form['author'])) {
+ $admin .= " <div class=\"authored\">\n";
+ $admin .= form_render($form['author']);
+ $admin .= " </div>\n";
+ }
+ if (isset($form['options'])) {
+ $admin .= " <div class=\"options\">\n";
+ $admin .= form_render($form['options']);
+ $admin .= " </div>\n";
+ }
+ $buttons = form_render($form['preview']);
+ $buttons .= form_render($form['submit']);
+ $buttons .= isset($form['delete']) ? form_render($form['delete']) : '';
+
+ // Everything else gets rendered here, and is displayed before the admin form
+ // field and the submit buttons.
+ $output .= " <div class=\"standard\">\n";
$output .= form_render($form);
- $output .= ' </div>';
- $output .= ' <div class="admin">';
- $output .= ' <div class="authored">';
- $output .= form_render($form['author']);
- $output .= ' </div>';
- $output .= ' <div class="options">';
- $output .= form_render($form['options']);
- $output .= ' </div>';
- $output .= ' </div>';
- $output .= '</div>';
+ $output .= " </div>\n";
+
+ if (!empty($admin)) {
+ $output .= " <div class=\"admin\">\n";
+ $output .= $admin;
+ $output .= " </div>\n";
+ }
+ $output .= $buttons;
+ $output .= "</div>\n";
+
return $output;
}