version 1.68, 2011/07/04 09:24:58
|
version 1.68.6.4, 2013/01/08 03:51:06
|
Line 37 use GDBM_File;
|
Line 37 use GDBM_File;
|
use Apache::loncommon; |
use Apache::loncommon; |
use Apache::lonlocal; |
use Apache::lonlocal; |
use Apache::lonnet; |
use Apache::lonnet; |
use LONCAPA; |
use LONCAPA qw(:DEFAULT :match); |
|
|
my $iconpath; # variable to be accessible to multiple subroutines |
my $iconpath; # variable to be accessible to multiple subroutines |
my %hash; # variable to tie to user specific database |
my %hash; # variable to tie to user specific database |
Line 152 sub readfromfile {
|
Line 152 sub readfromfile {
|
&Apache::lonnet::filelocation('',$env{'form.readfile'})); |
&Apache::lonnet::filelocation('',$env{'form.readfile'})); |
} else { |
} else { |
my $parser = HTML::TokeParser->new(\$cont); |
my $parser = HTML::TokeParser->new(\$cont); |
my $token; |
my ($token,$donechk,%allmaps); |
while ($token = $parser->get_token) { |
while ($token = $parser->get_token) { |
if ($token->[0] eq 'S') { |
if ($token->[0] eq 'S') { |
if ($token->[1] eq 'resource') { |
if ($token->[1] eq 'resource') { |
if ($env{'form.recover'}) { |
if ($env{'form.recover'}) { |
if ($token->[2]->{'type'} ne 'zombie') { next; } |
if ($token->[2]->{'type'} ne 'zombie') { next; } |
|
if ($token->[2]->{'src'} =~ /\.(page|sequence)$/) { |
|
unless ($donechk) { |
|
$donechk = &get_allmaps(\%allmaps); |
|
} |
|
if ($allmaps{$token->[2]->{'src'}}) { next; } |
|
} |
} else { |
} else { |
if ($token->[2]->{'type'} eq 'zombie') { next; } |
if ($token->[2]->{'type'} eq 'zombie') { next; } |
} |
} |
Line 181 sub readfromfile {
|
Line 187 sub readfromfile {
|
} |
} |
} |
} |
|
|
|
sub get_allmaps { |
|
my ($allmaps) = @_; |
|
return unless (ref($allmaps) eq 'HASH'); |
|
if (($env{'form.recover'}) && |
|
($env{'request.course.id'}) && |
|
($env{'form.readfile'} =~ m{/default(|_\d+)\.(page|sequence)$})) { |
|
my $cid = $env{'request.course.id'}; |
|
my $cdom = $env{'course.'.$cid.'.domain'}; |
|
my $cnum = $env{'course.'.$cid.'.num'}; |
|
my $chome = $env{'course.'.$cid.'.home'}; |
|
my $lastchange = |
|
&Apache::lonnet::get_coursechange($cdom,$cnum); |
|
if ($lastchange > $env{'request.course.tied'}) { |
|
my ($furl,$ferr) = &Apache::lonuserstate::readmap("$cdom/$cnum"); |
|
unless ($ferr) { |
|
&Apache::loncommon::update_content_constraints($cdom,$cnum, |
|
$chome,$cid); |
|
} |
|
} |
|
my $navmap = Apache::lonnavmaps::navmap->new(); |
|
if (defined($navmap)) { |
|
foreach my $res ($navmap->retrieveResources(undef,sub { $_[0]->is_map() },1,0,1)) { |
|
$allmaps->{$res->src()} = 1; |
|
} |
|
} |
|
} |
|
return 1; |
|
} |
|
|
# ---------------------------------------------------------------- Main Handler |
# ---------------------------------------------------------------- Main Handler |
sub handler { |
sub handler { |
Line 411 END
|
Line 445 END
|
$r->print("<td>"); |
$r->print("<td>"); |
$r->print("<img src='$iconname' />"); |
$r->print("<img src='$iconname' />"); |
$r->print("</td><td>"); |
$r->print("</td><td>"); |
$r->print($resource->{'title'}.$resource->{'notes'}."</td><td>\n"); |
if (($env{'form.recover'}) && |
|
($resource->{'url'} =~ m{/uploaded/$match_domain/$match_courseid/supplemental/})) { |
|
my $title = &Apache::loncommon::parse_supplemental_title($resource->{'title'}); |
|
$r->print($title); |
|
} else { |
|
$r->print($resource->{'title'}); |
|
} |
|
$r->print($resource->{'notes'}."</td><td>\n"); |
$r->print($resource->{'url'}."</td>" |
$r->print($resource->{'url'}."</td>" |
.&Apache::loncommon::end_data_table_row() |
.&Apache::loncommon::end_data_table_row() |
."\n"); |
."\n"); |