[svn:p5ee] r13471 - p5ee/trunk/App-Widget-ExtJS/lib/App/Widget/ExtJS
[email protected] Thu, 5 Nov 2009 09:17:16 -0800 (PST)
| Newsgroups | perl.cvs.p5ee |
|---|---|
| Message-ID | <[email protected]> |
Author: spadkins
Date: Thu Nov 5 09:17:14 2009
New Revision: 13471
Modified:
p5ee/trunk/App-Widget-ExtJS/lib/App/Widget/ExtJS/AppFrame.pm
Log:
fix bug with embedded javascript
Modified: p5ee/trunk/App-Widget-ExtJS/lib/App/Widget/ExtJS/AppFrame.pm
==============================================================================
--- p5ee/trunk/App-Widget-ExtJS/lib/App/Widget/ExtJS/AppFrame.pm (original)
+++ p5ee/trunk/App-Widget-ExtJS/lib/App/Widget/ExtJS/AppFrame.pm Thu Nov 5 09:17:14 2009
@@ -226,10 +226,26 @@
</table>
EOF
}
+
+ my ($script_frag);
my $script = "";
- if ($screen =~ s!(<script[^<>]*>.*?</script>)!!is) {
- $script = $1;
+
+ while($screen =~ s!<script[^<>]*>\s*(.*?)</script>!!is) {
+ $script_frag = $1;
+ if ($script_frag =~ /^Ext.onReady/) {
+ $script .= $script_frag;
+ }
+ else {
+ $script .= <<EOF;
+Ext.onReady(function(){
+$script_frag
+});
+EOF
+ }
}
+ #if ($screen =~ s!(<script[^<>]*>.*?</script>)!!is) {
+ # $script = $1;
+ #}
$screen =~ s/'/\\'/g;
$screen =~ s/\s+$//s;
@@ -237,6 +253,14 @@
#$screen =~ s!'</script>\\n'!"<\\/script>\\n"!sg;
$selector =~ s/{PANEL}/$screen/;
+ if ($script) {
+ $script = <<EOF;
+<script type="text/javascript">
+$script
+</script>
+EOF
+ }
+
$html = <<EOF;
<div id="$name">
<div id="$name-selector">