Instead of creating a class for a model you can simply instantiate the Model class and pass (at minimum) the name of the table.
Example: new Model('TABLE' => 'pickles');
The capitalization is important when passing in "reserved" words to the model.
* Renamed the method to fatal().
* Added Error class, but I may be factoring it out and replacing it with strong dependency of PHP built-in Exceptions.
* Cleaned up some other stuff too.
* Nice HTML output for errors
* Cleaned up some @todo's while creating some new ones
* Added a method for setting the request variable for the module that only the Controller can use
* Fixed that nasty infinite loop, even though it's not ideal yet.
* Uncommented the return type logic in the controller and implemented it (no sanity checking on if the return type is valid as per the module)
* Cleaned up some @todo's in the Controller class
* Added the XML Display class
* Logs the input parameters (if available) with the query and slow query entries.
* Uses the new JSON constant to determine if it should use json_encode() or serialize()
* Instead of hiding the elements I'm marking them as readonly.
* Refactored the logic to apply read/write access at the end of the block so there's no duplicate code.
* Forcing every form to be Ajax was proving problematic, so now to define a form as an ajax form it must include the .ajax class.
* Wondering if .pickles-ajax would be a better choice as it's less likely to collide with someone's existing naming conventions.
* Found a bug with column values containing IS anywhere in the string.
* Updated both the column check and value check to include a preceeding space (column) and trailing space (value) to correct the issue.
* Updated the documentation slightly
* Added PECL json 1.2.1 to the vendors directory to help out any poor unfortunate souls that aren't running PHP 5.2+
* Not sure the legality behind including PECL json, according to PHP License 3.01, it should be okay (it's not modified, and I haven't derived any code from it).
* Updated the Database class to work like a Singleton with a getInstance() method.
* The Database class does not have a private constructor so it can still be instantiated in case someone needs to do so.
* Replaced Logger class with Log class.
* Updated Module to have an instance of the Database object as well as the Model class.
* In my perfect vision for usage, the Module classes should never talk directly to the database, but do so via Models, but I know that's asking a lot, so I'm leaving in some options for folks.
* Updated documentation.
* Defaulted all variables to null since false is a valid value for the variables.
* Contemplating removing all of the variable declarations and changing the sanity check from == null to !isset(), although this would eliminate the nice documentation that is generated from the delcarations? Maybe I can leave the comments and remove the variables? Nah, seems hackey.
* Updated getter to check the module section of the config instead of the site section of the config. Just seemed to make more sense.
* Moved variables from the public scope to protected.
* Added magic methods to prohibit overriding the variables directly and to "magically" load config values when module variables aren't set.
* SimpleXML was becoming a pain to maintain as there was differences between versions of PHP 5.x that prohibited me from being truely 5.0.0+ compliant.
* The move to INI is because it's still good enough for PHP to use php.ini as a standard, and the support in PHP is built in and hasn't changed in a while
* XML was also a bit bloated, and the point behind PICKLES is to kick the bloat.
* May add support for a config file in pure PHP and/or JSON.
* Added logic to prohibit the overriding of config variables.
* Replaced the if...elseif...elseif...else with a single if..else and a foreach to check each directory for the file to load.
* Updated log paths to sit on the site level in a private directory.
* Script contains some generic default functionality
* Includes PICKLES automatic Ajax handling
* Zebra stripes are applied to tables (assuming the even and odd classes are defined)
* Forms automatically have return false applied on submit.
* Includes functions disableEnterKey(), autoTab() and truncate()