[ SiteAtSchool logo ] Site@School [ SourceForge.NET logo ]
Latest news: FINALLY: WEBSITE@SCHOOL (27-02-2011)
General  
Intro Developers
Developers manual
Security reports
S@S V3 Features
 
 
 
 
 
 
File: requirements.txt
Date: 2007-10-09
Author: Peter Fokker [peter (at) berestijn (dot) nl]
Subject: Requirements for Site@School version 3 - second draft


Contents
========

1. Introduction
2. General overview
3. Basics
4. Managers
5. Toolbox
6. Modules
7. Themes
8. Languagepacks
9. Manuals
10. Addons
11. Wizards
12. MySite@School
13. Conclusion


1. Introduction
===============

This documents sums up the essential features of the complete
Site@School system. This is done in manageable chunks, i.e. per
sub-system. The basic idea of the system more or less follows the
structure of the existing version as per the documentation which is
available on-line at http://wyxs.net/mansas/man2.5

Some new features are added to those of the existing system, the
latest available version of which is 2.4.10 + patches.


2. General overview
===================

When you enter the CMS, currently via logging in at
/starnet/index.php, you land in the Site@School Management
Environment. From there you can access a number of programs called
'managers'. Here is a list of managers:

* Page Manager
* File Manager
* Configuration Manager
* Account Manager
* Module Manager
* Language Manager
* Theme Manager
* Profile Manager (strong link to MySiteatschool; see below)

Furthermore, there are some tools that can be used to perform certain
specific tasks. These are all part of the Toolbox. The Toolbox is
aimed at the advanced users, whereas the Managers are to be used by
regular webmasters, assistent-webmasters and other 'casual
administrators'.

* Install Tool (for Extensions)
* Backup Tool
* Restore Tool
* Language Translate Tool
* String Replacement Tool
* Event Report Tool (logger)
* Statistics Report Tool (stats)

Extra functionality is added to the base system via Extensions.  There
are different types of extensions: Modules, Themes, Languagepacks,
Manuals and Addons.

Modules are extensions that are part of the basic Site@School
distribution. Here is a list of the modules.

* Advertisement Module
* Agenda Module
* ALLbum Module
* Calendar Module
* Chat Module
* Class Pages Module
* Email Module
* Formsbuilder Module
* Forum Module
* Guestbook Module
* Links Module
* News Module
* Newsletter Module
* News Message Module
* Search Module
* Sitemap Module
* Template Editor Module
* TV Module
* Up/Download Module

Themes are extensions that alter the visible part of a site, i.e. the
look-and-feel of the site as a site visitor sees it. There are several
standard themes part of the basie Site@School distribution. Here is a
list.

* Blue Theme
* Category Theme
* Dropdown Theme
* Easy Access Theme
* Editable Theme
* Green Theme
* Schoolyard Theme
* Standard Theme
* Print Theme (new in v3)

Language packs are extensions that make it possible to display the
prompts used by the system in a language other than EN (English).
Supported languages are:

* BG (Bulgarian)
* BR (Brazilian/Portugese)
* CZ (Chech)
* DA (Danish)
* DE (German)
* EN (English)
* ES (Spanish)
* FI (Finnish)
* FR (French)
* GB (Chinese)
* HU (Hungarian)
* IT (Italian)
* JP (Japanese)
* NL (Dutch)
* NO (Norwegian)
* PL (Polish)
* SE (Swedish)
* TR (Turkish)

Manuals are extensions that add documentation to the Site@School
system. Here is a list of available manuals.

* Site@School User Manual
* Site@School Developer Manual

Addons are extensions that are not part of the Site@School system but
are distributed with the base distribution as a service. Addons are
contributed by Site@School users. The Site@School Development Team
provides these extensions 'as-is', without any warranty whatsoever.
In the first release of v3 there will be no addons available.
Functionality of the existing addons will be incorporated in other
extensions, e.g. in the TV-module or the ALLbum.

Finally, there are separate programs that help with installing,
configuring and updating Site@School.

* Installation Wizard
* Update Wizard
* Migration Wizard.


3. Basics
=========

The complete Site@School system is available under the Gnu General
Public License. Any subsystems that are incorporated in the base
system, i.e. any third-party toolkits or chunks of code, need to be
published under a GPL-compatible license. Code borrowed from other
projects shows appropriate attribution and copyright messages.

The latest version of the current Site@School CMS (version 2.4.10 +
patches) can be considered a 'prototype' for Site@School version 3 or
'v3' for short. Many ideas should simply stay the same, but the
implementation must be redone. In some cases (Allbum, News Message)
the exact requirements have to be completely redefined and perhaps
those parts should be obsoleted and replaced or incorporated in other,
existing modules.

Some aspects of the system are expanded and streamlined. Here are a
few examples.

 * The current system has the concept of one 'public' area and one
   'protected' area. In v3 there will be unlimited areas which can
   either be 'public' or 'protected'.

 * The current system has a notion of 'sections' and 'pages' and there
   is also something in between called 'categories'. These three
   elements are used to create sites with two or three levels of
   navigation. In v3 a 'section' can have an unlimited number of
   subsections, allowing for deep nesting.

 * The current system has administrators (called 'users') on one hand
   and teachers and pupils on the other hand. Sometimes different
   roles can be used with the same account (e.g. a 'teacher' who is
   also a 'user'). In v3 there will be 'user accounts' and these
   generic user accounts can be used for various purposes by granting
   privileges in a well-structured and clean way.

It is important that the system remains faithful to the underlying
principles. See http://wyxs.net/mansas/man2.5/sasped.html. Among other
things this means that the system is certainly NOT everything to
everyone. It also means that some features will not be added to the
system.


4. Managers
===========

This section lists the important features for all Site@School
Managers. These features are largely based on the properties of the
existing Managers.


4.1 Page Manager
----------------

Existing features:

 * Adding sections to the site and giving the sections a name (for
   example: 'Our School' or 'Contact'.

 * Subdividing sections into categories. This subdivision can be
   useful when a section contains many pages. Usually, the categories
   are not visible on the site (depending on the currently selected
   Theme).

 * Adding pages to the sections or categories and giving them
   names. For example: adding a 'School Guide' page and 'Holidays'
   page to the 'Our School' section.

 * Select wether a page is a page for 'content' or for a 'module'.

 * Entering content into pages, for example, adding the content of the
   'School Guide' to the page with the title 'School Guide'. This is
   done with one of the editors.

 * Adding modules like the 'Guestbook' module or the 'News' module to
   a page.

 * Moving pages and modules to another section. This is a useful when
   the site needs restructuring.

 * Making a section and/or a page a 'home'. That is a starting point
   on the site and in a section.

 * Making sections and/or pages invisible. Useful for the Christmas
   page that is only used once a year.

 * Deleting sections and/or pages. 

 * Renaming sections and pages

 * Changing the sort order of sections and pages

Additional features in v3:

 * Moving pages and sections to other areas

 * Making elements not only invisible (in navigation) but optionally
   also totally inaccessible (the 'embargo-feature'). This feature
   could also be controlled by the system date (ie. make visible
   starting December 5, 00:00).

 * Previewing a new/modified page without the need to store it
   (prevents 'cruft' from being displayed while the page is being
   edited).


4.2 File Manager
----------------

Existing features:

 * Uploading a single file from the computer you are working on to
   the server where Site@School is running (in either the 'media' or
   the 'studentpages' directory tree)

 * Uploading multiple files at the same time with a Java applet
   (program).

 * Creating directories and subdirectories.

 * Deleting files and directories. When a directory is not empty you
   get a warning message.

 * Mass deleting of files.

 * Indications of number of files and directories in a
   directory. This is a usefull feature when checking pupils
   directories.

 * Checking directories for illegal files.

 * A button which looks for places where a file is actually used on
   the site (the [Location] button).

Additional features in v3:

 * Better overview of pupil directories by displaying the pupils'
   names in addition to the directory-number.

 * Better statistical information about pupil directories (# of files,
   # of directories) while navigating the directory tree.

 * Changing the Unix-permissions of individual files

 * Accessing directories outside the 'media' and 'studentpages'
   directory trees (e.g. the document root, for the favicon.ico)
   (selected users only)

 * Upload of multiple files via upload + unpack of a .ZIP-file


4.3 Configuration Manager
-------------------------

Features:

 * Administration of site-wide configuration settings (Configuration |
   S@S Options)

 * Administration of area-wide setting, e.g. selected theme

 * Alert management

 * Adding and deleting areas (either public or protected)

 * Renaming areas

 * Changing the sort order of areas


4.4 Account Manager
-------------------

The Account Manager can be used to manipulate user accounts, either
administrators (usually referred to as 'users') or teachers and
pupils. The account Manager has the following features:

 * Adding a new user account

 * Modifying an existing user account

 * Deleting a user account

 * Mass-adding user accounts via file upload (either CSV or Fixed)

 * Mass-updating user accounts via file upload (either CSV or Fixed)

 * Adding a new project

 * Modifying the properties of an existing project

 * Deleting a project

 * Manipulation of links between accounts and groups (either 'classes'
   or 'projects') 

 * Adding a new user account using an existing account as a template


4.5 Module Manager
------------------

Features:

 * Perform administrative tasks for modules

 * Enable/disable installed modules

 * Configure modules


4.6 Language Manager
--------------------

Features:

 * Perform administrative tasks for languages

 * Enable/disable installed languages

 * Configure languages

 * Provide access to the Translate Tool (see below)


4.7 Theme Manager
-----------------

The Theme Manager deals with Themes in much the same way the Module
Manager deals with Modules. Features:

 * Perform administrative tasks for themes

 * Enable/disable installed themes

 * Configure themes

 * Edit the theme's stylesheet(s)


4.8 Profile Manager
-------------------

The Profile Manager is available for every authenticated user. Via the
Profile Manager many properties of a user's own account can be
modified, e.g. the password, the e-mail-address, the default start
page of 'MySite@School' (see below). This can be compared with the
existing 'Personal Settings' in the Configuration Manager.
 

5. Toolbox
==========


5.1 Install Tool (for Extensions)
---------------------------------

The Install Tool can be used to install and update Extensions. An
Extension may consist of a .ZIP-file with all relevant files
included. The Install Tool is able to unzip the .ZIP-file and embed
the Extension in the system. It is also possible to completely remove
the unpacked files from an Extension.


5.2 Backup Tool
---------------

This is the existing Backup Tool which is able to generate a
(compressed) file with SQL-statements that allows for recreation of
the database. The main purpose is to be able to move the existing
database from one ISP to another in a portable format.


5.3 Restore Tool
----------------

This is the complement of the Backup Tool.


5.4 Language Translate Tool
---------------------------

Existing features:

 * Add translations of existing system prompts

 * Customise existing translations of system prompts

This too is also accessible via the Language Manager.


5.5 String Replacement Tool
---------------------------

This is the existing global search and replace tool. It can search
through all pages and search/replace strings. This is a tool for
advanced users only.


5.6 Event Report Tool (logger)
------------------------------

Features:

 * Configure the logfunction

 * Show an overview of events (errors, warnings, etc.)

 * Clear the logs

 * Alert for UNusual events

 * Alert for logrotate

 * Download the logs for future reference (compressed)

 
5.7 Statistics Report Tool (stats)
----------------------------------

Features:

 * Configure one or more 'local' addresses (used to make distincion
   between 'local' and 'remote' hits)

 * Show an overview of 'remote' and/or 'local' hits of every page

 * Show an overview of hits ordered by number of hits

 * Clean up the statistics


6. Modules
==========


6.1 Advertisement Module
------------------------

(See also the Guestbook, Formsbuilder and Email modules)
Existing features:

 * A page on the site where the visitors can read the ads and add an
   advertisement.

 * Management of the ads in the Site@School module manager,
   i.e. deleting unwanted ads, making an introduction text and a
   disclaimer text to the advertisement page.

 * The ads module sends an email alert when someone adds an
   advertisement. This facilitates managing the ads. The email
   contains the originating IP address and exact date and time. This
   facilitates tracking abusers, using the log files of your server.

 * When someone gives an email address, it cannot be harvested because
   it is written as 'pupil (at) yourschool (dot) net' (example).

 * Ads will automatically be removed after an adjustable number of
   days.

 * An [Edit] function to change the module name and the program name
   to fit your language. See the 'Module manager' chapter for details
   on how to change the name.

Additional features in v3:

 * Adding an advertisement can be configured to require a CAPTCHA

 * Publication of an advertisment can not be moderated (this is a
feature)

 * There can be many sets of advertisements, each linked to a specific
   page or area.


6.2 Agenda Module
-----------------

(see also the Calendar Module)
Existing features:

 * Full screen operation with a 1024 x 768 resolution.

 * Intuitive design. The agenda almost functions like a 'paper'
   agenda.

 * For the basic operations like looking up appointments in the
   current month, no mouse clicks are needed. Just moving your mouse
   over the days of the month reveals all the appointments.

 * Unlimited number of agendas.

 * When logged in the 'Protected Area', the agenda can open with the
   agenda of that specific user (optional).

 * Possibility to 'stack' agendas to find free time slots for
   appointments in multiple agendas.

 * Edit appointments in one or multiple agendas in one operation.

 * A 'Today' function: wherever you are in the years, months or weeks,
   with one click you are on 'Today'.

 * Visual indication of 'Today' in the week agenda.

 * Easy adaptable timetable to your schools timeslots.

 * A search function to find appointments in one or multiple agendas

 * A printable week overview per user of her/his appointments.

 * An [Edit] function to change the module name to fit your
   language. See the Module manager chapter for details on how to
   change the name.

Additional features in v3:

 * Agenda will integrate in a regulare page rather than standalone, in
   a new window (without clear navigation) and in a rigid 1024 x 768
   format.

 * Appointments/events that are longer than a single time slot no
   longer require adding dummy events in subsequent time slots

 * Time slots are configurable on a per agenda basis, i.e. there are
   agendas with a division per 15 minutes, starting at 08:00 and
   ending at 18:30 but it is also possible to have an agenda with time
   slots that represent a roster including breaks (08:30-09:20,
   09:20-10:10, 10:10-11:00, 11:00-11:20. 11:20-12:10, 12:10-13:00,
   etc.)

 * Agendas can be displayed in a view-only format, much like a
   calendar from the Calendar Module, also (especially) on a public
   area.

 * Events can be flagged as being 'public' and 'private'. 'Public'
   events can be seen by others in detail, private events show only an
   indicator 'not available' for those time slots.

 * There is an 'upcoming events' feature that can link to one or more
   agendas. This means that events have the 'embargo' feature, i.e. it
   is possible to indicate when an event will be visible in a list of
   upcoming events. This makes it possible to store events many months
   in advance without cluttering an upcoming events list.

 * The agenda will have a much more streamlined and especially more
   logical user interface. (The mouse-over interface is really
   horrible!) The word 'intuitive' in the list of existing features
   above is a misnomer.

 * An agenda can be exported in iCal format.


6.3 ALLbum Module
-----------------

Existing features:

 * Create main albums which can contain sub-albums and/or files.

 * Sub-albums can contain sub-sub-albums. Deeper albums are not
   possible.

 * Upload files from the starnet/media directory or from your local
   computer to a (sub-)album.

 * Uploaded files are sorted on their filename alphabetically.

 * Facility to upload multiple files in one go from your local
   computer

 * Select and then delete or move the selected objects.

 * Select all objects.

 * Hide objects.

 * Edit the title and description of an object.

 * Re-order albums, sub-albums or objects.

 * Configure the number of objects shown per page, the number of
   objects shown per row and the horizontal size of pictures and
   thumbnails.

 * A welcome text for the album.

 * Send alerts when something changes on the album page.

 * The ALLbum can contain files of any type but in practice the
   following common formats will be used:
    o Image files: .jpg, .gif, .png.
    o Acrobat reader files: .pdf.
    o Audio files: .wav, .mp3, ram.
    o Word document files: .doc
    o Video files: .avi. .mpg 

 * If 'imagemagick' or 'gdlib' is installed in your version of PHP,
   thumbnails are automatically created when a picture is added to an
   album.

 * Albums can be connected to pages which can be on the public site
   and on the protected area.

 * An album can have the form of a slideshow.

 * An [Edit] function to change the module name and the program name
   to fit your language. See the Module manager chapter for details on
   how to change the name.

Additional features in v3:

 * The module will be completely overhauled in order to create a clean
   an easy-to-use interface

 * The search function (see Search Module) can also be used to search
   through allbum comments

 * Various other features that are common in other gallery programs
   will be implemented, e.g. image tags, visitor ratings, but the
   exact list of new features still has to be discussed.


6.4 Calendar Module
-------------------

(see also the Agenda Module)
Existing features:

 * You can have as many calendars as you want. To use this feature,
   each calendar must have a unique page name.

 * The entries in the calendar can have different forms:

   o Caption, with a longer text that becomes visible via a mouse over
     that shows a popup with the longer text.

   o A text that fills the particular day.

   o A blank day. With a mouse over the text becomes visible in a popup.

   o The same as above, but on multiple subsequent days. Easy for
     holidays.

   o More events on one day.

   These possibilities enable having little visible text, for example
   'Bustrip', and a long text body which becomes visible on a mouse
   over. Or, you can have a 'clean' calendar where entries only become
   visible via mouse over, etc.

 * The size and colors of a calendar can be adapted to your school
   site's layout and colors.

 * An [Edit] function to change the module name and the program name
   to fit your language. See the Module manager chapter for details on
   how to change the names.


6.5 Chat Module
---------------

Existing features:

 * Site@School users, teachers and pupils can login in chat rooms with
   their own Site@School login name and password.

 * The chat rooms are closed to the public. Guests can get a password
   for entering a chat room. It's possible to completely disallow
   public access to a chat room.

 * Unlimited number of chat rooms on the site. Chat rooms are bound to
   pages. In a chat room a private messages can be sent to one of the
   participants.

 * An audio signal is produced when a message is received.

 * A welcome text for each chat login page.

 * A welcome text for each chat room.

 * Adjustable refresh rate. Depending on the interaction speed the
   refresh rate can be set. A chat for a chess game can have a lower
   refresh rate than a 'spoken' session. A lower refresh rate is a
   lower server load.

 * Adjustable height and width of the chat page to fit your school
   site's layout.

 * Extensive logging of chat sessions on date, time, username,
   messages and IP address of the users' computers.

 * Chat sessions can be saved for further use.

 * An [Edit] function to change the module name and the program name
   to fit your language. See the 'Module manager' chapter to change
   the names.

Additional features in v3:

 * The audio signal can be disabled


6.6 Class Pages Module
----------------------

Existing features:

 * Management of pupils, teachers and project pages, i.e. you can
   create, view, delete and approve pages for the pupils, the teachers
   and for projects.

 * Up to 99 pages on the site for each teacher and pupil. We recommend
   not to give this number of pages to pupils. The number of pages is
   set in 'Configuration' | 'Working environment'.

 * Unlimited number of pages for a project.

 * When an individual has more pages, automatic links are provided to
   link her pages.

 * Only pages with content are shown on the site.

 * A WYSIWYG text editor with the same features as the FCK
   editor. Individuals cannot change the location of their pages.

 * A login screen on the site where pupils and teachers can login to
   work on their pages.

 * The same login screen can be used for teachers to login and check
   the pupils' pages of her class. This is a handy feature of
   Site@School because you do not have to bother teachers with S@S
   Management.

 * Teachers can create new pupils, and set the e-mail alert to the
   teacher.

 * Teachers can create pages for their pupils. After creating,
   teachers can view, approve and/or delete pupils' pages.

 * An e-mail alert function that sends an email to the teacher when a
   pupil has modified a page (if this function is set to 'yes' in
   'Configuration | Pupils | Group X | Pupil Y, or when the function
   is set to 'yes' in the teacher's screen on the site. The e-mail is
   sent once a day, to prevent burying the teacher with e-mails for
   every change in a pupil's page.

 * When a teacher has given a pupil her page(s) and the pupil has not
   yet put any content on the page, that page is not shown.

 * The class pages module can be bound to a page in Site@School. On
   that page all classes and pupils can be found. It is also possible
   to give a class its own page.

 * Teachers have their web pages in the upper part of the class pages
   of their class.

 * It's possible to have one page where all the teachers' pages are
   located. This option can be selected in the pupils' pages module
   browser. See the Module manager chapter for details.

 * An [Edit] function to change the module name and the program names
   to fit your language. See the Module manager chapter for details on
   how to change the names.

Additional features in v3:

 * A more consistent user interface with buttons and links


6.7 Email Module
----------------

(See also the Advertisements, Formsbuilder and Guestbook modules)
Existing features:

 * A page on the site where the email module is located.

 * With the email module guests can send emails to you. Senders must
   specify a valid email address.

 * Emails can be sent to different persons or departments in the
   school.

 * In the configuration of the module you can make a general
   introduction and 'thank you' text.

 * For each person or department a corresponding dropdown menu text,
   an introduction and 'thank you' text can be made.

 * The website visitor can choose to whom or to which department she
   wants to send an email.

 * When the email is sent, the sender can retain the sent text and use
   'cut and paste' to save and archive the text.

 * An image can be selected to beautify the module.

 * An [Edit] function to change the module name and the program name
   to fit your language. See the Module manager chapter for details on
   how to change the names.

Additional features in v3:

 * Sending a message can be configured to require a CAPTCHA

 * There can be many mailpages, each linked to a specific page.


6.8 Formsbuilder Module
-----------------------

(see also the Guestbook, Advertisement and Email modules)
Existing features:

 * Unlimited number of forms on the site and the 'Protected Area' where
   visitors or teachers can fill out forms.

 * Form names are bound to page names; each form must have a unique
   page name.

 * Visitors can fill out forms on the site and submit them.

 * After submitting the form, the form and its content are visible for
   the visitor and can be saved with 'cut and paste'.

 * Forms can have the following options:

    o Text: Text only that gives information to the visitors.

    o Input fields: Where visitors can input text, for example, the
      answer to a question that is visible above the input field. The
      input field can have and adjustable size.

    o Yes/No option: Where visitors can say 'yes' or 'no' to question
      or a text above the 'yes' and 'no' radio buttons.

    o Dropdown menu: Visitors have a dropdown menu to select an item.

    o List with radio buttons: Visitors have a list with items. An
      item is selectable with a radio button.

 * Optionally, form data can be stored in a table and can be exported
   as a CSV (Comma Separated Value) file.

 * Which data is stored and the order in the CSV file is selectable.

 * Correctable number of entries in a form. Easy when you have
   forgotten an item between, for example, entry 7 and entry 8.

 * The content of the form can be sent to one or multiple
   administrator(s).

 * An [Edit] function to change the module name and the program name to
   fit your language. See the Module manager chapter for details on how
   to change the names.

Additional features in v3:

 * Data input can be  be configured to require a CAPTCHA

 * Additional verification can be done on input fields, e.g. min/max
   value (numeric), richtext (i.e. including HTML), plain text,
   boolean, e-mail-address, etc. etc.


6.9 Forum Module
----------------

Existing features:

 * Unlimited closed forums for teachers and pupils. Their login names
   and passwords are taken from S@S Management and are needed to enter
   the forum. When you are already logged in as pupil or teacher you
   do not have to login again.

 * Unlimited open forums for other groups or topics. To contribute to
   an open forum you have to register.

 * Posters in forums can receive the replies that are given to their
   postings via e-mail. This facility greatly reduces checking the
   forum to see if someone already has replied to a topic you sent in.

 * Management of posters, topics and content via the forum module
   manager.

 * An [Edit] function to change the module name and the program name
   to fit your language. See the 'Module manager' chapter for details
   on how to change the names.

Additional features in v3:

 * Overhaul and up to date module security-wise


6.10 Guestbook Module
---------------------

(see also the Advertisement, Formsbuilder and Guestbook module)
Existing features:

 * A page on the site where the guestbook entries can be seen.

 * A link on that page which brings the guests to the guestbook for
   signing.

 * Guests must fill in a valid email address. The address is visible
   but cannot be harvested. It has the form of 'user (at) schoolsite
   (dot) org'.

 * Management of the guestbook by inspecting and, if necessary,
   removing unwanted entries.

 * Adjustable number of guestbook entries on a page. When the number
   of entries is reached, a new page is made. Guests can select 'next
   page' and 'previous page'.

 * Email alerts can be sent when a visitor makes an entry in the
   guestbook. The email contains all the entries the guest made as
   well as the IP address. The last option facilitates tracking
   unwanted entries.

 * An [Edit] function to change the module name and the program name
   to fit your language.

Additional features in v3:

 * Adding an entry can be configured to require a CAPTCHA

 * Publication of guestbook entry can not be moderated (this is a
feature)

 * There can be many guestbooks, each linked to a specific page.


6.11 Links Module
-----------------

(see also the Up/Download Module)
Existing features:

 * Pages on the site and the Protected area where visitors can see URL
   links with descriptions. By clicking on the links the visitor can
   visit those links. The links are opened in a new window.

 * Links on a page can be categorised.

 * Unlimited number of link pages on the site and the protected
   area. Link pages are bound to page names and should have exactly
   the same page name.

 * Visitors can propose links. This option can be disabled or enabled.

 * When a visitor proposes a link, an e-mail is sent to the owner of
   the Link module page. The e-mail contains an e-mail address of the
   sender, originating IP, proposed link, proposed link title,
   proposed description. A proposed link will need to be approved
   before it is visible on your site by the module owner.

 * Proposed links can be managed by the owner of a link page.

 * An [Edit] function to change the module name and the program name
   to fit your language. See the Module manager chapter for details on
   how to change the name.

Additional features in v3:

 * The name of the person that proposed a link is also retained and
   optionally displayed in the list of links.


6.12 News Module
----------------

(see also the News Message Module)
Existing features:

 * Unlimited number of news pages on the site and the 'Protected Area'
   where the visitors can read the news. For example, each group can
   have a news page.

 * News archive for the site and the 'Protected Area' where the
   visitors can consult the news archive.

 * Management of the news page(s) in the Site@School module
   manager. Here you can add news, delete news and/or move news to the
   archive.

 * The news module uses the FCK editor. A standard template is
   available to give your news a standard markup.

 * Change the layout of your news page and, if you want, you can add
   categories to the news and/or delete them.

 * An [Edit] function to change the module name and the program name
   to fit your language. See the Module manager chapter for details on
   how to change the names.

Additional features in v3:

 * Every area can have their own News.

 * News items can be set to expire and they also have the
   embargo-feature (only publish after a certain date/time).

 * A new News template will be added that can eliminate the need for
   the News Message Module

 * Archiving a news item is optional. Expired items can be deleted
   or archived automatically.

 * News will no longer be new news after a certain period of time;
   this is also reflected in the templates which have a 'latest news'
   feature: if the latest news is expired the link will be
   automatically suppressed in the template.


6.13 News Message Module
------------------------

(see also the News module)
Existing features:

 * A page on the site where the visitors can read the messages.

 * A page on the protected area of the site where teachers can place
   the message for publication.

 * Management of the messages in the Site@School module manager,
   i.e. add, delete or change messages, making and manage introduction
   texts of the message pages.

 * A Message will automatically be removed after the number of days
   that is given by the message.

 * An [Edit] function to change the module name and the program name
   to fit your language. See the 'Module manager' chapter for details
   on how to change the name.

Additional features in v3:

 * The News Message module will obsoleted because the features will be
   integrated with the News Module.


6.14 Newsletter Module
----------------------

Existing features:

 * Unlimited number of newsletters on the site and the 'Protected
   Area'.

 * A newsletter archive for old issues for each newsletter.

 * Each newsletter can be managed by one or more newsletter owners
   (the editors of a newsletter). They only have access to their 'own'
   newsletter, archive, subscribers and applicants. All other
   newsletters are invisible.

 * All newsletters are manageable by the newslettemodule owner. She
   has all rights to all newsletters. The module owner must be a S@S
   user.

 * Newsletters can have a header and footer text for info that is the
   same for every issue. HTML tags and pictures can be part of the
   header and footer.

 * A newsletter can make use of a predefined template. HTML tags and
   pictures can be part of the template.

 * Newsletters can be sent as emails and/or published on the site.

 * The content of an issue can be in the email or the content can be
   accessible via a link in the email that brings you to the
   newsletter on the site.

 * Site visitors can subscribe, unsubscribe and contribute (optional)
   to newsletters.

 * The texts when subscribing, unsubscribing or contributing can be
   specifically made for every newsletter. HTML tags and pictures are
   possible.

 * When subscribing, visitors fill in surname, name, email address and
   a free field that can be destined by the newsletter module
   owner. For example: 'Parent/caretaker of ... in group ...', or
   'Telephone number:', etc.

 * When a visitor subscribes, an email alert is sent to the newsletter
   owner (editor). She can decide to make the applicant a subscriber
   to the newsletter.

   This feature can be turned off for each newsletter allowing
   subscribers to subscribe without intervention of the editor.

 * When a visitor subscribes, an email is sent to the applicant to
   confirm the subscription. The applicant must click a link in the
   email to confirm her application. This prevents misuse of
   subscriptions.

 * When a subscriber contributes to a newsletter an email alert with
   the content is sent to the newsletter owner (editor).

 * Contributions by subscribers are put in the WYSIWYG editor and bear
   the name and email address of the sender.

 * The newsletter owner (editor) can send a test issue to herself to
   check the issue before sending it to all subscribers.

 * Email lists in CSV format can be imported in the module. The value
   order of the file to be imported can be manipulated.

 * A search facility to search in the email addresses and supplied
   information of applicants and subscribers.

 * An [Edit] function to change the module name and the program name
   to fit your language. See the Module manager chapter for details on
   how to change the names.

Additional features in v3:

 * Automatic TOC at the top of the newsletter, with clickable links

 * Automatic increment (overrulable) of Issue-number.

 * More structured approach in adding articles and handling article
   titles and blurbs


6.15 Search Module
------------------

(See also the Sitemap Module)
Existing features:

 * A page on the site where the search module is located.

 * Enable/disable searching in invisible pages.

 * Adjustable number of results per page.

 * An adaptable welcome text where you can use HTML tags.

 * The search module can search in the News module, the Newsletter
   module, Class pages module and the ALLbum module.

 * An [Edit] function to change the module name and the program name
   to fit your language. See the 'Module manager' chapter for details
   on how to change the names.

Additional features in v3:

 * By default searches are limited to all the data that the current
   user/visitor is allowed to see. I.e. a logged-in teacher can also
   search in the protected areas whereas a simple visitor can only
   search the puplic areas.

 * Search is extended to all modules that the current user/visitor can
   access. I.e. it is also possible to search through a News Archive
   or a set of existing Newsletters.


6.16 Sitemap Module
-------------------

(see also the Search Module)
Existing features:

 * A page on the site and/or on the protected area where the sitemap
   is located.

 * The sitemap shows visitors in one view where every section and page
   on the site is located.

 * Pages and sections that are made invisible are not shown in the
   sitemap.

 * Configurable introduction text

 * An [Edit] function to change the module name and the program name
   to fit your language. See the Module manager chapter for details on
   how to change the names.

Additional features in v3:

 * By default the sitemap is limited to all the data that the current
   user/visitor is allowed to see. I.e. a logged-in teacher can also
   see the map of the the protected areas whereas a simple visitor can
   only see the current public area.

 * If an area has non-empty categories, these categories show up as an
   extra level in the sitemap.


6.17 Template editor Module
---------------------------

Existing features:

 * Create your own unique templates for the public area (i.e. your
   site) and the 'Protected Area' (the Intranet to which only teachers
   have access).

 * The layout of the different parts of the site and the 'Protected
   Area' are handled by scripts. Future extensions are easy to add.

 * Colors, logos, font types and their sizes, area sizes, texts
   etc. of the site and the 'Protected Area' can all be set to your
   preferences.

 * You can have a site optimized for your screen resolution, i.e. 600
   x 800 pixels or higher. Care is needed when using this feature
   because other users with lower screen resolutions will miss parts
   of your site.

 * When you use a template that uses CSS (Cascading Style Sheets) you
   can edit the CSS file online. See the 'Configuration manager'
   chapter, section 'S@S Options' for further details.

 * An [Edit] function to change the module name to fit your
   language. See the Module manager chapter for details on how to
   change the module name.

 * It is possible to backup and restore the editable theme settings

Additional features in v3:

 * Every area can have a different set of editable theme-parameters
   (not just a total of 2)

 * A new editable theme for a new area can be copied/cloned from an
   existing editable theme in another area

 * Apart from the rigid pixel-based dimensions it is also possible to
   specify various sizes as a percentage.

 * The logo (if any) is clickable and leads to a configurable URL.

Note:
It is very well possible that the Editable Theme will be managed from
the Theme Manager rather than via the Module Manager.


6.18 TV Module
--------------

Existing features:

 * The TV-addon can be configured the same way as an ordinary module

 * There are 4 different display options to show 1 or more pages
   o page slideshow (show a list of pages in turn)
   o scroll page (scroll through a page that is longer than the screen)
   o slideshow (show photo's) (requires Allbum module)
   o show a single page

 * Unlimited number of locations ('TV-channels') possible, each with
   a different display option and different content.

 * An [Edit] function to change the module name and the program name
   to fit your language. See the Module manager chapter for details on
   how to change the names.

Additional features in v3:

 * The tv-module works via perhaps otherwise 'invisible' pages just
   like all the other modules instead of the 'loc_id' mechanism, i.e.
   the PC with TV could have a homepage like this:
   http://www.exemplum.serveratschool.net/index.php?page=153 instead
   of
http://www.exemplum.serveratschool.net/starnet/addons/tv.php?loc_id=153


6.19 Up/Download Module
-----------------------

(see also the Links Module)
Existing features:

 * You can have two types of download pages on the site (much the same
   way as the News Module):

   o One download page where all downloadable files can be grouped in
     categories, and 

   o Different download pages on the site according to the categories
     you made. 

   A combination of the two types is possible. The last option is
   useful when you want a download page on the public site and a
   download page on the 'Protected Area', or a download page for every
   group. See the Page manager on this issue. 

 * In the up/download manager you can upload files from your computer
   to your school site. You can also add a description to the files.

 * In the 'Protected Area' teachers can upload files for the download
   pages.

 * An [Edit] function to change the module name and the program name
   to fit your language. See the Module manager chapter for details on
   how to change the names.


7. Themes
=========

Themes are self-contained files (.ZIP-files) that can be added or
deleted via the Install Tool. The Install Tool takes care of
physically installing the files in the correct position in the file
system and updating the system configuration. The actual configuration
of a Theme is done via the Theme Manager. That is the place where
properties of a Theme can be configured. The current functionality of
the Template Editor (a Module) can act as an Example. However, other
Themes can also require configuration. Some themes already have
rudimentary configuration options, accessible via editing a
'main.inc.php' file in the Theme's directory. This is obviously not
a very clean way to configure a Theme, especially when everything else
is configurable via S@S Management functions.


8. Languagepacks
================

Languagepacks are also self-contained files (.ZIP-files) that can be
added or deleted via the Install tool. It is possible to only install
one or two languages instead of 'everything'. This saves
space. Furthermore, additional languages could be installed when they
become available.


9. Manuals
==========

Manuals are also self-contained files (.ZIP-files) which can
optionally be installed via the Install Tool.

10. Addons
==========

Addons are also self-contained files (.ZIP-files) which can
optionally be installed via the Install Tool. Note that addons are
provided 'as-is'. The initial release of 'v3' will have no addons.


11. Wizards
===========


11.1 Installation Wizard
------------------------

The Installation Wizard has the following features.

 * Multiple languages supported

 * Installing Site@School from scratch on a new server

 * Optionally installing various Extensions (ie. Modules, Themes,
   etc.)

 * Optionally installing Demo-data for the Base system and all
   selected Extensions (where applicable), in the selected language if
   possible.

 * Testing the installation (a little bit like sas_check.php)


11.2 Update Wizard
------------------

Features:

 * Checking for available updates on the siteatschool.org site

 * Upgrading the existing system with the freshly downloaded one

 * Installing and de-installing Extensions

 * Testing the installation (a little bit like sas_check.php)


11.3 Migration Wizard
---------------------

Only after the rewrite of v3 is completed it will be possible to
determine the exact migration path.


12. MySite@School
=================

A new feature in v3 is the so-called 'My Site@School'-feature. This is
a Personal Control Centre for every authenticated user. Depending on
the privileges assigned to a specific user (via the Account Manager),
an authenticated user, i.e. a user that has logged in using a username
and a password, arrives in a tailormade 'start page'.

From this page it could be possible to reach

 * the various Managers ande Tools (if administrator-privileges are
assigned)

 * the list of pupil pages to approve (if the account also has the
   teacher role)

 * the list of project pages to approve (if the account is connected
   to a project)

 * the Profile Manager, allowing changes in the personal settings of
   an account

 * access to one or more 'protected' areas if this privilege was
   granted to the account

 * access to the personal agenda of the user

Also, whenever a user is logged in, an extra 'section' is added to the
regular list of sections and pages that can be accessed via
navigation. This extra section can contain links to all the other
places the user has access to (protected areas, all public areas,
agenda, pupil pages, S@S Management, etc.) Most importantly this means
that it is easy to toggle between the S@S Management part on one hand
and the view from the visitor's perspective on the other hand. This
extra section also has the option to logout the user.


13. Conclusion
==============

Most existing features of Sit@School 2.4.10 and the features described
in the manual for the unpublished version 2.5 that never was will be
retained. Added to that are several new features that provide a big
step forwared in security, maintainability, modularity and useability
of Site@School.

[eof requirements.txt]
©2007-2014 Site@School - last updated: 10-10-2007 - using Site@School - 10727 views