=head1 check_rufnummern

Überprüfen und ggf. korrigieren der Syntax mehrerer Rufnummern
mittels check_rufnummer

=head2 Argumente

=over 4

=item $rufnummern

Rufnummer als String mittels | getrennt

=item $prefix (optional)

Präfix, das eine Rufnummer haben darf, als regulärer Ausdruck,
z. B. C<[E<lt>E<gt>]> für ISDN-Nummern

=back

=head2 Ergebnis

Die Rufnummern im korrekten Format, getrennt mittels | ansonsten ein I<problem>.

=cut

use utf8;
use strict;
use warnings; no warnings 'redefine';
use Fehler qw(problem);
use Loader qw(check_rufnummer);

sub check_rufnummern($;$) {
    my ( $nrn, $prefix ) = @_;
    my @rufnummern = split /\|/, $nrn;

    for (@rufnummern) {
        my $p = '';
        s/^($prefix)// and $p = $1 if defined $prefix;
        defined( my $korrigiert = check_rufnummer($_) ) or return problem(<<_);
"$_" ist keine syntaktisch korrekte Rufnummer;
bitte Format "+LAeNDERCODE VORWAHL RUFNUMMER DURCHWAHL" einhalten,
also z. B. "+49 911 9352 112"!
_
        $_ = $p . $korrigiert;
    }

    return join '|', @rufnummern;
}

1;
