[LON-CAPA-cvs] cvs: loncom /homework structuretags.pm
sakharuk
lon-capa-cvs@mail.lon-capa.org
Thu, 27 Feb 2003 20:01:05 -0000
sakharuk Thu Feb 27 15:01:05 2003 EDT
Modified files:
/loncom/homework structuretags.pm
Log:
Added points to exam problems.
Index: loncom/homework/structuretags.pm
diff -u loncom/homework/structuretags.pm:1.150 loncom/homework/structuretags.pm:1.151
--- loncom/homework/structuretags.pm:1.150 Tue Feb 25 18:18:22 2003
+++ loncom/homework/structuretags.pm Thu Feb 27 15:01:05 2003
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# definition of tags that give a structure to a document
#
-# $Id: structuretags.pm,v 1.150 2003/02/25 23:18:22 albertel Exp $
+# $Id: structuretags.pm,v 1.151 2003/02/27 20:01:05 sakharuk Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -253,6 +253,7 @@
$Apache::inputtags::part='0';
@Apache::inputtags::responselist = ();
@Apache::inputtags::previous=();
+ $Apache::structuretags::printanswer='No';
if ($target ne 'analyze') {
&initialize_storage();
if ($target eq 'web') {
@@ -323,7 +324,7 @@
}
$result.=$msg.'<br />';
} elsif ($target eq 'tex') {
- $result.="\\begin{document}\\noindent \\vskip 1 mm \\begin{minipage}{\\textwidth}\\vskip 0 mm ";
+ $result.='\begin{document}\noindent \vskip 1 mm \begin{minipage}{\textwidth}\vskip 0 mm';
if ($status eq 'UNAVAILABLE') {
$result.='Unable to determine if this resource is open due to network problems. Please try again later.\vskip 0 mm ';
} else {
@@ -360,6 +361,15 @@
}
$Apache::lonhomework::name=$name;
my $id = $Apache::inputtags::part;
+ my $weight = &Apache::lonnet::EXT("resource.$id.weight");
+ my $allkeys = &Apache::lonnet::metadata($ENV{'request.uri'},'keys');
+ my @allkeys = split /,/,$allkeys;
+ my $allow_print_points = 0;
+ foreach my $partial_key (@allkeys) {
+ if ($partial_key=~m/weight/) {
+ $allow_print_points++;
+ }
+ }
my $duedate = &Apache::lonnet::EXT("resource.$id.duedate");
$duedate = POSIX::strftime("%c",localtime($duedate));
my $temp_file;
@@ -376,10 +386,11 @@
$temp_file = Apache::File->new('>'.$filename);
print $temp_file "$duedate\n";
if (not $ENV{'request.symb'} =~ m/\.page_/) {
- if(not $duedate=~m/1969/) {
+ if(not $duedate=~m/1969/ and $Apache::lonhomework::type ne 'exam') {
$result .= '\begin{document} \noindent\textit{Due date: '.$duedate.'} \vskip 1 mm\noindent \begin{minipage}{\textwidth}';
} else {
$result .= '\begin{document} \noindent \vskip 1 mm \noindent\begin{minipage}{\textwidth}';
+ if ($Apache::lonhomework::type eq 'exam' and $allow_print_points==1) { $result .= '\fbox{\textit{'.$weight.' pt}}';}
}
} else {
$result .= '\vskip 1mm\textit{Due date: '.$duedate.'} \\\\\\\\';
@@ -387,6 +398,7 @@
} else {
if (not $ENV{'request.symb'} =~ m/\.page_/) {
$result .= '\begin{document} \noindent \vskip 1 mm\noindent\begin{minipage}{\textwidth}';
+ if (($Apache::lonhomework::type eq 'exam') and ($allow_print_points==1)) { $result .= '\fbox{\textit{'.$weight.' pt}}';}
} else {
$result .= '\vskip 1mm \\\\\\\\';
}
@@ -689,9 +701,9 @@
}
} else {
if ($target eq 'tex') {
- if ($$tagstack[-2] ne 'problem') {
- $result.='\noindent \end{minipage}\vskip 0 mm \noindent \begin{minipage}{\textwidth}\noindent';
- }
+ $result.='\noindent \end{minipage}\vskip 0 mm \noindent \begin{minipage}{\textwidth}\noindent';
+ my $weight = &Apache::lonnet::EXT("resource.$id.weight");
+ if ($Apache::lonhomework::type eq 'exam') { $result .= '\fbox{\textit{'.$weight.' pt}}';}
}
}
}