Monday, January 28, 2008

Ideas on making this modular

I'm trying to come up with ways to make this tool as modular as possible. My goal is to throw a "module" into a folder, then be able to use it.

What I may do is simply define some default variables that must exist in a specific file for each module to define things such as:
  • name
  • version
  • last release date (I can't stand not knowing how old my module is)
  • official website
  • current version url (for determining if there is a new version of the plugin)
The only thing I'm trying to figure out now is how to add "hooks" into my parent class. I want to have as few core methods as possible because I don't want to add any unneccessary "features". I want user authentication in my wiki, but someone else might not, or they may want an entirely different type of authentication. (maybe they want to use a login script based on a hardware device, or an existing authentication system, while I want to use LDAP...)

I'll start poking around other apps to see how they do it. (Such as wordpress and similar)

Then I'll just have to decide where to hook in with my authentication module...

No comments: