diff options
| author | Mitch Jackson <mitch@freeside.biz> | 2018-11-09 15:09:37 -0500 |
|---|---|---|
| committer | Mitch Jackson <mitch@freeside.biz> | 2018-11-09 16:51:20 -0500 |
| commit | 34ca4dcb1b76194d63d02ae459075fa001d65b1c (patch) | |
| tree | 1e5a5077e4ad9bf3d9a34b34d7fca8c55c0df570 | |
| parent | 91b74d22933e757040ee90c2fd9b2c0abe96fc62 (diff) | |
RT# 81712 Reduce unnecessary xmlhttp calls
| -rwxr-xr-x | httemplate/elements/tr-select-reason.html | 1 | ||||
| -rw-r--r-- | httemplate/elements/xmlhttp.html | 11 |
2 files changed, 10 insertions, 2 deletions
diff --git a/httemplate/elements/tr-select-reason.html b/httemplate/elements/tr-select-reason.html index f25171fef..6a21c5529 100755 --- a/httemplate/elements/tr-select-reason.html +++ b/httemplate/elements/tr-select-reason.html @@ -43,6 +43,7 @@ Example: <& /elements/xmlhttp.html, url => $p . 'misc/xmlhttp-reason-hint.html', subs => [ 'get_hint' ], + skip_empty => 1, &> <SCRIPT TYPE="text/javascript"> function <% $id %>_changed() { diff --git a/httemplate/elements/xmlhttp.html b/httemplate/elements/xmlhttp.html index e70871169..b2f265afb 100644 --- a/httemplate/elements/xmlhttp.html +++ b/httemplate/elements/xmlhttp.html @@ -8,8 +8,10 @@ Example: 'subs' => [ 'subroutine' ], # optional - 'method' => 'GET', #defaults to GET, could specify POST - 'key' => 'unique', #unique key + 'method' => 'GET', # defaults to GET, could specify POST + 'key' => 'unique', # unique key + 'skip_empty' => '1', # When the given key value is null or = 0, + # skip making a useless http request ); @@ -43,6 +45,11 @@ my %initialized = ();#won't work if component is "preloaded"... so don't do that args = a; len = args.length - 1; } +% if ( $opt{skip_empty} ) { + if ( args[0] == 0 || !args[0] ) { + return; + } +% } for (var i = 0; i < len; i++) content = content + "&arg=" + encodeURIComponent(args[i]); content = content.replace( /[+]/g, '%2B'); // fix unescaped plus signs |
