diff options
author | ivan <ivan> | 2005-02-20 08:44:40 +0000 |
---|---|---|
committer | ivan <ivan> | 2005-02-20 08:44:40 +0000 |
commit | d6047391feb3236374e16fd73240d9821d77fe06 (patch) | |
tree | 26cd3c1df50a28ed50ce77669a31d672748866a6 /httemplate/elements/progress-init.html | |
parent | 9e1ec0694dff61d375af8c0ef0e3895a7f1e07fd (diff) |
use a javascript layer instead of a browser popup (popup blockers), really generalize the progressbar code to make it easy to use as a component
Diffstat (limited to 'httemplate/elements/progress-init.html')
-rw-r--r-- | httemplate/elements/progress-init.html | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/httemplate/elements/progress-init.html b/httemplate/elements/progress-init.html new file mode 100644 index 000000000..7edb831c5 --- /dev/null +++ b/httemplate/elements/progress-init.html @@ -0,0 +1,45 @@ +<% my( $formname, $fields, $action, $success_url ) = @_; %> + +<SCRIPT TYPE="text/javascript" SRC="../elements/jsrsClient.js"></SCRIPT> +<SCRIPT TYPE="text/javascript" SRC="../elements/overlibmws.js"></SCRIPT> +<SCRIPT TYPE="text/javascript"> +function OLiframeContent(src, width, height, name) { + return ('<iframe src="'+src+'" width="'+width+'" height="'+height+'"' + +(name?' name="'+name+'" id="'+name+'"':'')+' scrolling="no">' + +'<div>[iframe not supported]</div></iframe>'); +} + +function process () { + + document.OneTrueForm.submit.disabled=true; + + overlib( 'Submitting job to server...', WIDTH, 420, HEIGHT, 128, CAPTION, 'Please wait...', STICKY, AUTOSTATUSCAP, CLOSETEXT, '', CLOSECLICK, MIDX, 0, MIDY, 0 ); + + var Hash = new Array(); + var x = 0; + var fieldName; + for (var i = 0; i<document.OneTrueForm.elements.length; i++) { + fieldName = document.OneTrueForm.elements[i].name; +// (fieldName.indexOf('rate') > -1) +// || (fieldName.indexOf('min_') > -1) +// || (fieldName.indexOf('sec_') > -1) + if ( <%= join(' || ', map { "(fieldName.indexOf('$_') > -1)" } @$fields ) %> + ) + { + Hash[x++] = fieldName; + Hash[x++] = document.OneTrueForm.elements[i].value; + } + } + + jsrsPOST = true; + jsrsExecute( '<%= $action %>', myCallback, 'start_job', Hash ); + +} + +function myCallback( jobnum ) { + + overlib( OLiframeContent('<%=$p%>elements/progress-popup.html?jobnum=' + jobnum + ';url=<%=$success_url%>' , 420, 128, 'progress_popup'), CAPTION, 'Please wait...', STICKY, AUTOSTATUSCAP, CLOSETEXT, '', CLOSECLICK, MIDX, 0, MIDY, 0 ); + +} + +</SCRIPT> |