Zope Level Management
This document describes the workings of Silva from the point of view of a Silva site Manager role. This role has the same rights as a Zope manager.
Assumptions
For the purposes of locating objects, the Silva installation is assumed to be ‘default’, where Silva is installed at the root level of a Zope instance, and named ‘silva’. All paths in this document begin with /silva.
Nomenclature
- ZMI refers to the Zope Management Interface
- SMA refers to the Silva Management Anterface (where Silva Authors, Editors and Chief Editors work).
- ZPT is a Zope Page Template.
- To limit confusion, we rarely use the word ‘user’. Silva has several built in roles (Author, Editor, Chief Editor, Manager). These are always spelled with a capital letter.
- A person viewing public pages (anonymously) is a Visitor.
General
Let’s start with a few tips which are good to know.
If you’re logged in as a Manager, the breadcrumb trail contains an extra link: /manage... that takes you directly to the Zope manage_main in that location. The access key alt-. initiates the action immediately.
In the ZMI of the Silva root, “Silva /edit...” is the third tab. In between comes the “Services” tab, which contains Silva application logic, further detailed below.
In the ZMI on lower levels, there is now Services tab, and the second tab is called “Silva /edit...”. That takes you to the SMI at the current level.
A few key aspects are defined in the Zope properties tab of the Silva root. See the Properties section below (e.g. to change the help location).
Objects in the Silva root
What follows is a quick listing, with links to more information, of the objects found in a Silva root. Most of these items have code that resides on the file system.
In
the ZMI, at /silva/manage or /silva/manage_main, you’ll see a number of
Zope and Silva objects. Silva objects are Publications, Folders,
Documents, etc.
Note that if Silva content objects are present in the root publication, those items will be mingled in the contents listing as well.
Members
Folder
containing information about Silva members, i.e. Zope users who have
been assigned a Silva specific role. Normally this folder should be
left alone; the Member objects are created implicitly on demand.
Removing a Member object does not revoke the roles from the
corresponding user; it only removes the additional information
available via the “user settings” page of the SMI.
content.html
ZPT that helps render public pages. See Template design
frontend.css
Cascading Style Sheet that determine the typographical styles in the Preview screen and public pages. See Template design
globals
This
folder (silva/globals) resides on the file system. It contains Silva
user interface elements, and will be overwritten in an upgrade.
index
A Silva index document in the Silva root (or Silva
‘top’, as it’s called in the documentation for
Author Editor/Chief).
index_html
A Python script that handles web requests. See Template design
layout_macro.html
ZPT macro that renders public pages. See Template design
preview_html
A Python script that handles Silva previews. Will
be covered in the Silva Developer documentation inside the Silva product download.
rename-to-override.html
ZPT that can be used to create custom
pages. See Template design
standard_error_message
ZPT which displays an error message in Silva style (as opposed to Zope
style).
standard_unauthorized_message
ZPT which displays an unauthorized message in Silva style (as opposed
to Zope style).
Silva Services
Silva Services are found in the Silva root in the ZMI. Click on the Services tab to see the list of Service options. Some services have settings that can be modified. Configurable services have a title following the id, e.g.:
service_messages (Silva Message Service)
Other services have no adjustable settings; these don’t have a title.
If you click the id you’ll get a screen with a description of the
service.
The service_extensions (Silva Product and Extension Configuration)
This service allows configuration of Silva core and extension products. Your own and third
party extensions can be activated and deactivated here.
SilvaNews is an
example of an extension – it’s not part of the Silva core
– that must be installed on the file system. Depending on what's been installed the listing will change. Following are several default services:
service_files (Silva Files Service)
Controls storage of Silva File objects
service_members (Silva Membership Service)
Controls membership / subscription issues.
service_message (Silva Message Service)
Set up email address for workflow support.
Managing Silva 'Legacy' layout templates
Note: this section describes the 'legacy' layout system. This ZODB-based approach has been superseded by the SilvaLayout product and silva.core.layout. If you're creating a new layout we recommend using silva.core.layout. However you can use the legacy layout for quick proof of concept work and transfer most of the template work to the file system later.
The default Silva layout templates can be reinstalled – e.g.
after an upgrade – with the install default layout button Service Extensions.
It may be that you have modified some of the existing layout
templates, such as the stylesheet frontend.css. Existing
templates won’t be overwritten. Instead the prefix ‘default_’ will
be prepended to the new id, preserving your work yet allowing you
to examine any differences.
On the Zope level, go to the Silva root
Remove or rename existing layout templates, such as:
frontend.css
layout_macro.html
content.html
standard_error_message
Note that there are other items, but if they’ve changed, you’ll be notified.
Go to the Services tab of the Silva root.
Click on service_extensions (Silva Product and Extension Configuration).
In the Silva Core box, click the install default layout button. Wait for the result screen.
Click the name of your Silva root in the breadcrumb trail. This returns you to the Contents tab of the root, where you will see the newly installed templates. If old ones exist, the prefix ‘default_’ will be prepended to the id.
Silva upgrades and layout templates
Make a backup before you upgrade.
When you upgrade, sometimes the stylesheet ‘frontend.css’ has been
adjusted. If this is the case, it will be noted in UPGRADE.txt (we
know everybody reads it :-) We recommend – especially if you haven’t
changed the stylesheet – that you delete/rename the
old one and install default layout. If
you see red text in the SMI or preview this is a signal
that your frontend.css should be updated, since you’re missing
key selectors for content display.
If you are upgrading Silva between major versions it’s a good idea
to look in the new template layout_macro.html. Often there are
improvements – such as related link references (<link
rel="...) for accessibility – and optimizations in the tal
code. Don’t forget to read the Upgrade.txt inside the Silva product download.
Silva root properties
Several key aspects are defined in the properties tab of the Silva root.
title: standard Zope title
help_url: defines the URL of the ‘alt-?’ link in the Silva Management Area. This will need adjustment if the id of the Silva root is not 'silva', or if you want to provide a customized help page.
comment: a placeholder. In the Silva management area, comments can be entered in the properties screen. This metadata is not acquired by underlying items.
access_restriction: this feature to restricts access to the Silva site to specified IP ranges. This is also edited via the Access Screen in the Silva management area.
Silva backup

Fig. 1. View of the Silva (Shakespeare) portal in the ZMI
To
make a simple Zope backup:
Place a check in the checkbox by the Silva root. In Fig. 1 it’s
the Silva icon next to Shakespeare.
Choose Export at the base of the
listings and Export your site. The file you save is a zexp file.
To import a Silva site place a zexp file in the import directory of Zope, choose Import at the base of the listings, and select the .zexp of the Silva site.
Troubleshooting
Read Troubleshooting.txt inside the Silva product download.