CGI-FormBuilder
view release on metacpan or search on metacpan
lib/CGI/FormBuilder/Field.pm view on Meta::CPAN
debug 2, "no cgi found, returning def_value";
# no CGI value, or value was forced, or not sticky
return $self->def_value;
}
# Handle "b:select" and "b:option"
sub tag_name {
my $self = shift;
$self->{tag_name} = shift if @_;
return $self->{tag_name} if $self->{tag_name};
# Try to guess
my($tag) = ref($self) =~ /^CGI::FormBuilder::Field::(.+)/;
puke "Can't resolve tag for untyped field '$self->{name}'"
unless $tag;
return $tag;
}
sub type {
local $^W = 0; # -w sucks
my $self = shift;
if (@_) {
lib/CGI/FormBuilder/Field.pm view on Meta::CPAN
# The $field->type method is called so often that it really slows
# things down. As such, we cache the type and use it *unless* the
# value has been updated manually (we assume one CGI instance).
# See value() for its deletion of this cache
return $self->{_cache}{type} if $self->{_cache}{type};
my $name = $self->{name};
my $type;
unless ($type = lc $self->{type}) {
#
# Unless the type has been set explicitly, we make a guess
# based on how many items there are to display, which is
# basically, how many options we have. Our 'jsclick' option
# is now changed down in the javascript section, fixing a bug
#
if ($self->{_form}->smartness) {
debug 1, "$name: input type not set, checking for options";
if (my $n = $self->options) {
debug 2, "$name: has options, so setting to select|radio|checkbox";
if ($n >= $self->selectnum) {
debug 2, "$name: has more than selectnum (", $self->selectnum,
( run in 0.958 second using v1.01-cache-2.11-cpan-748bfb374f4 )