Business-AU-Ledger

 view release on metacpan or  search on metacpan

lib/Business/AU/Ledger/View.pm  view on Meta::CPAN

package Business::AU::Ledger::View;

use Date::Simple;

use Business::AU::Ledger::View::Context;
use Business::AU::Ledger::View::Payment;
use Business::AU::Ledger::View::Receipt;
use Business::AU::Ledger::View::Reconciliation;

use Moose;

extends 'Business::AU::Ledger::View::Base';

has context        => (is => 'rw', isa => 'Business::AU::Ledger::View::Context');
has payment        => (is => 'rw', isa => 'Business::AU::Ledger::View::Payment');
has receipt        => (is => 'rw', isa => 'Business::AU::Ledger::View::Receipt');
has reconciliation => (is => 'rw', isa => 'Business::AU::Ledger::View::Reconciliation');
has web_page       => (is => 'rw', isa => 'HTML::Template');

use namespace::autoclean;

our $VERSION = '0.88';

# -----------------------------------------------

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

	$self -> context(Business::AU::Ledger::View::Context -> new
	(
	 config => $self -> config,
	 db => $self -> db,
	 query => $self -> query,
	 session => $self -> session,
	) );

	$self -> payment(Business::AU::Ledger::View::Payment -> new
	(config => $self -> config,
	 db => $self -> db,
	 query => $self -> query,
	 session => $self -> session,
	) );

	$self -> receipt(Business::AU::Ledger::View::Receipt -> new
	(config => $self -> config,
	 db => $self -> db,
	 query => $self -> query,
	 session => $self -> session,
	) );

	$self -> reconciliation(Business::AU::Ledger::View::Reconciliation -> new
	(config => $self -> config,
	 db => $self -> db,
	 query => $self -> query,
	 session => $self -> session,
	) );

	$self -> web_page($self -> load_tmpl('web.page.tmpl') );
	$self -> web_page -> param(css_url => ${$self -> config}{'css_url'});
	$self -> web_page -> param(yui_url => ${$self -> config}{'yui_url'});

} # End of BUILD;

# -----------------------------------------------

sub build_about
{
	my($self)     = @_;
	my($template) = $self -> load_tmpl('table.even.odd.tmpl', loop_context_vars => 1);

	my(@tr);

	push @tr, {left_td => 'Program', right_td => "Business::AU::Ledger V $VERSION"};
	push @tr, {left_td => 'Author', right_td => 'Ron Savage'};

	$template -> param(tr_loop => \@tr);

	$template = $template -> output;
	$template =~ s/\n//g;



( run in 1.099 second using v1.01-cache-2.11-cpan-d7f47b0818f )