4
# part of the Deobfuscator package
5
# by Laura Kavanaugh and Dave Messina
7
# cared for by Dave Messina <dave-pause@davemessina.net>
9
# POD documentation - main docs before the code
13
deob_detail.cgi - displays a web page of detailed information about a BioPerl method
17
This document describes deob_detail.cgi version 0.0.2
22
This program is designed to be called by deob_interface.cgi. See
23
L</"DESCRIPTION"> for details.
25
To install deob_detail.cgi and the rest of the Deobfuscator package, see the
31
Deob_detail.cgi is called by deob_interface.cgi when a user clicks on a
32
method name. This program extracts the documentation about that method from
33
the Deobfuscator Berkeley DBs and returns it in some simple HTML formatting.
41
=head1 CONFIGURATION AND ENVIRONMENT
43
This program expects to have the 'methods.db' and 'packages.db' files in the
44
same directory as itself. These two files are automatically generated when
45
L<deob_index.pl> is run. If your installation requires that they be in a
46
different location, change the $BerkeleyDB_packages and $BerkeleyDB_methods
47
variables below to be fully qualified paths to the db files.
52
L<version>, L<CGI>, L<Deobfuscator>
55
=head1 INCOMPATIBILITIES
60
=head1 BUGS AND LIMITATIONS
62
No bugs have been reported.
69
User feedback is an integral part of the evolution of this and other
70
Bioperl modules. Send your comments and suggestions preferably to one
71
of the Bioperl mailing lists. Your participation is much appreciated.
73
bioperl-l@bioperl.org - General discussion
74
http://www.bioperl.org/wiki/Mailing_lists - About the mailing lists
78
Report bugs to the Bioperl bug tracking system to help us keep track
79
the bugs and their resolution. Bug reports can be submitted via the
82
http://bugzilla.open-bio.org/
87
L<Deobfuscator>, L<deob_interface.cgi>, L<deob_index.pl>
99
=item Dave Messina C<< <dave-pause@davemessina.net> >>
106
=head1 ACKNOWLEDGMENTS
108
This software was developed originally at the Cold Spring Harbor Laboratory's
109
Advanced Bioinformatics Course between Oct 12-25, 2005. Many thanks to David
110
Curiel, who provided much-needed guidance and assistance on this project.
113
=head1 LICENSE AND COPYRIGHT
115
Copyright (C) 2005-6 Laura Kavanaugh and Dave Messina. All Rights Reserved.
117
This module is free software; you may redistribute it and/or modify it under the same terms as Perl itself. See L<perlartistic>.
122
This software is provided "as is" without warranty of any kind.
127
# Let the code begin...
129
## HARDCODED VALUES ##
130
# Change these to fit your installation.
132
my $BerkeleyDB_packages = './packages.db';
133
my $BerkeleyDB_methods = './methods.db';
135
## You shouldn't need to change anything below here ##
137
use version; $VERSION = qv('0.0.2');
144
my $packages_ref = Deobfuscator::open_db($BerkeleyDB_packages);
145
my $methods_ref = Deobfuscator::open_db($BerkeleyDB_methods);
147
# 'method' is the name of the method passed in from deob_interface.cgi
148
my $class_method = param('method');
150
# Get all of the documentation fields out of the db
152
= Deobfuscator::get_method_docs( $methods_ref, $class_method, "title" );
153
if ( $title eq "0" ) { $title = "not documented"; }
156
= Deobfuscator::get_method_docs( $methods_ref, $class_method, "usage" );
157
if ( $usage eq "0" ) { $usage = "not documented"; }
159
my $function = Deobfuscator::get_method_docs( $methods_ref, $class_method,
161
if ( $function eq "0" ) { $function = "not documented"; }
164
= Deobfuscator::get_method_docs( $methods_ref, $class_method, "returns" );
165
if ( $returns eq "0" ) { $returns = "not documented"; }
168
= Deobfuscator::get_method_docs( $methods_ref, $class_method, "args" );
169
if ( $args eq "0" ) { $args = "not documented"; }
171
### Make the output page
175
print start_html($class_method);
179
= qq{style="border-collapse:collapse;border:solid black 1px;font-family:verdana;font-size:10px;background-color:lightgrey"};
181
= qq{style="border-collapse:collapse;border:solid black 1px;font-family:verdana;font-size:10px"};
183
= qq{style="border-collapse:collapse;border:solid black 1px;font-family:verdana;font-size:14px"};
186
print '<div style="border:solid black 1px; width:100%; height:200; overflow:auto">';
187
print '<table width="100%" $style3>';
188
print "<tr><td colspan=4><center>$class_method</center></td></tr>";
190
my @sections = ('Usage', 'Function', 'Returns', 'Args');
193
foreach my $section ($usage, $function, $returns, $args) {
195
my $section_html = Deobfuscator::htmlify($section);
196
print "<tr><td $style1>$sections[$sec_ndx++]</td><td $style2>$section_html</td></tr>\n";
200
print "</table></div>";
206
Deobfuscator::close_db($BerkeleyDB_packages);
207
Deobfuscator::close_db($BerkeleyDB_methods);
b'\\ No newline at end of file'