# this file must be UTF-8 encoded
## Introduction to customising the appearance of a Greenstone Collection.
##
## You will need to know some basic HTML coding to edit this file.
##
## This file overrides some of the default macros used by greenstone. I've
## tried to explain what each custom macro does, so hopefully it is
## straight-forward. I'm sure it looks a little daunting at first, but the
## use of macros gives you lots of flexibility for modifying pages, once
## you get the hang of it.
## -- John McPherson, 18 June 2003
######################################################
## General comments and hints
## In these macro files, the '#' is the start of a comment. Greenstone will
## ignore everything after a '#' until the end of the line, unless it
## is part of a macro.
## To change the appearance of your Greenstone library, edit the macro files
## in greenstone/macros. If you need to add a new macro file, you must add it
## to the "macrofiles" list in greenstone/etc/main.cfg so that Greenstone
## will use it.
## To change the appearance of just a single collection, create a file
## called extra.dm in the macros directory of the collection. Collection
## specific macros should be put in there. Macros in this file will override
## the default greenstone macros, just for that collection.
## Every page action in greenstone has a name. We call it a "package".
## So the default action is the "about" package. (This is the p=about cgi
## argument). Other common actions are "document" and "help".
## If a macro isn't found that is specific to that action, then greenstone
## will fall back to macros defined in the "Global" package.
## All macros in this file belong to whichever package was the most recently
## mentioned one, with a line such as "package Global".
## macros can have optional parameters, that make them more specific.
## For example, you could have _macro_ {general case} as well as
## _macro_ [c=garish-e] {For garish-e collection only} for when the
# "c" argument (which means the collection) is set to "garish-e".
## Or _macro_ [l=fr] {french case} for
## when the language is set to French. This is how we cope with different
## language interfaces.
## Collection specific macros put into the main macro files must have a
## collection parameter ([c=garish-e]), otherwise they will apply to all
## collections. Macros in a collection's extra.dm do not need this parameter.
## Don't refer to a macro's name inside the same macro, otherwise greenstone
## will go into a recursive loop printing out the macro...
## I've put HTML comments like in the macros
## so that you can see them when you do "view source" on a web page, to
## help see the effect of changes of these macros.
## _httpcimages_ is a macro that expands to the images directory of the
## current collection. Any collection images or stylesheets should be put
## there.
## The macros below modify the appearance of a specific greenstone collection.
## It makes all the pages include a style-sheet, so that you can put
## html-related appearance stuff (such as font colours and faces) in there,
## rather than editing the macros for each piece of text.
## mozilla has excellent CSS support - Netscape 4 and IE both have
## incomplete implementations, but mostly work with the simple CSS I've used
## here as a demonstration.
##
## Edit the file garish-e/styles/style.css to change the colours and fonts.
##############################################################################
package Global
##############################################################################
## default macros - can be overridden by specific packages. The normal versions
## of these macros are in the file base.dm (and in the language-specific
## macro files such as english.dm and french.dm)
## These 2 macros are used for highlighting text that matched a query when
## displaying a document. The default is to set the background to yellow.
##
## Note - this is a joke. Please don't ever use the blink tag in real life :)
#_starthighlight_ {}
_starthighlight_ {}
_endhighlight_ {}
## navbarspacer - this is what goes between the search button and the
## classifier buttons in the navigation bar. The default is the
## horizontal green bar. You can put any html in here, and you can use
## the _widthtspace_ macro if you want the calculated gap between the
## buttons.
## Note, navigation bar macros are defined in nav_css.dm, not base.dm
## Note - netscape 4.x needs a space between the br and the /
#_navbarspacer_ {
}
## If you don't like the look of that, you could comment the above line out
## and uncomment one of the following definitions for navbarspacer:
## This will stack the buttons one above the other (they are in a table) with
## our image as separator. This closes the current row and starts a new one.
## This will use our custom image in the collection's images directory.
_navbarspacer_ {
}
## This uses our custom image instead of the green bar, but otherwise has the
## buttons horizontally, just like the default.
#
#_navbarspacer_ {
#
#}
##############################################################################
package Style
##############################################################################
## Style package is responsible for creating the header and footer of every
## page. This is special as there is no style action as such - the other
## actions include macros from here.
## htmlhead is used by the default _header_ macros. It prints out the
## beginning of an html file, including the header. It includes the
## _cssheader_ macro, which links to external stylesheets, and includes
## some image declarations. To override the entire style, write a new
## _cssheader_ macro here
#_cssheader_ {
#
#}
## To keep most of the standard greenstone style, and just override a few
## style declarations, we can define _collectionspecificstyle_, which is
## included in the default _cssheader_ macro. The title of a stylesheet
## link must be 'Greenstone Style', in order for it to be used in
## conjunction with the main stylesheet.
## Here we include the garish-e collection's stylesheet, which defines the
## page color to pink.
## We also remove the background image for the page to get rid of the green
## swirly bar, and specify a new (blue) background image for hover
## (mouse over) on the navigation bar buttons
_collectionspecificstyle_ {
}
## The default _pagebanner_ includes the collection's logo, the
## home/help/preferences buttons, and a large image that says whether
## you're viewing the about page, the search page, the titles page, etc.
## Uncomment this or define style:pagebanner to something else if you don't
## want any of those images appearing
## Remove banner entirely
#_pagebanner_ {}
## Just leave in the home button
_pagebanner_ {
_phindclassifier_ _collageclassifier_
) _If_("_cgiargcl_" eq "search",