Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Question Bank


A system to collect and deliver QTI items, easily allowing derivative items to 
be authored and deposited.


-	Web server such as Apache or Lighttpd
-	PHP 5 (tested on PHP 5.2.4)
-	The Sqlite3 module for PHP
-	The cURL module for PHP
-	An instance of QTIEngine with Rest support (that is, at least revision 2447) 
	to call (the demonstration version at is used by 
-	Eqiat (imported as a subdirectory) and all of its dependencies (see its 


The source is available at <>.


Eqiat's dependency, validate, must be compiled -- see its own README file.


Extract the full tree to a directory visible to the web server.

The user running PHP must have read and write permissions to db, the database 
subdirectory. If necessary you can do this manually by running commands similar 
to the following:
	chmod 770 db
	chown :www-data db
where www-data is a group of which the user running PHP is a member.

You may also want to configure your web server not to serve anything within the 
db subdirectory. The simplest way to do that with Apache (providing the 
AllowOverride directive allows it) is to run a command such as
	echo "deny from all" >db/.htaccess

After installing you should register as a Question Bank user -- the first user 
to register is given raised privileges.


The options are constants found at the bottom of include/constants.php:
		edit these to use a custom instance of QTIEngine
		edit this to use a custom site title (it defaults to Question Bank)


At the top of the Question Bank screen are links to the authoring tool (Eqiat), 
to log in or out and to this help text. When not on the main menu there is also 
a link back to the main menu.

Logging in allows a user to save items from the authoring tool to Question Bank 
and also to rate and comment on items. There is a link to register from the log 
in page.

On the main menu are links to the authoring tool, various views of the item 
list, various ways to start playing items and a link to upload an item. If the 
current user has raised privileges there is also a link to administer users.

The authoring tool is a stock instance of Eqiat except for a link back to 
Question Bank and an action allowing an item to be saved to Question Bank. See 
Eqiat's README file or its "help" link for further details. Saving an item to 
Question Bank requires the user to be logged in.

The item list can be searched by using the form at the bottom and an existing 
view can be reordered by clicking on the column titles. Actions for each item 
are shown on that item's row and a "play these results" link is available above 
the results. Clicking this queues up all search results and takes the user to 
the play items page. Users do not need to be logged in to list and play items.

Any user (even those who are not logged in) can click "clone and edit" on an 
item. This copies the item, just changing its identifier and puts it in the 
authoring tool. The item can then be modified and (if the user logs in) saved 
back to Question Bank. A cloned item will not replace the original.

An item's owner (the user who saved it to Question Bank) has two extra options: 
edit and delete (users with raised privileges also have the latter). Clicking 
"edit" puts the item in the authoring tool without changing its identifier. If 
this item is then modified and saved back to Question Bank it will replace the 
original. When this happens a comment is automatically added to the item saying 
that it was updated and ratings are reset (though old ratings are still visible 
in corresponding comments).

When playing items navigation is available in a box on the right hand side along 
with the score associated with the previous response. Other information about 
the item is also shown in this box and any available actions.

When logged in, below the item is the commenting and rating area. The number of 
comments is displayed here with a link to show them. When clicked the comments 
will appear along with corresponding ratings. A comment can be added by typing 
it in the box. As long as the item wasn't uploaded by the current user the item 
can also be rated from 0 to 5. Such ratings are averaged and shown with the 
item's other information. Only ratings submitted since the item was last 
modified count towards the average shown.

Existing items can be uploaded from the upload item page. If the item was not 
authored in Eqiat (and so Eqiat may not be able to import it) a warning will be 
shown after it is uploaded and also next to "edit" links for this item 

Users with raised privileges have an extra page which lists all registered users 
and some related information such as whether or not they are privileged and the 
number of items they own. Actions appear here when appropriate to grant 
privileges, revoke privileges, delete the user and undelete the user. A user who 
is deleted is not totally removed from the system -- that user's comments and 
ratings remain. The user can not log in while deleted and their username on 
comments is prefixed with "deleted user".


Bugs should be reported at <>.


(c) 2010 JISC-funded EASiHE project, University of Southampton


Licensed under the Creative Commons 'Attribution non-commercial share alike' 
licence -- see the LICENCE file for more details


Bart Nagel <>

vim: tw=80 fo=wqnta sw=4 ts=4 sts=4 flp=^\s*(\d+\|-)\s+ spl=en_gb
vim: noet nosi nojs ai


A system to collect and deliver QTI items, easily allowing derivative items to be authored and deposited.







No releases published


No packages published