Implement RFE "Non Required Fields on User Registration". Associated upgrade.

Minor streamlining of profile field listing methods.

WebGUI::Operation::Profile::getRequiredProfileFields is now deprecated,
because it's specific enough to be not significantly more useful than
WebGUI::ProfileField::getRequiredFields, and because with this change
nothing in core uses it anymore.
This commit is contained in:
Drake 2006-11-22 23:50:00 +00:00
parent 2843dd195b
commit ca9d90c577
7 changed files with 106 additions and 43 deletions

View file

@ -175,10 +175,26 @@ sub createAccount {
$vars->{'create.form.header'} = WebGUI::Form::formHeader($self->session,{});
$vars->{'create.form.header'} .= WebGUI::Form::hidden($self->session,{"name"=>"op","value"=>"auth"});
$vars->{'create.form.header'} .= WebGUI::Form::hidden($self->session,{"name"=>"method","value"=>$method});
$vars->{'create.form.header'} .= WebGUI::Form::hidden($self->session,{"name"=>"method","value"=>$method});
#User Defined Options
$vars->{'create.form.profile'} = WebGUI::Operation::Profile::getRequiredProfileFields($self->session);
$vars->{'create.form.profile'} = [];
foreach my $field (@{WebGUI::ProfileField->getRegistrationFields($self->session)}) {
my ($id, $formField, $label) = ($field->getId, $field->formField, $field->getLabel);
my $required = $field->isRequired;
# Old-style field loop.
push @{$vars->{'create.form.profile'}},
+{ 'profile.formElement' => $formField,
'profile.formElement.label' => $label,
'profile.required' => $required };
# Individual field template vars.
my $prefix = 'create.form.profile.'.$field->getId.'.';
$vars->{$prefix.'formElement'} = $id;
$vars->{$prefix.'formElement.label'} = $label;
$vars->{$prefix.'required'} = $required;
}
$vars->{'create.form.submit'} = WebGUI::Form::submit($self->session,{});
$vars->{'create.form.footer'} = WebGUI::Form::formFooter($self->session,);