kivitendo/SL/DB/RequirementSpecAcceptanceStatus.pm @ 4b1666b7
d17e1b9d | Moritz Bunkus | package SL::DB::RequirementSpecAcceptanceStatus;
|
||
use strict;
|
||||
6d75a1bc | Moritz Bunkus | use List::MoreUtils qw(none);
|
||
d17e1b9d | Moritz Bunkus | use SL::DB::MetaSetup::RequirementSpecAcceptanceStatus;
|
||
baac72df | Moritz Bunkus | use SL::DB::Manager::RequirementSpecAcceptanceStatus;
|
||
d17e1b9d | Moritz Bunkus | use SL::DB::Helper::ActsAsList;
|
||
use SL::Locale::String;
|
||||
1561b7f3 | Moritz Bunkus | __PACKAGE__->meta->initialize;
|
||
6d75a1bc | Moritz Bunkus | our @valid_names = qw(accepted accepted_with_defects accepted_with_defects_to_be_fixed not_accepted);
|
||
d17e1b9d | Moritz Bunkus | sub validate {
|
||
my ($self) = @_;
|
||||
my @errors;
|
||||
6d75a1bc | Moritz Bunkus | push @errors, t8('The name is missing.') if !$self->name;
|
||
push @errors, t8('The name and description are not unique.') if $self->get_first_conflicting('name', 'description');
|
||||
push @errors, t8('The name is invalid.') if none { $_ eq $self->name } @valid_names;
|
||||
push @errors, t8('The description is missing.') if !$self->description;
|
||||
d17e1b9d | Moritz Bunkus | |||
return @errors;
|
||||
}
|
||||
1;
|