Several months ago, I worked on making Habari's installer simpler and easier to maintain. After reading the plan on the habari-dev mailing list, it looks like I did one of my common mistakes; I tried to change too many things at once. You can view the result in the 081018-handlers branch.

With that in mind, I'ld like to revisit the idea; here's what I'ld do to the installer:

  • Convert the installer to a FormUI
    • Use custom FormControls
    • Have each schema plug into the installer form
  • Convert the installer to a system theme
    • Put the FormUI in the theme's theme.php
    • Insert plugin hooks in the installer and installhandler
  • Split the InstallHandler
    • Move the db-specific functions to extending classes
    • Move the upgrades to independent files in the schemas' folders

As you can see, I've deviced to work only on the installer. It is a small part of Habari, and can easily prove the concept I'm trying to pitch. The AdminHandler is more complex and extensive, it needs better planning.

I'm sure a lot of you are asking, but why? Why change the installer if it's working. Why do all that work if you can't even list the advantages of said concept? The answer is simple: it's just how I work. I come up with crazy ideas and work on them as challenges.


Let your voice be heard!

*

*