summaryrefslogtreecommitdiff
path: root/httemplate/elements/progress-init.html
diff options
context:
space:
mode:
authorivan <ivan>2005-02-20 08:44:40 +0000
committerivan <ivan>2005-02-20 08:44:40 +0000
commitd6047391feb3236374e16fd73240d9821d77fe06 (patch)
tree26cd3c1df50a28ed50ce77669a31d672748866a6 /httemplate/elements/progress-init.html
parent9e1ec0694dff61d375af8c0ef0e3895a7f1e07fd (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.html45
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 0000000..7edb831
--- /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>