Make handling of invalid values for "possible values" for list-based profile

fields slightly more robust.  It's still not ideal---the error goes to the
WebGUI error log, but the user should be given some indication that the
profile field is broken.
This commit is contained in:
Drake 2006-11-22 15:52:32 +00:00
parent 0903b1011e
commit c10b5b4fec
2 changed files with 8 additions and 1 deletions

View file

@ -131,7 +131,13 @@ sub _formProperties {
$properties->{label} = $self->getLabel unless $properties->{label};
$properties->{fieldType} = $self->get("fieldType");
$properties->{name} = $self->getId;
my $values = WebGUI::Operation::Shared::secureEval($self->session,$self->get("possibleValues")) || {};
my $values = WebGUI::Operation::Shared::secureEval($self->session,$self->get("possibleValues"));
unless (ref $values eq 'HASH') {
if ($self->get('possibleValues') =~ /\S/) {
$self->session->errorHandler->warn("Could not get a hash out of possible values for profile field ".$self->getId);
}
$values = {};
}
my $orderedValues = {};
tie %{$orderedValues}, 'Tie::IxHash';
foreach my $ov (sort keys %{$values}) {