Entangle the required and editable properties of Profile fields.

Add tests.  Update i18n for required property hover help.
Upgrade script to set editable=1 on all required fields.
fixes #10781
This commit is contained in:
Colin Kuskie 2009-08-17 19:28:04 +00:00
parent 5baf75bb19
commit 0762ce1730
5 changed files with 53 additions and 11 deletions

View file

@ -1,4 +1,5 @@
7.7.18
- fixed #10781: User Profile Editable/Required gotcha
- fixed #10786: Matrix navigation: search screen to view screen
- fixed #10766: Matrix search: search dropdowns do not match what is displayed when search form opens.
- fixed #10783: Inbox Copy Sender broken

View file

@ -33,9 +33,9 @@ my $session = start(); # this line required
# upgrade functions go here
addSmsGatewaySubjectSetting($session);
addInboxNotificationsSubjectSetting($session);
profileFieldRequiredEditable($session);
finish($session); # this line required
#----------------------------------------------------------------------------
# Describe what our function does
#sub exampleFunction {
@ -45,6 +45,18 @@ finish($session); # this line required
# print "DONE!\n" unless $quiet;
#}
sub profileFieldRequiredEditable {
my $session = shift;
print "\tTurn on the editable bit for all Profile Fields which are required... " unless $quiet;
FIELD: foreach my $field (@{ WebGUI::ProfileField->getRequiredFields($session) } ) {
my $properties = $field->get();
next FIELD unless !$properties->{editable};
$properties->{editable} = 1;
$field->set($properties);
}
print "DONE!\n" unless $quiet;
}
sub addSmsGatewaySubjectSetting {
my $session = shift;
print "\tAdding smsGatewaySubject setting... " unless $quiet;