#------------------------------------------------------------
# Copyright (C) 2006 RoyaltyShare, Inc.   All Rights Reserved
#------------------------------------------------------------
package RPS::Report::LicenseOverage;
use strict;
use warnings;

use lib '/app/tools/common/lib';
use Common::FormObject;
use Common::Assert;

use lib '/app/tools/rps/lib';
use RPS::DB::Item::ReportQueries;
use RPS::DB::Item::ReportQueries::LicenseOverage;

use base 'RPS::Report';

sub _baseXMLName { 'Track' }

sub _getDBItem() {
    my $self = shift;
    return RPS::DB::Item::ReportQueries::LicenseOverage->GetTracksWithLicenseOverage();
}

sub _reportColumns {
    my $self = shift;

    return (
        "LabelName"       => "Label",
        "CatalogNumber"   => "Catalog #",
        "AlbumTitle"      => "Album Title",
        "TrackArtistName" => "Artist",
        "TrackNumber"     => "Track #",
        "TrackTitle"      => "Track Name",
        "ProductType"     => "Product Type",
        "RegionName"      => "Region",
        "Overage"         => "Overage"
    );
}

sub _fillInHash {
    my ( $self, $track ) = @_;

    my %trackData;

    $trackData{LabelName}       = $track->label_name;
    $trackData{CatalogNumber}   = $track->catalog_number;
    $trackData{AlbumTitle}      = $track->album_title;
    $trackData{TrackTitle}      = $track->track_title;
    $trackData{TrackArtistName} = $track->artist_name;
    $trackData{TrackNumber}     = $track->track_order;
    $trackData{TrackID}         = $track->track_id;
    $trackData{AlbumID}         = $track->album_id;
    $trackData{ProductTypeID}   = $track->product_type_id;
    $trackData{RegionName}      = $track->region_name;
    $trackData{Overage}         = $track->overage;

    return \%trackData;
}

###
1;    #
###
