Diff for /loncom/interface/lonhtmlcommon.pm between versions 1.45 and 1.46

version 1.45, 2004/02/03 21:52:22 version 1.46, 2004/02/12 22:23:30
Line 169  sub checkbox { Line 169  sub checkbox {
     return $Str;      return $Str;
 }  }
   
   
   
 ##############################################  ##############################################
 ##############################################  ##############################################
   
Line 527  sub StatusOptions { Line 525  sub StatusOptions {
     $Str .= '</select>'."\n";      $Str .= '</select>'."\n";
 }  }
   
   
 ########################################################  
 ########################################################  
   
 =pod  
   
 =item &MultipleSectionSelect()  
   
 Inputs:   
   
 =over 4  
   
 =item $sections A references to an array containing the names of all the  
 sections used in a class.  
   
 =item $selectedSections A reference to an array containing the names of the  
 currently selected sections.  
   
 =back   
   
 Returns: a string containing HTML for a multiple select box for  
 selecting sections of a course.    
   
 The form element name is 'Section'.  @$sections is sorted prior to output.  
   
 =cut  
   
 ########################################################  
 ########################################################  
 sub MultipleSectionSelect {  
     my ($sections,$selectedSections)=@_;  
   
     my $Str = '';  
     $Str .= '<select name="Section" multiple="true" size="4">'."\n";  
   
     foreach (sort @$sections) {  
         $Str .= '<option';  
         foreach my $selected (@$selectedSections) {  
             if($_ eq $selected) {  
                 $Str .= ' selected=""';  
             }  
         }  
         $Str .= '>'.$_.'</option>'."\n";  
     }  
     $Str .= '</select>'."\n";  
       
     return $Str;  
 }  
   
 ########################################################  
 ########################################################  
   
 =pod  
   
 =item &Title()  
   
 Inputs: $pageName a string containing the name of the page to be sent  
 to &Apache::loncommon::bodytag.  
   
 Returns: string containing being <html> and complete <head> and <title>  
 as well as a <script> to focus the current window and change its width  
 and height to 500.  Why?  I do not know.  If you find out, please update  
 this documentation.  
   
 =cut  
   
 ########################################################  
 ########################################################  
 sub Title {  
     my ($pageName)=@_;  
   
     my $Str = '';  
   
     $Str .= '<html><head><title>'.$pageName.'</title></head>'."\n";  
     $Str .= &Apache::loncommon::bodytag($pageName)."\n";  
     $Str .= '<script>window.focus(); window.width=500;window.height=500;';  
     $Str .= '</script>'."\n";  
   
     return $Str;  
 }  
   
 ########################################################  
 ########################################################  
   
 =pod  
   
 =item &CreateHeadings()  
   
 This function generates the column headings for the chart.  
   
 =over 4  
   
 Inputs: $CacheData, $keyID, $headings, $spacePadding  
   
 $CacheData: pointer to a hash tied to the cached data database  
   
 $keyID: a pointer to an array containing the names of the data   
 held in a column and is used as part of a key into $CacheData  
   
 $headings: The names of the headings for the student information  
   
 $spacePadding: The spaces to go between columns  
   
 Output: $Str  
   
 $Str: A formatted string of the table column headings.  
   
 =back  
   
 =cut  
   
 ########################################################  
 ########################################################  
 sub CreateHeadings {  
     my ($data,$keyID,$headings,$displayString,$format)=@_;  
     my $Str='';  
     my $formatting = '';  
   
     for(my $index=0; $index<(scalar @$headings); $index++) {  
   my $currentHeading=$headings->[$index];  
         if($format eq 'preformatted') {  
             my @dataLength=split(//,$currentHeading);  
             my $length=scalar @dataLength;  
             $formatting = (' 'x  
                       ($data->{$keyID->[$index].':columnWidth'}-$length));  
         }  
         my $linkdata=$keyID->[$index];  
   
         my $tempString = $displayString;  
         $tempString =~ s/LINKDATA/$linkdata/;  
         $tempString =~ s/DISPLAYDATA/$currentHeading/;  
         $tempString =~ s/FORMATTING/$formatting/;  
   
         $Str .= $tempString;  
     }  
   
     return $Str;  
 }  
   
 ########################################################  
 ########################################################  
   
 =pod  
   
 =item &FormatStudentInformation()  
   
 This function produces a formatted string of the student\'s information:  
 username, domain, section, full name, and PID.  
   
 =over 4  
   
 Input: $cache, $name, $keyID, $spacePadding  
   
 $cache: This is a pointer to a hash that is tied to the cached data  
   
 $name:  The name and domain of the current student in name:domain format  
   
 $keyID: A pointer to an array holding the names used to  
   
 remove data from the hash.  They represent the name of the data to be removed.  
   
 $spacePadding: Extra spaces that represent the space between columns  
   
 Output: $Str  
   
 $Str: Formatted string.  
   
 =back  
   
 =cut  
   
 ########################################################  
 ########################################################  
 sub FormatStudentInformation {  
     my ($data,$name,$keyID,$displayString,$format)=@_;  
     my $Str='';  
     my $currentColumn;  
   
     for(my $index=0; $index<(scalar @$keyID); $index++) {  
         $currentColumn=$data->{$name.':'.$keyID->[$index]};  
   
         if($format eq 'preformatted') {  
             my @dataLength=split(//,$currentColumn);  
             my $length=scalar @dataLength;  
             $currentColumn.= (' 'x  
                      ($data->{$keyID->[$index].':columnWidth'}-$length));  
         }  
   
         my $tempString = $displayString;  
         $tempString =~ s/DISPLAYDATA/$currentColumn/;  
   
         $Str .= $tempString;  
     }  
   
     return $Str;  
 }  
   
 ########################################################  ########################################################
 ########################################################  ########################################################
   

Removed from v.1.45  
changed lines
  Added in v.1.46


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