Business-AU-Ledger

 view release on metacpan or  search on metacpan

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

		  name => 'sid',
	  }
	 )
	);

	$self -> log('.' x 50);
	$self -> log('sid => ' . $self -> session -> id);
	$self -> log('.' x 50);
	$self -> log("Param: $_ => " . $q -> param($_) ) for $q -> param;
	$self -> log(__PACKAGE__ . '. Leaving setup');

	$self -> view(Business::AU::Ledger::View -> new
	(
	 config      => $self -> config,
	 db          => $self -> db,
	 form_action => $self -> query -> url(-absolute => 1),
	 query       => $q,
	 session     => $self -> session,
	) );

} # End of setup.

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

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

	$self -> log(__PACKAGE__ . '. Leaving submit_payment');

	return $self -> view -> payment -> submit;

} # End of submit_payment.

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

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

	$self -> log(__PACKAGE__ . '. Leaving submit_receipt');

	return $self -> view -> receipt -> submit;

} # End of submit_receipt.

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

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

	$self -> log(__PACKAGE__ . '. Leaving tab_set');

	return $self -> view -> build_tab_set;

} # End of tab_set.

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

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

	$self -> log(__PACKAGE__ . '. Leaving update_context');

	return $self -> view -> context -> update;

} # End of update_context.

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

1;

=head1 NAME

C<Business::AU::Ledger> - A simple, web-based, payments/receipts manager

=head1 Synopsis

A CGI script:

	#!/usr/bin/perl

	use Business::AU::Ledger;

	Business::AU::Ledger -> new -> run;

=head1 Description

C<Business::AU::Ledger> is a pure Perl module.

It is based on C<CGI::Application>.

It provides a web-based interface to a database of payment, receipt and reconciliation transactions.

The database schema is shipped in docs/schema.png.

=head1 TODO

This version is being released as 0.80 rather than the 1.00 I wanted, because of the following
missing features.

AFAICT, the transactions themselves are reliably stored and retrieved from the database.

Nevertheless, I do not regard this code as production-ready, because of this TODO list.

These items are not listed in any particular order:

=over 4

=item Reconciliations

These are simply not coded yet.

=item REST-style usage

The code uses the CGI::Application standard way of specifying state via the 'rm' hidden CGI form
field.

I would prefer to switch to REST-style usage of the path info to transmit such information.



( run in 0.744 second using v1.01-cache-2.11-cpan-4ef0a570458 )