University of Minnesota
Csci9999: A Demo of CoSATS

CoSATS: Computer Science Automated Template System


CoSATS offers a lot of flexibility to easily create a class web site that uses the templates offered by the University of Minnesota. This site demonstrates what a class web site will look like using CoSATS. The examples illustrate how to configure CoSATS to work for your site.

The contents of the page you are viewing now are located in the home.html file. We recommend that you display your announcements in this page.


The links in the left navigation bar were created by placing the following files in the same directory that I have placed the index.php file:

  • assignments.html
  • exam information.html
  • final projects.html
  • help.html
  • labs.html
  • notes.html
  • office hours.html
  • related links.html
  • schedule.html
  • syllabus.html

The default order for the left navigation is alphabetical. If you would like to use a different order, you will need to update $LEFT_NAV_LIST array. The left navigation menu for this demo site was created using the following definition for $LEFT_NAV_LIST. $LEFT_NAV_LIST = array('assignments.html', 'office hours.html', 'exam information.html', 'help.html','labs.html','related links.html', 'final projects.html', 'notes.html', 'schedule.html', 'syllabus.html');

I created the "Announcements", "Check Grades," and "Bulletin Board" tags by updating the $EXTRA_LINKS variable in the index.php file to the following: $EXTRA_LINKS = '
<a href="home.html">Announcements</a><br /><br />
<a href="">Check Grades</a><br /><br />
<a href="">Bulletin Board</a><br /><br />';

I created the "CSE Labs Home" and "CSE Home" tags by updating the $EXTRA_LINKS_BOTTOM variable in the index.php file to the following: $EXTRA_LINKS_BOTTOM = '
<br /><br /><a href="">CSE Labs Home</a>
<br /><br /><a href="">/CSE Home</a>';

You can also create links to files that are located in directories other than the root directory. In this example I have created a link to an example/internal_file.html using the following code: <a href="example/internal_file.html">internal file.html</a>

Excluding Links from Left Navigation

If you have a file in your class root directory that you would like to exclude from the left navigation menu, add it to the $IGNORED_FILES_LIST array. In the root directory of this demo there is a file called not_in_left_nav.html and not_templated.html. These files have been excluded from the left navigation due to the following definition in the index.php file. $IGNORED_FILES_LIST = array('not_in_left_nav.html', 'not_templated.html');

Excluding File from Template

If you have a file that you do not want templated, add it to the $IGNORED_FILES_TEMPLATE array. not_templated.html has been added to this array, if you click on the link you will see the file as is without the template. $IGNORED_FILES_TEMPLATE = array('not_templated.html');


You can also change the color of the background and text used in the top header. For the demo I set the header background to blue with white text by setting the following variables: $BG_COLOR = '#663399';
$FG_COLOR = '#ffffff';

Class Name

You can change the text displayed in the header by setting the $CLASS_NAME variable in the index.php file. For the demo I set this variable to: $CLASS_NAME = 'Csci9999: A Demo of CoSATS';

You can also change the text used to create the home link by setting the $CLASS_NAME_SHORT variable in the index.php. For the demo I set this variable to: $CLASS_NAME_SHORT = 'Csci9999';


You are free to hardcode the announcements, however we highly recommend using the built-in announcements handler. To begin using the handler, download the announcements.php.txt file, rename it to announcements.php and copy it into your site directory. Also we recommend copying in the rss icon. This will automatically create an RSS feed for you. To add or remove announcements, simply edit the announcements.php file. To display the announcements on your page, include the following HTML code within the <body> tags: <div id="announcements"></div>

Example Class Announcements

RSS icon RSS Feed

  • 09/04/2012 - Contact your professor
    Be sure you contact the professor or TAs if you have any questions.
    Have a great semester!
  • 11/20/2009 - Assignment 1 posted
    It is due on Monday
  • 09/08/2004 - Project 1 Extended
    Be sure you contact the professor if you have any questions