--- loncom/homework/bridgetask.pm 2006/04/19 20:36:19 1.128.2.9
+++ loncom/homework/bridgetask.pm 2006/06/24 01:32:25 1.128.2.12
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# definition of tags that give a structure to a document
#
-# $Id: bridgetask.pm,v 1.128.2.9 2006/04/19 20:36:19 albertel Exp $
+# $Id: bridgetask.pm,v 1.128.2.12 2006/06/24 01:32:25 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -368,8 +368,8 @@ sub start_Task {
my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_;
my ($status,$accessmsg,$slot);
+ &Apache::structuretags::init_problem_globals('Task');
if ($target ne 'webgrade') {
- &Apache::structuretags::init_problem_globals('Task');
&Apache::structuretags::initialize_storage();
&Apache::lonhomework::showhash(%Apache::lonhomework::history);
if ($env{'request.state'} eq 'construct') {
@@ -456,12 +456,33 @@ sub start_Task {
my (undef,undef,$domain,$user)=
&Apache::lonxml::whichuser();
my $files = '
';
+ my $msg;
foreach my $file (@files) {
my $url="/uploaded/$domain/$user/portfolio$file";
$file = ''.$file.'';
$files .= '- '.$file.'
';
+ $msg .= "Submitted file $file
\n";
}
$files.='
';
+ my $subject = "Submission message for $title";
+ my ($message_status,$comment_status);
+ my $setting = $env{'course.'.$env{'request.course.id'}.'.task_messages'};
+ $setting =~ s/^\s*(\S*)\s*$/$1/;
+ $setting = lc($setting);
+ if ($setting eq 'only_student'
+ || $setting eq 'student_and_user_notes_screen') {
+ $message_status =
+ &Apache::lonmsg::user_normal_msg($user,$domain,$subject,$msg);
+ $message_status = ''.&mt('Message sent to user: [_1]',
+ $message_status).'
';
+ }
+ if ($setting eq 'student_and_user_notes_screen') {
+ $comment_status =
+ &Apache::lonmsg::store_instructor_comment($subject.'
'.
+ $msg,$user,$domain);
+ $comment_status = ''.&mt('Message sent to instructor: [_1]',
+ $comment_status).'
';
+ }
$result.=<$title
@@ -470,6 +491,8 @@ sub start_Task {
Logout
Change to a different course
+$message_status
+$comment_status
DONESCREEN
} elsif ($status ne 'NOT_YET_VIEWED') {
$msg.=''.&mt('Not open to be viewed').'
';
@@ -995,6 +1018,7 @@ DONEBUTTON
$result.=&Apache::response::meta_stores_write('status','string',
'Bridge Task Status');
}
+ &Apache::structuretags::reset_problem_globals('Task');
undef($Apache::lonhomework::parsing_a_task);
return $result;
}
@@ -1796,7 +1820,13 @@ sub get_instance {
my $mandatory_failed=0;
my $ungraded=0;
my $review=0;
+
+ @Apache::scripttag::parser_env = @_;
+ $result.=&Apache::scripttag::xmlparse($dimension{'intro'});
foreach my $id (@{$dimension{$instance.'.criterias'}}) {
+ @Apache::scripttag::parser_env = @_;
+ $result.=&Apache::scripttag::xmlparse($dimension{$instance.'.tex
+t'});
my $link=&link($instance,$id);
my $status=$Apache::lonhomework::results{"resource.$version.0.$dim.$instance.$id.status"}=$env{'form.HWVAL_'.$link};
$Apache::lonhomework::results{"resource.$version.0.$dim.$instance.$id.comment"}=$env{'form.HWVAL_comment_'.$link};
@@ -1873,7 +1903,7 @@ sub grading_history {
sub start_IntroParagraph {
my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_;
my $result;
- if ($target eq 'web' || $target eq 'webgrade') {
+ if ($target eq 'web' || $target eq 'web' || $target eq 'webgrade') {
if ($tagstack->[-2] eq 'Dimension') {
$dimension{'intro'}=&Apache::lonxml::get_all_text('/introparagraph',$parser,$style);
@@ -1914,7 +1944,7 @@ sub start_InstanceText {
my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_;
my $instance_id=$Apache::bridgetask::instance[-1];
my $text=&Apache::lonxml::get_all_text('/instancetext',$parser,$style);
- if ($target eq 'web' || $target eq 'webgrade') {
+ if ($target eq 'grade' || $target eq 'web' || $target eq 'webgrade') {
$dimension{$instance_id.'.text'}=$text;
}
return '';