--- loncom/homework/essayresponse.pm 2002/07/19 20:43:11 1.9
+++ loncom/homework/essayresponse.pm 2005/03/31 21:24:29 1.60
@@ -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.60 2005/03/31 21:24:29 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -25,55 +25,198 @@
#
# http://www.lon-capa.org/
#
-# 4/3 Guy
+
package Apache::essayresponse;
use strict;
+use Apache::lonxml();
+use Apache::lonnet();
+use Apache::lonlocal;
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"},'<>&"');
+ my $uploadedfiletypes= &Apache::lonnet::EXT("resource.$part".'_'."$id.uploadedfiletypes");
+ $uploadedfiletypes=~s/[^\w\,]//g;
+ $result='
';
+ $result.='
'.
+ ' '.
+ &mt('Submit entries below as answer to receive credit').' '.
+ ' '.
+ &mt('Save entries below as a draft answer (not submitting them for credit yet)').
+ '
';
+ if ($ncol > 0) {
+ $result .='
'.
+ 'Collaborators: '.
+ &mt('(Enter maximum [_1] collaborators using username or username@domain, e.g. smithje or smithje@[_2].)',$ncol,$ENV{'user.domain'}).' ';
+ $result .= &check_collaborators($ncol,$coll) if ($coll =~ /\w+/);
+ $result .='