diff --git a/docs/changelog/6.x.x.txt b/docs/changelog/6.x.x.txt index 82ae64f21..3482646bf 100644 --- a/docs/changelog/6.x.x.txt +++ b/docs/changelog/6.x.x.txt @@ -1,5 +1,12 @@ 6.3.0 - Added a new, more user-friendly administrative console. + - SQL Report now supports multiple queries. (Thanks to Brunswick New + Technologies for funding this development.) + - Removed the old rich editors and replaced them with Tiny MCE. + - Integrated Tiny MCE with image chooser. (Thanks to the US Dept. of State + for funding portions of this development.) + - Added a new page link chooser to the rich editor. (Thanks to the US Dept. + of State for funding portions of this development.) - Removed the admin style settings since their use has been replaced by the admin console. - bugfix [ 1045114 ] Columns randomly ordered in SQLReport (Len Kranendonk , @@ -22,6 +29,8 @@ - bugfix [ 1022287 ] WYSIWYG-Editor Add new web link - bugfix [ 1055153 ] Turn Admin ON with SSL and IE. - Fixed a redirect loop problem. + - Fixed a user profile vulnerability. + - Fixed a sequence ordering problem with the USS. 6.2.8 diff --git a/lib/WebGUI/Operation/Profile.pm b/lib/WebGUI/Operation/Profile.pm index cf069190b..63b2d3b3f 100644 --- a/lib/WebGUI/Operation/Profile.pm +++ b/lib/WebGUI/Operation/Profile.pm @@ -17,6 +17,7 @@ use WebGUI::DateTime; use WebGUI::ErrorHandler; use WebGUI::FormProcessor; use WebGUI::Grouping; +use WebGUI::HTML; use WebGUI::HTMLForm; use WebGUI::International; use WebGUI::Macro; @@ -206,7 +207,7 @@ sub www_editProfileSave { $u = WebGUI::User->new($session{user}{userId}); foreach $fieldName (keys %{$profile}) { - $u->profileField($fieldName,${$profile}{$fieldName}); + $u->profileField($fieldName,WebGUI::HTML::filter(${$profile}{$fieldName},"javascript")); } return WebGUI::Operation::Auth::www_displayAccount(); } diff --git a/lib/WebGUI/Wobject/USS.pm b/lib/WebGUI/Wobject/USS.pm index f9e394076..db150e0a7 100644 --- a/lib/WebGUI/Wobject/USS.pm +++ b/lib/WebGUI/Wobject/USS.pm @@ -60,6 +60,13 @@ sub _xml_encode { return $_[0]; } +#------------------------------------------------------------------- +sub deleteAllCachedSubmissions { + my $self = shift; + my $cache = WebGUI::Cache->new("USS_submission_"); + $cache->deleteByRegex(qr/USS_submission_/); +} + #------------------------------------------------------------------- sub deleteCachedSubmission { my $self = shift; @@ -436,6 +443,12 @@ sub www_edit { ); } +#------------------------------------------------------------------- +sub www_editSave { + $_[0]->deleteAllCachedSubmissions; + $_[0]->SUPER::www_editSave() +} + #------------------------------------------------------------------- sub www_editSubmission { @@ -709,6 +722,7 @@ sub www_editSubmissionSave { sub www_moveSubmissionDown { return WebGUI::Privilege::insufficient() unless ($_[0]->canEdit); $_[0]->moveCollateralDown("USS_submission","USS_submissionId",$session{form}{sid}, "USS_id", $_[0]->get("USS_id")); + $_[0]->deleteAllCachedSubmissions; return ""; } @@ -716,6 +730,7 @@ sub www_moveSubmissionDown { sub www_moveSubmissionUp { return WebGUI::Privilege::insufficient() unless ($_[0]->canEdit); $_[0]->moveCollateralUp("USS_submission","USS_submissionId",$session{form}{sid}, "USS_id", $_[0]->get("USS_id")); + $_[0]->deleteAllCachedSubmissions; return ""; }