Optimize "Customer has a referring customer" condition, RT#74452
[freeside.git] / httemplate / elements / xmlhttp.html
index a9e65c7..e708711 100644 (file)
@@ -14,17 +14,19 @@ Example:
   );
 
 </%doc>
+<%shared>
+my %initialized = ();#won't work if component is "preloaded"... so don't do that
+</%shared>
 <& /elements/rs_init_object.html &>
 <& /elements/init_overlib.html &>
 <SCRIPT TYPE="text/javascript">
 
 % foreach my $func ( @{$opt{'subs'}} ) { 
 %
-%       my $furl = $url;
-%       $furl =~ s/\"/\\\\\"/; #javascript escape
-%#"
-%  
-
+%   next if $initialized{$key.$func}++;
+%
+%   my $furl = $url;
+%   $furl =~ s/\"/\\\\\"/; #javascript escape (fix gvim syntax: ")
 
     function <%$key%><%$func%>() {
         // count args; build URL
@@ -42,7 +44,7 @@ Example:
             len = args.length - 1;
         }
         for (var i = 0; i < len; i++) 
-            content = content + "&arg=" + escape(args[i]);
+            content = content + "&arg=" + encodeURIComponent(args[i]);
         content = content.replace( /[+]/g, '%2B'); // fix unescaped plus signs 
 
         if ( '<%$method%>' == 'GET' ) {