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

matthew lon-capa-cvs@mail.lon-capa.org
Mon, 12 May 2003 22:04:41 -0000


matthew		Mon May 12 18:04:41 2003 EDT

  Modified files:              
    /loncom/interface	lonhtmlcommon.pm 
  Log:
  Removed &MapOptions, &ProblemOptions, &PartOptions
  &StatusOptions now takes a 'size' parameter (1 by default).
     Changed the text from 'Active', 'Expired', and 'Any' to
     "Currently Enrolled", "Previously Enrolled", and 
     "Any Enrollment Status".  These changes should be transparent to any
     modules which currently use this subroutine.
  
  
Index: loncom/interface/lonhtmlcommon.pm
diff -u loncom/interface/lonhtmlcommon.pm:1.20 loncom/interface/lonhtmlcommon.pm:1.21
--- loncom/interface/lonhtmlcommon.pm:1.20	Wed Apr 30 11:49:45 2003
+++ loncom/interface/lonhtmlcommon.pm	Mon May 12 18:04:41 2003
@@ -1,7 +1,7 @@
 # The LearningOnline Network with CAPA
 # a pile of common html routines
 #
-# $Id: lonhtmlcommon.pm,v 1.20 2003/04/30 15:49:45 matthew Exp $
+# $Id: lonhtmlcommon.pm,v 1.21 2003/05/12 22:04:41 matthew Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -305,179 +305,41 @@
     return $nothing;
 }
 
+
 ##############################################
 ##############################################
 
+=pod
 
+=item &StatusOptions()
 
-sub AscendOrderOptions {
-    my ($order, $page, $formName)=@_;
-
-    my $OpSel1 = '';
-    my $OpSel2 = '';
-
-    if($order eq 'Ascending') {
-        $OpSel1 = ' selected';
-    } else {
-        $OpSel2 = ' selected';
-    }
-
-    my $Str = '';
-    $Str .= '<select name="'.(($page)?$page:'').'Ascend"';
-    if($formName) {
-        $Str .= ' onchange="document.'.$formName.'.submit()"';
-    }
-    $Str .= '>'."\n";
-    $Str .= '<option'.$OpSel1.'>Ascending</option>'."\n".
-	    '<option'.$OpSel2.'>Descending</option>'."\n";
-    $Str .= '</select>'."\n";
-
-    return $Str;
-}
-
-sub MapOptions {
-    my ($data, $page, $formName)=@_;
-    my $Str = '';
-    $Str .= '<select name="';
-    $Str .= (($page)?$page:'').'Maps"';
-    if($formName) {
-        $Str .= ' onchange="document.'.$formName.'.submit()"';
-    }
-    $Str .= '>'."\n";
-
-    my $selected = 0;
-    foreach my $sequence (split(':',$data->{'orderedSequences'})) {
-	$Str .= '<option';
-        if($data->{$page.'Maps'} eq $data->{$sequence.':title'}) {
-            $Str .= ' selected';
-            $selected = 1;
-        }
-	$Str .= '>'.$data->{$sequence.':title'}.'</option>'."\n";	     
-    }
-    $Str .= '<option';
-    if(!$selected) {
-        $Str .= ' selected';
-    }
-    $Str .= '>All Maps</option>'."\n";
-
-    $Str .= '</select>'."\n";
-
-    return $Str;
-}
-
-sub ProblemOptions {
-    my ($data, $page, $map, $formName)=@_;
-    my $Str = '';
-    $Str .= '<select name="';
-    $Str .= (($page)?$page:'').'ProblemSelect"';
-    if($formName) {
-        $Str .= ' onchange="document.'.$formName.'.submit()"';
-    }
-    $Str .= '>'."\n";
-
-    my $selected = 0;
-    foreach my $sequence (split(':',$data->{'orderedSequences'})) {
-	if($data->{$sequence.':title'} eq $map || $map eq 'All Maps') {
-	    foreach my $problem (split(':', $data->{$sequence.':problems'})) {
-		$Str .= '<option';
-		if($data->{$page.'ProblemSelect'} eq 
-		   $data->{$problem.':title'}) {
-		    $Str .= ' selected';
-		    $selected = 1;
-		}
-		$Str .= '>'.$data->{$problem.':title'}.'</option>'."\n";
-	    }
-	}
-    }
-    $Str .= '<option';
-    if(!$selected) {
-        $Str .= ' selected';
-    }
-    $Str .= '>All Problems</option>'."\n";
-
-    $Str .= '</select>'."\n";
-
-    return $Str;
-}
-
-sub PartOptions {
-    my ($data, $page, $parts, $formName)=@_;
-    my $Str = '';
-
-    if(!defined($parts)) {
-	return '';
-    }
-
-    $Str .= '<select name="';
-    $Str .= (($page)?$page:'').'PartSelect"';
-    if($formName) {
-        $Str .= ' onchange="document.'.$formName.'.submit()"';
-    }
-    $Str .= '>'."\n";
-
-    my $selected = 0;
-    foreach my $part (@$parts) {
-	$Str .= '<option';
-	if($data->{$page.'PartSelect'} eq $part) {
-	    $Str .= ' selected';
-	    $selected = 1;
-	}
-	$Str .= '>'.$part.'</option>'."\n";	     
-    }
-    $Str .= '<option';
-    if(!$selected) {
-        $Str .= ' selected';
-    }
-    $Str .= '>All Parts</option>'."\n";
-
-    $Str .= '</select>'."\n";
-
-    return $Str;
-}
-
-sub StudentOptions {
-    my ($cache, $students, $selectedName, $page, $formName)=@_;
-
-    my $Str = '';
-    $Str .= '<select name="'.(($page)?$page:'').'Student"';
-    if($formName) {
-        $Str .= ' onchange="document.'.$formName.'.submit()"';
-    }
-    $Str .= '>'."\n";
+Returns html for a selection box which allows the user to choose the
+enrollment status of students.  The selection box name is 'Status'.
 
-    my $selected=0;
+Inputs:
 
-    foreach (@$students) {
-	$Str .= '<option';
-	if($selectedName eq $_) {
-            $Str .= ' selected';
-            $selected = 1;
-        }
-        $Str .= '>';
-        $Str .= $cache->{$_.':fullname'};
-        $Str .= '</option>'."\n";	     
-    }
+$status: the currently selected status.  If undefined the value of
+$ENV{'form.Status'} is taken.  If that is undefined, a value of 'Active'
+is used.
 
-    $Str .= '<option';
-    if($selectedName eq 'No Student Selected') {
-        $Str .= ' selected';
-        $selected = 1;
-    }
-    $Str .= '>No Student Selected</option>'."\n";
+$formname: The name of the form.  If defined the onchange attribute of
+the selection box is set to document.$formname.submit().
 
-    $Str .= '<option';
-    if(!$selected) {
-        $Str .= ' selected';
-    }
-    $Str .= '>All Students</option>'."\n";
+$size: the size (number of lines) of the selection box.
 
-    $Str .= '</select>'."\n";
+Returns: a perl string as described.
 
-    return $Str;
-}
+=cut
 
+##############################################
+##############################################
 sub StatusOptions {
-    my ($status, $formName)=@_;
+    my ($status, $formName,$size)=@_;
+    $size = 1 if (!defined($size));
+    if (! defined($status)) {
+        $status = 'Active';
+        $status = $ENV{'form.Status'} if (exists($ENV{'form.Status'}));
+    }
 
     my $OpSel1 = '';
     my $OpSel2 = '';
@@ -492,10 +354,14 @@
     if(defined($formName) && $formName ne '') {
         $Str .= ' onchange="document.'.$formName.'.submit()"';
     }
+    $Str .= ' size="'.$size.'" ';
     $Str .= '>'."\n";
-    $Str .= '<option'.$OpSel1.'>Active</option>'."\n";
-    $Str .= '<option'.$OpSel2.'>Expired</option>'."\n";
-    $Str .= '<option'.$OpSel3.'>Any</option>'."\n";
+    $Str .= '<option value="Active" '.$OpSel1.'>'.
+        'Currently Enrolled</option>'."\n";
+    $Str .= '<option value="Expired" '.$OpSel2.'>'.
+        'Previously Enrolled</option>'."\n";
+    $Str .= '<option value="Any" '.$OpSel3.'>'.
+        'Any Enrollment Status</option>'."\n";
     $Str .= '</select>'."\n";
 }