[MKDoc-dev] Client-specific Plugins
Sam Tregar
sam at tregar.com
Sun Jan 30 20:43:29 GMT 2005
Hello all. I'm working on a client-specific registration system and I
want to make sure I'm doing things the right way. So far I've created
a replacement for the account details plugin
(flo::plugin::Account::Details). I've called it
"flo::plugin::Frobnitz::Account::Details" where Frobnitz is the name
of the client. The I create a template directory for the new plugin
called templates/frobnitz/account/details.
To get the plugin to load and run I modified
conf/plugin_subscribe.conf and conf/www.conf. To direct users to this
plugin from the registration email I modified
templates/account/emails/subscribe/en.xml to point to my module.
My question is, am I making these changes in the best way and the best
place? If I continue on this path at the end of the project I'll have
a big patch with a lot of new code and a few changes to the core MKDoc
code. That seems workable but not ideal. Is there a better way to
create and package client-specific customizations like this?
In case this just isn't making sense, maybe I should explain what I
was expecting to find. Krang (http://krang.sf.net) has element sets
and add-ons. When we wanted to make a client-specific configuration
we'd create a new add-on with a new element set. Then to use it in an
instance of Krang I'd:
krang_addon_installer Frobnitz-1.00.tar.gz
That installs the Frobnitz add-on v1.00 into Krang, which most likely
contains the Frobnitz element set and some code to do any needed
configuration changes automatically. It might even contain fancy
stuff like a new skin or new database tables.
-sam
More information about the MKDoc-dev
mailing list