The Stony Brook Mathematics Web Site HOW-TO last updated: 26 June 2002 The website is designed in a modular fashion so as to make for ease of maintenance. This means that each page is dynamically created using SSI. Here is an explanation of the tree: content This directory contains the "information" part of each page: the center "content" portion of every page comes from this directory. The directory also includes a subdirectory called "quicklinks" containing the html files for the various quicklink menus, as well as subdirectories for each of the 5 main areas of the site: people, courses, grad, undergrad, and misc.. etc This is where various service files can be found. These include the menu program (in the dropdown directory) and the css data file. html Files in this directory are made up of a series of include statements. These are the actual files called by the webserver. images All of our pictures go here. includes This is the location of the nuts-and-bolts html for the tables which create the page layout. HOW TO BUILD A PAGE Suppose you want to buid a page called mypage. In the html directory, copy the file called "template.shtml" to a file called "mypage.shtml". When you open mypage.shtml, you will see that it consists of a series of include statements. You need to modify exactly two of these, namely the quicklinks line and the content line. For the quicklink entry which has default value: replace the file name which currently reads foo.html with the quicklink menu you would like to see displayed on your page. For the content, the default value is Replace "foo.html" with mypage.html. Note that if your page belongs to a specific subdirectory you shold make the appropriate change (for example, suppose that mypage is supposed to go in the "people" section, then the include statement should read: ). Now create the file mypage.html in the "content" directory (or its appropriate subdirectory). This page should be in standard html. To get the fonts correct, you should check out the file etc/dept_style.css which lists the various enabled font styles. To use one of these font styles, say for example the "standard" one, use the following html foo stuff and etc To edit the "announcement" box, simply make your changes in the file content/announcements.html. the menus Maintaining the menus is probably the most painful task. The actual menus themselves are maintained through the file etc/dropdown/resources/custom.js. This file contains both the styles for the menu, and the actual menu entries with their urls. To enable browsers for which the menus don't work, the menu entries are repeated on the index page for each of the sections -- content/people/index.html etc. So changes should really be made in both places (or someone should write some SQL code to take care of things. I know this sucks, but hey, I had to leave *something* for you to do.) Good luck to you!