package BookPub::RDAS::Parser::ProductPrice::Borders;

use lib '/app/tools/rdas/lib';
use base 'RDAS::Parser::TreeBuilder';

use lib '/app/tools/bookpub/lib';
use base 'BookPub::RDAS::Parser::ProductPrice';

sub _includesPhysicalProducts { 1 }

sub _fieldConfig {
    {
        ProductPrice => {
            tag   => 'div',
            class => 'offerPrice.*',

            filter => sub {
                my $tmp = shift;
                $tmp =~ s/\$(\d+\.\d+).*/$1/ if ($tmp);
                return $tmp;
            },
        },

        Available => {
            tag   => 'div',
            class => 'offerPrice.*',
        },

        Title => {
            tag   => 'h2',
            class => 'titleheader'
        },

        AltTitle => {
            tag   => 'h1',
            class => 'titleheader'
        },

        Author => {
            tag   => 'div',
            class => 'enhanced-title'
        },

        AltAuthor => {
            tag   => 'div',
            class => 'authors'
        },

        Publisher => {
            tag     => 'div',
            content => 'Publisher:.*',

            filter => sub {
                my $res = shift;
                $res =~ s/^Publisher:[^\w]+//;
                return $res;
            }
        },

        ISBN13 => {
            tag     => 'div',
            content => 'ISBN13:.*',

            filter => sub {
                my $res = shift;
                $res =~ s/^ISBN13:\s+//;
                return $res;
            }
        },

        ISBN => {
            tag     => 'div',
            content => 'ISBN:.*',

            filter => sub {
                my $res = shift;
                $res =~ s/^ISBN:\s+//;
                return $res;
            }
        },

        CoverURL => {
            tag       => 'div',
            class     => 'tdp-body',
            container => 'RDAS::Parser::Item::ImageSource'
        },

    };
}

sub Title {
    my $self  = shift;
    my $title = $self->SUPER::Title();
    return $title ? $title : $self->AltTitle();
}

sub Author {
    my $self  = shift;
    my $title = $self->SUPER::Author();
    return $author ? $author : $self->AltAuthor();
}

1;
