package BookPub::Import::Importer::KoboCredit;

use strict;

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

sub _headerIdentifier { ( rIsbn13 => 'eISBN' ) }

sub _fieldMap {
    my $self = shift;

    my $sheet = lc( $self->sheetname ) || return {};
    return {} if ( $sheet =~ /(invoice|summary)/i );

    die "Unrecognized tab name '" . $self->sheetname . "'" unless ( $sheet eq 'sales' || $sheet eq 'kobo' );

    my %fieldMap = (
        34 => {
            currencyCode         => 'P',
            conversionRate       => 'N',
            countryCode          => 'C',
            rState               => 'D',
            rPostalCode          => 'E',
            dateBegin            => 'A',
            rIsbn13              => 'G',
            rTitle               => 'I',
            rAuthor              => 'H',
            rAdjustments         => 'F',
            rListPrice           => 'J',
            rListPriceCurrency   => 'L',
            rRevenue             => 'O',
            rChannel             => 'B',
            rTransactionCategory => 'R',
        },
    );

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

sub _useIsSaleRec              { 1 }
sub _autoParseTitleAndSubtitle { 1 }
sub _dateFormat                { [ 'iso', 'excel', 'text', 'eur' ] }
sub priceType                  { 'rrp' }
sub purchaseType               { BookPub::DB::Item::Sale::kPurchaseTypePromotional }
sub productType                { BookPub::DB::Item::Sale::kProductTypeEBook }
sub units                      { 0 }

sub rRevenue {
    my $self = shift;

    my $revenue = $self->_getByFieldName('rRevenue');

    $revenue = abs($revenue) * -1;

    return $revenue;
}

1;
