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

use Carp;

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

use lib '/app/tools/rps/lib';
use RPS::DB::Item::TrackContract;
use RPS::DB::Item::TrackContractAdvance;
use RPS::ArtistContract::ArtistContract;
use RPS::Track::TrackContractAdvance;
use RPS::Track::TrackContract;
use RPS::Track::TrackSimple;
use RPS::DB::Item::Album;
use RPS::DB::Item::Expense;
use RPS::DB::Item::Track;

use Common::FormObject;
use base 'RPS::Track::TrackContract';

sub _initProperties {
    my ( $self, $props ) = @_;

    $self->SUPER::_initProperties($props);
    $self->{Contract} = RPS::ArtistContract::ArtistContract->new(
        artistContractID => $props->{artist_contract_id},
        loadSubs => 0,
        readOnly => 1
    );

    $self->{CanDelete} = Common::FormObject::Scalar::Boolean->new(
        value    => $self->_canDelete(),
        readOnly => 1,
    );

    $self->{HasPendingExpenses} = Common::FormObject::Scalar::Boolean->new(
        value    => $self->_hasPendingExpenses(),    #  initially assigned when called by _canDelete
        readOnly => 1,
    );

}


1;