Handle hostnames with upper-case letters
[webmin.git] / apache / mod_vhost_alias.pl
1 # mod_vhost_alias.pl
2 # Defines editors for vhost_alias module directives
3
4 sub mod_vhost_alias_directives
5 {
6 $rv = [ [ 'VirtualDocumentRoot VirtualDocumentRootIP', 0, 17, 'virtual', 1.307 ],
7         [ 'VirtualScriptAlias VirtualScriptAliasIP', 0, 17, 'virtual', 1.307 ] ];
8 return &make_directives($rv, $_[0], "mod_vhost_alias");
9 }
10
11 sub edit_VirtualDocumentRoot_VirtualDocumentRootIP
12 {
13 local $rv;
14
15 $rv = sprintf "<input type=radio name=VirtualDocumentRoot_def value=1 %s> %s\n",
16         $_[0] || $_[1] ? '' : 'checked', $text{'mod_vhost_alias_none'};
17 $rv .= sprintf "<input type=radio name=VirtualDocumentRoot_def value=0 %s>\n",
18         $_[0] || $_[1] ? 'checked' : '';
19 $rv .= sprintf "<input name=VirtualDocumentRoot size=50 value='%s'><br>\n",
20         $_[0] ? $_[0]->{'value'} : $_[1] ? $_[1]->{'value'} : '';
21 $rv .= sprintf "<input type=checkbox name=VirtualDocumentRoot_ip value=1 %s> %s\n",
22         $_[1] ? 'checked' : '', $text{'mod_vhost_alias_ip'};
23
24 return (2, "$text{'mod_vhost_alias_root'}", $rv);
25 }
26
27 sub save_VirtualDocumentRoot_VirtualDocumentRootIP
28 {
29 if ($in{'VirtualDocumentRoot_def'}) {
30         return ( [ ], [ ] );
31         }
32 $in{'VirtualDocumentRoot'} =~ /^\S+$/ || &error($text{'mod_vhost_alias_eroot'});
33 &allowed_doc_dir($in{'VirtualDocumentRoot'}) ||
34         &error($text{'mod_vhost_alias_eroot2'});
35 if ($in{'VirtualDocumentRoot_ip'}) {
36         return ( [ ], [ $in{'VirtualDocumentRoot'} ] );
37         }
38 else {
39         return ( [ $in{'VirtualDocumentRoot'} ], [ ] );
40         }
41 }
42
43 sub edit_VirtualScriptAlias_VirtualScriptAliasIP
44 {
45 $rv = sprintf "<input type=radio name=VirtualScriptAlias_def value=1 %s> %s\n",
46         $_[0] || $_[1] ? '' : 'checked', $text{'mod_vhost_alias_none'};
47 $rv .= sprintf "<input type=radio name=VirtualScriptAlias_def value=0 %s>\n",
48         $_[0] || $_[1] ? 'checked' : '';
49 $rv .= sprintf "<input name=VirtualScriptAlias size=50 value='%s'><br>\n",
50         $_[0] ? $_[0]->{'value'} : $_[1] ? $_[1]->{'value'} : '';
51 $rv .= sprintf "<input type=checkbox name=VirtualScriptAlias_ip value=1 %s> %s\n",
52         $_[1] ? 'checked' : '', $text{'mod_vhost_alias_ip'};
53
54 return (2, "$text{'mod_vhost_alias_script'}", $rv);
55 }
56
57 sub save_VirtualScriptAlias_VirtualScriptAliasIP
58 {
59 if ($in{'VirtualScriptAlias_def'}) {
60         return ( [ ], [ ] );
61         }
62 $in{'VirtualScriptAlias'} =~/^\S+$/ || &error($text{'mod_vhost_alias_escript'});
63 if ($in{'VirtualScriptAlias_ip'}) {
64         return ( [ ], [ $in{'VirtualScriptAlias'} ] );
65         }
66 else {
67         return ( [ $in{'VirtualScriptAlias'} ], [ ] );
68         }
69 }
70