[LON-CAPA-cvs] cvs: loncom /interface lonhtmlcommon.pm

albertel lon-capa-cvs@mail.lon-capa.org
Mon, 16 Feb 2004 23:27:04 -0000


albertel		Mon Feb 16 18:27:04 2004 EDT

  Modified files:              
    /loncom/interface	lonhtmlcommon.pm 
  Log:
  - add a width argument for the progress window
  - support the possibility of multiple inline progress windows
  
  
Index: loncom/interface/lonhtmlcommon.pm
diff -u loncom/interface/lonhtmlcommon.pm:1.50 loncom/interface/lonhtmlcommon.pm:1.51
--- loncom/interface/lonhtmlcommon.pm:1.50	Mon Feb 16 17:32:19 2004
+++ loncom/interface/lonhtmlcommon.pm	Mon Feb 16 18:27:03 2004
@@ -1,7 +1,7 @@
 # The LearningOnline Network with CAPA
 # a pile of common html routines
 #
-# $Id: lonhtmlcommon.pm,v 1.50 2004/02/16 22:32:19 albertel Exp $
+# $Id: lonhtmlcommon.pm,v 1.51 2004/02/16 23:27:03 albertel Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -560,6 +560,8 @@
 =item $type Either 'popup' or 'inline' (popup is assumed if nothing is
        specified)
 
+=item $width Specify the width in charaters of the input field.
+
 =item $formname Only useful in the inline case, if a form already exists, this needs to be used and specfiy the name of the form, otherwise the Progress line will be created in a new form of it's own
 
 =item $inputname Only useful in the inline case, if a form and an input of type text exists, use this to specify the name of the input field 
@@ -632,10 +634,18 @@
 ########################################################
 ########################################################
 
+my $uniq=0;
+sub get_uniq_name {
+    $uniq++;
+    return 'uniquename'.$uniq;
+}
+
 # Create progress
 sub Create_PrgWin {
-    my ($r, $title, $heading, $number_to_do,$type,$formname,$inputname)=@_;
+    my ($r, $title, $heading, $number_to_do,$type,$width,$formname,
+	$inputname)=@_;
     if (!defined($type)) { $type='popup'; }
+    if (!defined($width)) { $width=55; }
     my %prog_state;
     $prog_state{'type'}=$type;
     if ($type eq 'popup') {
@@ -650,7 +660,7 @@
 	      "<body bgcolor=\"#88DDFF\">".
               "<h4>$heading</h4>".
               "<form name=popremain>".
-              '<input type="text" size="55" name="remaining" value="'.
+              '<input type="text" size="'.$width.'" name="remaining" value="'.
 	      &mt('Starting').'"></form>'.
               "</body></html>\');".
         "popwin.document.close();}".
@@ -660,14 +670,15 @@
     } elsif ($type eq 'inline') {
 	$prog_state{'window'}='window';
 	if (!$formname) {
-	    &r_print($r,'<form name="progresswindow">');
-	    $prog_state{'formname'}='progresswindow';
+	    $prog_state{'formname'}=&get_uniq_name();
+	    &r_print($r,'<form name="'.$prog_state{'formname'}.'">');
 	} else {
 	    $prog_state{'formname'}=$formname;
 	}
 	if (!$inputname) {
-	    &r_print($r,'<input type="text" name="progressline" />');
-	    $prog_state{'inputname'}="progressline";
+	    $prog_state{'inputname'}=&get_uniq_name();
+	    &r_print($r,'<input type="text" name="'.$prog_state{'inputname'}.
+		     '" size="'.$width.'" />');
 	} else {
 	    $prog_state{'inputname'}=$inputname;