HomeAdministrationPrinter Friendly Version


1. LibAdmin Training Video

1.1. 2 Hour Training for LibAdmin

This training was delivered Live on June 19, 2019.

It outlines many tasks that a person with a LibAdmin login may need to complete to get full use of participation in the SPARK Community.

Here's a link to it on YouTube: 


2. Sounds in Evergreen: Listen.

2.1. Sounds at the Workstation

They can be annoying, but their purpose is to draw attention to the screen. Think twice before turning them off.

If you must--

  • Go to Administration → Workstation.

  • Click the checkbox labeled Disable Sounds?

There are also options in the community to discuss system changes to sounds:   http://docs.evergreen-ils.org/reorg/3.2/command_line_admin/_managing_audio_alerts.html

Sounds can be important for some of your workers to keep focus.  The sound for "Successful Patron Search" should remind your staff to think about the importance of the person and opportunity to serve standing there.  For some people, the sound could be annoying, for others it could allow their abilities to truly shine. 

If you could have any sound for the Successful Patron search, what would it be? 

Be the energy you want to see in the SPARK community.

3. Staff Accounts

3.1. Descriptions of Staff Accounts: Permissions

A person who works for your library will typically have two accounts.  They will have usually choose to have an account in their own name that they applied for in order to use your library location borrowing privileges--this is their personal account as a patron/customer of your library.  This account does not change if they change employment status with your library.  
They will also have an additional account, an account that has STAFF Permissions that is used to login to Evergreen to do their work. 

Here is a breakdown of the current types of Staff Accounts by Permission Type: 
Staff members can be assigned both a primary and a secondary Staff Function.
  • CircClerk: Can perform basic circulation functions.
  • CircSupervisor: Can perform same tasks as a CircClerk plus they can override special circumstances such as allowing a patron to check out materials even though he has exceed the fine threshold, checking out a book with an available hold to another patron etc.  They can also upload Offline Circulation Transactions and run reports.
  • Copy Cataloger: Can add copies and call numbers to existing bib records and edit them.
  • Tech Services: Copy Cataloger functions plus they can create, import, and edit MARC records and perform all acquisitions and serials control functions.
  • LibAdmin: Can perform all above functions. In addition, they can create report templates, edit receipt templates, change library hours, customize thestaffclient, create workstations, etc. This is typically reserved for library directors and Tech Support people.
  • SYSADMIN:  There are additional higher levels of accounts that are used by PaILS Staff and contracted vendors.

PaILS Support Staff are currently working on a project to more clearly define these permissions and maybe to add additional levels to empower the community. 

It is important to understand the security of your login, especially with the Web Client.  **Permissions that allow a person to create/register a new workstation should be carefully monitored to prevent access to patron data from locations outside the library.

Also on this page:  Download a draft of a Staff Account Policy that may be considered by PaILS at an upcoming Board meeting.   It is modeled on a policy used by Evergreen Indiana.  A suggestion might be to add this policy to the migration steps.

3.2. Assigning Staff Accounts

Assigning a Staff Account in SPARK is similar to assigning a patron account. 

People with "LibAdmin" permissions at your location should know how to assign, edit, and delete/make inactive staff accounts.

Here are the recommended protocols:

User Name should be made from the Shortcode of the the location in all capital letters with identifying characters of the staff member's last name.

First and Last name of the staff member with accountability for actions when signed in should be in those labeled fields.

The Password should be non-obvious to restrict access to the account, a combination of letters and numbers is best.

Set the Home Library to the location where the staff member works.

Since this is a staff account, the address and phone number should contain the library location information, including address and zip code.

The Main Profile Permission group should reflect the level of training and proficiency that the staff member has obtained. 

To add a Secondary Permission group, click on the Secondary Groups box and assign the appropriate secondary level and click "Apply Changes"

SAVE the account.

You will then have to Remember to assign a work org as described in the next section.


How to change a staff password:  Staff passwords can be changed by another staff member or by the staff member when logged in to the OPAC, like a patron would change their password.

Staff passwords should be changed from the original that was shared with you when you first came on to SPARK.



3.3. Staff Accounts- Setting up and Assigning a Work Org to a Staff Account

Permissions in Evergreen are applied to a specific location and system depth based on the home library of the user. The user will only have that permission within the scope provided by the Depth field in relation to his/her working locations.

Evergreen provides group application permissions in order to restrict which staff members have the ability to assign elevated permissions to a user, and which staff members have the ability to edit users in particular groups.

New staff accounts are created in much the same way as patron accounts, using Circulation → Register Patron or Shift+F1. Select one of the staff profiles from the Profile Group drop-down menu. See the descriptions in the previous chapter to decide which group(s) the staff member should be assigned.

Each new staff account must be assigned a Working Location which determines its access level in staff client interfaces

To assign a working location, open the newly created staff account using F1 (retrieve patron) or F4 (patron search).

  1. Select Other → User Permission Editor

    Click User Permission Editor in the Patron's Other menu
  2. Place a check in the box next to the desired working location, then scroll to the bottom of the display and click Save.

  3. Please only edit the working locations in this screen. Do NOT attempt to edit any of the permissions further down, which are assigned to the permission group selected and should not be altered individually. Please contact SPARK Support if you have questions or need further assistance.



    © 2008-2017 GPLS and others. The Evergreen Project is a member of the Software Freedom Conservancy.

    Creative Commons License

3.4. Managing an old staff account

When a staff member leaves, it's important to disable their account to prevent unauthorized access.

The following steps should be taken-

1. Change the password on all shared workstations. For example, if you use a generic login for your circulation desk computers, change the password immediately.

2. Change the password on the staffer's account asap. Also mark the account inactive.

3. Transfer any report templates. If the staff member has report templates that need to be accessed or used by someone else, log into the old account and share the template folders to the system level. To share a report folder, go into that report folder, select Manage Folder, select Share this folder from the dropdown menu, and select your system. Log into the new login access account, find the old account name under Shared Folders, and open. Check the box beside the report you want and choose Clone selected template from the dropdown menu. Then, select the new folder to clone the template into (note— you have to create folders in your new login account first).

4. To preserve report output from the former staffer, save any relevant Excel spreadsheets from the old login account directly to your preferred storage location.

5. If the staffer has any copy templates that need to be transferred , try the following- log into Evergreen on the old login account, choose Export on the Copy Editor screen, and save the file on the workstation. Then, log out of Evergreen and log back in with the new account, choose Import from the same Copy Editor screen and choose the file  just saved on the workstation. The item templates will be available with that login (on any workstation).


4. Editing Receipt Templates

4.1. Template Package for Webby by Blair County

Attached are two receipt template packages provided by Katie Martin of the Blair County Library System for the Web Version of SPARK.

The second download is the most recent version.

All the info (library name, phone numbers, etc) is database calls for customization.

It includes a reworking of the Holds Pull List to print as a List rather than a Table, to print on receipt printers.


To use these templates, you may want to download the file to a flash drive, and then upload it to each workstation that prints.

In the Spark Web Client, Upload it by going to Administration--Workstation--Print Templates, and then select the Import Button at the top right and follow these steps:

Importing Templates

  1. Click Import.
  2. Navigate to and select the template file that you want to import. Click Open.
  3. Click OK.
  4. Click Save Locally.
  5. Click OK.

Test to make sure the templates work well for your location and include the information you want. Some longer library names may wrap or break across lines, so small edits may be necessary.  Some libraries don't want the workstation login where the receipt was printed, some do. 


Note: Find useful templates created by the Evergreen community here:  https://github.com/alynn26/Evergreen-Receipts/blob/master/checkout.html

4.2. Customizing Templates in Webby

Using the Receipt Template Editor in Webby

***Two Things to Keep in Mind for Receipts in Webby***

Clearing your browser's cache/temporary files will clear any print template customization that you make unless you are using Hatch to store your customization. Be sure to export a copy of your customization as a backup so that you can import it as needed. It's a good idea to keep a copy of your receipts on a Flash Drive or other external storage device for easy backup and transfer between workstations.

If you are modifying your templates and you do not see the updates appear on your printed receipt, you may need to go into Administration → Workstation → Stored Preferences and delete the stored preferences related to the print template that you modified (for example, eg.print.template_context.bills_current).


The print templates follow W3C HTML standards (see http://w3schools.com/html/default.asp) and can make use of CSS and Angular JS to a certain extent.

The Receipt Template Editor can be found at: Administration → Workstation → Print Templates

The Editor can also be found on the default home page of the staff client.

Receipts come in various types: Bills, checkout, items, holds, transits and Payments.

Receipt Templates

This is a complete list of the receipts currently in use in Evergreen.

Table 54.1. List of Receipts

Bills, Current

Listing of current bills on an account.

Bills, Historic

Listing of bills that have had payments made on them. This used on the Bill History Transaction screen.

Bills, Payment

Patron payment receipt


List of items that have been entered in to the check-in screen.


List of items currently checked out by a patron during the transaction.

Hold Transit Slip

This is printed when a hold goes in-transit to another library.

Hold Shelf Slip

This prints when a hold is fulfilled.

Holds for Bib Record

Prints a list of holds on a Title record.

Holds for Patron

Prints a list of holds on a patron record.

Hold Pull List

Prints the Holds Pull List.

Hold Shelf List

Prints a list of hold that are waiting to be picked up.

In-House Use List

Prints a list of items imputed into In-house use.

Item Status

Prints a list of items imputed into Item Status.

Items Out

Prints the list of items a patron has checked out.

Patron Address

Prints the current patrons address.

Patron Note

Prints a note on a patron's record.


List of items that have been renewed using the Renew Item Screen.

Transit List

Prints the list of items in-transit from the Transit List.

Transit Slip

This is printed when an items goes in-transit to another location.

Editing Receipts

To edit a Receipt:

  1. Select Administration → Workstation → Print Templates.
  2. Choose the Receipt in the drop down list.
  3. If you are using Hatch, you can choose different printers for different types of receipts with the Force Content field. If not, leave that field blank. Printer Settings can be set at Administration → Workstation → Printer Settings.

    select checkout
  4. Make edits to the Receipt on the right hand side.

    receipt screen
  5. Click out of the section you are editing to see what your changes will look right on the Left hand side.
  6. Click Save Locally in the Upper right hand corner.

Formatting Receipts

Print templates use variables for various pieces of information coming from the Evergreen database. These variables deal with everything from the library name to the due date of an item. Information from the database is entered in the templates with curly brackets {{term}}.

Example: {{checkout.title}}

Some print templates have sections that are repeated for each item in a list. For example, the portion of the Checkout print template below repeats every item that is checked out in HTML list format by means of the ng-repeat in the li tag.

<li ng-repeat="checkout in circulations">
Barcode: {{checkout.copy.barcode}}<br/>
Due: {{checkout.circ.due_date | date:"short"}}<br/>

Text Formatting

General text formatting





Bold (HTML)




Bold (CSS)


<span style="font-weight:bold;">hello</span>




<span style="text-transform:capitalize;">circulation</span>




{{1 | currency}}


Date Formatting

If you do not format dates, they will appear in a system format which isn't easily readable.





{{today | date:'short'}}

8/1/17 10:18 AM

{{today | date:'M/d/yyyy'}}


Currency Formatting

Add " | currency" after any dollar amount that you wish to display as currency.

Example: {{xact.summary.balance_owed | currency}} prints as $2.50

Conditional Formatting

You can use Angular JS to only print a line if the data matches. For example:

<div ng-if="hold.email_notify == 't'">Notify by email: {{patron.email}}</div>

This will only print the "Notify by email:" line if email notification is enabled for that hold.

Example for checkout print template that will only print the amount a patron owes if there is a balance:

<span ng-if="patron_money.balance_owed">You owe the library ${{patron_money.balance_owed}}</span>

See also: https://docs.angularjs.org/api/ng/directive/ngIf


To print just a sub-string of a variable, you can use a limitTo function. {{variable | limitTo:limit:begin}} where limit is the number of characters you are wanting, and begin (optional) is where you want to start printing those characters. To limit the variable to the first four characters, you can use {{variable | limitTo:4}} to get "vari". To limit to the last five characters you can use {{variable | limitTo:-5}} to get "iable". And {{variable | limitTo:3:3}} will produce "ria".




The Sisterhood of the Traveling Pants

{{checkout.title | limitTo:10}}

The Sisterhood of th


{{patron.card.barcode | limitTo:-5}}



{{patron.family_name | limitTo:3:3}}



You can use HTML and CSS to add an image to your print template if you have the image uploaded onto a publicly available web server. (It will currently only work with images on a secure (https) site.) For example:

<img src="https://evergreen-ils.org/wp-content/uploads/2013/09/copy-Evergreen_Logo_sm072.jpg" style="width:150px;padding:5px;">

Sort Order

You can sort the items in an ng-repeat block using orderBy. For example, the following will sort a list of holds by the shelving location first, then by the call number:

<tr ng-repeat="hold_data in holds | orderBy : ['copy.location.name','volume.label']">


You can use Angular JS to add information from each iteration of a loop together to create a subtotal. This involves setting an initial variable before the ng-repeat loop begins, adding an amount to that variable from within each loop, and then displaying the final amount at the end.

<div>You checked out the following items:</div>
<div ng-init="transactions.subtotal=0">                <!-- 1 -->
<div ng-repeat="checkout in circulations">
  <li ng-init="transactions.subtotal=transactions.subtotal -- checkout.copy.price"> <!-- 2 -->
     Barcode: {{checkout.copy.barcode}}<br/>
     Due: {{checkout.circ.due_date | date:"M/d/yyyy"}}
<div style="font-weight:bold;">Total Amount Owed: {{patron_money.balance_owed | currency}}</div>
<div style="font-weight:bold;border:1px dotted black; padding:5px;text-align:center;">
You Saved<br/>
{{transactions.subtotal | currency}}<br/>              <!-- 3 -->
by borrowing from the library!</div>


This line sets the variable.


This adds the list item's price to the variable.


This prints the total of the variable.

Exporting and importing Customized Receipts

Once you have your receipts set up on one machine you can export your receipts, and then load them on to another machine. Just remember to Save Locally once you import the receipts on the new machine.

Exporting templates

As you can only save a template on to the computer you are working on you will need to export the template if you have more than one computer that prints out receipts (i.e., more than one computer on the circulation desk, or another computer in the workroom that you use to checkin items or capture holds with)

  1. Export.
  2. Select the location to save the template to, name the template, and click Save.
  3. Click OK.

Importing Templates

  1. Click Import.
  2. Navigate to and select the template that you want to import. Click Open.
  3. Click OK.
  4. Click Save Locally.
  5. Click OK.


Clearing your browser's cache/temporary files will clear any print template customizations that you make unless you are using Hatch to store your customizations. Be sure to export a copy of your customizations as a backup so that you can import it as needed.

If you are modifying your templates and you do not see the updates appear on your printed receipt, you may need to go into Administration → Workstation → Stored Preferences and delete the stored preferences related to the print template that you modified (for example, eg.print.template_context.bills_current).


© 2008-2017 GPLS and others. The Evergreen Project is a member of the Software Freedom Conservancy.

Creative Commons License



Autocut feeder problem--If your receipt cutter cuts too close to the bottom add at the end




4.3. If miles of paper print with a receipt (web client)

In Webby--

For Chrome

Make sure the paper roll is set to the correct size.

Click "more settings" and uncheck headers and footers.

Set margins to minimum


For Firefox

Select page settings from the "hamburger menu" at the top

select .1 for each margin and -blank- for each  header footer


This may help too: 

Autocut feeder problem--If your receipt cutter cuts too close to the bottom add at the end





4.4. Lackawanna Instructions for Setting up a Receipt Printer

Instructions from Lackawanna County Library System for setting up a receipt printer.

Keep in mind the instructions are specific for Lackawanna libraries.

4.5. Georgia Pines Documentation

Georgia Pines, the Evergreen Consortium in Georgia, has created these documents that explain how to modify and use the print templates in 3.x

Links are here:

Print Template Overview - https://pines.georgialibraries.org/dokuwiki/doku.php?id=circ:workstations:receipts
Print Template Fields - https://pines.georgialibraries.org/dokuwiki/doku.php?id=circ:workstations:receipt-content

5. Hardware Ideas

5.1. Recommended barcode scanners

The following barcode scanners have been recommended to work with SPARK-

  • Honeywell Mobility and Scanning 1250G-2USB -- Lackawanna
  • Zebra Scanners--Pocono Mountain Public Library


If anyone gets this scanner, just contact me and I'll explain what we did. It's not as bad as it seems.  anndirector_pmpl@yahoo.com

  • Honeywell Voyager--Altoona

 The only issues I have had with barcode scanners are :

 -old ones that run on the PS/2 port, some of which switch the capitalization of letters in barcodes if the Caps Lock on the keyboard is on

 -scanners that don't scan various types of barcodes by default. I have seen some that have Codabar turned off by default, which is quite vexing until you learn how to use the setup system that comes with the scanner. So, the library should check their barcode types against what the scanner has enabled.

  •  Datalogic Scanners--Juniata

will scan barcodes from phone screens


  •  Honeywell Xenon 1900--Lower Macungie

5.2. Monitors / Display

A wide-screen, landscape format monitor often works best with the staff client so that staff can have columns that are set to display useful information.

Any size display will work for the staff module, but some smaller, older screens cause odd wrapping to occur in the Evergreen software and limit what you can see.



6. Internet Browser Information

6.1. Firefox and Chrome

Firefox and Chrome are the recommended internet browsers for use with Evergreen.

Do not use Internet Explorer. Evergreen does not work well with Explorer.

6.2. Pop-ups

It's important to allow pop-ups in your browser, since some elements of Evergreen display in popups. Blocking those pop-ups might make it seem like Evergreen isn't working.

In Firefox

  • select Preferences from the Firefox menu and then select the Content panel. Click the Exceptions button and add your domain to the Allowed Sites list. 

In Chrome

  • At the top right, click More Settings.

  • At the bottom, click Advanced.

  • Under "Privacy and security," click Site settings.

  • Click Pop-ups and redirects.

  • At the top, set the setting to Allowed or Blocked.

6.3. OPAC and Staff Client Clash

To demonstrate patron features of My Account at your circulation workstation, use a Private or Incognito window of your browser to open the patron account in the OPAC. 
You cannot be logged into Evergreen on both the staff interface and an account on the OPAC in the same browser at the same time, even in separate windows.  If you try to do this, the My Account button at the top right of the catalog screen will NOT be visible.
Even if you close the staff interface window, you may not be completely logged out.
  • If you use Firefox, open the patron account through the OPAC in a Private Window, which should allow you to be logged into both at the same time, preserving the My Account button for logging out.  
  • If you use Chrome, use an Incognito window for the OPAC login.