version 1.264, 2014/05/18 09:59:57
|
version 1.264.8.1.2.3, 2023/07/06 22:23:14
|
Line 65 sub initialize_bridgetask {
|
Line 65 sub initialize_bridgetask {
|
sub proctor_check_auth { |
sub proctor_check_auth { |
my ($slot_name,$slot,$type)=@_; |
my ($slot_name,$slot,$type)=@_; |
my $user=$env{'form.proctorname'}; |
my $user=$env{'form.proctorname'}; |
|
$user =~ s/^\s+|\s+$//g; |
my $domain=$env{'form.proctordomain'}; |
my $domain=$env{'form.proctordomain'}; |
|
|
my @allowed=split(",",$slot->{'proctor'}); |
my @allowed=split(",",$slot->{'proctor'}); |
foreach my $possible (@allowed) { |
foreach my $possible (@allowed) { |
my ($puser,$pdom)=(split(':',$possible)); |
my ($puser,$pdom)=(split(':',$possible)); |
Line 118 sub check_in_sequence {
|
Line 119 sub check_in_sequence {
|
my ($symb) = &Apache::lonnet::whichuser(); |
my ($symb) = &Apache::lonnet::whichuser(); |
my ($map) = &Apache::lonnet::decode_symb($symb); |
my ($map) = &Apache::lonnet::decode_symb($symb); |
my @resources = |
my @resources = |
$navmap->retrieveResources($map, sub { $_[0]->is_problem() },0,0); |
$navmap->retrieveResources($map, sub { $_[0]->is_problem() || $_[0]->is_tool() },0,0); |
my %old_history = %Apache::lonhomework::history; |
my %old_history = %Apache::lonhomework::history; |
my %old_results = %Apache::lonhomework::results; |
my %old_results = %Apache::lonhomework::results; |
|
|
foreach my $res (@resources) { |
foreach my $res (@resources) { |
&Apache::lonxml::debug("doing ".$res->src); |
&Apache::lonxml::debug("doing ".$res->src); |
&Apache::structuretags::initialize_storage($res->symb); |
&Apache::structuretags::initialize_storage($res->symb); |
my $type = ($res->is_task()) ? 'Task' : 'problem'; |
my $type; |
|
if ($res->is_task()) { |
|
$type = 'Task'; |
|
} elsif ($res->is_tool) { |
|
$type = 'tool'; |
|
} else { |
|
$type = 'problem'; |
|
} |
&create_new_version($type,$user,$domain,$slot_name); |
&create_new_version($type,$user,$domain,$slot_name); |
&Apache::structuretags::finalize_storage($res->symb); |
&Apache::structuretags::finalize_storage($res->symb); |
} |
} |
Line 159 sub create_new_version {
|
Line 167 sub create_new_version {
|
$domain = $env{'user.domain'}; |
$domain = $env{'user.domain'}; |
} |
} |
|
|
} elsif ($type eq 'problem') { |
} elsif (($type eq 'problem') || ($type eq 'tool')) { |
&Apache::lonxml::debug("authed $slot_name"); |
&Apache::lonxml::debug("authed $slot_name"); |
} |
} |
if (!defined($user) || !defined($domain)) { |
if (!defined($user) || !defined($domain)) { |
Line 681 sub start_Task {
|
Line 689 sub start_Task {
|
$target eq 'tex') { |
$target eq 'tex') { |
if ($env{'form.markaccess'}) { |
if ($env{'form.markaccess'}) { |
my @interval=&Apache::lonnet::EXT("resource.0.interval"); |
my @interval=&Apache::lonnet::EXT("resource.0.interval"); |
&Apache::lonnet::set_first_access($interval[1],$interval[0]); |
my ($timelimit) = ($interval[0] =~ /^(\d+)/); |
|
&Apache::lonnet::set_first_access($interval[1],$timelimit); |
} |
} |
} |
} |
|
|
Line 1407 DONEBUTTON
|
Line 1416 DONEBUTTON
|
if ($canstore) { |
if ($canstore) { |
&Apache::structuretags::finalize_storage(); |
&Apache::structuretags::finalize_storage(); |
my @interval = &Apache::lonnet::EXT("resource.0.interval"); |
my @interval = &Apache::lonnet::EXT("resource.0.interval"); |
if ($interval[0] =~ /^\d+$/ && $interval[1] eq 'resource') { |
if ($interval[0] =~ /^\d+/ && $interval[1] eq 'resource') { |
my $key=$courseid."\0".$symb; |
my $key=$courseid."\0".$symb; |
my %times=&Apache::lonnet::get('firstaccesstimes', |
my %times=&Apache::lonnet::get('firstaccesstimes', |
[$key],$domain,$name); |
[$key],$domain,$name); |
Line 3285 sub proctor_validation_screen {
|
Line 3294 sub proctor_validation_screen {
|
<input type="hidden" name="validate" value="yes" /> |
<input type="hidden" name="validate" value="yes" /> |
<input type="hidden" name="submitted" value="yes" /> |
<input type="hidden" name="submitted" value="yes" /> |
<table> |
<table> |
<tr><td>$lt{'prus'}</td><td><input type="string" name="proctorname" value="$env{'form.proctorname'}" /></td></tr> |
<tr><td>$lt{'prus'}</td><td><input type="text" name="proctorname" value="$env{'form.proctorname'}" autocomplete="new-password" /></td></tr> |
<tr><td>$lt{'pasw'}</td><td><input type="password" name="proctorpassword" value="" /></td></tr> |
<tr><td>$lt{'pasw'}</td><td><input type="password" name="proctorpassword" value="" autocomplete="new-password" /></td></tr> |
<tr><td>$lt{'prdo'}</td><td><input type="string" name="proctordomain" value="$env{'form.proctordomain'}" /></td></tr> |
<tr><td>$lt{'prdo'}</td><td><input type="text" name="proctordomain" value="$env{'form.proctordomain'}" autocomplete="off" /></td></tr> |
</table> |
</table> |
<input type="submit" name="checkoutbutton" value="$lt{'vali'}" /><br /> |
<input type="submit" name="checkoutbutton" value="$lt{'vali'}" /><br /> |
<table border="1"> |
<table border="1"> |