Annotation of loncom/build/lpml_html_posteval.pl, revision 1.4
1.1 harris41 1: #!/usr/bin/perl
2:
1.2 harris41 3: # The LearningOnline Network with CAPA
4: # lpml_html_posteval.pl - runs posteval lpml statements in a lpml document.
5: #
1.4 ! harris41 6: # $Id: lpml_html_posteval.pl,v 1.3 2001/12/07 04:44:48 harris41 Exp $
1.2 harris41 7: #
8: # Copyright Michigan State University Board of Trustees
9: #
10: # This file is part of the LearningOnline Network with CAPA (LON-CAPA).
11: #
12: # LON-CAPA is free software; you can redistribute it and/or modify
13: # it under the terms of the GNU General Public License as published by
14: # the Free Software Foundation; either version 2 of the License, or
15: # (at your option) any later version.
16: #
17: # LON-CAPA is distributed in the hope that it will be useful,
18: # but WITHOUT ANY WARRANTY; without even the implied warranty of
19: # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20: # GNU General Public License for more details.
21: #
22: # You should have received a copy of the GNU General Public License
23: # along with LON-CAPA; if not, write to the Free Software
24: # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
25: #
26: # /home/httpd/html/adm/gpl.txt
27: #
28: # http://www.lon-capa.org/
29: #
30: # YEAR=2001
31: # 12/5,12/6 Scott Harrison
32: #
33: ###
34:
1.1 harris41 35: use strict;
36:
1.4 ! harris41 37: my %chash;
1.1 harris41 38: while(<>) {
39: my $line=$_;
40: my $arguments='';
1.4 ! harris41 41: my $category='';
! 42: if ($line=~/\<\!\-\- POSTEVAL \[(.+)\] (.*?) \-\-\>/) {
! 43: $category=$1;
! 44: $arguments=$2;
1.1 harris41 45: }
1.2 harris41 46: if ($arguments=~/^verify\.pl /) {
47: my @values=`perl $arguments`;
48: my $ret=join('',@values);
1.4 ! harris41 49: unless ($ret) {
! 50: $ret='correct';
! 51: }
! 52: else {
! 53: $chash{$category}++;
! 54: $ret="<font color='#ff0000'><b>$ret</b></font>";
! 55: }
! 56: $line=~s/\<\!\-\- POSTEVAL .*? \-\-\>/$ret/;
1.3 harris41 57: }
58: elsif ($arguments=~/^byteandlinecount/) {
59:
1.4 ! harris41 60: }
! 61: if ($line=~/\<\!\-\- POSTEVALINLINE (.*?) \-\-\>/) {
! 62: my $count=$chash{$1}+0;
! 63: $line=~s/<\!\-\- POSTEVALINLINE .*? \-\-\>/$count/;
1.1 harris41 64: }
1.2 harris41 65: print $line;
1.1 harris41 66: }
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>