kivitendo/SL/DB/RequirementSpecStatus.pm @ 3defabe6
d17e1b9d | Moritz Bunkus | package SL::DB::RequirementSpecStatus;
|
||
use strict;
|
||||
6d75a1bc | Moritz Bunkus | use List::MoreUtils qw(none);
|
||
d17e1b9d | Moritz Bunkus | use SL::DB::MetaSetup::RequirementSpecStatus;
|
||
baac72df | Moritz Bunkus | use SL::DB::Manager::RequirementSpecStatus;
|
||
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(planning running done);
|
||
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;
|