X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FController%2FRequirementSpecPredefinedText.pm;h=00c86b47471492175b6476bc717b9ab05a3ccf59;hb=0a2fb69e21af67fdc5d162294c08b1847c9aa021;hp=959a770f8c26c5dd4c8beeb9b9891873a1fa0ac9;hpb=bb3360db78c7563db3bf757289687e836385082f;p=kivitendo-erp.git diff --git a/SL/Controller/RequirementSpecPredefinedText.pm b/SL/Controller/RequirementSpecPredefinedText.pm index 959a770f8..00c86b474 100644 --- a/SL/Controller/RequirementSpecPredefinedText.pm +++ b/SL/Controller/RequirementSpecPredefinedText.pm @@ -4,6 +4,8 @@ use strict; use parent qw(SL::Controller::Base); +use List::MoreUtils qw(none); + use SL::DB::RequirementSpecPredefinedText; use SL::Helper::Flash; use SL::Locale::String; @@ -32,7 +34,7 @@ sub action_list { sub action_new { my ($self) = @_; - $self->{requirement_spec_predefined_text} = SL::DB::RequirementSpecPredefinedText->new; + $self->{requirement_spec_predefined_text} = SL::DB::RequirementSpecPredefinedText->new(useable_for_text_blocks => 1); $self->render('requirement_spec_predefined_text/form', title => t8('Create a new predefined text')); } @@ -95,6 +97,13 @@ sub create_or_update { my $params = delete($::form->{requirement_spec_predefined_text}) || { }; my $title = $is_new ? t8('Create a new predefined text') : t8('Edit predefined text'); + # Force presence of booleans for the useable_* flags. + my @useable_flags = qw(text_blocks sections); + $params->{"useable_for_${_}"} = !!$params->{"useable_for_${_}"} for @useable_flags; + + # Force usage for text blocks if none of the check boxes are marked. + $params->{useable_for_text_blocks} = 1 if none { $params->{"useable_for_${_}"} } @useable_flags; + $self->{requirement_spec_predefined_text}->assign_attributes(%{ $params }); my @errors = $self->{requirement_spec_predefined_text}->validate;