[LON-CAPA-cvs] cvs: loncom /interface lonhtmlcommon.pm
albertel
lon-capa-cvs@mail.lon-capa.org
Mon, 16 Feb 2004 21:49:16 -0000
albertel Mon Feb 16 16:49:16 2004 EDT
Modified files:
/loncom/interface lonhtmlcommon.pm
Log:
- better solution to the "no request object" problem
Index: loncom/interface/lonhtmlcommon.pm
diff -u loncom/interface/lonhtmlcommon.pm:1.47 loncom/interface/lonhtmlcommon.pm:1.48
--- loncom/interface/lonhtmlcommon.pm:1.47 Fri Feb 13 16:12:12 2004
+++ loncom/interface/lonhtmlcommon.pm Mon Feb 16 16:49:16 2004
@@ -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.48 2004/02/16 21:49:16 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -630,35 +630,19 @@
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('<script>'.
- "var popwin;
- function openpopwin () {
- popwin=open(\'\',\'popwin\',\'width=400,height=100\');".
- "popwin.document.writeln(\'<html><head><title>$title</title></head>".
- "<body bgcolor=\"#88DDFF\">".
- "<h4>$heading</h4>".
- "<form name=popremain>".
- '<input type="text" size="55" name="remaining" value="'.
- &mt('Starting').'"></form>'.
- "</body></html>\');".
- "popwin.document.close();}".
- "\nwindow.setTimeout(openpopwin,0)</script>");
- } else {
- print('<script>'.
- "var popwin;
- function openpopwin () {
- popwin=open(\'\',\'popwin\',\'width=400,height=100\');".
- "popwin.document.writeln(\'<html><head><title>$title</title></head>".
- "<body bgcolor=\"#88DDFF\">".
- "<h4>$heading</h4>".
- "<form name=popremain>".
- '<input type="text" size="55" name="remaining" value="'.
- &mt('Starting').'"></form>'.
- "</body></html>\');".
- "popwin.document.close();}".
- "\nwindow.setTimeout(openpopwin,0)</script>");
- }
+ &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\">".
+ "<h4>$heading</h4>".
+ "<form name=popremain>".
+ '<input type="text" size="55" name="remaining" value="'.
+ &mt('Starting').'"></form>'.
+ "</body></html>\');".
+ "popwin.document.close();}".
+ "\nwindow.setTimeout(openpopwin,0)</script>");
my %prog_state;
$prog_state{'done'}=0;
@@ -666,22 +650,15 @@
$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('<script>popwin.document.popremain.remaining.value="'.
- $displayString.'";</script>');
- } else {
- print('<script>popwin.document.popremain.remaining.value="'.
- $displayString.'";</script>');
- }
+ &r_print($r,'<script>popwin.document.popremain.remaining.value="'.
+ $displayString.'";</script>');
$$prog_state{'laststart'}=&Time::HiRes::time();
- if ($r ne '') {$r->rflush();}
}
# increment progress state
@@ -729,31 +706,28 @@
if ($user_browser eq 'explorer' && $user_os =~ 'mac') {
$lasttime = '';
}
- if ($r ne '') {
- $r->print('<script>popwin.document.popremain.remaining.value="'.
- $$prog_state{'done'}.'/'.$$prog_state{'max'}.
- ': '.$time_est.' '.&mt('remaining').' '.$lasttime.'";'.'</script>');
- } else {
- print('<script>popwin.document.popremain.remaining.value="'.
- $$prog_state{'done'}.'/'.$$prog_state{'max'}.
- ': '.$time_est.' '.&mt('remaining').' '.$lasttime.'";'.'</script>');
- }
+ &r_print($r,'<script>popwin.document.popremain.remaining.value="'.
+ $$prog_state{'done'}.'/'.$$prog_state{'max'}.
+ ': '.$time_est.' '.&mt('remaining').' '.$lasttime.'";'.'</script>');
$$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('<script>popwin.close()</script>'."\n");
- } else {
- print('<script>popwin.close()</script>'."\n");
- }
+ &r_print($r,'<script>popwin.close()</script>'."\n");
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