- Sanitize
order
andlimit
keywords in SQL statements (Prevent SQL injection) - Fixes in table name generation, preserving _ in table names for SQL statements
- In controller class, added guzzle, initialized body variable & fixed handleDelete method
- Corrections in entity creation and abstract files
- Root namespaces on php functions
- Fixes CASE_LOWER for array_key_change_case()
- entity generation bug fix for TEXT, LONGTEXT type of fields (set() methods use mb_substr() with length)
- entity classes check for NULL in text fields, and send null instead of ''
- By default text fields are truncated to the length of the DB fieldin setXXX() method
- DAO: Deadlock retry loops inside update/insert
- Tests: Generates PHPUnit v8 compatible test cases
- Root namespace for functions
- Exception handling and logging for exceptions, rethrows exceptions for caller
- Removed Exception catching/logging in AbstactBaseDao methods
- PREG Match fix for MySQL table names
- fetchCount() fixed in AbstractBaseDao
- Added parsing of MSSQL DDL
- Fixed bug in namesapce strings for all php output files
- Added Package name as input. Empty package name defaults to
[Package]
- Controller generation enhanced, made Spin compatible, better field checking
- Namespace handling changed. Assumes
\\App\\Models\\<Namespace>
for Entity files - Namespace handling changed. Assumes
\\App\\Models\\Db\\<Namespace>
for Dao files - Namespace handling changed. Assumes
\\App\\Controllers\\v1\\<Namespace>
for Controller files - Namespace handling changed. Assumes
\\App\\Tests\\<Namespace>
for Test files
- Adopted for Spin Framework
- Uses
/App/Models
as root for Entities and DAO objects
- Fix: Fized singularization of Table names
- Chg: Changes to cache handling on insert/update/delete
- New: Moved project to Github
- Fix: Added code to handle 'es' ending table names to change ending to just 's'.
- Fix: Default values set to properties by Entity-Object now doefaults to NULL unless a defailt value was set in the SQL Create Table statement
- Fix: Controller generated entityObjects without the 'Entity' keyword at the end of classname
- Fix in Controllers generated $args[] retreival in GET and DELETE has an added "?? null;" to make args passing not fail with warnings
- Added automatic Test Case generation for Entities
- Controller classes no longer refer to any specific connection (was 'main')
- AbstractBaseDao::execCustomGetLastId() LastInsertId() only supported on MySql. Now Firebird,PostgreSql,Oracle,CockroachDb work with 'RETURNING id'; instead
- Dao classes now "return true;" instead of "return null;" when generated code returns error in handle*() methods
- Renamed Entity objects to have Suffix "Entity" to be clearer what they are
- Makes Plural table names Singular. Support for "Properties" type of wors as well
- BLOB fields and default PHP value of "". Now default value is ''
- ClassName was taken from TableName, and was lowercased. Now ucwords() it correctly
- Added if () {} with error logging if insert() or update() failes in Controller generation
- BugFix in handleGET() in controller generation
- Bugfix in Entity generator for DateTime and TimeZone handling
- AbstractBaseDao new method fetchCount()
- Uses renamed \Nofuzz\Database\AbstractBaseDao as base for AbstractBaseDao
- Uses renamed \Nofuzz\Database\AbstractBaseEntity as base for AbstractBaseEntity
- Copies AbstractBaseDao and AbstractBaseEntity files to output
- Bugfix on cacheGetItemByField() in AbstractBaseDao
- Code cleanup / Comments Cleanup
- DAO: fetchByKeywords() now includes ALL fields in table. Text fields use " LIKE :" the rest use " = :"
- DAO: All fetchBy() methods are depricated/removed
- DAO: New fetchBy() method added to AbstractBaseDao
- Modifyed places that use fetchBy() statements to follow new method naming
- Added commented lines with all set to handlePOST()
- Bugfixes
- Merge differances from 2 separate branches
- Bugfix Namespace in AbstractBaseDao and AbstractBaseEntity
- Bugfix in Dao generated classes for $this->cacheSetItem();
- Entity class no longer contains "use ..." and expands namespace where needed
- Dao class no longer contains "use ..." for AbstractBaseDao and expands namespace where needed
- Entity class now checks for NULL on dateTime/Timestamp fields in setXXX() method
- Bugfix on parsing table ddl
- Bugfix on creating Entity class (use removed)
- Cache Methods to AbstractbaseDao
- Cache calls for makeEntity(), fetchBy*()
- Added AbstractbaseDao and AbstractBaseEntity classes in DaoGen dir
- Bugfixes to output structure (formatting)