[LON-CAPA-cvs] cvs: loncom /interface lonprintout.pm
foxr
lon-capa-cvs@mail.lon-capa.org
Mon, 15 Aug 2005 21:51:51 -0000
foxr Mon Aug 15 17:51:51 2005 EDT
Modified files:
/loncom/interface lonprintout.pm
Log:
Add latent support for printing with an input code.
Index: loncom/interface/lonprintout.pm
diff -u loncom/interface/lonprintout.pm:1.381 loncom/interface/lonprintout.pm:1.382
--- loncom/interface/lonprintout.pm:1.381 Fri Aug 12 17:33:41 2005
+++ loncom/interface/lonprintout.pm Mon Aug 15 17:51:49 2005
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Printout
#
-# $Id: lonprintout.pm,v 1.381 2005/08/12 21:33:41 albertel Exp $
+# $Id: lonprintout.pm,v 1.382 2005/08/15 21:51:49 foxr Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -44,6 +44,26 @@
my $resources_printed = '';
+# Determine if a code entered by the user in a helper is valid.
+# valid depends on the code type and the type of code selected.
+# The type of code selected can either be numeric or
+# Alphabetic. If alphabetic, the code, in fact is a simple
+# substitution cipher for the actual numeric code: 0->A, 1->B ...
+# We'll be nice and be case insensitive for alpha codes.
+# Parameters:
+# code_value - the value of the code the user typed in.
+# code_option - The code type selected from the set in the scantron format
+# table.
+# Returns:
+# undef - The code is valid.
+# other - An error message indicating what's wrong.
+#
+sub is_code_valid {
+ my ($code_value, $code_option) = @_;
+
+ return "Entering a single code is not supported (yet)";
+}
+
# Compare two students by name. The students are in the form
# returned by the helper:
# user:domain:section:last, first:status
@@ -1989,13 +2009,29 @@
<string variable="NUMBER_TO_PRINT_TOTAL" maxlength="5" size="5">
<validator>
if (((\$helper->{'VARS'}{'NUMBER_TO_PRINT_TOTAL'}+0) < 1) &&
- !\$helper->{'VARS'}{'REUSE_OLD_CODES'}) {
+ !\$helper->{'VARS'}{'REUSE_OLD_CODES'} &&
+ !\$helper->{'VARS'}{'SINGLE_CODE'}) {
return "You need to specify the number of assignments to print";
}
return undef;
</validator>
</string>
<message></td></tr><tr><td></message>
+ <message><b>Value of CODE to print?</b></td><td></message>
+ <string variable="SINGLE_CODE" size="10" defaultvalue="zzzz">
+ <validator>
+ # Not sure of exact call context so...
+ use Apache::lonprintout;
+ if(!\$helper->{'VARS'}{'NUMBER_TO_PRINT_TOTAL'} &&
+ !\$helper->{'VARS'}{'REUSE_OLD_CODES'}) {
+ return &Apache::lonprintout::is_code_valid(\$helper->{'VARS'}{'SINGLE_CODE'},
+ \$helper->{'VARS'}{'CODE_OPTION'});
+ } else {
+ return undef; # Other forces control us.
+ }
+ </validator>
+ </string>
+ <message></td></tr><tr><td></message>
<message><b>Names to store the CODEs under for later:</b></message>
<message></td><td></message>
<string variable="ANON_CODE_STORAGE_NAME" maxlength="50" size="20" />