Tilly,
I really do appreciate the time you took to provide these thoughts. For the moment, I will focus on the list you provided. If you have further interest in discussing what you mentioned in the preambled, I'd like that as well.
- Actually, I'm not so hot on prototypes myself. I misinterpreted some information in the cookbook to mean that they were required when creating a module... I asked about this in the CB one day, and have since learned that prototypes are not required for module creation. I have since dropped them.
- OK, I understand this, although I think I take it more as a criticism of my naming skills rather than methodology.
- Agreed. Although I do plan on removing the passing altogether, to allow the user to call get_* and set_* in order to remove the need shift in and set such variables. Alternately, I could just...
- Make these items globals and export them.
- Acknowledged, but largely as a issue of style. I find $$foo{bar} just as easy to read.
- Excellent idea. I'll put this in the todo list.
- Agreed, and I'll probably take errorhandler out of the structure; it was put in there to placate a coworker, and never was clear on how it would be used.
- I've never handled errors in this fashion, but it makes sense.
- I used numeric codes as a way to keep the templates clean, and because the idea is familiar to me. Additionally, I don't see support for regexes in tt2's directives, although I could replace the get_bit sub with something like match_string (string, regex_contents)..
[% IF get_bit (error_level, 1) == 1 %] <FONT COLOR=RED> [% END %]
versus [% IF match_string (error_string, "first name") == 1 %] <FONT COLOR=RE
+D> [% END %]
hmm...
- Yes, I had noticed this occuring when I had typos in modules so loaded.
- Noted. I really don't have anything to add, I'm not brushing you off.
- OK, I'll take a look at it, although I'll probably try to massage it back into an HTML table of some sort. :)
- This is true, too. I expected some flak on this since I realized my DBI stuff was pretty light; I was concentrating on debugging framework rather than making sure the csv got locked appropriately.
Again, thanks for taking the time to turn a critical eye to my submission. I plan on incorporating much of what you've suggested into the source code.