Mercurial > defr > drupal > core
diff includes/common.inc @ 11:589fb7c02327 6.5
Drupal 6.5
author | Franck Deroche <webmaster@defr.org> |
---|---|
date | Tue, 23 Dec 2008 14:32:19 +0100 |
parents | acef7ccb09b5 |
children | 8b6c45761e01 |
line wrap: on
line diff
--- a/includes/common.inc Tue Dec 23 14:32:08 2008 +0100 +++ b/includes/common.inc Tue Dec 23 14:32:19 2008 +0100 @@ -1,5 +1,5 @@ <?php -// $Id: common.inc,v 1.756.2.24 2008/08/13 23:59:12 drumm Exp $ +// $Id: common.inc,v 1.756.2.27 2008/10/08 20:12:17 goba Exp $ /** * @file @@ -2061,17 +2061,23 @@ // page request. $query_string = '?'. substr(variable_get('css_js_query_string', '0'), 0, 1); + // For inline Javascript to validate as XHTML, all Javascript containing + // XHTML needs to be wrapped in CDATA. To make that backwards compatible + // with HTML 4, we need to comment out the CDATA-tag. + $embed_prefix = "\n<!--//--><![CDATA[//><!--\n"; + $embed_suffix = "\n//--><!]]>\n"; + foreach ($javascript as $type => $data) { if (!$data) continue; switch ($type) { case 'setting': - $output .= '<script type="text/javascript">jQuery.extend(Drupal.settings, '. drupal_to_js(call_user_func_array('array_merge_recursive', $data)) .");</script>\n"; + $output .= '<script type="text/javascript">' . $embed_prefix . 'jQuery.extend(Drupal.settings, ' . drupal_to_js(call_user_func_array('array_merge_recursive', $data)) . ");" . $embed_suffix . "</script>\n"; break; case 'inline': foreach ($data as $info) { - $output .= '<script type="text/javascript"'. ($info['defer'] ? ' defer="defer"' : '') .'>'. $info['code'] ."</script>\n"; + $output .= '<script type="text/javascript"' . ($info['defer'] ? ' defer="defer"' : '') . '>' . $embed_prefix . $info['code'] . $embed_suffix . "</script>\n"; } break; default: