AcePerl

 view release on metacpan or  search on metacpan

README.ACEBROWSER  view on Meta::CPAN

search on the "moviedb" database, fetch this URL:

  http://your.site/cgi-bin/ace/searches/text/moviedb

If no symbolic name is specified, the default database is assumed.
  http://your.site/cgi-bin/ace/searches/text 

is equivalent to

  http://your.site/cgi-bin/ace/searches/text/default

As described in EXTENDING ACEBROWSER, another way to select among
databases is to place the CGI script itself in a directory with the
same name as the database.  For example, if you have written a
specialized CGI script called screenplay that is designed to work with 
the "moviedb" database, you could place it in a subdirectory named
moviedb, and refer to it this way:

  http://your.site/cgi-bin/ace/moviedb/screenplay

The symbolic name can actually appear anywhere in the path, so this
would work as well:

  http://your.site/cgi-bin/ace/moviedb/custom/screenplay

THE CONFIGURATION FILES

The configuration files are located in the directory selected for
acebrowser configuration.  Their names are formed by appending ".pm"
to the symbolic name of the database.  For example, the configuration
file "simple.pm" corresponds to the database "simple".

Each of the configuration files is actually an executable Perl script.
As such it can use any Perl constructions you wish, including variable
interpolation.  The purpose of the configuration file is to set a
series of configuration variables, which by convention are all
uppercase.  For example, here is an excerpt from the default.pm
configuration file:

 $HOST = 'stein.cshl.org';
 $PORT = 2005;
 $USERNAME = '';
 $PASSWORD = '';

In addition to scalar variables, the configuration file is used to set 
arrays, hashes and specially-named functions.

If you are only interested in accessing a single database, it is
easiest to modify the default.pm configuration file.  To serve
multiple databases, just make a copy of default.pm and edit the copy.

If, for some reason, Acebrowser cannot find its configuration files,
it will generate an internal server error.  The location of the
configuration files directory is stored in the module
Ace::Browser::LocalSiteDefs, typically somewhere inside the
"site_perl" subdirectory of the Perl library directory (use "perl -V"
to see where that is).  You can find out where Acebrowser expects to
find its configuration files by running the following command:

  perl -MAce::Browser::LocalSiteDefs \
       -e 'print $Ace::Browser::LocalSiteDefs::SITE_DEFS,"\n"'

To change this value, either reinstall Aceperl or edit
LocalSiteDefs.pm manually.

EDITING THE CONFIGURATION FILE

The settings in the default.pm configuration file distributed with
AcePerl should work with little, if any modification.  The following
variables may need to be tweaked:

  $ROOT = '/cgi-bin/ace';

This is the root (top level) for all the Acebrowser CGI scripts.
Change this if necessary.

 $DOCROOT = '/ace';

This is the root (top level) for all of Acebrowser's static HTML files
and images.  You will need to change this if the static files are
installed somewhere else.

 $ICONS = "$DOCROOT/ico";

This is where Acebrowser expects to find its icons. This subdirectory
holds icons and other small static images.  Note how the
previously-defined $DOCROOT variable is used.  You will probably not
need to change this.

 $IMAGES = "$DOCROOT/images";

This is where Acebrowser expects to find its "images" subdirectory.
This directory contains images generated dynamically by the ACEDB
database.  It *must* be writable by the web server user, usually
"nobody".  When the AcePerl install script creates this directory, it
makes it world-writable by default.  You may prefer to make it owned
by the "nobody" user and/or group.

 $HOST = 'stein.cshl.org';

This is the name of the host where the desired acedb server can be
found.

 $PORT = 2005;

This is the network port on which the desired acedb server is
listening.  Network ports in the range 1024-65535 are assumed to
correspond to the newer socket-based sgifaceserver.  Ports in the
range 65536-4,294,967,296 are assumed to correspond to the older
RPC-based gifaceserver.

 $USERNAME = '';
 $PASSWORD = '';

For password-protected ACEDB databases, these variables contain the
username and password.

 $STYLESHEET = "$DOCROOT/stylesheets/aceperl.css";

This is the cascading stylesheet used to set the background color,
font, table colors, and so forth.  You probably don't need to change
this, but you might want to modify the stylesheet itself.

 @PICTURES = ($IMAGES => "$HTML_PATH/images");

This array indicates the location of the "images" subdirectory.  The
first element of the array is the location of the directory as a URL,
and the second element is the location of the directory as a physical
path on the file system.  This array is ignored when running under
modperl/Apache::Registry; modperl uses $IMAGES to look up the
corresponding physical path.

 @SEARCHES   = (
	       basic => {
			name   => 'Basic Search',
			url    =>"$ROOT/searches/basic",
		       },
	       text => {
			name   => 'Text Search',
			url    =>"$ROOT/searches/text",
		       },
	       browser => {
			   name => 'Class Browser',
			   url  => "$ROOT/searches/browser",
			  },
	       query => {
			 name => 'Acedb Query',
			 url  => "$ROOT/searches/query",
			 },
	       );
 $SEARCH_ICON = "$ICONS/unknown.gif";

The @SEARCHES array sets the searches made available to users.  The
first element in each pair is the symbolic name for the search.  The
second element is a hash reference containing the keys "name" and
"url".  The name is the bit of human readable text printed in the
list of searches located at the top of the AceBrowser page.  The url
is the URL of the script that performs the search.

The $SEARCH_ICON variable selects an icon to use for the search
button.


 @HOME      = (
	      $DOCROOT => 'Home Page'
	     );


Select the URL and label for the "home" link appearing on the bottom
of each Acebrowser-generated page.  By default, the home will point to 
"/ace" directory on the local machine.

 %DISPLAYS = (	
	     tree => {
		      'url'     => "generic/tree",
		      'label'   => 'Tree Display',
		      'icon'    => '/ico/text.gif' },
	     pic => {
		     'url'     => "generic/pic",
		     'label'   => 'Graphic Display',    
		     'icon'    => '/ico/image2.gif' },
	    );

As described in EXTENDING ACEBROWSER, the %DISPLAYS hash declares a
set of pages, or "displays", to be used for displaying certain Ace
object types.

 %CLASSES = (	
	     Default => [ qw/tree pic/ ],
	   );

As described in EXTENDING ACEBROWSER, the %CLASSES hash describes how
Acedb classes correspond to displays.

 sub URL_MAPPER {
   my ($display,$name,$class) = @_;
   ...
 }

As described in EXTENDING ACEBROWSER, the URL_MAPPER subroutine allows
you to tinker with the way in which Acedb classes are turned into
links.

 $BANNER = <<END;
 <center><span class=banner><font size=+3>Default Database</font></span></center><p>
 END

The $BANNER variable contains HTML text that will be displayed at the
top of each generated page.  You will probably want to change this.

 $FOOTER = '';

The $FOOTER variable contains HTML text that is displayed at the
bottom of each generated page.  You will probably want to change this.

 $PRINT_PRIVACY_STATEMENT = 1;



( run in 0.938 second using v1.01-cache-2.11-cpan-98e64b0badf )