Note: You are currently viewing documentation for Moodle 1.9. Up-to-date documentation for the latest stable version is available here: Student projects/Presets for Database module.

Student projects/Presets for Database module: Difference between revisions

From MoodleDocs
No edit summary
m (category edit)
 
(16 intermediate revisions by 2 users not shown)
Line 1: Line 1:
This project aims to increase the flexibility of the database module and to add some user friendly preset modes to help users create useful modules quickly. Also, it is important to build a way of importing and exporting presets so admins can customize what is available to the user.
This project aims to add some user friendly preset modes to the [[Database activity module]] to help users create useful activities quickly. Also, it is important to build a way of importing and exporting presets so admins can customize what is available to the user.


I plan to implement several presets, including a good quality image gallery, a document sharing facility and a glossary.
I plan to implement several presets, including a good quality image gallery, a document sharing facility and a glossary.


= Goals =
== Goals ==
== Custom Code ==
=== Presets ===
To acheive the quality and usability needed, adding customizable code into the database module will be required. For instance, the image gallery will need code to resize images on upload. Therefore, I will create an easy to use interface with custom functions such as onupload(file) and onview() that get called every time the appropriate event occurs. These functions will then form part of the preset.
 
== Presets ==
* Image Gallery
* Image Gallery
* Document Sharing
* Document Sharing
Line 14: Line 11:
Also, a preset manager will be needed to allow admins to add, remove and modify the presets available to their users. This will be part of the config page for the database module.
Also, a preset manager will be needed to allow admins to add, remove and modify the presets available to their users. This will be part of the config page for the database module.


=== Upload and Save ===
==== Import and Export ====
A preset will turn into a template when teachers modify it. Then they will be able to download the template, or upload one to use. This will allow users to create a custom database they can use many times.
A preset will turn into a template when teachers modify it. Then they will be able to download the template, or upload one to use. This will allow users to create a custom database they can use many times.


=== Backup and Restore ===
I'm planning to use zip files to store each preset/template. XML data files and the html template files would sit inside this. Each template will be made up of several html and xml files - the ones describing the layout of the database and one containing the data in the database.
 
==== Backup and Restore ====
It is also important for presets to be included in backup and restore, so that modified presets are kept.
It is also important for presets to be included in backup and restore, so that modified presets are kept.
== Milestones in the Project ==
# Import and Export
#* Work out an XML schema for saving the data
#* Write import and export functions
# Designing the Image Gallery preset, and the other presets.
#* Designing the UI
#* Maybe create a slideshow type display...
#Glossary Preset
#* Look to make changes to the database module to add useful features - browsing and linking
# Adding the admin features
#* Preset Manager page
#* Backup and Restore
== Progress ==
* Import and export scripts working, including proper removal of data if the field structure changes too much. Now doesn't remove data if fields are compatible.
* New 'Presets' tab added to config page.
* The UI is now completed.
* The Image Gallery preset is now under development.
[[Category:Developer]]
[[Category:Project]]
[[Category:Database activity module]]

Latest revision as of 14:02, 11 August 2009

This project aims to add some user friendly preset modes to the Database activity module to help users create useful activities quickly. Also, it is important to build a way of importing and exporting presets so admins can customize what is available to the user.

I plan to implement several presets, including a good quality image gallery, a document sharing facility and a glossary.

Goals

Presets

  • Image Gallery
  • Document Sharing
  • Glossary

Also, a preset manager will be needed to allow admins to add, remove and modify the presets available to their users. This will be part of the config page for the database module.

Import and Export

A preset will turn into a template when teachers modify it. Then they will be able to download the template, or upload one to use. This will allow users to create a custom database they can use many times.

I'm planning to use zip files to store each preset/template. XML data files and the html template files would sit inside this. Each template will be made up of several html and xml files - the ones describing the layout of the database and one containing the data in the database.

Backup and Restore

It is also important for presets to be included in backup and restore, so that modified presets are kept.

Milestones in the Project

  1. Import and Export
    • Work out an XML schema for saving the data
    • Write import and export functions
  2. Designing the Image Gallery preset, and the other presets.
    • Designing the UI
    • Maybe create a slideshow type display...
  3. Glossary Preset
    • Look to make changes to the database module to add useful features - browsing and linking
  4. Adding the admin features
    • Preset Manager page
    • Backup and Restore

Progress

  • Import and export scripts working, including proper removal of data if the field structure changes too much. Now doesn't remove data if fields are compatible.
  • New 'Presets' tab added to config page.
  • The UI is now completed.
  • The Image Gallery preset is now under development.