Handle hostnames with upper-case letters
[webmin.git] / Webmin / Checkbox.pm
1 package Webmin::Checkbox;
2 use Webmin::Input;
3 use WebminCore;
4 @ISA = ( "Webmin::Input" );
5
6 =head2 new Webmin::Checkbox(name, return, label, checked, [disabled])
7 Create a single checkbox field
8 =cut
9 sub new
10 {
11 if (defined(&Webmin::Theme::Checkbox::new)) {
12         return new Webmin::Theme::Checkbox(@_[1..$#_]);
13         }
14 my ($self, $name, $return, $label, $checked, $disabled) = @_;
15 $self = { };
16 bless($self);
17 $self->set_name($name);
18 $self->set_return($return);
19 $self->set_label($label);
20 $self->set_value($checked);
21 $self->set_disabled($disabled);
22 return $self;
23 }
24
25 =head2 html()
26 Returns the HTML for this single checkbox
27 =cut
28 sub html
29 {
30 my ($self) = @_;
31 my $dis = $self->{'form'}->get_changefunc($self);
32 return &ui_checkbox($self->get_name(), $self->get_return(),
33                           $self->get_label(), $self->get_value(),
34                           $dis ? "onClick='$dis'" : undef,
35                           $self->get_disabled()).
36        &ui_hidden("ui_exists_".$self->get_name(), 1);
37 }
38
39 sub set_return
40 {
41 my ($self, $return) = @_;
42 $self->{'return'} = $return;
43 }
44
45 sub set_label
46 {
47 my ($self, $label) = @_;
48 $self->{'label'} = $label;
49 }
50
51 sub get_return
52 {
53 my ($self) = @_;
54 return $self->{'return'};
55 }
56
57 sub get_label
58 {
59 my ($self) = @_;
60 return $self->{'label'};
61 }
62
63 1;
64