version 1.1, 2002/07/22 20:35:05
|
version 1.4, 2002/07/25 21:23:51
|
Line 1
|
Line 1
|
|
# The LearningOnline Network with CAPA |
|
# a pile of common html routines |
|
# |
|
# $Id$ |
|
# |
|
# Copyright Michigan State University Board of Trustees |
|
# |
|
# This file is part of the LearningOnline Network with CAPA (LON-CAPA). |
|
# |
|
# LON-CAPA is free software; you can redistribute it and/or modify |
|
# it under the terms of the GNU General Public License as published by |
|
# the Free Software Foundation; either version 2 of the License, or |
|
# (at your option) any later version. |
|
# |
|
# LON-CAPA is distributed in the hope that it will be useful, |
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
# GNU General Public License for more details. |
|
# |
|
# You should have received a copy of the GNU General Public License |
|
# along with LON-CAPA; if not, write to the Free Software |
|
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
|
# |
|
# /home/httpd/html/adm/gpl.txt |
|
# |
|
# http://www.lon-capa.org/ |
|
# |
|
|
package Apache::lonhtmlcommon; |
package Apache::lonhtmlcommon; |
|
|
use strict; |
use strict; |
Line 29 sub MapOptions {
|
Line 57 sub MapOptions {
|
} |
} |
|
|
sub StudentOptions { |
sub StudentOptions { |
my ($cache, $students, $selectedName, $page)=@_; |
my ($cache, $students, $selectedName, $page, $formName)=@_; |
|
|
my $Str = ''; |
my $Str = ''; |
$Str = '<select name="'.(($page)?$page:'').'Student">'."\n"; |
$Str .= '<select name="'.(($page)?$page:'').'Student"'; |
|
if($formName) { |
|
$Str .= ' onchange="document.'.$formName.'.submit()"'; |
|
} |
|
$Str .= '>'."\n"; |
|
|
my $selected=0; |
my $selected=0; |
$Str .= '<option'; |
|
if($selectedName eq 'All Students') { |
|
$Str .= ' selected'; |
|
$selected = 1; |
|
} |
|
$Str .= '>All Students</option>'."\n"; |
|
|
|
foreach (@$students) { |
foreach (@$students) { |
$Str .= '<option'; |
$Str .= '<option'; |
Line 54 sub StudentOptions {
|
Line 80 sub StudentOptions {
|
} |
} |
|
|
$Str .= '<option'; |
$Str .= '<option'; |
if(!$selected) { |
if($selectedName eq 'No Student Selected') { |
$Str .= ' selected'; |
$Str .= ' selected'; |
|
$selected = 1; |
} |
} |
$Str .= '>No Student Selected</option>'."\n"; |
$Str .= '>No Student Selected</option>'."\n"; |
|
|
|
$Str .= '<option'; |
|
if(!$selected) { |
|
$Str .= ' selected'; |
|
} |
|
$Str .= '>All Students</option>'."\n"; |
|
|
$Str .= '</select>'."\n"; |
$Str .= '</select>'."\n"; |
|
|
return $Str; |
return $Str; |
Line 153 This function generates the column headi
|
Line 186 This function generates the column headi
|
|
|
=over 4 |
=over 4 |
|
|
Inputs: $CacheData, $studentInformation, $headings, $spacePadding |
Inputs: $CacheData, $keyID, $headings, $spacePadding |
|
|
$CacheData: pointer to a hash tied to the cached data database |
$CacheData: pointer to a hash tied to the cached data database |
|
|
$studentInformation: a pointer to an array containing the names of the data |
$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 |
held in a column and is used as part of a key into $CacheData |
|
|
$headings: The names of the headings for the student information |
$headings: The names of the headings for the student information |
Line 172 $Str: A formatted string of the table co
|
Line 205 $Str: A formatted string of the table co
|
|
|
=cut |
=cut |
|
|
sub CreateStudentInformationHeadings { |
sub CreateHeadings { |
my ($data,$studentInformation,$headings,$displayString)=@_; |
my ($data,$keyID,$headings,$displayString,$format)=@_; |
my $Str=''; |
my $Str=''; |
|
my $formatting = ''; |
|
|
for(my $index=0; $index<(scalar @$headings); $index++) { |
for(my $index=0; $index<(scalar @$headings); $index++) { |
# if(!&ShouldShowColumn($data, 'ChartHeading'.$index)) { |
my $currentHeading=$headings->[$index]; |
# next; |
if($format eq 'preformatted') { |
# } |
my @dataLength=split(//,$currentHeading); |
my $data=$headings->[$index]; |
my $length=scalar @dataLength; |
my $linkdata=$studentInformation->[$index]; |
$formatting = (' 'x |
|
($data->{$keyID->[$index].':columnWidth'}-$length)); |
|
} |
|
my $linkdata=$keyID->[$index]; |
|
|
my $tempString = $displayString; |
my $tempString = $displayString; |
$tempString =~ s/LINKDATA/$linkdata/; |
$tempString =~ s/LINKDATA/$linkdata/; |
$tempString =~ s/DISPLAYDATA/$data/; |
$tempString =~ s/DISPLAYDATA/$currentHeading/; |
|
$tempString =~ s/FORMATTING/$formatting/; |
|
|
$Str .= $tempString; |
$Str .= $tempString; |
} |
} |
|
|
Line 200 username, domain, section, full name, an
|
Line 240 username, domain, section, full name, an
|
|
|
=over 4 |
=over 4 |
|
|
Input: $cache, $name, $studentInformation, $spacePadding |
Input: $cache, $name, $keyID, $spacePadding |
|
|
$cache: This is a pointer to a hash that is tied to the cached data |
$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 |
$name: The name and domain of the current student in name:domain format |
|
|
$studentInformation: A pointer to an array holding the names used to |
$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. |
remove data from the hash. They represent the name of the data to be removed. |
|
|
Line 221 $Str: Formatted string.
|
Line 261 $Str: Formatted string.
|
=cut |
=cut |
|
|
sub FormatStudentInformation { |
sub FormatStudentInformation { |
my ($cache,$name,$studentInformation,$spacePadding)=@_; |
my ($data,$name,$keyID,$displayString,$format)=@_; |
my $Str=''; |
my $Str=''; |
my $data; |
my $currentColumn; |
|
|
|
for(my $index=0; $index<(scalar @$keyID); $index++) { |
|
$currentColumn=$data->{$name.':'.$keyID->[$index]}; |
|
|
for(my $index=0; $index<(scalar @$studentInformation); $index++) { |
if($format eq 'preformatted') { |
if(!&ShouldShowColumn($cache, 'ChartHeading'.$index)) { |
my @dataLength=split(//,$currentColumn); |
next; |
my $length=scalar @dataLength; |
|
$currentColumn.= (' 'x |
|
($data->{$keyID->[$index].':columnWidth'}-$length)); |
} |
} |
$data=$cache->{$name.':'.$studentInformation->[$index]}; |
|
$Str .= $data; |
|
|
|
my @dataLength=split(//,$data); |
my $tempString = $displayString; |
my $length=scalar @dataLength; |
$tempString =~ s/DISPLAYDATA/$currentColumn/; |
$Str .= (' 'x($cache->{$studentInformation->[$index].'Length'}- |
|
$length)); |
$Str .= $tempString; |
$Str .= $spacePadding; |
|
} |
} |
|
|
return $Str; |
return $Str; |