package BookPub::Import::Importer::Verba;

use strict;

use lib '/app/tools/bookpub/lib';
use base 'BookPub::Import::Importer';

use Date::Calc qw( Add_Delta_YM );

# map version num to the field order
sub _fieldMap {
    my $self = shift;

    my %fieldMap = (
        1 => {
            rAuthor    => 'F',
            rTitle     => 'G',
            rIsbn13    => 'E',
            rReturns   => 'I',
            rSales     => 'H',
            rUnits     => 'J',
            rUnitPrice => 'K',
            rRevenue   => 'L',
        },
    );

    return $fieldMap{ $self->_version() };
}

sub _headerIdentifier { ( rIsbn13 => 'Billing ISBN' ) }
sub _useIsSaleRec { 1 }
sub _autoParseTitleAndSubtitle { 1 }

sub currencyCode       { 'USD' }
sub rListPriceCurrency { 'USD' }
sub countryCode        { 'US' }
sub productType        { BookPub::DB::Item::Sale::kProductTypeEBook }
sub purchaseType       { BookPub::DB::Item::Sale::kPurchaseTypeStream }
sub priceType          { 'rrp' }

sub _getDateBegin {
    my $self = shift;

    my $filename = $self->filename();

    if ( $filename =~ /(\d{4}-\d{2}-\d{2})/ ) {
        return $1;
    } else {
        $self->fail("Can't determine date from filename: $filename");
    }
}

sub _getDateEnd {
    my $self = shift;
    return $self->_getDateBegin();
}

sub rInstitution {
    my $self = shift;

    my $filename = $self->filename();

    if ( $filename =~ /^(missouri|umkc|umsl)/ ) {
        return $1;
    } else {
        $self->fail("Can't determine institution from filename: $filename");
    }
}

###
1;    #
###
