1 --- trunk.orig/ex/fancy_example/BeerDB.pm
2 +++ trunk/ex/fancy_example/BeerDB.pm
4 # This is the sample application. Change this to the path to your
5 # database. (or use mysql or something)
6 use constant DBI_DRIVER => 'SQLite';
7 -use constant DATASOURCE => '/home/peter/Desktop/maypolebeer/beerdb';
8 +use constant DATASOURCE => $ENV{BEERDB_DATASOURCE} || 't/beerdb.db';
10 BeerDB->config->model('BeerDB::Base');
12 -BeerDB->setup("dbi:mysql:beerdb",'root', '');
14 + my $dbi_driver = DBI_DRIVER;
15 + if ($dbi_driver =~ /^SQLite/) {
16 + die sprintf "SQLite datasource '%s' not found, correct the path or "
17 + . "recreate the database by running Makefile.PL", DATASOURCE
18 + unless -e DATASOURCE;
19 + eval "require DBD::SQLite";
21 + eval "require DBD::SQLite2" and $dbi_driver = 'SQLite2';
24 + BeerDB->setup(join ':', "dbi", $dbi_driver, DATASOURCE);
28 BeerDB->config->application_name('The Beer Database');
31 # Change this to the htdoc root for your maypole application.
33 -my @root= ('/home/peter/Desktop/maypolebeer/templates');
34 +my @root= ('t/templates');
35 push @root,$ENV{BEERDB_TEMPLATE_ROOT} if ($ENV{BEERDB_TEMPLATE_ROOT});
36 BeerDB->config->template_root( [@root] );
37 # Specify the rows per page in search results, lists, etc : 10 is a nice round number
39 BeerDB::Brewery->untaint_columns( printable => [qw/name notes url/] );
40 BeerDB::Style->untaint_columns( printable => [qw/name notes/] );
41 BeerDB::Beer->untaint_columns(
42 - printable => [qw/abv name price notes/],
43 + printable => [qw/abv name price notes url/],
44 integer => [qw/style brewery score/],
51 -BeerDB->config->{brewery}{required_cols} = [qw/name url/];
52 +BeerDB->config->{brewery}{required_cols} = [qw/name/];
53 BeerDB->config->{style}{required_cols} = [qw/name/];
54 BeerDB->config->{beer}{required_cols} = [qw/brewery name price/];
55 BeerDB->config->{pub}{required_cols} = [qw/name/];
58 # For testing classmetadata
59 #sub BeerDB::Beer::classdata :Exported {};
60 -sub BeerDB::Beer::list_columns { return qw/score name price style brewery/};
61 +sub BeerDB::Beer::list_columns { return qw/score name price style brewery url/};
63 sub BeerDB::Handpump::stringify_self {
65 --- trunk.orig/ex/fancy_example/beerdb.sql
66 +++ trunk/ex/fancy_example/beerdb.sql
69 - id integer primary key auto_increment,
70 + id integer not null primary key auto_increment,
76 - id integer primary key auto_increment,
77 + id integer not null primary key auto_increment,
83 CREATE TABLE handpump (
84 - id integer primary key auto_increment,
85 + id integer not null primary key auto_increment,
91 - id integer primary key auto_increment,
92 + id integer not null primary key auto_increment,
103 CREATE TABLE brewery (
104 - id integer primary key auto_increment,
105 + id integer not null primary key auto_increment,
109 --- trunk.orig/lib/Maypole/Manual/About.pod
110 +++ trunk/lib/Maypole/Manual/About.pod
120 create table handpump (
121 --- trunk.orig/ex/beerdb.sql
122 +++ trunk/ex/beerdb.sql
125 - id integer primary key auto_increment,
126 + id integer not null primary key auto_increment,
132 - id integer primary key auto_increment,
133 + id integer not null primary key auto_increment,
139 CREATE TABLE handpump (
140 - id integer primary key auto_increment,
141 + id integer not null primary key auto_increment,
147 - id integer primary key auto_increment,
148 + id integer not null primary key auto_increment,
155 CREATE TABLE brewery (
156 - id integer primary key auto_increment,
157 + id integer not null primary key auto_increment,