--- loncom/homework/bridgetask.pm 2006/06/20 03:33:55 1.174 +++ loncom/homework/bridgetask.pm 2006/06/24 01:28:17 1.179 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # definition of tags that give a structure to a document # -# $Id: bridgetask.pm,v 1.174 2006/06/20 03:33:55 albertel Exp $ +# $Id: bridgetask.pm,v 1.179 2006/06/24 01:28:17 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -50,7 +50,7 @@ my %dimension; sub initialize_bridgetask { # id of current Dimension, 0 means that no dimension is current # (inside only) - %Apache::bridgetask::dimension=(); + @Apache::bridgetask::dimension=(); # list of all Dimension ids seen %Apache::bridgetask::top_dimensionlist=(); # list of all current Instance ids @@ -83,12 +83,7 @@ sub proctor_check_auth { } } if ($authenticated) { - my $useslots = &Apache::lonnet::EXT("resource.0.useslots"); - if ( $useslots eq 'map_map') { - &checkin_resource($user,$domain,$slot_name); - } else { - &create_new_version($type,$user,$domain,$slot_name); - } + &check_in($type,$user,$domain,$slot_name); return 1; } } @@ -112,7 +107,8 @@ sub check_in_sequence { my $navmap = Apache::lonnavmaps::navmap->new(); my ($symb) = &Apache::lonxml::whichuser(); my ($map) = &Apache::lonnet::decode_symb($symb); - my @resources = $navmap->retrieveResources($map,undef,1,0); + my @resources = + $navmap->retrieveResources($map, sub { $_[0]->is_problem() },0,0); my %old_history = %Apache::lonhomework::history; my %old_results = %Apache::lonhomework::results; @@ -148,7 +144,7 @@ sub create_new_version { #setup new version and who did it $Apache::lonhomework::results{'resource.0.version'}=$version; $id = "$version.0"; - if (!defined($user) || defined($domain)) { + if (!defined($user) || !defined($domain)) { $user = $env{'user.name'}; $domain = $env{'user.domain'}; } @@ -534,8 +530,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') { @@ -598,7 +594,7 @@ sub start_Task { ($status,$accessmsg,my $slot_name,$slot) = &Apache::lonhomework::check_slot_access('0','Task'); if ($status eq 'CAN_ANSWER' && $version eq '') { - # CAN_ANSWR mode, and no current version, unproctored access + # CAN_ANSWER mode, and no current version, unproctored access # thus self-checkedin &check_in('Task',undef,undef,$slot_name); &add_to_queue('gradingqueue',{'type' => 'Task', @@ -1225,6 +1221,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; }