Diff for /loncom/interface/lonhtmlcommon.pm between versions 1.20 and 1.22

version 1.20, 2003/04/30 15:49:45 version 1.22, 2003/05/21 16:16:32
Line 65  use strict; Line 65  use strict;
   
 =item &date_setter  =item &date_setter
   
   &date_setter returns html and javascript for a compact date-setting form.
   To retrieve values from it, use &get_date_from_form().
   
 Inputs  Inputs
   
 =over 4  =over 4
Line 82  The current setting for this time parame Line 85  The current setting for this time parame
 An undefined value is taken to indicate the value is the current time.  An undefined value is taken to indicate the value is the current time.
 Also, to be explicit, a value of 'now' also indicates the current time.  Also, to be explicit, a value of 'now' also indicates the current time.
   
   =back
   
   Bugs
   
   The method used to restrict user input will fail in the year 2400.
   
 =cut  =cut
   
 ##############################################  ##############################################
Line 177  ENDJS Line 186  ENDJS
 ##############################################  ##############################################
 ##############################################  ##############################################
   
   =pod
   
 =item &get_date_from_form  =item &get_date_from_form
   
   get_date_from_form retrieves the date specified in an &date_setter form.
   
 Inputs:  Inputs:
   
 =over 4  =over 4
Line 305  sub javascript_nothing { Line 318  sub javascript_nothing {
     return $nothing;      return $nothing;
 }  }
   
   
 ##############################################  ##############################################
 ##############################################  ##############################################
   
   =pod
   
   =item &StatusOptions()
   
 sub AscendOrderOptions {  Returns html for a selection box which allows the user to choose the
     my ($order, $page, $formName)=@_;  enrollment status of students.  The selection box name is 'Status'.
   
     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 = '';  Inputs:
     $Str .= '<select name="'.(($page)?$page:'').'Student"';  
     if($formName) {  
         $Str .= ' onchange="document.'.$formName.'.submit()"';  
     }  
     $Str .= '>'."\n";  
   
     my $selected=0;  $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.
   
     foreach (@$students) {  $formname: The name of the form.  If defined the onchange attribute of
  $Str .= '<option';  the selection box is set to document.$formname.submit().
  if($selectedName eq $_) {  
             $Str .= ' selected';  
             $selected = 1;  
         }  
         $Str .= '>';  
         $Str .= $cache->{$_.':fullname'};  
         $Str .= '</option>'."\n";       
     }  
   
     $Str .= '<option';  $size: the size (number of lines) of the selection box.
     if($selectedName eq 'No Student Selected') {  
         $Str .= ' selected';  
         $selected = 1;  
     }  
     $Str .= '>No Student Selected</option>'."\n";  
   
     $Str .= '<option';  Returns: a perl string as described.
     if(!$selected) {  
         $Str .= ' selected';  
     }  
     $Str .= '>All Students</option>'."\n";  
   
     $Str .= '</select>'."\n";  =cut
   
     return $Str;  
 }  
   
   ##############################################
   ##############################################
 sub StatusOptions {  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 $OpSel1 = '';
     my $OpSel2 = '';      my $OpSel2 = '';
Line 492  sub StatusOptions { Line 367  sub StatusOptions {
     if(defined($formName) && $formName ne '') {      if(defined($formName) && $formName ne '') {
         $Str .= ' onchange="document.'.$formName.'.submit()"';          $Str .= ' onchange="document.'.$formName.'.submit()"';
     }      }
       $Str .= ' size="'.$size.'" ';
     $Str .= '>'."\n";      $Str .= '>'."\n";
     $Str .= '<option'.$OpSel1.'>Active</option>'."\n";      $Str .= '<option value="Active" '.$OpSel1.'>'.
     $Str .= '<option'.$OpSel2.'>Expired</option>'."\n";          'Currently Enrolled</option>'."\n";
     $Str .= '<option'.$OpSel3.'>Any</option>'."\n";      $Str .= '<option value="Expired" '.$OpSel2.'>'.
           'Previously Enrolled</option>'."\n";
       $Str .= '<option value="Any" '.$OpSel3.'>'.
           'Any Enrollment Status</option>'."\n";
     $Str .= '</select>'."\n";      $Str .= '</select>'."\n";
 }  }
   

Removed from v.1.20  
changed lines
  Added in v.1.22


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>