I've been using something like this for myself for some time now (since the company I work for decided to use
PostNuke for all its sites), and I was thinking that maybe I'd clean it up and make it available for everyone if there's any interest...
The part of developing a module that I've always hated is writing the code necessary to get to the first successful initialization of the module. pnversion.php is easy, of course, but the database setup is a pain in the butt, especially for large modules with multiple tables. So, I wrote a quick and dirty script that generates a pninit.php and pntables.php file from data input into a web-based form.
Currently, the script I'm using generates code that was compliant with the original 0.75
API, but it could fairly easilly be adapted to the new, more complete ADODB implementation.
The way it would work is pretty simple. You'd open up a web-based form and fill out basic information like the name of the module you're developing, the table prefix you want to use, and things like that. You submit that form and you're presented with a second form where you are asked to name your first table and define its fields. When you're done, you click one of two submit buttons. The first one stores your input and presents you with another form exactly like the one you just filled out so that you can create a second table. The other one takes you to the last form, where you define your module variables.
After submitting the third form, you are presented with a final
HTML form with textareas containing the contents of each of the files generated so all you have to do is copy and paste into your favorite editor. The pninit.php file would include an upgrade function placeholder (basically, the function would be defined, but would simply return true).
For simplicity's sake, I would probably just go ahead and set it up to collect the information needed for pnversion.php as well. That way, someone could run through the process one time and have enough code generated to do the first initialization of the module without any additional steps.
I could also, I suppose, write it so that the files generated get zipped up and a download is forced, so you download the resulting files rather than copying them from a web form.
Anyway, let me know if there's any interest in this. If there is, then I'll take the script and turn it into an actual module.
Ed