# $Id: /local/CPAN/Mango/lib/Mango.pm 1644 2008-06-02T01:46:53.055259Z claco $ package Mango; use strict; use warnings; our $VERSION = '0.01000_13'; BEGIN { use base qw/Class::Accessor::Grouped/; use File::ShareDir (); use Path::Class qw/dir/; } sub share { my ( $self, $share ) = @_; if ($share) { $self->set_inherited( 'share', $share ); } return $ENV{'MANGO_SHARE'} || $self->get_inherited('share') || ## use share, unless errors on local -I no share eval { File::ShareDir::module_dir('Mango') } || ## try for -Ilib/Mango.pm../../share dir( $INC{'Mango.pm'} )->parent->parent->subdir('share'); } 1; __END__ =head1 NAME Mango - An ecommerce solution using Catalyst, Handel and DBIx::Class =head1 SYNOPSIS use Mango; print Mango->share; =head1 DESCRIPTION This is a generic class containing the default configuration used by other Mango classes. To learn more about what Mango is and how it works, take a look at the L. =head1 METHODS =head2 share =over =item Arguments: $share_path =back Gets/sets the location of the Mango share directory where the default dist templates are stored. print $self->share; If the C variable C is set, that will be returned instead. =head1 SEE ALSO L =head1 AUTHOR Christopher H. Laco CPAN ID: CLACO claco@chrislaco.com http://today.icantfocus.com/blog/