Andrew's Wiki
Psu Wiki
PSU Wiki
- Program using Ruby on Rails, Lighttpd
- Structure:
- Root Page: /wiki
- Wiki Administrator / List: %/wiki/:username:%
- Individual Wiki Root: %/wiki/:username:/:wikiname:%
- Wiki Page: %/wiki/:username:/:wikiname:/:pagename:%
- Page Revision: %/wiki/:username:/:wikiname:/:pagename:/:rev:%
- Edit Wiki Pages: %/wiki/:username:/:wikiname:/edit/:pagename:%
- Recent Changes: %/wiki/:username:/:wikiname:/recent%
- Administration of Wiki: %/wiki/:username:/:wikiname:/admin%
- All Pages: %/wiki/:username:/:wikiname:/pages%
- Root Admin: %/admin%
- Department Admin: %/department%
Wiki Requirements
- A wiki shall consist of a set of pages that shall be edited, created, viewed, and deleted. The users who have these abilities depends on the type of wiki being used.
- A wiki shall exist within an instructor’s wiki namespace.
- A wiki shall have a name assigned that shall be unique within the namespace in which the wiki exists.
- Wikis shall be of three types: user-protected, protected, and public.
- User-protected wikis shall have an associated list of users who have been granted access to the wiki. With granted access, a user shall be able to view, edit, and create pages within the wiki.
- Protected wikis shalll have an editing password associated with the wiki. Protected wikis shall be viewable by the public, but a user shall be able to enter the editing password in order to edit, create, or delete a page.
- Public wikis shall not have any password associated with the wiki. All vistors to the site shall be able to view, edit, create, and delete pages associated with a public wiki.
- A wiki shall have a recent changes function in which a user may be able to see changes made to the wiki within a number of days that shall be configurable by the instructor.
- A wiki shall have an “all pages” function in which viewers can view (and delete, depending on access) all pages created thus far on the wiki.
- A protected or user-protected wiki shall have an administration section in which aspects of the wiki that are changeable by the instructor can be viewed and updated.
- User Requirements*
- All users (from students to root administrators) will be authenticated by Shibboleth (the PSU authentication daemon)
- All users shall be identified by a user-id that shall be their unique PSU email (e.g. aka123 or bfg104)
- Students shall be the most basic level of user on the system. They will be able to view and edit pages on the user-protected wikis to which they have been assigned.
- Instructors shall be able to do everything students do in addition to the following:
- Create wikis within their Wiki Namespace.
- Delete pages from wikis they have created.
- Upload a list of students to be granted access to user-protected wikis.
- Department Administrators shall have all the privileges of an instructor with the following additions:
- A department administrator shall be able to upload a list of user-ids of users who shall be instructors within the system.
- A department administrator shall be able to remove instructor access for a user only if that user-id was originally granted instructor access by the department administrator’s department.
- A Department Administrator shall be associated with a single department.
- A Root Administrator shall have all the privileges of a department administrato with the following additions:
- The ability to delete wikis in any namespace.
- The ability to create wikis in any namespace.
- The ability to delete pages from wikis in any namespace.
- The ability to create pages for wikis in any namespace.
- The ability to edit pages for wikis in any namespace.
- The ability to view pages for wikis in any namespace.
- The ability to remove instructor access in any department.
- The ability to grant instuctor access in any department.
- The ability to grant department administrator access.
- The ability to remove department administrator access.
- The ability to grant root administrator access.
- The ability to remove root administrator access.
Revised on February 27, 2009 19:49:02
by
Escha Ton
(71.58.67.97)