OK, this is a big check-in with some big changes, and needs work still.
It seems relatively stable, but I need help identifying the rough patches.
1) First grading scales support. There is a now a new table called "scale"
that contains grading scales. There can be site scales (course=0) and
custom course scales. These can be used in modules - I've only done
forums for now but that was the hard one. Scales can be edited via
the new item in the course admin menu.
There is one default scale - the connected/separate knowing one that used
to be in forum. To build this I pull data from the language packs
to create one during the upgrade, or anytime a scales menu is called
and no scales are found.
2) New roles for course creator and teachers. I've fixed up the course
menus and some other things but there's a lot left to do on this to
make it all smooth. The idea is that teachers no longer can edit courses
unless they are also course creators. The interface for this needs to
be smoothed out a fair bit and I need help with this.
The upgrade will upgrade all teachers to be creators, but will default
the new site config "creatornewcourses" to "no", so that effectively
these new teachers have the same privileges.
3) Simplified teacher management. There is no longer an "assign teachers"
and a "teacher roles" page - it's all on one page in course/teacher.html.
Phew ... time for a shower and then back into it.
This includes some significant cleanups to the new course categories
system. The basic idea is that the categories/course browser is now
unified under one system, and admin features related to that have
all been moved into the browser (as little icons).
I'm much happier with this as a foundation that can scale and be
built upon.
Still to go:
- searching
- paging
- polishing
Also in here are a lot of little cleanups around the place, such as
the initial setup process.
The database checks/upgrades are now done on the main
admin page like the other modules.
The database files are now standard format .sql and .php files
PostgreSQL support was added - BUT HAS NOT BEEN TESTED YET!!
to be skipped during installation!
Bug 565 has the details, but basically it was caused by not initialising
the variable $user before using it. Some people probably had a cookie
called "user" that was polluting the variable.
YAY!
changing passwords, and enabled the internal "change password" button
just like "email" and "none".
Thanks to Danilo Massa for pointing out the inconsistency.