From aec8e8e0cf96a76442410ad22d1d6d1cf74b707b Mon Sep 17 00:00:00 2001 From: Colin Kuskie Date: Fri, 13 Jan 2006 17:34:47 +0000 Subject: [PATCH] added session variable to new, passes session when creating new form object --- lib/WebGUI/Form/DynamicField.pm | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/lib/WebGUI/Form/DynamicField.pm b/lib/WebGUI/Form/DynamicField.pm index f5e70d9ff..bbbc7b22e 100644 --- a/lib/WebGUI/Form/DynamicField.pm +++ b/lib/WebGUI/Form/DynamicField.pm @@ -97,6 +97,7 @@ array will be used. sub new { my $class = shift; + my $session = shift; my %raw = @_; my $param = \%raw; my $fieldType = ucfirst($param->{fieldType}); @@ -108,12 +109,12 @@ sub new { } # Return the appropriate field object. if ($fieldType eq "") { - $self->session->errorHandler->warn("Something is trying to create a dynamic field called ".$param->{name}.", but didn't pass in a field type."); + $session->errorHandler->warn("Something is trying to create a dynamic field called ".$param->{name}.", but didn't pass in a field type."); $fieldType = "Text"; } ##No infinite loops, please elsif ($fieldType eq 'DynamicField') { - $self->session->errorHandler->warn("Something is trying to create a DynamicField via DynamicField."); + $session->errorHandler->warn("Something is trying to create a DynamicField via DynamicField."); $fieldType = "Text"; } no strict 'refs'; @@ -121,10 +122,10 @@ sub new { my $load = "use ".$cmd; eval ($load); if ($@) { - $self->session->errorHandler->error("Couldn't compile form control: ".$fieldType.". Root cause: ".$@); + $session->errorHandler->error("Couldn't compile form control: ".$fieldType.". Root cause: ".$@); return undef; } - my $formObj = $cmd->new($param); + my $formObj = $cmd->new($session, $param); ##Fix up methods for List type forms and restore the size to all Forms *except* ##List type forms. Historically, dynamically created forms have always ##used the default size.