--- /dev/null
+#!/bin/bash
+
+# This script will search a website and gather up all of the <title></title> for each page
+# the results will land in out.csv
+# This is a nice aid to help us find pages that do not have the "right" headings
+
+wget --spider -r -l inf -w .25 -nc -nd $1 -R bmp,css,gif,ico,jpg,jpeg,js,mp3,mp4,pdf,png,PNG,JPG,swf,txt,xml,xls,zip 2>&1 | tee wglog
+
+rm out.csv
+cat wglog | grep '^--' | awk '{print $3}' | sort | uniq | while read url; do {
+
+printf "%s* Retreiving title for: %s$url%s " "$bldgreen" "$txtrst$txtbld" "$txtrst"
+printf ""${url}","`curl -# ${url} | sed -n -E 's!.*<title>(.*)</title>.*!\1!p'`" , " >> out.csv
+printf " "
+}; done
+
-Adding Carousels to Your Public Catalog
----------------------------------------
+= Adding Carousels to Your Public Catalog =
+:toc:
This feature fully integrates the creation and management of book carousels into Evergreen, allowing for the display of book cover images on a library’s public catalog home page. Carousels may be animated or static. They can be manually maintained by staff or automatically maintained by Evergreen. Titles can appear in carousels based on newly cataloged items, recent returns, popularity, etc. Titles must have copies that are visible to the public catalog, be circulating, and holdable to appear in a carousel. Serial titles cannot be displayed in carousels.
Each of these interfaces are detailed below.
[[carousel_types]]
-CAROUSEL TYPES
-~~~~~~~~~~~~~~
+== CAROUSEL TYPES ==
The Carousel Types administrative interface is used to create, edit, or delete carousel types. Carousel Types define the attributes of a carousel, such as whether it is automatically managed and how it is filtered. A carousel must be associated with a carousel type to function properly.
image::carousel2.png[Carousel Types configuration screen]
-Attributes of Carousel Types
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+=== Attributes of Carousel Types ===
+
Each Carousel Type defines attributes used to add titles to the carousels associated with the type. Filters apply only to automatically managed carousels.
* *Automatically Managed* - when set to true, Evergreen uses a cron job to add titles to a carousel automatically based on a set of criteria established in the carousel definition. When set to false, library staff must enter the contents of a carousel manually.
* *Filter by Item Owning Library* - when set to true, the type includes or excludes titles based the owning organizational unit of their attached items
* *Filter by Item Location* - when set to true, the type includes or excludes titles based on the shelving locations of their attached items
-Creating a Carousel Type
-^^^^^^^^^^^^^^^^^^^^^^^^
+=== Creating a Carousel Type ===
. Go to Administration > Server Administration > Carousel Types
. Select the *New Carousel Type* button
image::carousel3.png[Carousel Types Editor screen]
-Editing a Carousel Type
-^^^^^^^^^^^^^^^^^^^^^^^
+=== Editing a Carousel Type ===
+
Users can rename a carousel type or change the characteristics of existing types.
. Go to Administration > Server Administration > Carousel Types
. Select the type you wish to edit with the checkbox at the beginning of the row for that type
. Select the Actions Button (or right-click on the type’s row) and choose Edit Type
-Deleting a Carousel Type
-^^^^^^^^^^^^^^^^^^^^^^^^
+=== Deleting a Carousel Type ===
+
Carousel types can be deleted with the Actions Menu
. Go to Administration > Server Administration > Carousel Types
. Select the Actions button (or right-click on the type’s row) and choose Delete Type; carousel types cannot be deleted if there are carousels attached
[[carousel_definitions]]
-CAROUSEL DEFINITIONS
-~~~~~~~~~~~~~~~~~~~~
+== CAROUSEL DEFINITIONS ==
+
The Carousels administration page is used to define the characteristics of the carousel, such as the carousel type, which libraries will be able to display the carousel, and which shelving locations should be used to populate the carousel.
The Carousels administration page is accessed through Administration > Server Administration > Carousels. (Please note that in the community release, this page will eventually move to Local Administration.) The interface displays existing carousels in a grid format. The grid can be filtered by organizational unit, based on ownership. The filter may include ancestor or descendent organization units, depending on the scope chosen. The columns displayed correspond to attributes of the carousel. The following are displayed by default: Carousel ID, Carousel Type, Owner, Name, Last Refresh Time, Active, Maximum Items.
Additional columns may be added to the display with the column picker, including the log in of the creator and/or editor, the carousel’s creation or edit time, age limit, item libraries, shelving locations, or associated record bucket.
-Attributes of a Carousel Definition
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+=== Attributes of a Carousel Definition ===
* *Carousel ID* - unique identifier assigned by Evergreen when the carousel is created
* *Carousel Type* - identifies the carousel type associated with the carousel
* *Maximum Items* - defines the maximum number of titles that should appear in the carousel; this attribute is enforced only for automatically maintained carousels
-Creating a Carousel from the Carousels Administration Page
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+=== Creating a Carousel from the Carousels Administration Page ===
. Go to Administration > Server Administration > Carousels
. Select the *New Carousels* button
image::carousel5.png[Carousel editor screen]
-Carousels and Record Buckets
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+=== Carousels and Record Buckets ===
+
When a carousel is created, a corresponding record bucket is also created. The bucket is owned by the staff user who created the carousel; however, access to the carousel is controlled by the carousel’s owning library. The bucket is removed if the carousel is deleted.
-View a Carousel Bucket from Record Buckets
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+=== View a Carousel Bucket from Record Buckets ===
+
A record bucket linked to a carousel can be displayed in the Record Bucket interface through the Shared Bucket by ID action.
. Go to Cataloging > Record Buckets
Users can add or remove records from the bucket. If the associated carousel is automatically maintained, any changes to the bucket’s contents are subject to being overwritten by the next automatic update. Users are warned of this when making changes to the bucket contents.
-Create a Carousel from a Record Bucket
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+=== Create a Carousel from a Record Bucket ===
+
A carousel can be created from a record bucket.
. Go to Cataloging > Record Buckets
TIP: The Create Carousel from Bucket option is visible in both Record Query and Pending Buckets; however, initiating the creation of a carousel from either of these two tabs creates an empty bucket only. It will not pull titles from either to add contents to the carousel.
-Manually Adding Contents to a Carousel from Record Details Page
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+=== Manually Adding Contents to a Carousel from Record Details Page ===
+
Titles can be added to a manually maintained carousel through the record details page.
. Go to the details page for a title record
TIP: The Add to Carousel menu item is disabled if no qualifying carousels are available
[[carousel_mapping]]
-CAROUSEL LIBRARY MAPPING
-~~~~~~~~~~~~~~~~~~~~~~~~
+== CAROUSEL LIBRARY MAPPING ==
+
The Carousel Library Mapping administration page is used to manage which libraries will display specific carousels, as well as the default display order on a library’s public catalog.
The visibility of a carousel at a given organizational unit is not automatically inherited by the descendants of that unit. The carousel’s owning organizational unit is automatically added to the list of display organizational units.
WARNING: If a carousel is deleted, its mappings are deleted.
-Attributes of Carousel Library Mapping
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+=== Attributes of Carousel Library Mapping ===
* *ID* - this is a unique identifier automatically generated by the database
* *Carousel* - this is the carousel affected by the mapping
* *Library* - this is the organizational unit associated with the particular mapping; excludes descendent units
* *Sequence Number* - this is the order in which carousels will be displayed, starting with “0” (Example: Carousel 0 at consortial level will display first. Carousel 1 set at the consortial level will appear just below Carousel 0.)
-Create a New Carousel Mapping
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+=== Create a New Carousel Mapping ===
. Go to Administration > Server Administration > Carousel Library Mapping
. Select *New Carousels Visible at Library*
image::carousel8.png[Carousel mapping editor screen]
-CAROUSELS - OTHER ADMINISTRATIVE FEATURES
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+== CAROUSELS - OTHER ADMINISTRATIVE FEATURES ==
+
+=== New Staff Permissions ===
-New Staff Permissions
-^^^^^^^^^^^^^^^^^^^^^
Includes new staff permissions:
* ADMIN_CAROUSEL_TYPES - allows users to create, edit, or delete carousel types
* ADMIN_CAROUSELS - allows users to create, edit, or delete carousels
* REFRESH_CAROUSEL - allows users to perform a manual refresh of carousels
-New Database Tables
-^^^^^^^^^^^^^^^^^^^
+=== New Database Tables ===
+
A new table was added to the database to specify the carousel and how it is to be populated, including the name, owning library, details about the most recent refresh, and a link to the Record Bucket and its contents.
Another new table defines carousel types and includes the name, whether the carousel is manually or automatically maintained, and a link to the QStore query specifying the foundation database query used to populate the carousel.
A third new table defines the set of organizational units at which the carousel is visible and the display order in which carousels should be listed at each organizational unit.
-OPAC Templates
-^^^^^^^^^^^^^^
+=== OPAC Templates ===
+
Carousels display on the public catalog home page by default. Administrators can modify the public catalog templates to display carousels where desired.
A new Template Toolkit macro called “carousels” allows the Evergreen administrator to inject the contents of one or more carousels into any point in the OPAC. The macro will accept the following parameters:
A set of CSS classes for the carousels and their contents will be exposed in style.css.tt2. Lightweight JavaScript was used for navigating the carousels, based either on jQuery or native JavaScript. The carousels are responsive.
-Accessibility Features
-^^^^^^^^^^^^^^^^^^^^^^
+=== Accessibility Features ===
* Users can advance through the carousel using only a keyboard
* Users can navigate to a title from the carousel using only a keyboard
* Users pause animated carousels
* Changes in the state of the carousel are announced to screen readers.
-OpenSRF
-^^^^^^^
+=== OpenSRF ===
+
Several Evergreen APIs are used to support the following operations:
* refreshing the contents of an individual carousel
The retrieval APIs allow for anonymous access to permit Evergreen admins to create alternative implementation of the carousel display or to share the carousels with other systems.
-Cron Job
-^^^^^^^^
+=== Cron Job ===
+
The carousels feature includes a cronjob added to the example crontab to perform automatic carousel refreshes. It is implemented as a srfsh script that invokes open-ils.storage.carousel.refresh_all.
= Introduction =
:toc:
+
The Evergreen system allows a free range of customizations to every aspect of
the system. Use this part of the documentation to become familiar with the tools
for configuring the system as well as customizing the catalog and staff client.
-== Introduction ==
+= Introduction =
+
You may be interested in re-using data from your Evergreen installation in
another application. This part describes several methods to get the data
you need.
-Circulation - Patron Record
----------------------------
+= Circulation - Patron Record =
+:toc:
[[searching_patrons]]
-Searching Patrons
-~~~~~~~~~~~~~~~~~
+== Searching Patrons ==
indexterm:[patrons, searching for]
the grid will display "No Items To Display."
-Registering New Patrons
-~~~~~~~~~~~~~~~~~~~~~~~
+== Registering New Patrons ==
indexterm:[patrons, registering]
=======
-Renewing Library Cards
-~~~~~~~~~~~~~~~~~~~~~~
+== Renewing Library Cards ==
indexterm:[library cards, renewing]
account will be removed.
-Lost Library Cards
-~~~~~~~~~~~~~~~~~~
+== Lost Library Cards ==
indexterm:[library cards, replacing]
modified the ``primary'' barcode, the new primary barcode will display in the
patron summary screen.
-Resetting Patron's Password
-~~~~~~~~~~~~~~~~~~~~~~~~~~~
+== Resetting Patron's Password ==
indexterm:[patrons, passwords]
refresh and the new password will be suppressed from view.
-Barring a Patron
-~~~~~~~~~~~~~~~~
+== Barring a Patron ==
indexterm:[patrons, barring]
To unbar a patron, uncheck the Barred checkbox.
-Barred vs. Blocked
-~~~~~~~~~~~~~~~~~~
+== Barred vs. Blocked ==
indexterm:[patrons, barring]
The screen will refresh and the indicators for the alert will be removed from
the account.
-Patron Notes
-~~~~~~~~~~~~
+== Patron Notes ==
[[circulation_patron_notes]]
indexterm:[patrons, Notes]
User accounts can be added to User Buckets by scanning individual user barcodes or by uploading a file of user barcodes directly in the User Bucket interface. They can also be added to a User Bucket from the Patron Search screen. Batch changes and batch edit sets are tied to the User Bucket itself, not to the login of the bucket owner.
=== Create a User Bucket ===
+
*To add users to a bucket via the Patron Search screen:*
. Go to *Search->Search for Patrons*.
. Go to *Actions->Add To Bucket* or right-click on a selected user account to view the _Actions_ menu and select *Add To Bucket*. The user accounts will move to the Bucket View tab and are now in the selected User Bucket.
=== Batch Edit All Users ===
+
To batch edit all users in a user bucket:
. Go to *Circulation->User Buckets* and select the *Bucket View* tab.
image::media/userbucket4.PNG[]
=== Batch Modify Statistical Categories ===
+
To batch modify statistical categories for all users in a bucket:
. Go to *Circulation->User Buckets* and select the *Bucket View* tab.
image::media/userbucket12.PNG[]
=== Batch Delete Users ===
+
To batch delete users in a bucket:
. Go to *Circulation->User Buckets* and select the *Bucket View* tab.
. Click on *Buckets* and select the bucket you want to modify from the list of existing buckets.
A shared bucket can be retrieved by going to *Circulation->User Buckets* and selecting the *Bucket View* tab. Next, click *Buckets* and select *Shared Bucket*. A dialog box called _Load Shared Bucket by Bucket ID_ will appear. Enter the ID of the bucket you wish to retrieve and click *Load Bucket*. The shared bucket will load in the Bucket View tab.
=== Permissions ===
+
All permissions must be granted at the organizational unit that the workstation is registered to or higher and are checked against the users' Home Library at when a batch modification or deletion is executed.
Permissions for Batch Edits:
-== Setting Up EDI Acquisitions ==
+= Setting Up EDI Acquisitions =
+:toc:
-=== Introduction ===
+== Introduction ==
Electronic Data Interchange (EDI) is used to exchange information between
participating vendors and Evergreen. This chapter contains technical
information for installation and configuration of the components necessary
to run EDI Acquisitions for Evergreen.
-=== Installation ===
+== Installation ==
-==== Install EDI Translator ====
+=== Install EDI Translator ===
The EDI Translator is used to convert data into EDI format. It runs
on localhost and listens on port 9191 by default. This is controlled via
kill -INT $(pgrep ruby)
-----------------------
-==== Install EDI Scripts ====
+=== Install EDI Scripts ===
The EDI scripts are "edi_pusher.pl" and "edi_fetcher.pl" and are used to
"push" and "fetch" EDI messages for configured EDI accounts.
You may choose to run the EDI scripts more or less frequently based on the
necessary response times from your vendors.
-=== Configuration ===
+== Configuration ==
-==== Configuring Providers ====
+=== Configuring Providers ===
Look in Administration -> Acquisitions Administration -> Providers
|URL |The vendor website
|======================================================================================
-==== Configuring EDI Accounts ====
+=== Configuring EDI Accounts ===
Look in Administration -> Acquisitions Administration -> EDI Accounts
|Vendor Assigned Code |Usually a sub-account designation. Can be used with or without the Vendor Account Number.
|===============================================================================================================
-==== Configuring Organizational Unit SAN code ====
+=== Configuring Organizational Unit SAN code ===
Look in Administration -> Server Administration -> Organizational Units
This interface allows a library to configure their SAN, alongside
their address, phone, etc.
-=== Troubleshooting ===
+== Troubleshooting ==
-==== PO JEDI Template Issues ====
+=== PO JEDI Template Issues ===
Some libraries may run into issues with the action/trigger (PO JEDI).
The template has to be modified to handle different vendor codes that
-== Introduction ==
+= Introduction =
+
This part will guide you through the installation steps installation or
upgrading your Evergreen system. It is intended for system administrators.
-== Installing the Evergreen server ==
+= Installing the Evergreen server =
:toc:
-=== Preamble: referenced user accounts ===
+== Preamble: referenced user accounts ==
In subsequent sections, we will refer to a number of different accounts, as
follows:
Evergreen that you will use to test connectivity and configure your
Evergreen instance.
-=== Preamble: developer instructions ===
+== Preamble: developer instructions ==
[NOTE]
Skip this section if you are using an official release tarball downloaded
autoreconf -i
------------------------------------------------------------------------------
-=== Installing prerequisites ===
+== Installing prerequisites ==
* **PostgreSQL**: The minimum supported version is 9.6.
* **Linux**: Evergreen has been tested on
make -f Open-ILS/src/extras/Makefile.install <osname>-packager
------------------------------------------------------------------------------
-=== Extra steps for web staff client ===
+== Extra steps for web staff client ==
[NOTE]
Skip this entire section if you are using an official release tarball downloaded
from http://evergreen-ils.org/downloads
-==== Install dependencies for web staff client ====
+=== Install dependencies for web staff client ===
[NOTE]
You may skip this section if you have installed the
environment variable `PATH`.
[[install_files_for_web_staff_client]]
-==== Install AngularJS files for web staff client ====
+=== Install AngularJS files for web staff client ===
1. Building, Testing, Minification: The remaining steps all take place within
the staff JS web root:
------------------------------------------------------------------------------
[[install_files_for_angular_web_staff_client]]
-==== Install Angular files for web staff client ====
+=== Install Angular files for web staff client ===
1. Building, Testing, Minification: The remaining steps all take place within
the Angular staff root:
npm run test
------------------------------------------------------------------------------
-=== Configuration and compilation instructions ===
+== Configuration and compilation instructions ==
For the time being, we are still installing everything in the `/openils/`
directory. From the Evergreen source directory, issue the following commands as
If not, please adjust PATH as needed so that the Evergreen `configure` script
can find `osrf_config`.
-=== Installation instructions ===
+== Installation instructions ==
1. Once you have configured and compiled Evergreen, issue the following
command as the *root* Linux account to install Evergreen and copy
make install
------------------------------------------------------------------------------
-=== Change ownership of the Evergreen files ===
+== Change ownership of the Evergreen files ==
All files in the `/openils/` directory and subdirectories must be owned by the
`opensrf` user. Issue the following command as the *root* Linux account to
chown -R opensrf:opensrf /openils
------------------------------------------------------------------------------
-=== Run ldconfig ===
+== Run ldconfig ==
On Debian Stretch / Buster, run the following command as the root user:
ldconfig
------------------------------------------------------------------------------
-=== Additional Instructions for Developers ===
+== Additional Instructions for Developers ==
[NOTE]
Skip this section if you are using an official release tarball downloaded
------------------------------------------------------------------------------
-=== Configure the Apache Web server ===
+== Configure the Apache Web server ==
. Use the example configuration files to configure your Web server for
the Evergreen catalog, web staff client, Web services, and administration
* xref:admin:apache_rewrite_tricks.adoc#apache_rewrite_tricks[Apache Rewrite Tricks]
* xref:admin:apache_access_handler.adoc#apache_access_handler_perl_module[Apache Access Handler Perl Module]
-=== Configure OpenSRF for the Evergreen application ===
+== Configure OpenSRF for the Evergreen application ==
+
There are a number of example OpenSRF configuration files in `/openils/conf/`
that you can use as a template for your Evergreen installation. Issue the
following commands as the *opensrf* Linux account:
xref:admin:actiontriggers_process.adoc#processing_action_triggers[Notifications / Action Triggers].
[#creating_the_evergreen_database]
-=== Creating the Evergreen database ===
+== Creating the Evergreen database ==
-==== Setting up the PostgreSQL server ====
+=== Setting up the PostgreSQL server ===
For production use, most libraries install the PostgreSQL database server on a
dedicated machine. Therefore, by default, the `Makefile.install` prerequisite
to PostgreSQL, see
http://www.postgresql.org/docs/devel/static/auth-pg-hba-conf.html
-==== Creating the Evergreen database and schema ====
+=== Creating the Evergreen database and schema ===
Once you have created the *evergreen* PostgreSQL account, you also need to
create the database and schema, and configure your configuration files to point
You can get a complete set of options for `eg_db_config` by passing the
`--help` parameter.
-==== Loading sample data ====
+=== Loading sample data ===
+
If you add the `--load-all-sample` parameter to the `eg_db_config` command,
a set of authority and bibliographic records, call numbers, copies, staff
and regular users, and transactions will be loaded into your target
for creating problem reports that developers can easily recreate with their
own copy of the _concerto_ sample data.
-==== Creating the database on a remote server ====
+=== Creating the database on a remote server ===
+
In a production instance of Evergreen, your PostgreSQL server should be
installed on a dedicated server.
-===== PostgreSQL 9.6 and later =====
+==== PostgreSQL 9.6 and later ====
+
To create the database instance on a remote database server running PostgreSQL
9.6 or later, simply use the `--create-database` flag on `eg_db_config`.
-=== Starting Evergreen ===
+== Starting Evergreen ==
+
1. As the *root* Linux account, start the `memcached` and `ejabberd` services
(if they aren't already running):
+
might not be able to successfully log in to the OPAC or web staff client until the
Apache Web server is restarted.
-=== Testing connections to Evergreen ===
+== Testing connections to Evergreen ==
Once you have installed and started Evergreen, test your connection to
Evergreen via `srfsh`. As the *opensrf* Linux account, issue the following
mailing list] for assistance before making any drastic changes to your system
configuration.
-=== Getting help ===
+== Getting help ==
Need help installing or using Evergreen? Join the mailing lists at
http://evergreen-ils.org/communicate/mailing-lists/ or contact us on the Freenode
IRC network on the #evergreen channel.
-=== License ===
+== License ==
+
This work is licensed under the Creative Commons Attribution-ShareAlike 3.0
Unported License. To view a copy of this license, visit
http://creativecommons.org/licenses/by-sa/3.0/ or send a letter to Creative
-== Upgrading the Evergreen Server ==
+= Upgrading the Evergreen Server =
+:toc:
+
Before upgrading, it is important to carefully plan an upgrade strategy to minimize system downtime and service interruptions.
All of the steps in this chapter are to be completed from the command line.
-=== Software Prerequisites ===
+== Software Prerequisites ==
* **PostgreSQL**: The minimum supported version is 9.6.
* **Linux**: Evergreen 3.X.X has been tested on Debian Stretch (9.0),
command; for example, `su - opensrf`. Once you have become a non-root user, to
become the *root* user again simply issue the `exit` command.
-=== Upgrade the Evergreen code ===
+== Upgrade the Evergreen code ==
+
The following steps guide you through a simplistic upgrade of a production
server. You must adjust these steps to accommodate your customizations such
as catalogue skins.
cp /home/opensrf/Evergreen-ILS-3.X.X/Open-ILS/examples/apache/eg.conf /etc/apache2/sites-available/eg.conf
----------------------------------------------------------
-=== Upgrade the Evergreen database schema ===
+== Upgrade the Evergreen database schema ==
indexterm:[database schema]
completed the entire upgrade and tested your system. Reingesting records
may take a long time depending on the number of bib records in your system.
-=== Restart Evergreen and Test ===
+== Restart Evergreen and Test ==
+
. As the *root* user, restart memcached to clear out all old user sessions.
+
[source, bash]
of this documentation for tips on finding solutions and seeking further assistance
from the Evergreen community.
-=== Review Release Notes ===
+== Review Release Notes ==
Review this version's release notes for other tasks
that need to be done after upgrading. If you have upgraded over several
-== System Requirements ==
+= System Requirements =
+:toc:
-=== Server Minimum Requirements ===
+== Server Minimum Requirements ==
The following are the base requirements setting Evergreen up on a test server:
* Linux Operating System (community supports Debian, Ubuntu, or Fedora)
* Ports 80 and 443 should be opened in your firewall for TCP connections to allow OPAC and staff client connections to the Evergreen server.
-=== Web Client Requirements ===
+== Web Client Requirements ==
The current stable release of Firefox or Chrome is required to run the web
client in a browser.
-=== Staff Client Requirements ===
+== Staff Client Requirements ==
Staff terminals connect to the central database using the Evergreen staff client, available for download from The Evergreen download page.
The staff client must be installed on each staff workstation and requires at minimum:
-== Introduction ==
+= Introduction =
+
This part covers the options in the Local Administration menu found in the staff
client.
-== Introduction ==
+= Introduction =
+
This part of the documentation deals with general Browser Client usage including
logging in, navigation and shortcuts.