--- loncom/homework/essayresponse.pm 2002/07/19 20:43:11 1.9
+++ loncom/homework/essayresponse.pm 2002/08/01 19:16:45 1.14
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# essay (ungraded) style responses
#
-# $Id: essayresponse.pm,v 1.9 2002/07/19 20:43:11 ng Exp $
+# $Id: essayresponse.pm,v 1.14 2002/08/01 19:16:45 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -26,54 +26,107 @@
# http://www.lon-capa.org/
#
# 4/3 Guy
+# July, 2002, H. K. Ng
+#
package Apache::essayresponse;
use strict;
BEGIN {
- &Apache::lonxml::register('Apache::essayresponse',('essayresponse'));
+ &Apache::lonxml::register('Apache::essayresponse',('essayresponse'));
}
sub start_essayresponse {
- my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_;
- my $result;
- my $id = &Apache::response::start_response($parstack,$safeeval);
- if ($target eq 'meta') {
- $result=&Apache::response::meta_package_write('essayresponse');
- }
- if ($target eq 'web') {
- my $id = $Apache::inputtags::response['-1'];
- my $part= $Apache::inputtags::part;
- my $symb= &Apache::lonnet::symbread($ENV{'form.url'});
-# my $ncol= &Apache::lonnet::EXT('parameter\_$part\_$id\_maxcollaborators',$symb);
- my $ncol= &Apache::lonnet::get($symb,['parameter\_$part\_$id\_maxcollaborators']);
- $result ='
Collaborators:
'.$ncol.':
'.
- '(Enter collaborators using username or username@domain, e.g. smithje or doej@msu or smithje@fsu.)';
- }
- return $result;
+ my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_;
+ my $result;
+ my $id = &Apache::response::start_response($parstack,$safeeval);
+ if ($target eq 'meta') {
+ $result=&Apache::response::meta_package_write('essayresponse');
+ } elsif ($target eq 'web') {
+ my $part= $Apache::inputtags::part;
+
+ my $ncol= &Apache::lonnet::EXT("resource.$part".'_'."$id.maxcollaborators");
+ my $coll= &HTML::Entities::encode($Apache::lonhomework::history{"resource.$part.$id.collaborators"});
+ $result='
'.
+ 'Collaborators: '. + '(Enter maximum '.$ncol.' collaborators using username or username@domain, e.g. '. + 'smithje or smithje@'.$ENV{'user.domain'}.'.) '; + $result .= &check_collaborators($ncol,$coll) if ($coll =~ /\w+/); + $result .=' |
'.
+ ''.
+ ' Submit text below as answer to receive credit '. + ''. + ' Save text below as a draft answer (not submitting it for credit yet) '. + ' |
The following user'. + (scalar(@badcollaborators) > 1 ? 's are' : ' is').' invalid: '. + join(', ',@badcollaborators).'. Please correct. |
'. + 'You have too many collaborators. Please remove '.$toomany.' collaborator'. + ($toomany > 1 ? 's' :'').'. |