Hey,
The Education Program extension I am writing has management interfaces for courses. These are implemented as special pages:
* Special:Course/$name * Special:EditCourse/$name * Special:CourseHistory/$name
Now it turns out that each course also needs a discussion page. Although it makes little sense to use regular wiki pages for the management interfaces (ie deriving from Article) since they are not based on the page table at all, the discussion pages should just be regular discussion pages. After briefly discussing this with Daniel Kinzler at the SF hackaton, he suggested I hijack some namespace and use it's discussion pages. This seems nice if it can be made to work, but I'm having some troubles, hence this email.
What I want to end up with is a Course: namespace that has the view, edit and view history functionality I already created, and obviously regular discussion pages.
Displaying the course at Course:$name I figured out to do via the ArticleFromTitle hook, and subclassing Article. This works, but it seems a bit ugly since Article has tons of stuff that just does not apply here. Is there a better way to do this? I'm not sure how to go about putting in the editing and history interfaces. How can I add namespace specific overrides for the edit and history actions? And how do I get rid of other actions that do not apply to courses? For example action=raw obtains text from the page table, which does not make sense at all here.
Cheers
-- Jeroen De Dauw http://www.bn2vs.com Don't panic. Don't be evil. --