2 % my $jobnum = $cgi->param('jobnum');
3 % my $url = $cgi->param('url');
4 % my $message = $cgi->param('message');
5 % my $formname = scalar($cgi->param('formname'));
12 <BODY BGCOLOR="#ccccff" onLoad="refreshStatus()">
14 <% include('/elements/xmlhttp.html',
15 'url' => $p.'elements/jsrsServer.html',
16 'subs' => [ 'job_status' ],
19 <SCRIPT TYPE="text/javascript" src="<%$fsurl%>elements/qlib/control.js"></SCRIPT>
20 <SCRIPT TYPE="text/javascript" src="<%$fsurl%>elements/qlib/imagelist.js"></SCRIPT>
21 <SCRIPT TYPE="text/javascript" src="<%$fsurl%>elements/qlib/progress.js"></SCRIPT>
22 <SCRIPT TYPE="text/javascript">
23 function refreshStatus () {
24 //jsrsExecute( '<%$p%>elements/jsrsServer.html', updateStatus, 'job_status', '<% $jobnum %>' );
26 job_status( '<% $jobnum %>', updateStatus );
28 function updateStatus( status_statustext ) {
30 //var Array = status_statustext.split("\n");
31 var statusArray = eval('(' + status_statustext + ')');
32 var status = statusArray[0];
33 var statustext = statusArray[1];
35 //if ( status == 'progress' ) {
36 //IE workaround, no i have no idea why
37 if ( status.indexOf('progress') > -1 ) {
38 document.getElementById("progress_percent").innerHTML = statustext + '%';
41 //jsrsExecute( '<%$p%>elements/jsrsServer.html', updateStatus, 'job_status', '<% $jobnum %>' );
42 job_status( '<% $jobnum %>', updateStatus );
43 } else if ( status.indexOf('complete') > -1 ) {
46 document.getElementById("progress_message").innerHTML = "<% $message %>";
47 document.getElementById("progress_bar").innerHTML = '';
48 document.getElementById("progress_percent").innerHTML = '<INPUT TYPE="button" VALUE="OK" onClick="parent.nd(1);">';
49 document.getElementById("progress_jobnum").innerHTML = '';
50 if ( parent.document.<%$formname%>.submit.disabled == true ) {
51 parent.document.<%$formname%>.submit.disabled=false;
55 window.top.location.href = '<% $url %>';
58 alert('job done but no url or message specified');
61 } else if ( status.indexOf('error') > -1 ) {
62 document.getElementById("progress_message").innerHTML = '<FONT SIZE="+1" COLOR="#FF0000">Error: ' + statustext + '</FONT>';
63 document.getElementById("progress_bar").innerHTML = '';
64 document.getElementById("progress_percent").innerHTML = '<INPUT TYPE="button" VALUE="OK" onClick="parent.nd(1);">';
65 document.getElementById("progress_jobnum").innerHTML = '';
66 if ( parent.document.<%$formname%>.submit.disabled == true ) {
67 parent.document.<%$formname%>.submit.disabled=false;
70 alert('XXX unknown status returned from server: ' + status);
78 <TD ALIGN="center" ID="progress_message">
79 Server processing job...
82 <TD ALIGN="center" ID="progress_bar">
83 <SCRIPT TYPE="text/javascript">
85 SEGS = new QImageList(4, 23, "<%$fsurl%>images/progressbar-empty.png", "<%$fsurl%>images/progressbar-full.png");
87 bar1 = new QProgress(null, "bar1", SEGS, 100);
94 <DIV ID="progress_percent">%</DIV>
97 <TD ALIGN="center" ID="progress_jobnum">
98 (progress of job #<% $jobnum %>)