package BookPub::Import::Importer::CSUFullerton::v2;

use strict;
use warnings;

use lib '/app/tools/bookpub/lib';
use Date::Calc qw(Days_in_Month);

use parent 'BookPub::Import::Importer::CSUFullerton::v1';


sub _fieldMap {
    {
        rIsbn13          => 'G',
        rImprint         => 'H',
        rClientProductID => 'F',
        serviceProductID => 'E',
        rUnits           => 'B',
        rPurchasePrice   => 'C',
        rRevenue         => 'D',
    };
}

sub _unverifiedFieldMap { }

sub _headerIdentifier { rIsbn13 => 'VBID' }

sub dateBegin {
    my $self = shift;

    if ( $self->filename =~ /(\d{1,2}).(\d{1,2}).(\d{4})-\d{1,2}.\d{1,2}.\d{4}\.\w+$/ ) {
        return sprintf "%04d-%02d-%02d", $3, $1, $2;
    }

    $self->fail("Can't determine dateBegin from file name.");
}

sub dateEnd {
    my $self = shift;

    if ( $self->filename =~ /\d{1,2}.\d{1,2}.\d{4}-(\d{1,2}).(\d{1,2}).(\d{4})\.\w+$/ ) {
        return sprintf "%04d-%02d-%02d", $3, $1, $2;
    }

    $self->fail("Can't determine dateEnd from file name.");
}

sub rUnitPrice {
    my $self = shift;

    if ( $self->rRevenue && $self->rUnits ) {
        return $self->rRevenue / $self->rUnits;
    }

    return 0;
}


1;