]> git.decadent.org.uk Git - maypole.git/blobdiff - lib/Maypole/Config.pm
some fixes for Maypole::Config, Maypole::Model::Base and
[maypole.git] / lib / Maypole / Config.pm
index e0bf6ee82fab37538d11d7bd116d20107a9db717..65263ff029672e6cdfd384084b6ef97170124442 100644 (file)
@@ -8,15 +8,11 @@ use warnings;
 # Public accessors.
 __PACKAGE__->mk_accessors(
     qw( view uri_base template_root model loader display_tables ok_tables
-      rows_per_page dsn user pass opts application_name document_encoding
-      content_type)
+      rows_per_page dsn user pass opts application_name)
 );
 
 # Should only be modified by model.
-__PACKAGE__->mk_ro_accessors(
-    qw( classes tables table_to_class
-      )
-);
+__PACKAGE__->mk_ro_accessors(qw( classes tables));
 
 1;
 
@@ -32,52 +28,65 @@ This class stores all configuration data for your Maypole application.
 
 =head2 View related
 
-=head3 view
+=head3 application_name
+
+This should be a string containing your application's name.
+
+=head3 rows_per_page
 
-The view class for your Maypole Application. Defaults to "Maypole::View::TT"
+This is the number of rows your application should display per page.
 
-=head3 uri_base 
+=head3 tables
 
-This is the uri base that should be appended to your application when maypole 
-makes urls.
+Contains a list of all tables, if supported by model.
 
 =head3 template_root
 
-This is where your application can find it's templates.
+This is where your application can find its templates.
 
-=head3 rows_per_page
+=head3 uri_base
+
+This is the URI base that should be prepended to your application when
+Maypole
+makes URLs.
+
+=head3 view
 
-This is the  number of rows your application should display per page.
+The name of the view class for your Maypole Application. Defaults to
+"Maypole::View::TT".
 
 =head2 Model-Related
 
-=head3 display_tables 
+=head3 classes
 
-These are the tables that are public to your maypole application
+This config variable contains a list of your view classes. This is set
+up by the
+model class, and should not be changed in the view or the config.
 
-=head3 ok_tables
+=head3 display_tables
 
-These are the tables that maypole should care about
+This is a list of the tables that are public to your Maypole 
+application. Defaults to all the tables in the database.
 
-=head3 model
+=head3 dsn
 
-The model class for your Maypole Application. Defaults to "Maypole::View::CDBI"
+The DSN to your database. Follows standard DBD syntax.
 
 =head3 loader
 
-This is the loader object. It's set up by the CDBI model if it's not initialized before setup.
-
-=head3 classes
+This is the loader object (n.b. an instance, not a class name). It's set
+up by the CDBI model to an instance of "Class::DBI::Loader" if it's not
+initialized before calling setup().
 
-This config variable contains a list of your view classes. This set up by the
-model class, and should not be changed in the view or the config.
+=head3 model
 
-=head3 dsn
-The DSN to your database. Follows standard DBD syntax.
+The name of the model class for your Maypole Application. Defaults to
+"Maypole::Model::CDBI".
 
-=head3 user
+=head3 ok_tables
 
-Username to log into the database with
+This is a hash of the public tables. It is populated automatically by 
+Maypole from the list in display_tables and should not be changed.
 
 =head3 pass
 
@@ -85,17 +94,31 @@ Password for database user.
 
 =head3 opts
 
-Other options to the dbi connect call.
+Other options to the DBI connect call.
+
+=head3 user
+
+Username to log into the database with.
+
+=head2 Adding additional configuration data
+
+If your modules need to store additional configuration data for their 
+own use or to make available to templates, add a line like this to your 
+module:
+
+   Maypole::Config->mk_accessors(qw(variable or variables));
+
+Care is needed to avoid conflicting variable names.
 
 =head1 SEE ALSO
 
 L<Maypole>
 
-=head1 MAINTAINER
+=head1 AUTHOR
 
-Sebastian Riedel, c<sri@oook.de>
+Sebastian Riedel, C<sri@oook.de>
 
-=head1 AUTHOR
+=head1 AUTHOR EMERITUS
 
 Simon Cozens, C<simon@cpan.org>