Volunteer database: Difference between revisions
(Created page with "Yes, it's another database project! Whoopee! Given the limited volunteer-hours available for hacking, koanhead has decided that we need to track volunteers and their hour...") |
No edit summary |
||
Line 11: | Line 11: | ||
# Integration with our Mediawiki instance such that new volunteers automagically get a wiki account (and possibly accounts with our various other services. Kerberos SSO would be nice to implement...) | # Integration with our Mediawiki instance such that new volunteers automagically get a wiki account (and possibly accounts with our various other services. Kerberos SSO would be nice to implement...) | ||
# Volunteer hours tracking, correlated with relevant [[List of Working Groups| Working Groups]] | # Volunteer hours tracking, correlated with relevant [[List of Working Groups| Working Groups]] | ||
=Where= | |||
Probably [[https://github.com/orgs/freegeek-seattle/dashboard| our GitHub]], but it's not there yet. | |||
=How= | =How= | ||
Line 48: | Line 52: | ||
*[[Special:VolunteerHoursInput]] or similar | *[[Special:VolunteerHoursInput]] or similar | ||
*restricted to Bureaucrat role, or do we need a new role? | *restricted to Bureaucrat role, or do we need a new role? | ||
===probably some other things=== |
Revision as of 15:57, 26 March 2014
Yes, it's another database project! Whoopee!
Given the limited volunteer-hours available for hacking, koanhead has decided that we need to track volunteers and their hours more urgently than we need to track inventory (people are, after all, more important than are things.) Even though the Inventory database project is way cooler.
Who
What
A webpage with the following:
- Secured sign-up form for new volunteers based on existing File:Volunteer application.pdf.
- Integration with our Mediawiki instance such that new volunteers automagically get a wiki account (and possibly accounts with our various other services. Kerberos SSO would be nice to implement...)
- Volunteer hours tracking, correlated with relevant Working Groups
Where
Probably [our GitHub], but it's not there yet.
How
Let's make a Mediawiki extension!
https://www.mediawiki.org/wiki/Manual:Developing_extensions
https://www.mediawiki.org/wiki/Extension_Matrix/database
Steps
alter user tables
to reflect additional information present on volunteer application
- https://upload.wikimedia.org/wikipedia/commons/thumb/4/42/MediaWiki_1.20_%2844edaa2%29_database_schema.svg/2500px-MediaWiki_1.20_%2844edaa2%29_database_schema.svg.png
- this is done once only, when the extension is installed
- maybe MW's database interface can handle this, maybe not:
- https://www.mediawiki.org/wiki/Manual:Database_access
- alter table 'user' add column 'address' INT
- foreign key for 'addresses' table
- create table 'addresses' yada yada
- alter table 'user' add column yada yada
create volunteer hours table
change user signup form
- this is done once only, when the extension is installed
- change Special:UserLogin accordingly with database alterations
- https://doc.wikimedia.org/mediawiki-core/master/php/html/SpecialUserlogin_8php.html
ensure that Special:Listuser and friends does not leak sensitive information
- implement as tests that fire when new data is submitted: build the relevant Special: pages and check them for the contents of selected fields
- also to make sure the data we want is displayed of course :^)
build volunteer hours tracking form and associated reports
- Special:VolunteerHoursInput or similar
- restricted to Bureaucrat role, or do we need a new role?