X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FDB%2FPriceRule.pm;h=1c43d4a966ce96acd12006392f92c73324657c19;hb=6822ef0577c60a43d5daf6041936ac962d78bb0b;hp=3deac758f2caaf910e85ecf61e133d6fac873f44;hpb=bc8c26f36837b8f7e7ded304cdf475b479999277;p=kivitendo-erp.git diff --git a/SL/DB/PriceRule.pm b/SL/DB/PriceRule.pm index 3deac758f..1c43d4a96 100644 --- a/SL/DB/PriceRule.pm +++ b/SL/DB/PriceRule.pm @@ -7,7 +7,6 @@ use strict; use SL::DB::MetaSetup::PriceRule; use SL::DB::Manager::PriceRule; -use Rose::DB::Object::Helpers qw(clone_and_reset); use SL::Locale::String qw(t8); __PACKAGE__->meta->add_relationship( @@ -48,7 +47,7 @@ sub price_type { my ($self, $value) = @_; if (@_ > 1) { - my $number = $self->price || $self->discount; + my $number = $self->price || $self->discount || $self->reduction; if ($value == SL::DB::Manager::PriceRule::PRICE_NEW()) { $self->price($number); } elsif ($value == SL::DB::Manager::PriceRule::PRICE_REDUCED_MASTER_DATA()) { @@ -96,7 +95,8 @@ sub validate { my @errors; push @errors, $::locale->text('The name must not be empty.') if !$self->name; push @errors, $::locale->text('Price or discount must not be zero.') if !$self->price && !$self->discount && !$self->reduction; - push @errors, $::locale->text('Pirce rules must have at least one rule.') if !@{[ $self->items ]}; + push @errors, $::locale->text('Price rules must have at least one rule.') if !@{[ $self->items ]}; + push @errors, $_->validate for $self->items; return @errors; }