#------------------------------------------------------------
# Copyright (C) 2006 RoyaltyShare, Inc.   All Rights Reserved
# $Id$
#------------------------------------------------------------
package RPS::Product::Command::ShowDigital;

use lib '/app/tools/common/lib';
use RSApache::Response::JSON;
use RSApache::Response::XSLT;

use lib '/app/tools/rps/lib';
use RPS::Product::ProductDigitalWithServices;
use RPS::DB::Item::ProductDigital;

use RPS::Command;
use RPS::CommandLog;
use base 'RSApache::Command::XMLCommand';

use Data::Dumper;

sub cmd  { return "show_digital"; }
sub area { return "product"; }
sub app  { return "rps"; }

use constant kTemplate => '/app/tools/rps/templates/product/ajax_digital.xsl';

sub execute
{
	my ($self) = @_;

	my $response = $self->SUPER::execute();
	return $response if $response;

	my $albumID = $self->getParam("AlbumID");

    my $justCountFlag = $self->getParam('count');

    if ($justCountFlag)
    {
        my $count = RPS::Product::ProductDigital::GetDistributedServiceCount($albumID);
        $response = RSApache::Response::JSON->new($count);
    }
    else {
        my $albums  = RPS::DB::Item::ProductDigital->GetByAlbumID( $albumID );

    	my $product = $albums->next() if( $albums );

    	$self->{xml}->{Form}->{ProductDigital} = RPS::Product::ProductDigitalWithServices->new(_dbItem => $product);
    	$response = RSApache::Response::XSLT->new($self->{xml}, kTemplate);
    }

	return $response;
}


1;
