3 # Output HTML for the file manager applet
5 require './file-lib.pl';
8 if ($access{'uid'} < 0 && !defined(getpwnam($remote_user))) {
9 &error(&text('index_eremote', $remote_user));
12 # Display header, depending on how many modules the user has
13 &read_acl(undef, \%acl);
14 $mc = @{$acl{$base_remote_user}} == 1;
15 $nolo = $ENV{'ANONYMOUS_USER'} ||
16 $ENV{'SSL_USER'} || $ENV{'LOCAL_USER'} ||
17 $ENV{'HTTP_USER_AGENT'} =~ /webmin/i;
18 if ($gconfig{'gotoone'} && $mc == 1 && !$nolo) {
19 &header($text{'index_title'}, "", undef, 0, 1);
24 &header($text{'index_title'});
29 if ($gconfig{'referers_none'}) {
30 # Because java applet HTTP requests don't always include a referer:
31 # header, we need to use a DBM of trust keys to identify trusted applets
32 if (defined(&seed_random)) { &seed_random(); }
33 else { srand(time() ^ $$); }
34 $trust = int(rand(1000000000));
37 foreach $k (keys %trustdb) {
38 if ($now - $trustdb{$k} > 30*24*60*60) {
42 $trustdb{$trust} = $now;
47 $sharing = $access{'uid'} ? 0 : 1;
48 &read_acl(undef, \%acl);
49 $mc = @{$acl{$base_remote_user}};
50 if (!$gconfig{'gotoone'} || $mc > 1) {
51 %minfo = &get_module_info();
52 $return = "<param name=return value=\"$gconfig{'webprefix'}/?cat=$minfo{'category'}\">";
55 $open = "<param name=open value=\"$in{'open'}\">\n";
61 open("upform.cgi?dir="+dir+"&trust=$trust", "upload", "toolbar=no,menubar=no,scrollbar=no,width=450,height=200");
65 <applet code=FileManager name=FileManager width=$w% height=$h% MAYSCRIPT>
66 <param name=root value="$access{'root'}">
67 <param name=follow value="$access{'follow'}">
68 <param name=ro value="$access{'ro'}">
69 <param name=sharing value="$sharing">
70 <param name=trust value="$trust">
71 <param name=goto value="$access{'goto'}">
74 $text{'index_nojava'} <p>