Handle hostnames with upper-case letters
[webmin.git] / jabber / edit_karma.cgi
1 #!/usr/local/bin/perl
2 # edit_karma.cgi
3 # Edit karma traffic limitation options
4
5 require './jabber-lib.pl';
6 &ui_print_header(undef, $text{'karma_title'}, "", "karma");
7
8 $conf = &get_jabber_config();
9 $io = &find("io", $conf);
10 $karma = &find("karma", $io);
11
12 print "<form action=save_karma.cgi>\n";
13 print "<table border width=100%>\n";
14 print "<tr $tb> <td><b>$text{'karma_header'}</b></td> </tr>\n";
15 print "<tr $cb> <td><table width=100%>\n";
16
17 $rate = &find("rate", $io);
18 print "<tr> <td><b>$text{'karma_rate'}</b></td>\n";
19 printf "<td><input type=radio name=rate_def value=1 %s> %s\n",
20         $rate ? "" : "checked", $text{'karma_rate_def'};
21 printf "<input type=radio name=rate_def value=0 %s>\n",
22         $rate ? "checked" : "";
23 print &text('karma_rate_sel',
24             "<input name=points size=5 value='$rate->[1]->[0]->{'points'}'>",
25             "<input name=time size=5 value='$rate->[1]->[0]->{'time'}'>"),
26            "</td> </tr>\n";
27
28 $mode = $karma ? 3 : -1;
29 for($i=0; $i<@karma_presets; $i++) {
30         local $kp = $karma_presets[$i];
31         local $different = 0;
32         foreach $k (keys %$kp) {
33                 local $v = &find_value($k, $karma);
34                 if ($v != $kp->{$k}) {
35                         $different++;
36                         last;
37                         }
38                 }
39         if (!$different) {
40                 $mode = $i;
41                 last;
42                 }
43         }
44
45 print "<tr> <td valign=top><b>$text{'karma_mode'}</b></td>\n";
46 print "<td><select name=mode>\n";
47 printf "<option value=-1 %s> %s\n",
48         $mode == -1 ? "selected" : "", $text{'karma_none'};
49 printf "<option value=0 %s> %s\n",
50         $mode == 0 ? "selected" : "", $text{'karma_low'};
51 printf "<option value=1 %s> %s\n",
52         $mode == 1 ? "selected" : "", $text{'karma_medium'};
53 printf "<option value=2 %s> %s\n",
54         $mode == 2 ? "selected" : "", $text{'karma_high'};
55 printf "<option value=3 %s> %s\n",
56         $mode == 3 ? "selected" : "", $text{'karma_sel'};
57 print "</select><br><table width=100%>\n";
58
59 print "<tr> <td valign=top><b>$text{'karma_heartbeat'}</b></td>\n";
60 printf "<td><input name=heartbeat size=6 value='%s'></td>\n",
61         &find_value("heartbeat", $karma);
62
63 print "<td><b>$text{'karma_init'}</b></td>\n";
64 printf "<td><input name=init size=6 value='%s'></td> </tr>\n",
65         &find_value("init", $karma);
66
67 print "<tr> <td><b>$text{'karma_max'}</b></td>\n";
68 printf "<td><input name=max size=6 value='%s'></td>\n",
69         &find_value("max", $karma);
70
71 print "<td><b>$text{'karma_dec'}</b></td>\n";
72 printf "<td><input name=dec size=6 value='%s'></td> </tr>\n",
73         &find_value("dec", $karma);
74
75 $p = &find_value("penalty", $karma);
76 print "<tr> <td><b>$text{'karma_penalty'}</b></td>\n";
77 printf "<td><input name=penalty size=6 value='%s'></td>\n",
78         defined($p) ? $p * -1 : undef;
79
80 print "<td><b>$text{'karma_restore'}</b></td>\n";
81 printf "<td><input name=restore size=6 value='%s'></td> </tr>\n",
82         &find_value("restore", $karma);
83
84 print "</table></td> </tr>\n";
85
86 print "</table></td></tr></table>\n";
87 print "<input type=submit value='$text{'save'}'></form>\n";
88
89 &ui_print_footer("", $text{'index_return'});
90