diff --git a/docs/changelog/7.x.x.txt b/docs/changelog/7.x.x.txt index 3a6a2588b..8e563f543 100644 --- a/docs/changelog/7.x.x.txt +++ b/docs/changelog/7.x.x.txt @@ -44,6 +44,8 @@ - Added User Invitations (Funded by United Knowledge) - fix: Calendar Event import ignores time zone http://www.webgui.org/bugs/tracker/calendar-feed-shows-wrong-time + - fix: Image profile fields edit issues + http://www.webgui.org/bugs/tracker/user-profile-images-disappear-after-updat 7.3.19 diff --git a/lib/WebGUI/Operation/User.pm b/lib/WebGUI/Operation/User.pm index 3a7b88be7..fbd5d5ac7 100644 --- a/lib/WebGUI/Operation/User.pm +++ b/lib/WebGUI/Operation/User.pm @@ -451,7 +451,7 @@ sub www_editUserSave { # Loop through all profile fields, and update them with new values. foreach my $field (@{WebGUI::ProfileField->getFields($session)}) { next if $field->getId =~ /contentPositions/; - $u->profileField($field->getId,$field->formProcess); + $u->profileField($field->getId,$field->formProcess($u)); } # Update group assignements diff --git a/lib/WebGUI/ProfileField.pm b/lib/WebGUI/ProfileField.pm index 5096fde69..499e81553 100644 --- a/lib/WebGUI/ProfileField.pm +++ b/lib/WebGUI/ProfileField.pm @@ -255,7 +255,9 @@ Returns the value retrieved from a form post. sub formProcess { my $self = shift; - my $result = $self->session->form->process($self->getId,$self->get("fieldType"),WebGUI::Operation::Shared::secureEval($self->session,$self->get("dataDefault")), $self->_formProperties); + my $u = shift || $self->session->user; + my $properties = $self->_formProperties({value => $u->profileField($self->getId)}); + my $result = $self->session->form->process($self->getId,$self->get("fieldType"),WebGUI::Operation::Shared::secureEval($self->session,$self->get("dataDefault")), $properties); if (ref $result eq "ARRAY") { my @results = @$result; for (my $count=0;$count