Skip to content
Snippets Groups Projects
Commit f1922960 authored by Birte Kristina Friesel's avatar Birte Kristina Friesel
Browse files

Detect ambiguous input errors

parent 7a825f4e
No related branches found
No related tags found
No related merge requests found
git HEAD
* Detect ambiguous input errors (available via errstr)
Travel::Status::DE::DeutscheBahn 1.00 - Sun Sep 04 2011
[db-ris]
......
......@@ -73,6 +73,8 @@ sub new {
suppress_warnings => 1,
);
$ref->check_input_error();
return $ref;
}
......@@ -96,6 +98,31 @@ sub new_from_html {
return bless( $ref, $obj );
}
sub check_input_error {
my ($self) = @_;
my $xp_errdiv = XML::LibXML::XPathExpression->new(
'//div[@class = "errormsg leftMargin"]');
my $xp_opts
= XML::LibXML::XPathExpression->new('//select[@class = "error"]');
my $xp_values = XML::LibXML::XPathExpression->new('./option');
my $e_errdiv = ( $self->{tree}->findnodes($xp_errdiv) )[0];
my $e_opts = ( $self->{tree}->findnodes($xp_opts) )[0];
if ($e_errdiv) {
$self->{errstr} = $e_errdiv->textContent;
if ($e_opts) {
my @nodes = ( $e_opts->findnodes($xp_values) );
$self->{errstr}
.= join( q{}, map { "\n" . $_->textContent } @nodes );
}
}
return;
}
sub errstr {
my ($self) = @_;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment