# The LearningOnline Network with CAPA
# a pile of common html routines
#
# $Id: lonhtmlcommon.pm,v 1.7 2002/08/13 00:37:18 stredwic Exp $
#
# 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;
use strict;
sub AscendOrderOptions {
my ($order, $page, $formName)=@_;
my $OpSel1 = '';
my $OpSel2 = '';
if($order eq 'Ascending') {
$OpSel1 = ' selected';
} else {
$OpSel2 = ' selected';
}
my $Str = '';
$Str .= ''."\n";
return $Str;
}
sub MapOptions {
my ($data, $page, $formName)=@_;
my $Str = '';
$Str .= ''."\n";
}
sub MultipleSectionSelect {
my ($sections,$selectedSections)=@_;
my $Str = '';
$Str .= ''."\n";
return $Str;
}
sub Title {
my ($pageName)=@_;
my $Str = '';
$Str .= '
'."\n";
return $Str;
}
=pod
=item &CreateTableHeadings()
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;
}
# Create progress
sub Create_PrgWin {
my ($r, $title, $heading)=@_;
$r->print('");
$r->rflush();
}
# update progress
sub Update_PrgWin {
my ($displayString,$r)=@_;
$r->print('');
$r->rflush();
}
# close Progress Line
sub Close_PrgWin {
my ($r)=@_;
$r->print(''."\n");
$r->rflush();
}
1;
__END__