diff --git a/lib/WebGUI/Operation/Account.pm b/lib/WebGUI/Operation/Account.pm index e91aed676..87b1aef4e 100644 --- a/lib/WebGUI/Operation/Account.pm +++ b/lib/WebGUI/Operation/Account.pm @@ -86,13 +86,14 @@ sub _logLogin { sub _validateProfileData { my (%data, $error, $a, %field); tie %field, 'Tie::CPHash'; - $a = WebGUI::SQL->read("select * from userProfileField"); + $a = WebGUI::SQL->read("select dataType,fieldName,fieldLabel,required from userProfileField"); while (%field = $a->hash) { - if ($field{fieldType} eq "date") { - $session{form}{$field{fieldName}} = setToEpoch($session{form}{$field{fieldName}}); + if ($field{dataType} eq "date") { + $data{$field{fieldName}} = WebGUI::DateTime::setToEpoch($session{form}{$field{fieldName}}); + } elsif (exists $session{form}{$field{fieldName}}) { + $data{$field{fieldName}} = $session{form}{$field{fieldName}}; } - $data{$field{fieldName}} = $session{form}{$field{fieldName}} if (exists $session{form}{$field{fieldName}}); - if ($field{required} && $session{form}{$field{fieldName}} eq "") { + if ($field{required} && $data{$field{fieldName}} eq "") { $error .= '
  • '; $error .= eval $field{fieldLabel}; $error .= ' '.WebGUI::International::get(451); diff --git a/lib/WebGUI/Operation/User.pm b/lib/WebGUI/Operation/User.pm index 1c76676e4..d14a4ca49 100644 --- a/lib/WebGUI/Operation/User.pm +++ b/lib/WebGUI/Operation/User.pm @@ -393,7 +393,7 @@ sub www_editUserProfileSave { $u = WebGUI::User->new($session{form}{uid}); $a = WebGUI::SQL->read("select * from userProfileField"); while (%field = $a->hash) { - if ($field{fieldType} eq "date") { + if ($field{dataType} eq "date") { $session{form}{$field{fieldName}} = setToEpoch($session{form}{$field{fieldName}}); } $u->profileField($field{fieldName},$session{form}{$field{fieldName}}) if (exists $session{form}{$field{fieldName}});