--- loncom/interface/lonhtmlcommon.pm 2004/02/13 21:12:12 1.47 +++ loncom/interface/lonhtmlcommon.pm 2004/02/16 22:28:55 1.49 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # a pile of common html routines # -# $Id: lonhtmlcommon.pm,v 1.47 2004/02/13 21:12:12 sakharuk Exp $ +# $Id: lonhtmlcommon.pm,v 1.49 2004/02/16 22:28:55 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -627,61 +627,64 @@ Returns: none # Create progress sub Create_PrgWin { - my ($r, $title, $heading, $number_to_do)=@_; - #the whole function called through timeout is due to issues - #in mozilla Read BUG #2665 if you want to know the whole story - if ($r ne '') { - $r->print('"); - } else { - print('"); + $prog_state{'formname'}='popremain'; + $prog_state{'inputname'}="remaining"; + } elsif ($type eq 'inline') { + $prog_state{'window'}='window'; + if (!$formname) { + &r_print($r,'
'); + $prog_state{'formname'}='progresswindow'; + } else { + $prog_state{'formname'}=$formname; + } + if (!$inputname) { + &r_print($r,''); + $prog_state{'inputname'}="progressline"; + } else { + $prog_state{'inputname'}=$inputname; + + } + if (!$formname) { &r_print($r,'
'); } + &Update_PrgWin($r,\%prog_state,&mt('Starting')); } - my %prog_state; $prog_state{'done'}=0; $prog_state{'firststart'}=&Time::HiRes::time(); $prog_state{'laststart'}=&Time::HiRes::time(); $prog_state{'max'}=$number_to_do; - - if ($r ne '') {$r->rflush();} + return %prog_state; } # update progress sub Update_PrgWin { my ($r,$prog_state,$displayString)=@_; - if ($r ne '') { - $r->print(''); - } else { - print(''); - } + &r_print($r,''); $$prog_state{'laststart'}=&Time::HiRes::time(); - if ($r ne '') {$r->rflush();} } # increment progress state @@ -729,31 +732,34 @@ sub Increment_PrgWin { if ($user_browser eq 'explorer' && $user_os =~ 'mac') { $lasttime = ''; } - if ($r ne '') { - $r->print(''); - } else { - print(''); - } + &r_print($r,''); $$prog_state{'laststart'}=&Time::HiRes::time(); - if ($r ne '') {$r->rflush();} } # close Progress Line sub Close_PrgWin { my ($r,$prog_state)=@_; - if ($r ne '') { - $r->print(''."\n"); - } else { - print(''."\n"); + if ($$prog_state{'type'} eq 'popup') { + &r_print($r,''."\n"); + } elsif ($$prog_state{'type'} eq 'inline') { + &Update_PrgWin($r,$prog_state,&mt('Done')); } undef(%$prog_state); - if ($r ne '') {$r->rflush();} } +sub r_print { + my ($r,$to_print)=@_; + if ($r) { + $r->print($to_print); + $r->rflush(); + } else { + print($to_print); + } +} # ------------------------------------------------------- Puts directory header