diff --git a/docs/changelog/7.x.x.txt b/docs/changelog/7.x.x.txt index b0fbc1d16..042d6f34e 100644 --- a/docs/changelog/7.x.x.txt +++ b/docs/changelog/7.x.x.txt @@ -1,5 +1,6 @@ 7.5.11 - fix: template variable isUncommitted is not documented in the help + - Cleaned the pollution from the forms system. - fix: Event is no longer editable by anyone who can add events - fixed: Package search is slow for large websites - fixed: rich editor image picker displays incorrectly in IE diff --git a/lib/WebGUI/Asset/File.pm b/lib/WebGUI/Asset/File.pm index 01aa074fd..cdc473db2 100644 --- a/lib/WebGUI/Asset/File.pm +++ b/lib/WebGUI/Asset/File.pm @@ -270,7 +270,7 @@ Get the storage location created by the form post. sub getStorageFromPost { my $self = shift; my $storageId = shift; - my $fileStorageId = WebGUI::Form::File->new($self->session, {name => 'newFile', value=>$storageId })->getValueFromPost; + my $fileStorageId = WebGUI::Form::File->new($self->session, {name => 'newFile', value=>$storageId })->getValue; $self->session->errorHandler->info( "File Storage Id: $fileStorageId" ); return $self->getStorageClass->get($self->session, $fileStorageId); } diff --git a/lib/WebGUI/Asset/FilePile.pm b/lib/WebGUI/Asset/FilePile.pm index d7fe31438..9d38b5f7e 100644 --- a/lib/WebGUI/Asset/FilePile.pm +++ b/lib/WebGUI/Asset/FilePile.pm @@ -143,7 +143,7 @@ sub editSave { my $self = shift; ##This is a hack. File uploads should go through the WebGUI::Form::File API - my $tempFileStorageId = WebGUI::Form::File->new($self->session,{name => 'file'})->getValueFromPost; + my $tempFileStorageId = WebGUI::Form::File->new($self->session,{name => 'file'})->getValue; my $tempStorage = WebGUI::Storage::Image->get($self->session, $tempFileStorageId); foreach my $filename (@{$tempStorage->getFiles}) { diff --git a/lib/WebGUI/Asset/Wobject/Matrix.pm b/lib/WebGUI/Asset/Wobject/Matrix.pm index 591e54540..e298b3e40 100644 --- a/lib/WebGUI/Asset/Wobject/Matrix.pm +++ b/lib/WebGUI/Asset/Wobject/Matrix.pm @@ -707,7 +707,7 @@ sub www_editListingSave { versionNumber=>$self->session->form->process("versionNumber") ); - my $storageId = WebGUI::Form::Image->new($self->session,{name => 'screenshot', value => $listing->{storageId}})->getValueFromPost; + my $storageId = WebGUI::Form::Image->new($self->session,{name => 'screenshot', value => $listing->{storageId}})->getValue; if ($storageId) { $data{storageId} = $storageId; $data{filename} = WebGUI::Storage->get($self->session, $storageId)->getFiles->[0]; diff --git a/lib/WebGUI/Asset/Wobject/Thingy.pm b/lib/WebGUI/Asset/Wobject/Thingy.pm index 3ba7be56d..4385feaf2 100644 --- a/lib/WebGUI/Asset/Wobject/Thingy.pm +++ b/lib/WebGUI/Asset/Wobject/Thingy.pm @@ -20,7 +20,6 @@ use WebGUI::Text; use WebGUI::Form::File; use base 'WebGUI::Asset::Wobject'; -our $VERSION = "1.0.0"; #------------------------------------------------------------------- @@ -342,7 +341,7 @@ sub _getDbDataType { else{ $formClass = 'WebGUI::Form::' . ucfirst $fieldType; my $formElement = eval { WebGUI::Pluggable::instanciate($formClass, "new", [$session]) }; - $dbDataType = $formElement->get("dbDataType"); + $dbDataType = $formElement->getDatabaseFieldType; } return $dbDataType; @@ -375,14 +374,7 @@ sub getEditFieldForm { "required" => $i18n->get('fieldstatus required label'), ); - foreach my $fieldType ( sort @{ WebGUI::Form::FieldType->new($session)->get("types") }) { - my $form = eval { WebGUI::Pluggable::instanciate("WebGUI::Form::".$fieldType, "new", [$session]) }; - if ($@) { - $session->errorHandler->error($@); - next; - } - $fieldTypes{$fieldType} = $form->getName($self->session); - } + %fieldTypes = %{WebGUI::Form::FieldType->new($session)->getTypes}; %fieldTypes = WebGUI::Utility::sortHash(%fieldTypes); $things = $self->session->db->read('select thingId, Thingy_things.label, count(*) from Thingy_things ' @@ -589,7 +581,7 @@ sub getFieldValue { } } elsif ($field->{fieldType} eq "file") { - $processedValue = WebGUI::Form::File->new($self->session,{value=>$value})->displayValue(); + $processedValue = WebGUI::Form::File->new($self->session,{value=>$value})->getValueAsHtml(); } return $processedValue; @@ -1159,14 +1151,13 @@ sub www_editThing { =>'text/css', rel=>'stylesheet'}); $tab = $tabForm->getTab('fields'); - - foreach my $fieldType ( sort @{ WebGUI::Form::FieldType->new($session)->get("types") }) { + foreach my $fieldType ( keys %{ WebGUI::Form::FieldType->new($session)->getTypes }) { my $form = eval { WebGUI::Pluggable::instanciate("WebGUI::Form::".$fieldType, "new", [$session]) }; - my $definition = $form->definition($session); if ($@) { $session->errorHandler->error($@); next; } + my $definition = $form->definition($session); if ($form->get("height")){ push(@hasHeightWidth, $fieldType); } @@ -1176,10 +1167,9 @@ sub www_editThing { if (defined $definition->[0]->{vertical}->{defaultValue}){ push(@hasVertical, $fieldType); } - if ($form->get("optionsSettable")){ + if ($form->areOptionsSettable){ push(@hasValues, $fieldType); } - } $tab->raw("