Hi all,
based on student projects two packages were developed that are even used here productively. These are:
-------------------------------
1. Groups package
-------------------------------
This package is integrated with dotLRN and has the following features:
- Defining a new group type
- Group type supports:
- minimum number of members per group
- maximum number of members per group
- application start date
- application end date
- participation types
- by invitation
- by request
- by assigment
- by admins
- by other members
- group creation types
- by admins
- by all
- maximum number of groups
- notifications
- confirmation required
- for joining a group
- for leaving a group
- moderated groups or not
- preferences changeable or not
- distribution types
- by preferences (automated via algorithm)
- first come first served
- random
The assigning of users by preferences was tested. For example we had a course with 8 workshops and 878 participants. Users passed their preferences within
a period of 1 week and were automatically assigned to
the workshops within 5 minutes.
-------------------------------
2. Group Competition package
-------------------------------
- uses groups packages
- community members can create groups
- support for group pictures
- admins create online sheets on a regular basis
- groups submit sheets within given timeframe
- scoring and ranking is generated automatically
- moderation for sheets with free text input
- question types
- single select
- multiple select
- input field
- integer
- floating point
- single word
- free text
Both packages are internationalized and integrated with dotLRN and used productively, but
- groups is not using the group type, group fuctionalities of OpenACS and dotLRN. Admins can use the groups package as a light weight feature and create dotLRN communities later on if required.
- the packages require some refactoring:
- use OpenACS functionalities
- improve SQL queries
- improve data model
- use ACS Objects
I think that the packages are proof of concepts rather than good quality code. Thus the question is what shall we do? Shall we commit that work to cvs and others improve them or make the stuff available for download? And who would be interested to improve these packages?
Greetings,
Nima