Put Your III Library Catalog Here

This experimental system requires Netscape 3.0 or better. JAVASCRIPT MUST BE ENABLED!!! It was designed using the following monitor settings: This searches a III Web based Library Catalog and the Encyclopedia Britannica Online.

- Raleigh Muns ; Reference Librarian ; UM-St. Louis ; muns@umsl.edu


DOCUMENTATION

There are only three files:
  1. index.html
  2. catalog1.htm
  3. catalog2.htm
index.html
This is the frames control file. It sets up a frame named "panel" (upper row) into which is loaded the file catalog1.htm and a "display" (lower row) frame into which is loaded the file catalog2.htm. This file can be modified to create different sizes of frames, scrollable frames, immovable frames, etc. You should refer to HTML documentation to learn how to modify this file. To see the source code for this file, using Netscape's pull-down menu, "View" select "Document Source".
catalog1.htm
This is the file with the javascript which makes it all happen. It is loaded into the upper frame designated by the file index.html with the name "panel". To use it initially, do a mass find and replace operation on the text string "put.your.url.here" (without quotes). Change "put.your.url.here" to the URL of your III catalog's base address. For example, the University of Missouri III Web OPAC is at:
http://laurel.lso.missouri.edu/
I would substitute all occurences of "put.your.url.here" with "laurel.lso.missouri.edu". This will now look for III search pages at the appropriate location. catalog1.htm has several other modifiable parts. By looking at the source code it should be clear where and how to modify things. You needn't know much HTML or much javascript, merely be able to duplicate what you see in the source file.

For example, if you can find the line starting with "Function ShowPanel ()" you will see a number of lines of code looking something like:

document.writeln('Enter Terms:');
This is the javascript code which creates the HTML form in the upper "panel" frame. You can change the cosmetics of the form easily by adding or deleting or modifying HTML code buried in the "document.writeln" lines of code. Make sure to only modify between the single quotation marks, leaving all other punctuation (aka, "java syntax") exactly as you find it.

Example:

To change "Enter Terms:" to "Enter Text --" you would use
document.writeln('Enter Text --');

Adding, deleting, or changing search indexes is also pretty straightforward. You will see a section beginning with the text:

// ADD SEARCH INDEXES BELOW.
Here's an example of what a Search index look like:
Addindx("Subject","",
    "http://put.your.url.here/search/d",
    "http://put.your.url.here/search/d?looking+for+this");
You can change the text in the first line of an "Addindx" section. For example, instead of just the word "Subject" above, you may want to specify that this is an "LC Subject Heading" or "MeSH Subject". Just change the text between the quotations marks as you desire.

Next, note that the subsequent two lines are URL's. You may modify them between the quotation marks ONLY. The first URL is the default URL to be returned in the "display" or lower frame, when the user enters no terms. You could put ANY URL here to be returned when the user leaves the entry form blank.

The second URL is activated when ANY terms are entered to be searched. The string "looking+for+this" is substituted with the arguments entered by the user, and passed to the search engine specified in the URL. In this case, the search engine is the III Web catalog, and specifically a given index. The "d" index is usually the "Subject" Index, but if it is not, just change the URL.

In fact, if you submit the search string "looking for this" (no quotes) to any search engine, the URL you see in your web browser's "Location:" or "Address:" box can be substituted in an Addindx block.

Example:

Say you want to add a "Search Yahoo!" index. Go to Yahoo! at http://www.yahoo.com/ and search for the phrase "looking for this" (no quotes). If the URL of the search appears with "+" signs, e.g.,
http://search.yahoo.com/bin/search?p=looking+for+this
You could add the index this way:
Addindx("Search Yahoo!","",
    "http://www.yahoo.com/",
    "http://search.yahoo.com/bin/search?p=looking+for+this");
Now, when you re-start with the file index.html, you should have the option "Search Yahoo!" in addition to all your other indexes. In fact, this entire system is based on the Internet search resources called "Snarks" and "Boojums" which are designed to search multiple internet search engines from one simple navigable interface. For more information about Boojums, see:
http://www.jesus.org.uk/snark/boojum.html
A special case occurs when you have a dummy index which calls up a document whether or not anything is entered by the user. Here's an example of how one would pull up a file called help.htm independent of anything being entered in the search box. Note that the second URL contains a dummy (unused) argument of "looking+for+this".
Addindx("HELP","",
    "help.htm",
    "help?looking+for+this");
In practice, this means that anyone selecting the dummy index "HELP" will see the file "help.htm" in the "display" frame at the bottom whether or not they enter any search terms. The search terms are ignored.

Finally, you can rearrange the order of your indexes in this file (catalog1.htm), which will be reflected in the order that they are displayed. If you want "Title" to be displayed before "Subject" just move the block of Addindx javascript in front of the block of "Subject" code.

catalog2.htm
This is the file that is initially loaded in the bottom frame designated by the name "display" by the file index.html. You are reading catalog2.htm right now. This file can be modified at will.