Files
webmin/apache/cgi_args.pl
Jamie Cameron 9dbd5db2c9 Fix permissions
2009-07-20 23:42:32 -07:00

44 lines
1.0 KiB
Perl
Executable File

do 'apache-lib.pl';
sub cgi_args
{
my ($cgi) = @_;
if ($cgi eq 'edit_global.cgi') {
# Global options page
return $access{'global'}==1 ? 'type=0' : 'none';
}
elsif ($cgi eq 'htaccess.cgi') {
return $access{'global'} ? '' : 'none';
}
elsif ($cgi eq 'edit_defines.cgi' || $cgi eq 'allmanual_form.cgi' ||
$cgi eq 'edit_mods.cgi') {
return $access{'global'}==1 ? '' : 'none';
}
else {
# Get first allowed virtual host
my $conf = &get_config();
my ($virt) = grep { &can_edit_virt($_) }
&find_directive_struct("VirtualHost", $conf);
my $vidx = &indexof($virt, @$conf);
if ($cgi eq 'virt_index.cgi') {
return 'virt='.$vidx;
}
elsif ($cgi eq 'edit_virt.cgi') {
return 'virt='.$vidx.'&type=0';
}
elsif ($cgi eq 'dir_index.cgi' || $cgi eq 'edit_dir.cgi') {
# Get first directory
my ($dir) = &find_directive_struct(
"Directory", $virt->{'members'});
return 'none' if (!$dir);
my $rv = 'virt='.$vidx.'&idx='.$didx;
if ($cgi eq 'edit_dir.cgi') {
$rv .= '&type=0';
}
return $rv;
}
}
return undef;
}