version 1.48, 2004/02/16 21:49:16
|
version 1.49, 2004/02/16 22:28:55
|
Line 627 Returns: none
|
Line 627 Returns: none
|
|
|
# Create progress |
# Create progress |
sub Create_PrgWin { |
sub Create_PrgWin { |
my ($r, $title, $heading, $number_to_do)=@_; |
my ($r, $title, $heading, $number_to_do,$type,$formname,$inputname)=@_; |
#the whole function called through timeout is due to issues |
if (!defined($type)) { $type='popup'; } |
#in mozilla Read BUG #2665 if you want to know the whole story |
my %prog_state; |
&r_print($r,'<script>'. |
$prog_state{'type'}=$type; |
"var popwin; |
if ($type eq 'popup') { |
function openpopwin () { |
$prog_state{'window'}='popwin'; |
popwin=open(\'\',\'popwin\',\'width=400,height=100\');". |
#the whole function called through timeout is due to issues |
"popwin.document.writeln(\'<html><head><title>$title</title></head>". |
#in mozilla Read BUG #2665 if you want to know the whole story |
|
&r_print($r,'<script>'. |
|
"var popwin; |
|
function openpopwin () { |
|
popwin=open(\'\',\'popwin\',\'width=400,height=100\');". |
|
"popwin.document.writeln(\'<html><head><title>$title</title></head>". |
"<body bgcolor=\"#88DDFF\">". |
"<body bgcolor=\"#88DDFF\">". |
"<h4>$heading</h4>". |
"<h4>$heading</h4>". |
"<form name=popremain>". |
"<form name=popremain>". |
'<input type="text" size="55" name="remaining" value="'. |
'<input type="text" size="55" name="remaining" value="'. |
&mt('Starting').'"></form>'. |
&mt('Starting').'"></form>'. |
"</body></html>\');". |
"</body></html>\');". |
"popwin.document.close();}". |
"popwin.document.close();}". |
"\nwindow.setTimeout(openpopwin,0)</script>"); |
"\nwindow.setTimeout(openpopwin,0)</script>"); |
|
$prog_state{'formname'}='popremain'; |
|
$prog_state{'inputname'}="remaining"; |
|
} elsif ($type eq 'inline') { |
|
$prog_state{'window'}='window'; |
|
if (!$formname) { |
|
&r_print($r,'<form name="progresswindow">'); |
|
$prog_state{'formname'}='progresswindow'; |
|
} else { |
|
$prog_state{'formname'}=$formname; |
|
} |
|
if (!$inputname) { |
|
&r_print($r,'<input type="text" name="progressline" />'); |
|
$prog_state{'inputname'}="progressline"; |
|
} else { |
|
$prog_state{'inputname'}=$inputname; |
|
|
|
} |
|
if (!$formname) { &r_print($r,'</form>'); } |
|
&Update_PrgWin($r,\%prog_state,&mt('Starting')); |
|
} |
|
|
my %prog_state; |
|
$prog_state{'done'}=0; |
$prog_state{'done'}=0; |
$prog_state{'firststart'}=&Time::HiRes::time(); |
$prog_state{'firststart'}=&Time::HiRes::time(); |
$prog_state{'laststart'}=&Time::HiRes::time(); |
$prog_state{'laststart'}=&Time::HiRes::time(); |
$prog_state{'max'}=$number_to_do; |
$prog_state{'max'}=$number_to_do; |
|
|
return %prog_state; |
return %prog_state; |
} |
} |
|
|
# update progress |
# update progress |
sub Update_PrgWin { |
sub Update_PrgWin { |
my ($r,$prog_state,$displayString)=@_; |
my ($r,$prog_state,$displayString)=@_; |
&r_print($r,'<script>popwin.document.popremain.remaining.value="'. |
&r_print($r,'<script>'.$$prog_state{'window'}.'.document.'. |
|
$$prog_state{'formname'}.'.'. |
|
$$prog_state{'inputname'}.'.value="'. |
$displayString.'";</script>'); |
$displayString.'";</script>'); |
$$prog_state{'laststart'}=&Time::HiRes::time(); |
$$prog_state{'laststart'}=&Time::HiRes::time(); |
} |
} |
Line 706 sub Increment_PrgWin {
|
Line 732 sub Increment_PrgWin {
|
if ($user_browser eq 'explorer' && $user_os =~ 'mac') { |
if ($user_browser eq 'explorer' && $user_os =~ 'mac') { |
$lasttime = ''; |
$lasttime = ''; |
} |
} |
&r_print($r,'<script>popwin.document.popremain.remaining.value="'. |
&r_print($r,'<script>'.$$prog_state{'window'}.'.document.'. |
|
$$prog_state{'formname'}.'.'. |
|
$$prog_state{'inputname'}.'.value="'. |
$$prog_state{'done'}.'/'.$$prog_state{'max'}. |
$$prog_state{'done'}.'/'.$$prog_state{'max'}. |
': '.$time_est.' '.&mt('remaining').' '.$lasttime.'";'.'</script>'); |
': '.$time_est.' '.&mt('remaining').' '.$lasttime.'";'.'</script>'); |
$$prog_state{'laststart'}=&Time::HiRes::time(); |
$$prog_state{'laststart'}=&Time::HiRes::time(); |
Line 715 sub Increment_PrgWin {
|
Line 743 sub Increment_PrgWin {
|
# close Progress Line |
# close Progress Line |
sub Close_PrgWin { |
sub Close_PrgWin { |
my ($r,$prog_state)=@_; |
my ($r,$prog_state)=@_; |
&r_print($r,'<script>popwin.close()</script>'."\n"); |
if ($$prog_state{'type'} eq 'popup') { |
|
&r_print($r,'<script>popwin.close()</script>'."\n"); |
|
} elsif ($$prog_state{'type'} eq 'inline') { |
|
&Update_PrgWin($r,$prog_state,&mt('Done')); |
|
} |
undef(%$prog_state); |
undef(%$prog_state); |
} |
} |
|
|