#------------------------------------------------------------
# Copyright (C) 2006 RoyaltyShare, Inc.   All Rights Reserved
#------------------------------------------------------------
package RPS::Catalog::AlbumControlledCompContractList;

use strict;
use warnings;

use lib '/app/tools/rps/lib';
use RPS::Catalog::AlbumContractWithArtistContract;
use RPS::DB::Item::AlbumContract;

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

use Common::FormObject;
use base 'Common::FormObject';

sub _init {
    my ( $self, %args ) = @_;

    $self->SUPER::_init(%args);

    my $albumID = $args{albumID};
    assert($albumID);

    $self->{AlbumContract} = [];

    my $collection = RPS::DB::Item::AlbumContract->GetByAlbumIDThatHaveControlledComp($albumID);

    while ( $collection->hasNext() ) {
        my $obj = $collection->next();

        push @{ $self->{AlbumContract} }, RPS::Catalog::AlbumContractWithArtistContract->new( _dbItem => $obj );
    }
    return $self;
}

sub _listProperties {
    return { AlbumContract => 1 };
}

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

    return $self->{AlbumContract};
}

1;

