Index: includes/form.inc =================================================================== RCS file: /cvs/drupal/drupal/includes/form.inc,v retrieving revision 1.324 diff -u -p -r1.324 form.inc --- includes/form.inc 14 Mar 2009 20:13:26 -0000 1.324 +++ includes/form.inc 26 Mar 2009 04:32:19 -0000 @@ -1929,6 +1929,15 @@ function form_process_text_format($eleme $element['#theme_wrapper'] = NULL; $element['format'] = filter_form($element['#text_format'], 1, $element_parents); + if (isset($element['#description'])) { + $element['description'] = array( + '#type' => 'item', + '#description' => $element['#description'], + '#weight' => 2, + ); + unset($element['value']['#description']); + } + // We need to clear the #text_format from the new child otherwise we // would get into an infinite loop. unset($element['value']['#text_format']); Index: misc/form.js =================================================================== RCS file: /cvs/drupal/drupal/misc/form.js,v retrieving revision 1.5 diff -u -p -r1.5 form.js --- misc/form.js 13 Mar 2009 23:15:08 -0000 1.5 +++ misc/form.js 26 Mar 2009 03:59:58 -0000 @@ -14,18 +14,18 @@ Drupal.behaviors.multiselectSelector = { /** - * Automatically displays the guidelines of the selected text format. + * Automatically display the guidelines of the selected text format. */ Drupal.behaviors.filterGuidelines = { attach: function(context) { - $('.filter-guidelines:not(.filterGuidelines-processed)', context) - .addClass('filterGuidelines-processed') + $('.filter-guidelines:not(.filter-guidelines-processed)', context) + .addClass('filter-guidelines-processed') .find('label').hide() .parents('.filter-wrapper').find('select.filter-list') - .bind('change', function() { + .bind('change', function () { $(this).parents('.filter-wrapper') - .find('.filter-guidelines-item').hide() - .siblings('#filter-guidelines-' + this.value).show(); + .find('.filter-guidelines-item').hide() + .siblings('#filter-guidelines-' + this.value).show(); }) .change(); } Index: modules/filter/filter.css =================================================================== RCS file: modules/filter/filter.css diff -N modules/filter/filter.css --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ modules/filter/filter.css 26 Mar 2009 04:44:59 -0000 @@ -0,0 +1,35 @@ +/* $Id: node.css,v 1.6 2009/03/08 01:43:57 webchick Exp $ */ + +.filter-wrapper { + border-top: 0; + width: 95%; + padding: 0; + margin-top: -1em; +} +* html .filter-wrapper { + float: left; /* Required by IE6 to respect negative margins */ +} +.filter-wrapper .form-item { + float: left; + margin: 0; + padding: 1em 0 1em 1.5em; +} +.filter-wrapper .form-item label { + display: inline; +} +.filter-help { + float: right; + margin: 0; + padding: 1em 1.5em 1em 0; +} +.filter-help p { + margin: 0; +} +.filter-help a { + background: transparent url(../../misc/help.png) right center no-repeat; + padding-right: 20px; +} +.filter-guidelines { + clear: both; + padding: 0 1.5em 1.5em; +} Index: modules/filter/filter.module =================================================================== RCS file: /cvs/drupal/drupal/modules/filter/filter.module,v retrieving revision 1.244 diff -u -p -r1.244 filter.module --- modules/filter/filter.module 15 Mar 2009 01:53:16 -0000 1.244 +++ modules/filter/filter.module 26 Mar 2009 04:31:12 -0000 @@ -485,40 +485,42 @@ function check_markup($text, $format = F function filter_form($value = FILTER_FORMAT_DEFAULT, $weight = NULL, $parents = array('format')) { $value = filter_resolve_format($value); $formats = filter_formats(); - + $form = array( - '#type' => 'fieldset', - '#weight' => $weight, - '#attributes' => array('class' => 'filter-wrapper'), + '#type' => 'fieldset', + '#weight' => $weight, + '#attributes' => array('class' => 'filter-wrapper clearfix'), ); - + + drupal_add_js('misc/form.js'); + drupal_add_css(drupal_get_path('module', 'filter') . '/filter.css'); $element_id = form_clean_id('edit-' . implode('-', $parents)); - - if (count($formats) > 1) { - foreach ($formats as $format) { - $options[$format->format] = $format->name; - $guidelines[$format->format] = array('#markup' => theme('filter_guidelines', $format)); - } - drupal_add_js('misc/form.js'); - $form['format'] = array( - '#type' => 'select', - '#title' => t('Text format'), - '#options' => $options, - '#default_value' => $value, - '#parents' => $parents, - '#id' => $element_id, - '#attributes' => array('class' => 'filter-list'), - ); - } - else { - // Only one format available: use a form value and only show label. - $format = array_shift($formats); - unset($format->name); - $guidelines = array('#markup' => theme('filter_guidelines', $format)); - $form[$format->format] = array('#type' => 'value', '#value' => $format->format, '#parents' => $parents); + + foreach ($formats as $format) { + $options[$format->format] = $format->name; + $guidelines[$format->format] = array('#markup' => theme('filter_guidelines', $format)); } - $form['format_help'] = array('#markup' => '
' . theme('filter_tips_more_info') . '
'); - $form['format_guidelines'] = array_merge($guidelines, array('#prefix' => '
', '#suffix' => '
')); + $form['format'] = array( + '#type' => 'select', + '#title' => t('Text format'), + '#options' => $options, + '#default_value' => $value, + '#parents' => $parents, + '#access' => count($formats) > 1, + '#id' => $element_id, + '#attributes' => array('class' => 'filter-list'), + ); + + $form['format_help'] = array( + '#prefix' => '
', + '#markup' => theme('filter_tips_more_info'), + '#suffix' => '
', + ); + $form['format_guidelines'] = $guidelines + array( + '#prefix' => '
', + '#suffix' => '
', + ); + return $form; } @@ -584,7 +586,7 @@ function theme_filter_tips_more_info() { * @ingroup themeable */ function theme_filter_guidelines($format) { - $name = isset($format->name) ? '' : NULL; + $name = isset($format->name) ? '' : ''; return '
' . $name . theme('filter_tips', _filter_tips($format->format, FALSE)) . '
'; } Index: modules/node/node.css =================================================================== RCS file: /cvs/drupal/drupal/modules/node/node.css,v retrieving revision 1.6 diff -u -p -r1.6 node.css --- modules/node/node.css 8 Mar 2009 01:43:57 -0000 1.6 +++ modules/node/node.css 26 Mar 2009 04:12:00 -0000 @@ -42,38 +42,4 @@ td.revision-current { .terms-inline { display: inline; } -.filter-label { - font-weight: bold; -} -.filter-wrapper { - border-top: 0; - width: 95%; - padding: 0; - margin-top: -1em; - float: left; /* Required by IE6 to respect negative margins */ -} -.filter-guidelines { - clear: left; - margin: 1.5em; -} -.filter-wrapper .form-item { - float: left; - line-height: 3em; - margin: 0 0 0 1.5em; -} -.filter-wrapper .form-item label { - display: inline; -} -.filter-help { - float: right; - margin-right: 1em; -} -.filter-help a { - background: url(../../misc/help.png) right center no-repeat; - padding-right: 20px; -} - -html.js fieldset.collapsible { - clear: left; /* Test fix for Safari issues caused by IE6 fix above, need to test impact elsewhere and move to appropriate CSS file */ -} \ No newline at end of file