version 1.1, 2022/12/31 14:08:59
|
version 1.4, 2024/12/25 14:20:19
|
Line 39 sub handler {
|
Line 39 sub handler {
|
my $r = shift; |
my $r = shift; |
&Apache::loncommon::content_type($r,'application/json'); |
&Apache::loncommon::content_type($r,'application/json'); |
$r->send_http_header; |
$r->send_http_header; |
my ($nonemptydir,%dirhash,%filehash); |
my ($nonemptydir,$addtopdir,%dirhash,%filehash); |
if ($env{'request.course.id'}) { |
if ($env{'request.course.id'}) { |
if (&Apache::lonnet::allowed('mdc',$env{'request.course.id'})) { |
if (&Apache::lonnet::allowed('mdc',$env{'request.course.id'})) { |
my ($context,$recurse,$role,$is_home,$inc,$exc,$toppath,$relpath, |
my ($context,$recurse,$role,$is_home,$inc,$exc,$toppath,$relpath, |
Line 65 sub handler {
|
Line 65 sub handler {
|
if ($env{'form.nonempty'}) { |
if ($env{'form.nonempty'}) { |
$nonemptydir = 1; |
$nonemptydir = 1; |
} |
} |
|
if ($env{'form.addtop'}) { |
|
$addtopdir = 1; |
|
} else { |
|
$addtopdir = 0; |
|
} |
my $now = time; |
my $now = time; |
my @ids=&Apache::lonnet::current_machine_ids(); |
my @ids=&Apache::lonnet::current_machine_ids(); |
if ($role eq 'author') { |
if ($role eq 'author') { |
Line 87 sub handler {
|
Line 92 sub handler {
|
$is_home = 1; |
$is_home = 1; |
} |
} |
} |
} |
} elsif ($role =~ m{^(ca|aa)\./($match_domain)/($match_username)$}) { |
} elsif ($role =~ m{^(ca|aa)\./($match_domain)/($match_username)$}) { |
my ($rolecode,$audom,$auname) = ($1,$2,$3); |
my ($rolecode,$audom,$auname) = ($1,$2,$3); |
if (exists($env{"user.role.$role"})) { |
if (exists($env{"user.role.$role"})) { |
my ($start,$end) = split(/\./,$env{"user.role.$role"}); |
my ($start,$end) = split(/\./,$env{"user.role.$role"}); |
Line 104 sub handler {
|
Line 109 sub handler {
|
if ($env{'form.path'}) { |
if ($env{'form.path'}) { |
$relpath = $env{'form.path'}; |
$relpath = $env{'form.path'}; |
} |
} |
my @ids=&Apache::lonnet::current_machine_ids(); |
|
if (grep(/^\Q$env{'user.home'}\E$/,@ids)) { |
|
$is_home = 1; |
|
} |
|
if ($inc) { |
if ($inc) { |
map { $include->{$_} = 1; } split(/\s*,\s*/,$inc); |
map { $include->{$_} = 1; } split(/\s*,\s*/,$inc); |
} |
} |
Line 120 sub handler {
|
Line 121 sub handler {
|
$filehashref = \%filehash; |
$filehashref = \%filehash; |
} |
} |
&Apache::lonnet::recursedirs($is_home,$recurse,$include,$exclude,$nonemptydir, |
&Apache::lonnet::recursedirs($is_home,$recurse,$include,$exclude,$nonemptydir, |
$toppath,$relpath,$dirhashref,$filehashref); |
$addtopdir,$toppath,$relpath,$dirhashref,$filehashref); |
} |
} |
} |
} |
} |
} |