Allows find operations to define restrictions on what models to get based on the 'contain' parameter, including ability to override binding settings on the fly. Go through the test cases to get a crash course about some of the available functionality.
git-svn-id: https://svn.cakephp.org/repo/branches/1.2.x.x@6918 3807eeeb-6ff5-0310-8944-8be069107fe0
Implemented Validation::extension(); and Vaidation::range();
Updated copyright notices in all files"
git-svn-id: https://svn.cakephp.org/repo/branches/1.2.x.x@6296 3807eeeb-6ff5-0310-8944-8be069107fe0
Exempted 'created', 'updated' and 'modified' fields from whitelist when saving, closes#3720
Updated Model::bind(), closes#2355
Adding Model::saveAll() to save multiple records and associated records, closes#3615
Replacing Model::generateList() with Model::find('list'), deprecates Model::generateList()
git-svn-id: https://svn.cakephp.org/repo/branches/1.2.x.x@6295 3807eeeb-6ff5-0310-8944-8be069107fe0
Fixes#2146, set 'foreignKey' => false and use association conditions to get custom join scoping
Fixes#3323, set 'foreignKey' => false to disable default conditions
Fixes#3627, added Model::$findQueryType to inform callbacks of the current find query type, i.e. 'count'
git-svn-id: https://svn.cakephp.org/repo/branches/1.2.x.x@6258 3807eeeb-6ff5-0310-8944-8be069107fe0
Closes#2213, Support multiple plugin paths.
Closes#2234, filepaths to behavior classes should be cached in class.paths.php also
Closes#2345, ability to group components into subfolders
Closes#2645, Improvement to basic.php for class loading.
Fixes#3526, Cache::write, when using just the config name, it fails.
Fixes#3559, loading plugin model as assoc don't work.
Closes#3567 Controller Folders (Note this does not need routing to work, but controller names can not conflict with others in the same application so naming must still be unique)
Fixes#3579, email.php component: Parse error with php 4.
Adding new class and file importer.
Updated most of the core to use the importer.
Added ClassRegsitry::init() that will create and instance of an object and store it in the registry.
Deprecated most of the load functions in basics.php
Plugin model loading now forces using the dot notation, to use models within a plugin, all the model associations must be in the PluginName.Model syntax, if this is not used, the plugin will look for the models in the main app/models directory first, if not found then it will search the plugin directories recursively until it finds a model.
var $belongsTo = array('SomeModel'); will look for some_model.php in the app/models
var $belongsTo = array('MyPlugin.SomeModel'); will look for some_model.php in my_plugin/models
var $belongsTo = array('MyPlugin.MyPlugin', 'SomeModel'); will used my_plugin/models/my_plugin.php and app/models/some_model.php
The controllers of the plugin will still look for the default models inside the plugin if var $uses is not set:
var $uses = array('SomeModel'); will look for some_model.php in the app/models
var $uses = array('MyPlugin.SomeModel'); will look for some_model.php in my_plugin/models
var $uses = array('MyPlugin.MyPlugin', 'SomeModel'); will used my_plugin/models/my_plugin.php and app/models/some_model.php
All of the above will work between plugins and main app
These changes also allow placing model and controllers is sub directories
Removed old class.paths.php file generation
git-svn-id: https://svn.cakephp.org/repo/branches/1.2.x.x@6001 3807eeeb-6ff5-0310-8944-8be069107fe0
Closes#3396, i18n fixes
Fixed TranslateBehavior::_getLocale() throwing error if I18n class had not been loaded
Added [P]roject to bake
Updated locale pot file
Removed css and js directories from skel
git-svn-id: https://svn.cakephp.org/repo/branches/1.2.x.x@5809 3807eeeb-6ff5-0310-8944-8be069107fe0
changed fieldname 'row_id' to 'foreign_key'
now allows fallbacks for not-existing translations by setting model's locale to array of locales
model used for hasMany associations and for saving/deleting of translation records is configurable by Model::$translateModel property, db field 'i18n.field' is configurable by property $displayField of this custom model, instance of this model is obtainable by $this->ModelName->translateModel()
Added tests for translate behavior.
Added i18n shell script
Correcting translation function calls in various files
git-svn-id: https://svn.cakephp.org/repo/branches/1.2.x.x@5669 3807eeeb-6ff5-0310-8944-8be069107fe0
Removed hardcoded "lft" and "rght" from __sync method
added test to see if the behavior is enabled before executing hook methods
Fix for bug 3037, methods will now return true if 1 or more moves succeed.
Added possibility to pass true to moveUp/moveDown as the number of steps -
this will move a node to the first/last child position.
Fix for 2991
Fix for 2982 NOT IMPLEMENTED
git-svn-id: https://svn.cakephp.org/repo/branches/1.2.x.x@5509 3807eeeb-6ff5-0310-8944-8be069107fe0
Added test for changes to Dispatcher.
Updating Model::_ _saveMulti(), moved the insert statement to DboSource::insertMulti() this will allow database that do not support multiple inserts in one statement to save data.
git-svn-id: https://svn.cakephp.org/repo/branches/1.2.x.x@5460 3807eeeb-6ff5-0310-8944-8be069107fe0