--- loncom/homework/bridgetask.pm 2006/05/16 06:43:42 1.151 +++ loncom/homework/bridgetask.pm 2006/05/23 19:55:40 1.153 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # definition of tags that give a structure to a document # -# $Id: bridgetask.pm,v 1.151 2006/05/16 06:43:42 albertel Exp $ +# $Id: bridgetask.pm,v 1.153 2006/05/23 19:55:40 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -95,7 +95,7 @@ sub create_new_version { my $version= $Apache::lonhomework::history{'resource.0.version'}; $version++; - + &Apache::lonxml::debug("Making version $version"); #clean out all current results foreach my $key (keys(%Apache::lonhomework::history)) { if ($key=~/^resource\.0\./) { @@ -108,6 +108,9 @@ sub create_new_version { if (defined($user) && defined($domain)) { $Apache::lonhomework::results{"resource.$version.0.checkedin"}= $user.':'.$domain; + } else { + $Apache::lonhomework::results{"resource.$version.0.checkedin"}= + $env{'user.name'}.':'.$env{'user.domain'}; } if (defined($slot_name)) { $Apache::lonhomework::results{"resource.$version.0.checkedin.slot"}= @@ -454,8 +457,11 @@ sub start_Task { my ($version,$previous)=&get_version(); ($status,$accessmsg,my $slot_name,$slot) = &Apache::lonhomework::check_slot_access('0','Task'); - if ($status eq 'CAN_ANSWER' && $version eq '' && $slot_name eq '') { - &create_new_version('Task'); + if ($status eq 'CAN_ANSWER' && $version eq '') { + &create_new_version('Task',undef,undef,$slot_name); + &add_to_queue('gradingqueue',{'type' => 'Task', + 'time' => time, + 'slot' => $slot_name}); ($version,$previous)=&get_version(); } @@ -528,7 +534,7 @@ DONESCREEN && defined($Apache::inputtags::slot_name)) { my $result= &add_to_queue('gradingqueue', - {'type' => 'task', + {'type' => 'Task', 'time' => time, 'slot' => $Apache::inputtags::slot_name}); @@ -916,11 +922,11 @@ DONEBUTTON my $useslots = &Apache::lonnet::EXT("resource.0.useslots"); if ($useslots =~ /^\s*no\s*$/i) { &add_to_queue('gradingqueue', - {'type' => 'task', + {'type' => 'Task', 'time' => time}); } elsif (defined($Apache::inputtags::slot_name)) { &add_to_queue('gradingqueue', - {'type' => 'task', + {'type' => 'Task', 'time' => time, 'slot' => $Apache::inputtags::slot_name}); } @@ -1777,8 +1783,6 @@ sub get_instance { my $dim=&get_id($parstack,$safeeval); my $instance=&get_instance($dim); my $version=&get_version(); - use Data::Dumper; - &Apache::lonxml::debug(Dumper(\%dimension)); if ($target eq 'web') { @Apache::scripttag::parser_env = @_; $result.=&Apache::scripttag::xmlparse($dimension{'intro'}); @@ -1905,9 +1909,14 @@ 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'}}, @{$dimension{'criterias'}}) { my $link=&link($id); + @Apache::scripttag::parser_env = @_; + $result.=&Apache::scripttag::xmlparse($dimension{$instance.'.text'}); my $status=$Apache::lonhomework::results{"resource.$version.0.$dim.$id.status"}=$env{'form.HWVAL_'.$link}; $Apache::lonhomework::results{"resource.$version.0.$dim.$id.comment"}=$env{'form.HWVAL_comment_'.$link}; my $mandatory=($dimension{'criteria.'.$id.'.mandatory'} ne 'N'); @@ -1991,7 +2000,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 'grade' || $target eq 'web' || $target eq 'webgrade') { if ($tagstack->[-2] eq 'Dimension' || $tagstack->[-2] eq 'Question' ) { $dimension{'intro'}= &Apache::lonxml::get_all_text('/introparagraph', @@ -2033,7 +2042,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 '';