6 my ($self, $form) = @_;
7 $self->{'form'} = $form;
12 my ($self, $name) = @_;
13 $self->{'name'} = $name;
19 return $self->{'name'};
24 my ($self, $disabled) = @_;
25 $self->{'disabled'} = $disabled;
31 return $self->{'disabled'};
35 No validation is done by default
44 my ($self, $value) = @_;
45 $self->{'value'} = $value;
49 Returns the current value for this field as entered by the user, the value
50 set when the form is re-displayed due to an error, or the initial value.
55 my $in = $self->{'form'} ? $self->{'form'}->{'in'} : undef;
56 if ($in && (defined($in->{$self->{'name'}}) ||
57 defined($in->{"ui_exists_".$self->{'name'}}))) {
58 return $in->{$self->{'name'}};
60 elsif ($in && defined($in->{"ui_value_".$self->{'name'}})) {
61 return $in->{"ui_value_".$self->{'name'}};
64 return $self->{'value'};
68 =head2 set_disable_code(javascript)
69 Must be provided with a Javascript expression that will return true when this
70 input should be disabled. May refer to other fields, via the variable 'form'.
71 ie. form.mode.value = "0"
72 Will be called every time any field's value changes.
76 my ($self, $code) = @_;
77 $self->{'disablecode'} = $code;
83 return $self->{'disablecode'};
86 =head2 get_input_names()
87 Returns the actual names of all HTML elements that make up this input
92 return ( $self->{'name'} );
95 =head2 set_label(text)
96 Sets HTML to be displayed before this field
100 my ($self, $label) = @_;
101 $self->{'label'} = $label;
107 return $self->{'label'};
112 my ($self, $mandatory, $mandmesg) = @_;
113 $self->{'mandatory'} = $mandatory;
114 $self->{'mandmesg'} = $mandmesg if (defined($mandmesg));
120 return $self->{'mandatory'};
124 Returns a list of errors associated with this field
129 return $self->{'form'} ? $self->{'form'}->field_errors($self->get_name())