Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/tremby/questionbank

A system to collect and deliver QTI items, easily allowing derivative items to be authored and deposited.
https://github.com/tremby/questionbank

Last synced: 3 months ago
JSON representation

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

Awesome Lists containing this project

README

        

NAME

Question Bank

SUMMARY

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

REQUIREMENTS

- 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 qtiengine.qtitools.org is used by
default)
- Eqiat (imported as a subdirectory) and all of its dependencies (see its
README)

SOURCE

The source is available at .

COMPILATION

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

INSTALLATION

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.

CONFIGURATION

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

USAGE

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
elsewhere.

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

Bugs should be reported at .

COPYRIGHT

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

LICENCE

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

AUTHOR

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