Simple Web Publisher

Simple Web Publisher (SWP) is a web interface to web publishing. Using HTML forms, you can create and update certain predefined areas of the CS Dept website.

Accessing SWP

Each page that is managed by SWP includes an "Edit" button, which brings you to an HTML form that allows you to modify that page's content. A general interface to all SWP data is located at /cgi-bin/auth/swp.


SWP authenticates all users by "web password." Your web password must be distinct from your unix password. Set your web password in a Linux shell by running the command

   % webpasswd

SWP makes use of cookies, so most users will rarely need to log in.

Objects and Web Pages

SWP has a front-end and a back-end. The front-end is the web interface. Objects you create or modify are stored in a database. The data in objects is used to generate web pages, but not all objects have corresponding web pages, and not everything that appears on a web page comes from a single object.

Web pages are not created until someone clicks on the "Build Pages" button. SWP builds only those pages that are affected by the most recent changes to the database.

Object Permissions

Objects in SWP have permissions just like UNIX files. Each object has an owner and group, and owners, groups and others may have varying levels of access.

Note that SWP permissions have nothing to do with web page permissions. SWP permissions only control access to the creation and modification of SWP objects.

Required Fields

Each SWP form is a list of fields. The first field is the key, and cannot be changed once an object is created. To change the key, create a new object and delete the old one.

The field names of all required fields, including the key, are typeset in bold.

Form Help

Some form fields have accompanying help text. Field names which are links indicate that help text is available. The help text appears in a pop-up window when the field name link is clicked.

Linux Command-Line Interface

There is a Linux command-line interface to SWP. It has some rough edges still, and users interested in making use of it should contact John Bazik (jsb).

One command-line interface of particular interest is bib2swp, which can load bibliography data from a bibtex database into SWP.

Object Hierarchy

Most users don't need to know about object relationships, but it is mentioned here for the curious.

An object can have an "is-a" relationship with another object. A Faculty object "is-a" User. Faculty objects inherit all the fields in a User object, and when a Faculty object is created, a User object is also created. When you change the data in a User object, the data is changed for any associated Faculty object.

Objects related in this way have the same key field. It is possible to delete an object that inherits from a "base" object, but not vice versa.