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

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

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

use base 'Common::XMLObject';

sub _baseXMLName { 'License' }

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

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",
        "Share"           => "Share %",
        "PublisherName"   => "Publisher",
        "Administrator"   => "Administrator",
        "Agency"          => "Agency"
    );
}

sub _fillInTrackHash {
    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{TrackLicenseID}  = $track->track_license_id;
    $trackData{ProductTypeID}   = $track->product_type_id;
    $trackData{Share}           = Common::Client::Current()->Locale()->formatNumber( $track->share );
    $trackData{PublisherName}   = $track->publisher;
    $trackData{Administrator}   = $track->administrator;
    $trackData{Agency}          = $track->agency;
    $trackData{PublisherID}     = $track->publisher_id;
    $trackData{AdminID}         = $track->admin_id;
    $trackData{AgentID}         = $track->agent_id;
    $trackData{RegionName}      = $track->region_name;

    return \%trackData;
}

###
1;    #
###
