File: Config.pm

package info (click to toggle)
maypole 2.10-1
  • links: PTS
  • area: main
  • in suites: etch-m68k
  • size: 472 kB
  • ctags: 108
  • sloc: perl: 1,345; makefile: 21
file content (145 lines) | stat: -rw-r--r-- 3,064 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
package Maypole::Config;
use base qw(Class::Accessor::Fast);
use attributes ();

use strict;
use warnings;

our $VERSION = "1." . sprintf "%04d", q$Rev: 333 $ =~ /: (\d+)/;

# Public accessors.
__PACKAGE__->mk_accessors(
     qw( view view_options uri_base template_root template_extension model
         loader display_tables ok_tables rows_per_page dsn user pass opts
         application_name)
);

# Should only be modified by model.
__PACKAGE__->mk_ro_accessors(qw( classes tables));

1;

=head1 NAME

Maypole::Config - Maypole Configuration Class

=head1 DESCRIPTION

This class stores all configuration data for your Maypole application.

=head1 METHODS

=head2 View related

=head3 application_name

This should be a string containing your application's name.

Optional. Is used in the factory templates.

=head3 rows_per_page

This is the number of rows your application should display per page.

Optional.

=head3 tables

Contains a list of all tables, if supported by model.

=head3 template_extension

Optional template file extension.

=head3 template_root

This is where your application can find its templates.

=head3 uri_base

This is the URI base that should be prepended to your application when Maypole
makes URLs.

=head3 view

The name of the view class for your Maypole Application. Defaults to
"Maypole::View::TT".

=head3 view_options

A hash of configuration options for the view class. Consult the documentation
for your chosen view class for information on available configuration options.

=head2 Model-Related

=head3 classes

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 display_tables

This is a list of the tables that are public to your Maypole 
application. Defaults to all the tables in the database.

=head3 dsn

The DSN to your database. Follows standard DBD syntax.

=head3 loader

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().

=head3 model

The name of the model class for your Maypole Application. Defaults to
"Maypole::Model::CDBI".

=head3 ok_tables

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

Password for database user.

=head3 opts

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 AUTHOR

Sebastian Riedel, C<sri@oook.de>

=head1 AUTHOR EMERITUS

Simon Cozens, C<simon@cpan.org>

=head1 LICENSE

You may distribute this code under the same terms as Perl itself.

=cut