-sub check_payment {
- my ($self, $entry) = @_;
-
- my $object = $entry->{object};
-
- # Check whether or not payment ID is valid.
- if ($object->payment_id && !$self->payment_terms_by->{id}->{ $object->payment_id }) {
- push @{ $entry->{errors} }, $::locale->text('Error: Invalid payment terms');
- return 0;
- }
-
- # Map name to ID if given.
- if (!$object->payment_id && $entry->{raw_data}->{payment}) {
- my $terms = $self->payment_terms_by->{description}->{ $entry->{raw_data}->{payment} };
-
- if (!$terms) {
- push @{ $entry->{errors} }, $::locale->text('Error: Invalid payment terms');
- return 0;
- }
-
- $object->payment_id($terms->id);
- }
-
- return 1;
-}
-