annotate variant_effect_predictor/Bio/Tools/WWW.pm @ 1:d6778b5d8382 draft default tip

Deleted selected files
author willmclaren
date Fri, 03 Aug 2012 10:05:43 -0400
parents 21066c0abaf5
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1 #-----------------------------------------------------------------------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
2 # PACKAGE : Bio::Tools::WWW
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
3 # PURPOSE : To encapsulate commonly used URLs for web key websites in bioinformatics.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
4 # AUTHOR : Steve Chervitz
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
5 # CREATED : 27 Aug 1996
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
6 # REVISION: $Id: WWW.pm,v 1.12 2002/10/22 07:38:46 lapp Exp $
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
7 #
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
8 # For documentation, run this module through pod2html
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
9 # (preferably from Perl v5.004 or better).
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
10 #
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
11 # MODIFIED:
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
12 # 0.014, sac --- Mon Aug 31 19:41:44 1998
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
13 # * Updated and added a few URLs.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
14 # * Added method strip_html().
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
15 # * Documentation changes.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
16 #
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
17 #-----------------------------------------------------------------------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
18
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
19 package Bio::Tools::WWW;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
20 use strict;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
21 use Bio::Root::Root;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
22 use Exporter ();
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
23 use vars qw(@ISA @EXPORT_OK %EXPORT_TAGS $ID $VERSION $BioWWW $Revision
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
24 $AUTHORITY);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
25 $AUTHORITY = 'nobody@localhost';
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
26 @ISA = qw( Bio::Root::Root Exporter);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
27 @EXPORT_OK = qw($BioWWW);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
28 %EXPORT_TAGS = ( obj => [qw($BioWWW)],
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
29 std => [qw($BioWWW)]);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
30
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
31 $ID = 'Bio::Tools::WWW';
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
32 $VERSION = 0.014;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
33 $Revision = '$Id: WWW.pm,v 1.12 2002/10/22 07:38:46 lapp Exp $'; #'
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
34
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
35 ## Static object.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
36 $BioWWW = {};
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
37 bless $BioWWW, $ID;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
38 $BioWWW->{'_name'} = "Static $ID object";
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
39
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
40
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
41 ## POD Documentation:
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
42
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
43 =head1 NAME
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
44
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
45 Bio::Tools::WWW - Bioperl manager for web resources related to biology.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
46
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
47 =head1 SYNOPSIS
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
48
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
49 =head2 Object Creation
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
50
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
51 use Bio::Tools qw(:obj);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
52
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
53 $pdb = $BioWWW->home_url('pdb');
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
54
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
55 There is no need to create a new Bio::Tools::WWW.pm object when the
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
56 C<:obj> tag is used. This tag will import the static $BioWWW object
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
57 created by Bio::Tools::WWW.pm into your name space. This saves you
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
58 from having to call C<new Bio::Tools::WWW>.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
59
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
60 You are free to not use the :obj tag and create the object as you
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
61 like, but a Bio::Tools::WWW object is not configurable; any given
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
62 script only needs a single copy.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
63
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
64 =head1 INSTALLATION
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
65
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
66 This module is included with the central Bioperl distribution:
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
67
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
68 http://bio.perl.org/Core/Latest
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
69 ftp://bio.perl.org/pub/DIST
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
70
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
71 You also need to define URLs for the following variables in this package:
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
72
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
73 $Not_found_url : Generic page to show in place of a 404 error.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
74 $Tmp_url : Web-accessible site that is Used for scripts that
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
75 need to generate temporary, web-accessible files.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
76 The files need not necessarily be HTML files, but
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
77 being on the same disk as the server will permit
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
78 faster IO from server scripts.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
79
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
80 =head1 DESCRIPTION
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
81
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
82 Bio::Tools::WWW is primarily a URL broker for a select set
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
83 of sites related to bioinformatics/genome analysis. It
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
84 definitely represents a biased, unexhaustive set.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
85 It might be more accurate to call this module
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
86 "Bio::Tools::URL.pm". But this module does handle some non-URL
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
87 things and it may do more of this in the future. Having one
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
88 module to cover all biologically relevant web utilities
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
89 makes it more convenient, especially at this early stage
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
90 of development.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
91
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
92 Maintaining accurate URLs over time can be challenging as
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
93 new web sites spring up and old sites are re-organized. Because
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
94 of this fact, the URLs in this module are not guaranteed to be
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
95 correct or exhaustive and will require periodic updating.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
96
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
97 =head2 URL Management
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
98
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
99 By keeping URL management within Bio::Tools::WWW.pm, other generic
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
100 modules can easily access a variety of different web sites without
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
101 having to know about a potential multitude of specific modules
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
102 specialized for one database or another. An alternative approach would
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
103 be to have addresses defined within modules specialized for different
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
104 web sites. This, however, may create maintenance headaches when updating
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
105 these addresses.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
106
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
107 =head2 Complex Websites
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
108
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
109 Websites with complex datasets may require special treatment
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
110 within this module. As an example,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
111 URLs for the Saccharomyces Genome Database are clustered
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
112 separately in this module, due to (1) the different ways to
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
113 access information at this database and (2) the familiarity
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
114 of the developer with this database. The Bio::SGD::WWW.pm inherits from
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
115 Bio::Tools::WWW.pm to permit access to the URLs provided by Bio::Tools::WWW.pm
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
116 and to SGD-specific HTML and images.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
117
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
118 The organization of Bio::Tools::WWW.pm is expected to evolve as
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
119 websites get born, die, and mutate their APIs.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
120
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
121 =head1 SEE ALSO
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
122
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
123 http://bio.perl.org/Projects/modules.html - Online module documentation
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
124 http://bio.perl.org/ - Bioperl Project Homepage
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
125
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
126 =head1 FEEDBACK
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
127
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
128 =head2 Mailing Lists
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
129
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
130 User feedback is an integral part of the evolution of this and other Bioperl modules.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
131 Send your comments and suggestions preferably to one of the Bioperl mailing lists.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
132 Your participation is much appreciated.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
133
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
134 bioperl-l@bioperl.org - General discussion
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
135 http://www.bioperl.org/MailList.shtml - About the mailing lists
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
136
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
137 =head2 Reporting Bugs
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
138
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
139 Report bugs to the Bioperl bug tracking system to help us keep track the bugs and
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
140 their resolution. Bug reports can be submitted via email or the web:
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
141
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
142 bioperl-bugs@bio.perl.org
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
143 http://bugzilla.bioperl.org/
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
144
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
145 =head1 AUTHOR
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
146
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
147 Steve Chervitz, sac@bioperl.org
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
148
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
149 =head1 VERSION
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
150
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
151 Bio::Tools::WWW.pm, 0.014
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
152
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
153 =head1 COPYRIGHT
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
154
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
155 Copyright (c) 1996-98 Steve Chervitz. All Rights Reserved.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
156 This module is free software; you can redistribute it and/or
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
157 modify it under the same terms as Perl itself.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
158
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
159
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
160 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
161
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
162
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
163 #
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
164 ##
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
165 ###
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
166 #### END of main POD documentation.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
167 ###
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
168 ##
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
169 #
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
170
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
171
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
172 ############################ DATA ##################################
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
173
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
174 ### Database homepage links.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
175 my %Home_url =
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
176 (
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
177 'bioperl' =>'http://bio.perl.org/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
178 'bioperl-stanford'=>'http://genome-www.stanford.edu/perlOOP/bioperl/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
179 'bioperl-schema' =>'http://bio.perl.org/Projects/Schema/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
180 'biomoo' =>'http://bioinformatics.weizmann.ac.il/BioMOO/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
181 'blast_ncbi' =>'http://www.ncbi.nlm.nih.gov/BLAST/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
182 'blast_wu' =>'http://blast.wustl.edu/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
183 'bsm' =>'http://www.biochem.ucl.ac.uk/bsm/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
184 'clustal' =>'http://www.csc.fi/molbio/progs/clustalw/clustalw.html',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
185 'ebi' =>'http://www.ebi.ac.uk/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
186 'emotif' =>'http://motif.Stanford.EDU/emotif',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
187 'entrez' =>'http://www3.ncbi.nlm.nih.gov/Entrez/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
188 'expasy' =>'http://www.expasy.ch/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
189 'gdb' =>'http://www.gdb.org/', # R.I.P. (Jan 1998); site still functional
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
190 'mips' =>'http://speedy.mips.biochem.mpg.de/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
191 'mmdb' =>'http://www.ncbi.nlm.nih.gov/Structure/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
192 'modbase' =>'http://guitar.rockefeller.edu/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
193 'ncbi' =>'http://www.ncbi.nlm.nih.gov/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
194 'pedant' =>'http://pedant.mips.biochem.mpg.de',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
195 'phylip' =>'http://evolution.genetics.washington.edu/phylip.html',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
196 'pir' =>'http://www-nbrf.georgetown.edu/pir/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
197 'pfam' =>'http://pfam.wustl.edu/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
198 'pfam_uk' =>'http://www.sanger.ac.uk/Software/Pfam/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
199 'pfam_us' =>'http://pfam.wustl.edu/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
200 'pdb' =>'http://www.pdb.bnl.gov/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
201 'presage' =>'http://presage.stanford.edu/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
202 'geneQuiz' =>'http://www.sander.ebi.ac.uk/genequiz/genomes/sc/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
203 'molMov' =>'http://bioinfo.mbb.yale.edu/MolMovDB/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
204 # 'protMot' =>'http://bioinfo.mbb.yale.edu/ProtMotDB/', # old, use molMov instead
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
205 'pubmed' =>'http://www.ncbi.nlm.nih.gov/PubMed/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
206 'sacch3d' =>'http://genome-www.stanford.edu/Sacch3D/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
207 'sgd' =>'http://genome-www.stanford.edu/Saccharomyces/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
208 # 'scop' =>'http://www.pdb.bnl.gov/scop/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
209 'scop' =>'http://scop.stanford.edu/scop/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
210 'swissProt' =>'http://www.expasy.ch/sprot/sprot-top.html',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
211 'webmol' =>'http://genome-www.stanford.edu/structure/webmol/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
212 'ypd' =>'http://quest7.proteome.com/YPDhome.html',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
213 );
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
214
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
215 ### Database access CGI stems. (For some DBs the home URL can be used as the CGI stem)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
216 my %Stem_url =
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
217 (
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
218 'emotif' =>'http://dna.Stanford.EDU/cgi-bin/emotif/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
219 'entrez' =>'http://www3.ncbi.nlm.nih.gov/htbin-post/Entrez/query?',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
220 'pdb' =>'http://www.pdb.bnl.gov/pdb-bin/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
221 'pfam_uk' =>'http://www.sanger.ac.uk/cgi-bin/Pfam/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
222 'pfam_us' =>'http://pfam.wustl.edu/cgi-bin/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
223 'pir' =>'http://www-nbrf.georgetown.edu/cgi-bin/nbrfget?',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
224 );
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
225
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
226
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
227 ### Database access stems/links.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
228 my %Search_url =
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
229 ( #'3db' =>'http://pdb.pdb.bnl.gov/cgi-bin/pdbids?3DB_ID=', # Former stem
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
230 '3db' =>$Stem_url{'pdb'}.'opdbshort?oPDBid=', # New stem (aug 1997)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
231 'embl' =>$Home_url{'ebi'}.'htbin/emblfetch?',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
232 'expasy' =>$Home_url{'expasy'}.'cgi-bin/', # program name and query string must be supplied.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
233 'cath' =>$Home_url{'bsm'}.'cath/CATHSrch.pl?type=PDB&query=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
234 'cog_seq' =>$Home_url{'ncbi'}.'cgi-bin/COG/nph-cognitor?seq=', # add sequence
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
235 # To cog_orf, append ORF name ('YAL005c'). Case-sensitive! YAL005C won't work!
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
236 'cog_orf' =>$Home_url{'ncbi'}.'cgi-bin/COG/cogeseq?',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
237 'ec1' =>$Home_url{'gdb'}.'bin/bio/wais_q-bio?object_class_key=30&jhu_id=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
238 'ec2' =>$Home_url{'bsm'}.'enzymes/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
239 'ec3' =>$Home_url{'expasy'}.'cgi-bin/get-enzyme-entry?',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
240 'emotif_id' =>$Stem_url{'emotif'}.'nph-identify?sequence=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
241 'entrez' =>$Stem_url{'entrez'}."db=p_r?db=1&choseninfo=ORF_NAME%20[Gene%20Name]\@1\@1&form=4&field=Gene%20Name&mode=0&retrievestring=ORF_NAME%20[Gene%20Name]",
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
242 'gb_n' =>$Stem_url{'entrez'}."db=n&form=6&dopt=g&uid=",
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
243 'gb_p' =>$Stem_url{'entrez'}."db=p&form=6&dopt=g&uid=",
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
244 'gb_struct' =>$Stem_url{'entrez'}."db=t&form=6&dopt=s&uid=",
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
245 'pdb' =>$Stem_url{'pdb'}.'send-text?filename=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
246 'medline' =>$Stem_url{'entrez'}.'form=6&db=m&Dopt=r&uid=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
247 'mmdb' =>$Stem_url{'entrez'}.'db=t&form=6&Dopt=s&uid=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
248 'modbase_orf' =>$Home_url{'modbase'}.'gm-cgi-bin/orf_page.cgi?pg1=0.5&pg2=1.0&orf=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
249 # To the modbase_model, append yeast ORF name &pdb=<4-LETTER_CODE>&chain=<UPCASE LETTER, IF ANY>
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
250 'modbase_model' =>$Home_url{'modbase'}.'gm-cgi-bin/model_page.cgi?pg1=0.5&pg2=1.0&orf=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
251 'molMov' =>$Home_url{'molMov'}.'search.cgi?pdb=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
252 'pdb' =>$Stem_url{'pdb'}.'opdbshort?oPDBid=', # same as 3db
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
253 'pdb_coord' =>$Stem_url{'pdb'}.'send-pdb?filename=', # retrieves full coordinate file
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
254 'pfam' =>$Home_url{'pfam'}.'cgi-bin/nph-hmm_search?evalue=1.0&protseq=', # default: seq search, US
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
255 'pfam_sp_uk' =>$Stem_url{'pfam_uk'}.'swisspfamget.pl?name=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
256 'pfam_seq_uk' =>$Stem_url{'pfam_uk'}.'nph-search.cgi?evalue=1.0&type=normal&protseq=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
257 'pfam_sp_us' =>$Stem_url{'pfam_us'}.'getswisspfam?key=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
258 'pfam_seq_us' =>$Stem_url{'pfam_us'}.'nph-hmm_search?evalue=1.0&protseq=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
259 'pfam_form' =>$Home_url{'pfam'}.'cgi-bin/hmm_page.cgi', # interactive search form
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
260 'pir_id' =>$Stem_url{'pir'}.'fmt=c&xref=0&id=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
261 'pir_acc' =>$Stem_url{'pir'}.'fmt=c&xref=1&id=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
262 'pir_uid' =>$Stem_url{'pir'}.'uid=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
263 'pdbSum' =>$Home_url{'bsm'}.'cath/GetPDBSUMCODE.pl?code=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
264 # 'protMot' =>$Home_url{'protMot'}.'search.cgi?pdb=', # old, use molMov instead
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
265 'presage_sp' =>$Home_url{'presage'}.'search.cgi?spac=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
266 'swpr' =>$Home_url{'expasy'}.'cgi-bin/get-sprot-entry?',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
267 'swModel' =>$Home_url{'expasy'}.'cgi-bin/sprot-swmodel-sub?',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
268 'swprSearch' =>$Home_url{'expasy'}.'cgi-bin/sprot-search-ful?',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
269
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
270 ### SCOP tlev options can be appended to the stem after adding a PDB ID.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
271 ### tlev options are: 'dm'(domain), 'sf'(superfamily), 'fa'(family), 'cf'(common fold), 'cl'(class)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
272 ### E.g., search.cgi?pdb=1ARD;tlev=dm
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
273
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
274 'scop' =>$Home_url{'scop'}.'search.cgi?pdb=', ### better to use scop_pdb.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
275 'scop_pdb' =>$Home_url{'scop'}.'search.cgi?pdb=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
276 'scop_data' =>$Home_url{'scop'}.'data/scop.', ### Deprecated: frequent changes.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
277
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
278 ## Search URLs for SGD/Sacch3D are contained %SGD_url and %S3d_url (below).
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
279
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
280 # For wormpep, the query string MUST end with "&keyword=" (after appending a sequence ID)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
281 'wormpep' =>'http://www.sanger.ac.uk/cgi-bin/wormpep_fetch.pl?entry=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
282 'wormace' =>'http://webace.sanger.ac.uk/cgi-bin/webace?db=wormace&class=Sequence&text=yes&object=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
283
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
284 ### YPD: You must use a valid gene name or ORF name (IFF there is no gene name).
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
285 ### For this reason it is most convenient to use SGD's Protein_Info link
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
286 ### which can accept either and will provide a proper link to YPD.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
287 'ypd' =>'http://quest7.proteome.com/YPD/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
288 );
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
289
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
290
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
291
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
292 ### CGI stems for SGD and Sacch3D.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
293 my %SGD_stem_url =
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
294 ('stanford' =>'http://genome-www.stanford.edu/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
295 'sgd' =>'http://genome-www.stanford.edu/cgi-bin/SGD/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
296 'sgd2' =>'http://genome-www2.stanford.edu/cgi-bin/SGD/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
297 's3d' =>'http://genome-www.stanford.edu/cgi-bin/SGD/Sacch3D/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
298 's3d2' =>'http://genome-www2.stanford.edu/cgi-bin/SGD/Sacch3D/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
299 's3d3' =>'http://genome-www3.stanford.edu/cgi-bin/SGD/Sacch3D/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
300 'sacchdb' =>'http://genome-www.stanford.edu/cgi-bin/dbrun/SacchDB?',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
301 );
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
302
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
303 ### SGD stems and links.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
304 my %SGD_url =
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
305 ('home' =>$Home_url{'sgd'},
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
306 'help' =>$Home_url{'sgd'}.'help/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
307 'mammal' =>$Home_url{'sgd'}.'mammal/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
308 'worm' =>$Home_url{'sgd'}.'worm/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
309 'gene' =>$SGD_stem_url{'sacchdb'}.'find+Locus+',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
310 'locus' =>$SGD_stem_url{'sacchdb'}.'find+Locus+',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
311 'orf' =>$SGD_stem_url{'sacchdb'}.'find+Locus+',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
312 'mipsorf' =>$SGD_stem_url{'sgd'}."mips-orfs?",
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
313 'gene_info' =>$SGD_stem_url{'sacchdb'}.'find+Gene_Info+',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
314 'prot_info' =>$SGD_stem_url{'sacchdb'}.'find+Protein_Info+',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
315 'seq' =>$SGD_stem_url{'sgd'}.'seqDisplay?seq=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
316 'gi' =>$SGD_stem_url{'sacchdb'}.'find+Sequence+Database+=+GenPept+AND+NEXT+=+',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
317 'chr' =>$SGD_stem_url{'sgd2'}.'seqTools?chr=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
318 'chr_old' =>$SGD_stem_url{'sgd'}.'dnaredir?chr=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
319 'seq_an' =>$SGD_stem_url{'sgd2'}.'seqTools?seqname=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
320 'seq_an_old' =>$SGD_stem_url{'sgd'}.'dnaredir?seqname=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
321 'map_chr' =>$SGD_stem_url{'sgd'}.'ORFMAP/ORFmap?chr=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
322 'map_orf' =>$SGD_stem_url{'sgd'}.'ORFMAP/ORFmap?seq=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
323 # 'chr' =>$SGD_stem_url{'sgd2'}.'seqform?chr=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
324 # 'seg' =>$SGD_stem_url{'sgd2'}.'seqform?seg=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
325 # 'fea' =>$SGD_stem_url{'sgd2'}.'featureform?seg=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
326 'feature' =>$SGD_stem_url{'sgd2'}.'featureform?chr=', # complete with "5&beg=100&end=400"
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
327 'search' =>$SGD_stem_url{'sgd'}.'search?',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
328 'images' =>$SGD_stem_url{'stanford'}.'images/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
329 'suggest' =>$SGD_stem_url{'stanford'}.'forms/sgd-suggestion.html',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
330 'tmp' =>$SGD_stem_url{'stanford'}.'tmp/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
331 );
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
332
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
333
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
334 ### Sacch3D stems and links.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
335 my %S3d_url =
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
336 ('home' =>$Home_url{'sacch3d'},
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
337 'search' =>$Home_url{'sacch3d'}.'search.html',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
338 'help' =>$Home_url{'sacch3d'}.'help/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
339 'new' =>$Home_url{'sacch3d'}.'new/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
340 'chrm' =>$Home_url{'sacch3d'}.'data/chr',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
341 'domains' =>$Home_url{'sacch3d'}.'domains/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
342 'genequiz' =>$Home_url{'sacch3d'}.'genequiz/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
343 'analysis' =>$Home_url{'sacch3d'}.'analysis/',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
344 'scop' =>$SGD_stem_url{'s3d3'}.'getscop?data=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
345 'scop_fold' =>$SGD_stem_url{'s3d3'}.'getscop?type=fold&data=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
346 'scop_class' =>$SGD_stem_url{'s3d3'}.'getscop?type=class&data=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
347 'scop_gene' =>$SGD_stem_url{'s3d3'}.'getscop?type=gene&data=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
348 'gene' =>$SGD_stem_url{'s3d'}.'get?class=gene&item=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
349 'orf' =>$SGD_stem_url{'s3d'}.'get?class=orf&item=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
350 'text' =>$SGD_stem_url{'s3d'}.'get?class=text&item=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
351 'pdb' =>$SGD_stem_url{'s3d'}.'get?class=pdb&item=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
352 'pdb_coord' =>$SGD_stem_url{'s3d'}.'pdbcoord.pl?id=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
353 'dsc' =>$SGD_stem_url{'s3d'}.'dsc.pl?gene=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
354 'emotif' =>$SGD_stem_url{'s3d'}.'seq_search.pl?db=emotif&gene=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
355 'pfam' =>$SGD_stem_url{'s3d'}.'seq_search.pl?db=pfam&gene=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
356 'pfam_uk' =>$SGD_stem_url{'s3d'}.'seq_search.pl?db=pfam&loc=uk&gene=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
357 'pfam_us' =>$SGD_stem_url{'s3d'}.'seq_search.pl?db=pfam&loc=us&gene=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
358 'blast_pdb' =>$SGD_stem_url{'s3d'}.'getblast?db=pdb&name=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
359 'blast_nr' =>$SGD_stem_url{'s3d'}.'getblast?db=nr&name=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
360 'blast_est' =>$SGD_stem_url{'s3d'}.'getblast?db=est&name=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
361 'blast_mammal' =>$SGD_stem_url{'s3d'}.'getblast?db=mammal&name=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
362 'blast_human' =>$SGD_stem_url{'s3d'}.'getblast?db=human&name=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
363 'blast_worm' =>$SGD_stem_url{'s3d'}.'getblast?db=worm&name=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
364 'blast_yeast' =>$SGD_stem_url{'s3d'}.'getblast?db=yeast&name=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
365 'blast_worm_yeast'=>$SGD_stem_url{'s3d'}.'getblast?db=worm&query=worm&name=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
366 'patmatch' =>$SGD_stem_url{'s3d2'}.'grepmatch?', ## deprecated
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
367 'grepmatch' =>$SGD_stem_url{'s3d2'}.'grepmatch?',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
368 'pdb_neighbors' =>$SGD_stem_url{'s3d'}.'pdb_neighbors?id=CHAIN&gene=ORF_NAME',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
369 );
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
370
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
371
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
372 ### 3D viewer stems.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
373 my %Viewer_url =
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
374 # ('java' =>$SGD_stem_url{'sgd'}.'Sacch3D/pdbViewer.pl?pdbCode=PDB&orf=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
375 (
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
376 'java' =>$SGD_stem_url{'sgd'}.'Sacch3D/pdbViewer.pl?pdbCode=', # Default java viewer
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
377 'webmol' =>$SGD_stem_url{'sgd'}.'Sacch3D/pdbViewer.pl?pdbCode=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
378 'codebase' =>$SGD_stem_url{'stanford'}.'structure/webmol/lib',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
379 'rasmol' =>$Stem_url{'pdb'}.'send-ras?filename=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
380 'chime' =>$Stem_url{'pdb'}.'ccpeek?id=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
381 'cn3d' =>$Stem_url{'entrez'}.'db=t&form=6&Dopt=i&Complexity=Cn3D+Subset&uid=',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
382 'kinemage' =>'http://prosci.org/Kinemage',
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
383 );
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
384
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
385
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
386 ### Stock HTML
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
387 # The error reporting HTML strings represent some experiments in human psychology:
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
388 # how do you induce users to report errors that you should know about yet not
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
389 # get flooded with trivial problems caused by novices?
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
390 my %Html =
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
391 ('authority' =>qq|<A HREF="mailto:$AUTHORITY"><b>$AUTHORITY</b></A>|,
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
392 'trouble' => <<"QQ_TROUBLE_QQ",
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
393 <p>If this problem persists, <A HREF="mailto:$AUTHORITY"><b>please notify us.</b></A>
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
394 Include a copy of this error page with your message. Thanks.<p>
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
395 QQ_TROUBLE_QQ
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
396 'notify' => <<"QQ_NOTIFY_QQ",
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
397 <A HREF="mailto:$AUTHORITY"><b>Please notify us.</b></A>
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
398 Include a copy of this error page with your message. Thanks.<p>
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
399 QQ_NOTIFY_QQ
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
400 'ourFault' => <<"QQ_FAULT_QQ",
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
401 <p><b>This is our fault!</b> There is apparently a problem with our software
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
402 that we may not know about. <A HREF="mailto:$AUTHORITY"><b>Please notify us!</b></A>
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
403 Include a copy of this error page with your message. Thanks.<p>
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
404 QQ_FAULT_QQ
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
405 'techDiff' => <<"QQ_TECH_QQ",
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
406 <p><big>We are experiencing technical difficulties now.<br>
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
407 We will have the problem fixed soon. Sorry for any inconvenience.</big><p>
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
408 QQ_TECH_QQ
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
409
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
410 );
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
411
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
412
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
413 ### Miscellaneous URLs. Configure as desired for your site.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
414 my $Not_found_url = 'http://genome-www.stanford.edu/Sacch3D/notfound.html';
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
415 my $Tmp_url = 'http://genome-www.stanford.edu/tmp/';
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
416
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
417
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
418
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
419 =head1 APPENDIX
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
420
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
421 Methods beginning with a leading underscore are considered private
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
422 and are intended for internal use by this module. They are
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
423 B<not> considered part of the public interface and are described here
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
424 for documentation purposes only.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
425
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
426 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
427
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
428 #########################################################################
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
429 ## ACCESSOR METHODS
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
430 #########################################################################
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
431
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
432
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
433 =head2 home_url
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
434
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
435 Usage : $BioWWW->home_url(<string>)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
436 Purpose : To obtain the homepage URL for a biological database or resource.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
437 Returns : String containing the URL (including "http://")
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
438 Argument : String
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
439 : Currently acceptable arguments are:
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
440 : bioperl bioperl-schema biomoo bsm ebi emotif entrez
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
441 : expasy mips mmdb ncbi pir pfam pdb geneQuiz
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
442 : molMov pubmed sacch3d sgd scop swissProt webmol ypd
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
443 Throws : Warns if argument cannot be resolved to a URL.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
444 Comments : The URLs listed here do not represent a complete list.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
445 : Expect this to evolve and grow with time.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
446
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
447 See Also : L<search_url>()
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
448
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
449 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
450
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
451 #-------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
452 sub home_url {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
453 #-------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
454 my($self,$arg) = @_;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
455 $arg eq 'all' and return %Home_url;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
456 (exists $Home_url{$arg}) ? $Home_url{$arg}
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
457 : ($self->warn("Can't resolve argument to URL: $arg"),
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
458 $Not_found_url);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
459 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
460
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
461
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
462
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
463 =head2 search_url
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
464
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
465 Usage : $BioWWW->search_url(<string>)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
466 Purpose : To provide a URL stem for a search engine at a biological database
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
467 : or resource.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
468 Returns : String containing the URL (including "http://")
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
469 Argument : String
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
470 : Currently acceptable arguments are:
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
471 : 3db embl cath ec1 ec2 ec3 emotif_id entrez gb1 gb2
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
472 : gb3 gb4 gb5 pdb medline mmdb pdb pdb_coord pfam pir_acc
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
473 : pdbSum molMov swpr swModel swprSearch scop scop_pdb scop_data
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
474 : ypd
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
475 Throws : Warns if argument cannot be resolved to a URL.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
476 Comments : Unlike the homepage URLs, this method does not return a complete
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
477 : URL but a stem which must be further modified, typically by
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
478 : appending data to it, before it can be used. The data appended
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
479 : depends on the specific URL; typically, it is a database ID or
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
480 : other unique identifier.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
481 : The requirements for each URL will be described here eventually.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
482 :
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
483 : The URLs listed here do not represent a complete list.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
484 : Expect this to evolve and grow with time.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
485 :
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
486 : Given this complexity, it may be useful to provide special methods
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
487 : for these different URLs. This would however result in an
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
488 : explosion of methods that might make this module less
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
489 : maintainable and harder to use.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
490
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
491 See Also : L<home_url>()
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
492
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
493 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
494
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
495 #--------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
496 sub search_url {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
497 #--------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
498 my($self,$arg) = @_;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
499 $arg eq 'all' and return %Search_url;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
500 (exists $Search_url{$arg}) ? $Search_url{$arg}
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
501 : ($self->warn("Can't resolve argument to URL: $arg"),
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
502 $Not_found_url);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
503 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
504
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
505
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
506
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
507 =head2 stem_url
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
508
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
509 Usage : $BioWWW->stem_url(<string>)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
510 Purpose : To obtain the minimal stem URL for searching a biological database or resource.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
511 Returns : String containing the URL (including "http://")
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
512 Argument : String
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
513 : Currently acceptable arguments are:
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
514 : emotif entrez pdb
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
515 Throws : Warns if argument cannot be resolved to a URL.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
516 Comments : The URLs stems returned by this method are much more minimal than
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
517 : this provided by search_url(). Use of these stems requires knowledge
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
518 : of the CGI scripts which they invoke.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
519
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
520 See Also : L<search_url>()
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
521
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
522 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
523
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
524 #--------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
525 sub stem_url {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
526 #--------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
527 my($self,$arg) = @_;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
528 $arg eq 'all' and return %Stem_url;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
529 (exists $Stem_url{$arg}) ? $Stem_url{$arg}
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
530 : ($self->warn("Can't resolve argument to URL: $arg"),
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
531 $Not_found_url);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
532 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
533
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
534
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
535
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
536 =head2 viewer_url
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
537
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
538 Usage : $BioWWW->viewer_url(<string>)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
539 Purpose : To obtain the stem URL for a 3D viewer (RasMol, WebMol, Cn3D)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
540 Returns : String containing the URL (including "http://")
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
541 Argument : String
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
542 : Currently acceptable arguments are:
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
543 : rasmol webmol cn3d java (java is an alias for webmol)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
544 Throws : Warns if argument cannot be resolved to a URL.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
545 Comments : The 4-letter Brookhaven PDB identifier must be appended to the
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
546 : URL provided by this method.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
547 : The URLs listed here do not represent a complete list.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
548 : Expect this to evolve and grow with time.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
549
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
550 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
551
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
552 #---------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
553 sub viewer_url {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
554 #---------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
555 my($self,$arg) = @_;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
556 $arg eq 'all' and return %Viewer_url;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
557 (exists $Viewer_url{$arg}) ? $Viewer_url{$arg}
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
558 : ($self->warn("Can't resolve argument to URL: $arg"),
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
559 $Not_found_url);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
560 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
561
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
562
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
563
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
564 =head2 not_found_url
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
565
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
566 Usage : $BioWWW->not_found_url()
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
567 Purpose : To obtain the URL for a web page to be shown in place of a 404 error.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
568 Returns : String containing the URL (including "http://")
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
569 Argument : n/a
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
570 Throws : n/a
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
571 Comments : This URL should be customized as desired.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
572
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
573 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
574
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
575 #-----------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
576 sub not_found_url { my $self = shift; $Not_found_url; }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
577 #-----------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
578
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
579
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
580 =head2 tmp_url
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
581
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
582 Usage : $BioWWW->tmp_url()
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
583 Purpose : To obtain the URL for a temporary, web-accessible directory.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
584 Returns : String containing the URL (including "http://")
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
585 Argument : n/a
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
586 Throws : n/a
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
587 Comments : This URL should be customized as desired.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
588
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
589 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
590
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
591 #-----------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
592 sub tmp_url { my $self = shift; $Tmp_url; }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
593 #-----------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
594
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
595
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
596
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
597 =head2 search_link
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
598
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
599 Usage : $BioWWW->search_link(<site>, <value>, <text>)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
600 Purpose : Wrapper for search_url() that returns the URL within an HTML anchor.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
601 Returns : String containing the HTML anchor ( qq|<A HREF="http://..."</A>|)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
602 Argument : <site> = string to be used as argument for search_url()
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
603 : <value> = string to be appended to the search URL stem.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
604 : <text> = string to be shown as the link text (default = <value>).
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
605 Throws : n/a
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
606 Status : Experimental
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
607
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
608 See Also : L<search_url>()
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
609
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
610 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
611
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
612 #---------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
613 sub search_link {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
614 #---------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
615 my($self,$arg,$value,$text) = @_;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
616 my $url = $self->search_url($arg);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
617 $text ||= $value;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
618 qq|<A HREF="$url$value">$text</A>|;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
619 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
620
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
621
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
622
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
623 =head2 viewer_link
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
624
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
625 Usage : $BioWWW->viewer_link(<site>, <value>, <text>)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
626 Purpose : Wrapper for viewer_url() that returns the complete URL within an HTML anchor.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
627 Returns : String containing the HTML anchor ( qq|<A HREF="http://..."</A>|)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
628 Argument : <site> = string to be used as argument for viewer_url()
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
629 : <value> = string to be appended to the viewer URL stem.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
630 : <text> = string to be shown as the link text (default = <value>).
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
631 Throws : n/a
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
632 Status : Experimental
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
633
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
634 See Also : L<viewer_url>()
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
635
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
636 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
637
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
638 #----------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
639 sub viewer_link {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
640 #----------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
641 my($self,$arg,$value,$text) = @_;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
642 my $url = $self->viewer_url($arg);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
643 $text ||= $value;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
644 qq|<A HREF="$url$value">$text</A>|;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
645 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
646
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
647
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
648
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
649 =head2 html
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
650
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
651 Usage : $BioWWW->html(<string>)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
652 Purpose : To obtain HTML-formatted text for frequently needed web-page messages.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
653 Returns : String containing the HTML anchor ( qq|<A HREF="http://..."</A>|)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
654 Argument : String.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
655 : Currently acceptable arguments are:
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
656 : authority (mailto: link for webmaster; shows e-mail address as link)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
657 : notify (wraps mailto:authority link with text for link "please notify us")
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
658 : ourFault ("this problem is our fault. If it persists <notify-link>")
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
659 : trouble (same as ourFault but doesn't blame us for the problem)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
660 : techDiff ("we are experiencing technical difficulties. Please stand by.")
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
661 Throws : n/a
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
662 Comments : The authority (webmaster) is imported from the Bio::Root::Global.pm
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
663 : module. The value for $AUTHORITY should be set there, or
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
664 : customize this module so that it doesn't use Bio::Root::Global.pm.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
665
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
666 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
667
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
668 #----------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
669 sub html {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
670 #----------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
671 my($self,$arg) = @_;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
672 $arg eq 'all' and return %Html;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
673 (exists $Html{$arg}) ? $Html{$arg} : "<pre>(missing HTML for \"$arg\")</pre>";
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
674 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
675
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
676
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
677 ###
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
678 ### Below are accessors specialized for the Saccharomyces Genome Database
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
679 ### It is possible that they will be moved to Bio::SGD::WWW.pm in the future.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
680 ###
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
681
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
682
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
683 =head2 sgd_url
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
684
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
685 Usage : $BioWWW->sgd_url(<string>)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
686 Purpose : To obtain the webpage URL or search stem for SGD.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
687 Returns : String containing the URL (including "http://")
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
688 Argument : String
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
689 : Currently acceptable arguments (TODO).
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
690 Throws : Warns if argument cannot be resolved to a URL.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
691 Comments : This accessor is specialized for the Saccharomyces Genome Database.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
692 : It is possible that it will be moved to SGD::WWW.pm in the future.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
693
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
694 See Also : L<search_url>()
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
695
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
696 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
697
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
698 #------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
699 sub sgd_url {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
700 #------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
701 my($self,$arg) = @_;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
702 $arg eq 'all' and return %SGD_url;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
703 (exists $SGD_url{$arg}) ? $SGD_url{$arg}
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
704 : ($self->warn("Can't resolve argument to URL: $arg"),
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
705 $Not_found_url);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
706 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
707
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
708
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
709
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
710 =head2 s3d_url
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
711
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
712 Usage : $BioWWW->s3d_url(<string>)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
713 Purpose : To obtain the webpage URL or search stem for Sacch3D.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
714 Returns : String containing the URL (including "http://")
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
715 Argument : String
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
716 : Currently acceptable arguments (TODO).
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
717 Throws : Warns if argument cannot be resolved to a URL.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
718 Comments : This accessor is specialized for the Saccharomyces Genome Database.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
719 : It is possible that it will be moved to SGD::WWW.pm in the future.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
720
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
721 See Also : L<search_url>()
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
722
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
723 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
724
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
725 #-----------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
726 sub s3d_url {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
727 #-----------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
728 my($self,$arg) = @_;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
729 $arg eq 'all' and return %S3d_url;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
730 (exists $S3d_url{$arg}) ? $S3d_url{$arg}
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
731 : ($self->warn("Can't resolve argument to URL: $arg"),
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
732 $Not_found_url);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
733 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
734
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
735
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
736
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
737 =head2 sgd_stem_url
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
738
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
739 Usage : $BioWWW->sgd_stem_url(<string>)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
740 Purpose : To obtain the minimal stem URL for a SGD/Sacch3D CGI script.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
741 Returns : String containing the URL (including "http://")
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
742 Argument : String
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
743 : Currently acceptable arguments (TODO).
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
744 Throws : Warns if argument cannot be resolved to a URL.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
745 Comments : This accessor is specialized for the Saccharomyces Genome Database.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
746 : It is possible that it will be moved to SGD::WWW.pm in the future.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
747
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
748 See Also : L<search_url>()
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
749
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
750 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
751
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
752 #-----------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
753 sub sgd_stem_url {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
754 #-----------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
755 my($self,$arg) = @_;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
756 $arg eq 'all' and return %SGD_stem_url;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
757 (exists $SGD_stem_url{$arg}) ? $SGD_stem_url{$arg}
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
758 : ($self->warn("Can't resolve argument to URL: $arg"),
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
759 $Not_found_url);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
760 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
761
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
762
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
763
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
764 =head2 s3d_link
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
765
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
766 Usage : $BioWWW->s3d_link(<site>, <value>, <text>)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
767 Purpose : Wrapper for s3d_url() that returns the complete URL within an HTML anchor.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
768 Returns : String containing the URL (including "http://")
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
769 Argument : <site> = string to be used as argument for s3d_url()
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
770 : <value> = string to be appended to the s3d URL stem.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
771 : <text> = string to be shown as the link text (default = <value>).
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
772 Throws : n/a
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
773 Status : Experimental
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
774 Comments : This accessor is specialized for the Saccharomyces Genome Database.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
775 : It is possible that it will be moved to SGD::WWW.pm in the future.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
776
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
777 See Also : L<s3d_url>(), L<sgd_link>()
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
778
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
779 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
780
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
781 #--------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
782 sub s3d_link {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
783 #--------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
784 my($self,$arg,$value,$text) = @_;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
785 my $url = $self->s3d_url($arg);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
786 $text ||= $value;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
787 qq|<A HREF="$url$value">$text</A>|;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
788 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
789
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
790
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
791
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
792 =head2 sgd_link
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
793
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
794 Usage : $BioWWW->sgd_link(<site>, <value>, <text>)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
795 Purpose : Wrapper for sgd_url() that returns the complete URL within an HTML anchor.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
796 Returns : String containing the URL (including "http://")
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
797 Argument : <site> = string to be used as argument for sgd_url()
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
798 : <value> = string to be appended to the sgd URL stem.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
799 : <text> = string to be shown as the link text (default = <value>).
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
800 Throws : n/a
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
801 Status : Experimental
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
802 Comments : This accessor is specialized for the Saccharomyces Genome Database.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
803 : It is possible that it will be moved to SGD::WWW.pm in the future.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
804
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
805 See Also : L<sgd_url>(), L<s3d_link>()
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
806
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
807 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
808
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
809 #--------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
810 sub sgd_link {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
811 #--------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
812 my($self,$arg,$value,$text) = @_;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
813 my $url = $self->sgd_url($arg);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
814 $text ||= $value;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
815 qq|<A HREF="$url$value">$text</A>|;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
816 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
817
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
818
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
819 #########################################################################
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
820 ## INSTANCE METHODS
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
821 #########################################################################
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
822
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
823 ## Note that similar functions to those presented below are also availble
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
824 ## via L. Stein's CGI.pm. These are more experimental versions.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
825
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
826 =head2 start_html
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
827
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
828 Usage : $BioWWW->start_html()
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
829 Purpose : Prints the "Content-type: text/html\n\n<HTML>\n" header.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
830 Returns : n/a; This method prints the Content-type string shown above.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
831 Argument : n/a
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
832 Throws : n/a
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
833 Status : Experimental
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
834 Comments : This method prevents redundant invocations thus avoiding th
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
835 : accidental printing of the "content-type..." on the page.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
836 : If using L. Stein's CGI.pm, this is similar to $query->header()
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
837 : (Does CGI.pm prevent redundant invocation?)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
838
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
839 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
840
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
841 #---------------'
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
842 sub start_html {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
843 #---------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
844 my $self=shift;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
845 if(!$self->{'_started_html'}) {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
846 print "Content-type: text/html\n\n<HTML>\n";
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
847 $self->{'_started_html'} = 1;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
848 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
849 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
850
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
851
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
852 =head2 redirect
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
853
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
854 Usage : $BioWWW->redirect(<string>)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
855 Purpose : Prints the header needed to redirect a web browser to a supplied URL.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
856 Returns : n/a; Prints the redirection header.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
857 Argument : String containing the URL to be redirected to.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
858 Throws : n/a
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
859 Status : Experimental
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
860
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
861 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
862
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
863 #-------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
864 sub redirect {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
865 #-------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
866 my($self,$url) = @_;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
867
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
868 print "Location: $url\n";
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
869 print "Content-type: text/html\n\n";
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
870 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
871
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
872
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
873
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
874 =head2 pre
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
875
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
876 Usage : $BioWWW->pre("text to be pre-formatted");
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
877 Purpose : To produce HTML for text that is not to be formated by the brower.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
878 Returns : String containing the "<pre>" formatted html.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
879 Argument : n/a
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
880 Throws : n/a
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
881 Status : Experimental
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
882
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
883 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
884
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
885 #--------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
886 sub pre {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
887 #--------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
888 my $self = shift;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
889 "<PRE>\n".shift()."\n</PRE>";
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
890 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
891
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
892
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
893 #----------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
894 sub html_footer {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
895 #----------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
896 my( $self, @param ) = @_;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
897
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
898 my( $linkTo, $linkText, $modified, $mail, $mailText, $top) =
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
899 $self->_rearrange([qw(LINKTO LINKTEXT MODIFIED MAIL MAILTEXT TOP)], @param);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
900
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
901 $modified = (scalar $modified)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
902 ? qq|<center><small><b>Last modified: $modified </b></small></center>|
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
903 : '';
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
904
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
905 $linkTo ||= '';
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
906
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
907 # $top = (defined $top) ? qq|<a href="top">Top</a><br>| : '';
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
908 $top = qq|<a href="#top">Top</a>|; ## Utilizing the HTML bug/feature wherein
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
909 ## a bogus name anchor defaults to the
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
910 ## top of the page.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
911
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
912 return <<"HTML";
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
913 <p>
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
914 <hr size=3 noshade width=95%>
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
915 $top | <a href="$linkTo"> $linkText</a><br>
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
916 $modified
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
917 <small><i><a href="mailto:$mail">$mailText</a></i></small>
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
918 </body></html>
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
919
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
920 HTML
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
921 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
922
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
923
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
924 =head2 strip_html
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
925
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
926 Usage : $boolean = &strip_html( string_ref, [fast] );
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
927 Purpose : Removes HTML formatting from a supplied string.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
928 Returns : Boolean: true if string was stripped, false if not.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
929 Argument : string_ref = reference to a string containing the whole
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
930 : web page to be stripped.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
931 : fast = a non-zero value. Optional. If set, a faster
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
932 : but perhaps less thorough procedure is used for
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
933 : stripping. Default = not fast.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
934 Throws : Exception if the argument is not a scalar reference.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
935 Comments : Based on code originally written by Alex Dong Li
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
936 : (ali@genet.sickkids.on.ca).
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
937 : This is a more generic version of the function that appears
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
938 : in Bio::Tools::Blast::HTML.pm
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
939 : This version does not perform any Blast-specific stripping.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
940 :
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
941 : This employs a simple method for removing tags that
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
942 : will fail under following conditions:
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
943 : 1) if quoted > appears in a tag (does this ever happen?)
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
944 : 2) if a tag is split over multiple lines and this method is
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
945 : used to process one line at a time.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
946 :
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
947 : Without fast mode, large HTML files can take exceedingly long times to
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
948 : strip (e.g., 1Meg file with many tags can take 10 minutes versus 5 seconds
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
949 : in fast mode. Try the swissprot yeast table). If you know the HTML to be
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
950 : well-behaved (i.e., tags are not split across mutiple lines), use fast
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
951 : mode for large, dense files.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
952
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
953 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
954
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
955 #---------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
956 sub strip_html {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
957 #---------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
958 my ($self, $string_ref, $fast) = @_;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
959
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
960 ref $string_ref eq 'SCALAR' or
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
961 $self->throw("Can't strip HTML: ".
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
962 "Argument is should be a SCALAR reference not a ${\ref $string_ref}");
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
963
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
964 my $str = $$string_ref;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
965 my $stripped = 0;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
966
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
967 if($fast) {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
968 # MULTI-STRING-MODE: Much faster than single-string mode
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
969 # but will miss tags that span multiple lines.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
970 # This is fine if you know the HTML to be "well-behaved".
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
971
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
972 my @lines = split("\n", $str);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
973 foreach (@lines) {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
974 s/<[^>]+>|&nbsp//gi and $stripped = 1;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
975 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
976
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
977 # This regexp likely won't work properly in this mode.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
978 foreach (@lines) {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
979 s/(\A|\n)>\s+/\n\n>/gi and $stripped = 1;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
980 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
981 $$string_ref = join ("\n", @lines);
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
982
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
983 } else {
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
984
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
985 # SINGLE-STRING-MODE: Can be very slow for long strings with many substitutions.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
986
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
987 # Removing all "<>" tags.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
988 $str =~ s/<[^>]+>|&nbsp//sgi and $stripped = 1;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
989
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
990 # Re-uniting any lone '>' characters. Not really necessary for functional HTML
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
991 $str =~ s/(\A|\n)>\s+/\n\n>/sgi and $stripped = 1;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
992
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
993 $$string_ref = $str;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
994 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
995 $stripped;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
996 }
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
997
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
998
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
999 1;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1000 __END__
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1001
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1002 ########################################################################
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1003 ## END OF CLASS
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1004 ########################################################################
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1005
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1006 =head1 FOR DEVELOPERS ONLY
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1007
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1008 =head2 Data Members
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1009
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1010 An instance of Bio::Tools::WWW.pm is a blessed reference to a hash containing
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1011 all or some of the following fields:
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1012
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1013 FIELD VALUE
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1014 --------------------------------------------------------------
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1015 _started_html Defined the on the initial invocation of start_html()
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1016 to avoid duplicate printing out the "Content-type..." header.
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1017
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1018
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1019 =cut
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1020
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1021 1;
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1022
21066c0abaf5 Uploaded
willmclaren
parents:
diff changeset
1023