package SQL::Translator::Producer::HTML;
-# -------------------------------------------------------------------
-# $Id$
-# -------------------------------------------------------------------
-# Copyright (C) 2002-2009 SQLFairy Authors
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License as
-# published by the Free Software Foundation; version 2.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-# 02111-1307 USA
-# -------------------------------------------------------------------
-
use strict;
+use warnings;
use Data::Dumper;
-use vars qw($VERSION $NOWRAP $NOLINKTABLE $NAME);
-
-$VERSION = '1.99';
-$NAME = __PACKAGE__;
-$NOWRAP = 0 unless defined $NOWRAP;
-$NOLINKTABLE = 0 unless defined $NOLINKTABLE;
+our $VERSION = '1.59';
+our $NAME = __PACKAGE__;
+our $NOWRAP = 0 unless defined $NOWRAP;
+our $NOLINKTABLE = 0 unless defined $NOLINKTABLE;
# Emit XHTML by default
$CGI::XHTML = $CGI::XHTML = 42;
import CGI::Pretty;
CGI::Pretty->new }
: do { require CGI;
- import CGI;
+ import CGI;
CGI->new };
my ($table, @table_names);
$q->hr;
}
- @table_names = grep { length $_->name } $schema->get_tables;
+ @table_names = grep { length $_->name } $schema->get_tables;
if ($linktable) {
# Generate top menu, with links to full table information
$count = sprintf "%d table%s", $count, $count == 1 ? '' : 's';
# Leading table of links
- push @html,
+ push @html,
$q->comment("Table listing ($count)"),
$q->a({ -name => 'top' }),
$q->start_table({ -width => '100%', -class => 'LinkTable'}),
for my $table (@table_names) {
my $table_name = $table->name;
- push @html,
+ push @html,
$q->comment("Start link to table '$table_name'"),
$q->Tr({ -class => 'LinkTableRow' },
$q->td({ -class => 'LinkTableCell' },
$q->start_table({ -border => 1 }),
$q->Tr(
$q->th({ -class => 'FieldHeader' },
- [
- 'Field Name',
- 'Data Type',
- 'Size',
- 'Default Value',
- 'Other',
- 'Foreign Key'
+ [
+ 'Field Name',
+ 'Data Type',
+ 'Size',
+ 'Default Value',
+ 'Other',
+ 'Foreign Key'
]
- )
+ )
);
my $i = 0;
$name = qq[<a name="$table_name-$name">$name</a>];
my $data_type = $field->data_type || '';
my $size = defined $field->size ? $field->size : '';
- my $default = defined $field->default_value
+ my $default = defined $field->default_value
? $field->default_value : '';
my $comment = $field->comments || '';
my $fk = '';
my $c = $field->foreign_key_reference;
my $ref_table = $c->reference_table || '';
my $ref_field = ($c->reference_fields)[0] || '';
- $fk =
+ $fk =
qq[<a href="#$ref_table-$ref_field">$ref_table.$ref_field</a>];
}
# Indices
#
if ( my @indices = $table->get_indices ) {
- push @html,
+ push @html,
$q->h3('Indices'),
$q->start_table({ -border => 1 }),
$q->Tr({ -class => 'IndexRow' },
- $q->th([ 'Name', 'Fields' ])
+ $q->th([ 'Name', 'Fields' ])
);
for my $index ( @indices ) {
#
# Constraints
#
- my @constraints =
+ my @constraints =
grep { $_->type ne PRIMARY_KEY } $table->get_constraints;
if ( @constraints ) {
- push @html,
+ push @html,
$q->h3('Constraints'),
$q->start_table({ -border => 1 }),
$q->Tr({ -class => 'IndexRow' },
- $q->th([ 'Type', 'Fields' ])
+ $q->th([ 'Type', 'Fields' ])
);
for my $c ( @constraints ) {
=head1 AUTHORS
-Ken Y. Clark E<lt>kclark@cpan.orgE<gt>,
+Ken Youens-Clark E<lt>kclark@cpan.orgE<gt>,
Darren Chamberlain E<lt>darren@cpan.orgE<gt>.
=cut