Commit graph

378 commits

Author SHA1 Message Date
mark_story
3cb501f1c5 Fix issue created in [e8b5d81fd7]
Query conditions with `-` and no surrounding spaces were quoted
incorrectly.

Fixes #3178
2012-09-03 13:24:38 -04:00
mark_story
571c8bc08c Merge branch 'master' into 2.3
Conflicts:
	lib/Cake/Console/Command/Task/TestTask.php
2012-09-01 13:51:40 +01:00
mark_story
e8b5d81fd7 Fix quoting of field names containing -.
Fixes #3165
2012-08-31 14:25:02 +01:00
mark_story
d4ee62be61 Add support for biginteger on SQLserver. 2012-08-30 16:35:36 +01:00
mark_story
8d8f4b5c5d Add bigint support for Sqlite.
* Update SQLite for biginteger.
* Update CakeSchema tests for integration purposes.
2012-08-30 14:48:59 +01:00
mark_story
7bad865d6e Add bigint support for postgres 2012-08-30 14:48:59 +01:00
Tommy MacWilliam
68116f7017 BIGINTs can also be primary keys 2012-08-30 14:48:59 +01:00
Tommy MacWilliam
15555a7309 added schema support for mysql bigints 2012-08-30 14:48:59 +01:00
mark_story
d66d37c92b Merge branch 'master' into 2.3 2012-08-24 22:50:29 -04:00
mark_story
b2f62f46c5 Fix failing tests in postgres. 2012-08-24 22:37:23 -04:00
mark_story
dcc5a95482 Only split on ; for TABLE related statements.
Fixes #3142
2012-08-23 23:11:00 -04:00
mark_story
d5333a2ff1 Merge branch 'master' into 2.3 2012-08-20 16:20:27 -04:00
Stephen Cuppett
7e5f326300 Fix STRICT warnings on PHP 5.4 2012-08-19 17:00:26 -04:00
mark_story
e59555a66f Merge branch 'master' into 2.3 2012-08-03 22:45:56 -04:00
mark_story
c96e364cbb Fix incorrect expiry of sessions.
Fixes #3088
2012-08-02 21:03:53 -04:00
mark_story
d94cdc67fe Merge branch 'master' into 2.3 2012-07-27 22:38:24 -04:00
mark_story
27e2132a13 Generated SQL should not contain multi-column primary keys
While totally valid in databases, the Schema system is not designed to
handle multi-column primary keys in a sane way. In MySQL this results in
two auto_increment columns, and in postgres this results in two serial
columns.

Fixes #3069
2012-07-27 22:31:49 -04:00
euromark
3945c0e6a8 rtim files 2012-07-18 03:55:29 +02:00
mark_story
5e54be4e5a Merge branch '2.1' into 2.2
Conflicts:
	lib/Cake/Error/exceptions.php
2012-06-23 16:41:32 -04:00
Ceeram
b913fe5303 better error message in MissingConnectionException when driver is not enabled 2012-06-23 11:42:26 +02:00
mark_story
f625742a12 Make CakeSession use httponly by default.
Fixes #2955
2012-06-12 22:10:55 -04:00
mark_story
f3464b002f Remove duplicate code.
Use a shutdown function to close the session off.
This removes a bit of icky code and continues to allow
objects to be used as session handlers.
2012-06-06 21:01:16 -04:00
Ceeram
4c6453501e Merge branch '2.1' into 2.2 2012-06-02 01:47:21 +02:00
Jelle Henkens
e5eb7b490e Preventing cache collisions by adding the the datasource key 2012-06-01 10:42:26 +01:00
Jelle Henkens
18b335a605 Replacing crc32 with md5 for less collisions in method caching 2012-06-01 10:42:26 +01:00
mark_story
115b2c1495 Rename joined to _joined to hopefully prevent issues. 2012-05-27 20:43:15 -04:00
Majna
ce2fc6c83d Improve belongsTo and hasOne for unneeded queries when recursive > 1.
Reuse already joined data for 'belongsTo' and 'hasOne' associations instead of running unneeded queries for each record.
Fixes #47
2012-05-27 23:15:20 +02:00
mark_story
4b8c469004 Merge branch '2.1' into 2.2
Conflicts:
	lib/Cake/VERSION.txt
2012-05-26 21:11:36 -04:00
mark_story
b27a3aab7b Set session.gc_maxlifetime by default.
In the default case of using files for sessions, files could
be garbage collected earlier than expected based on other session
settings.  Always set session.gc_maxlifetime so session files are
garbage collected correctly.

Fixes #2901
2012-05-23 22:25:19 -04:00
Jelle Henkens
ecd869d4e3 Changing int to integer 2012-05-22 16:34:07 +01:00
Jelle Henkens
f7ce5262b7 Updating mixed @param documentation to seperate list of accepted types 2012-05-21 21:55:10 +01:00
mark_story
128c719bd0 Add no-op method to base class.
Fixes #2839
2012-04-30 20:52:17 -04:00
Juan Basso
333ea29805 Renamed variable name from nested transaction 2012-04-26 20:58:25 -04:00
Juan Basso
37537faac0 Renamed method to check if the driver supports nested transaction. 2012-04-26 20:58:25 -04:00
Juan Basso
f6288a491a Disabled the default nested configuration. MySQL use MyISAM as default and it can affect many applications. 2012-04-24 21:42:32 -04:00
Juan Basso
7fe333ce4e Merge branch '2.2-nested-transaction' into 2.2 2012-04-22 23:04:32 -04:00
mark_story
21ba5bf04a Merge branch '2.1' into 2.2 2012-04-17 21:47:24 -04:00
Juan Basso
7be5349b0c Added configuration to disable nested transaction, even if the db supports it. 2012-04-14 16:43:24 -04:00
Juan Basso
a512d46679 Sqlite is failing in PHP 5.2, re-adding the check for driver support. 2012-04-14 16:23:51 -04:00
Juan Basso
2c1cf29aa3 Added real support to nested transactions for Mysql, Postgres, Sqlite. 2012-04-14 16:21:42 -04:00
Juan Basso
2c9399a78a Removed unused attribute and moved getVersion to be reused in all PDO drivers. 2012-04-14 16:21:41 -04:00
mark_story
b9389c9da1 Fix comment's reference to version numbers. 2012-04-14 10:50:31 -04:00
mark_story
2fd15b6c7e Revert removal of session_cache_limiter()
It was removed in [4a6159c9af].
The session_cache_limiter() is required for IE8 to correctly
hold onto sessions.

Fixes #2781
2012-04-14 10:04:56 -04:00
mark_story
9f9feec222 Merge branch '2.2-hash' into 2.2
Conflicts:
	lib/Cake/Test/Case/Model/Datasource/DboSourceTest.php
	lib/Cake/View/Helper/FormHelper.php
2012-04-10 21:32:37 -04:00
mark_story
f8966a64f2 Merge branch '2.1' into 2.2
Conflicts:
	lib/Cake/Test/Case/Network/Email/CakeEmailTest.php
2012-04-09 21:55:02 -04:00
Mark Story
da9cbcf7bb Merge pull request #603 from luisarmando/queryCacheDoc
Fix doc of DboSource->$_queryCache.
2012-04-09 14:35:57 -07:00
Luís Armando
bb2286bc43 Fix doc of DboSource->$_queryCache. 2012-04-09 13:30:58 -03:00
mark_story
a24aca6ffc Fix a few code standards errors. 2012-04-06 22:56:01 -04:00
Ceeram
c2a8fca00c Merge branch '2.1' into 2.2
Conflicts:
	lib/Cake/Test/Case/Model/Datasource/DboSourceTest.php
2012-04-05 23:27:21 +02:00
mark_story
5c590aad09 Add missing ClassRegistry import.
Fixes #2757
2012-04-05 08:33:12 -04:00
ADmad
1cc5206442 Merge branch '2.1-dbosource' into 2.1 2012-04-04 19:58:48 +05:30
ADmad
93639a7c43 Fixed bug where associated model's afterfind was not triggered in particular case 2012-04-04 19:48:37 +05:30
Ceeram
d2098828c6 Fix fullTablename(), ensure prefix prepending is only skipped when not on position 0 in tablename. Fixes #2750 2012-04-04 15:07:45 +02:00
mark_story
72cb96b727 Fix a few more coding standards errors. 2012-04-02 23:23:53 -04:00
Ceeram
34a730dfd8 ensure buildJoinStatement() does not add schemaname when table value is a subquery, fixes #2709 2012-04-02 18:48:02 +02:00
mark_story
4e67698506 Fix issues with SQLServer + boolean columns.
SQLServer should not have lengths applied to BIT column types.
Remove any length that could have been provided.

Fixes #2439
2012-04-01 22:10:05 -04:00
mark_story
17bfbbb9df Port over Set to Hash usage. 2012-03-26 22:32:55 -04:00
mark_story
19e0d8d946 Switch usage to Hash where possible. 2012-03-26 22:32:53 -04:00
mark_story
29048b3bb7 Update to use Hash.
Update CakeSession & Configure to use Hash.
2012-03-26 22:25:41 -04:00
Jose Lorenzo Rodriguez
b373309ba9 Merge branch '2.1' into 2.2
Conflicts:
	lib/Cake/VERSION.txt
2012-03-25 21:18:58 -04:30
Thomas Ploch
fda065101b Fixed test cases for successful being built on travis. 2012-03-24 21:32:31 +01:00
dogmatic69
7c697eb9be adding an extra check to only type cast if its a int/true/false so you can still use fields etc in the queries 2012-03-23 21:21:18 -04:00
Ceeram
817015e6b3 remove unneccesary elseif 2012-03-23 16:37:02 +01:00
Ceeram
d748fc7451 Merge branch '2.1' into 2.2 2012-03-23 16:32:04 +01:00
Ceeram
4a6159c9af session_cache_limiter() removed, it was set to invalid value as well
Also remove setting P3P header
2012-03-23 16:31:26 +01:00
mark_story
20bdf1d7b0 Add escaping to table names.
SQLite was not quoting table names, so tables with
keywords caused errors.

Fixes #2702
2012-03-21 21:04:34 -04:00
Ceeram
c9528b8446 Merge branch '2.1' into 2.2 2012-03-21 11:19:08 +01:00
Ceeram
091ad53b80 ensure boolean values are converted to correct value on update, avoiding issues with posgres boolean type 2012-03-19 13:27:26 +01:00
Thomas Ploch
a06eba7e24 Adding basic implementation of DataSource::close().
Since this method will be called in Destructor.
2012-03-16 21:08:48 +01:00
dogmatic69
2ad0f8b8db setting defaults in the DBO so you do not need to pass every field possible to avoid errors. also adds a test for calling with some missing fields. fixes #1779 2012-03-13 17:40:25 +00:00
Juan Basso
c754fb2dcb Updated copyright to 2012. 2012-03-12 22:46:46 -04:00
Juan Basso
3b1bd90ad6 Updated copyright to 2012. 2012-03-12 22:46:07 -04:00
mark_story
8c611b236d Fixing missed cache reads for table schema.
Because cache keys were different, model schema would not be read from
the cache.  Make keys used consistent.

Fixes #2670
2012-03-11 10:24:05 -04:00
mark_story
83a29f054e Fix Session.cookieTimeout default behavior.
When Session.cookieTimeout is undefined, it should
reflect the value set for 'timeout' and not default to 240.

Fixes #2669
2012-03-11 08:14:54 -04:00
mark_story
664b0538b8 Fix more coding standards problems. 2012-03-04 22:49:38 -05:00
mark_story
9a6ad7e1e2 Fixing most coding standard issues in Model/ 2012-03-04 21:51:50 -05:00
ADmad
12364cac8c Fixed indentation 2012-02-28 02:04:43 +05:30
euromark
45112088a1 type hinting models 2012-02-25 19:46:06 -05:00
euromark
e94d307ee1 code conventions 2012-02-25 19:46:05 -05:00
Rachman Chavik
c6449f649f adding missing ',' 2012-02-23 09:08:17 +07:00
Rachman Chavik
b545d8b201 fix getSchemaName() for Sqlserver.
Closes #2609.
2012-02-23 08:25:07 +07:00
Kyle Robinson Young
45ec5d73c5 Add missing visibility keywords 2012-02-16 23:13:12 -08:00
mark_story
89b9bb7297 Fix duplicate items in HABTM associations.
Apply patch from 'Kim Biesbjerg'.  Fixes issues where nested
HABTM associations would create duplicate content.

Fixes #2564
Fixes #1598
2012-02-17 21:09:48 -05:00
Majna
0cd9a93e9e Remove unused variables and statements. 2012-02-17 21:10:43 +01:00
Majna
1dbafe1d4f Fix docblocks. 2012-02-17 13:51:20 +01:00
mark_story
2afb05b590 Merge branch '2.0' into 2.1
Conflicts:
	app/View/Pages/home.ctp
	lib/Cake/Config/config.php
	lib/Cake/Core/App.php
	lib/Cake/VERSION.txt
	lib/Cake/View/Helper/NumberHelper.php
2012-02-12 10:06:13 -05:00
mark_story
9c1fa28d60 Its EXECUTE not EXECUCUTE
Also make the search insensitive as casing bugs are no fun.
2012-02-10 12:43:07 -05:00
mark_story
0cfec525b2 Allow SqlServer to execute procs correctly.
Both SELECT and EXECUTE statements should go through
the parent method as they could fetch results.

Fixes #2558
2012-02-09 22:27:30 -05:00
Yasushi Ichikawa
e8a9d93eb5 Add params option to logQuery()
Parameters for prepared statements are now part of the
logged query data.
2012-02-08 20:15:40 -05:00
mark_story
ace9fefb02 Merge branch '2.0' into 2.1 2012-02-03 21:54:50 -05:00
mark_story
49a48ced89 Don't restrict to BASE_TABLE.
This allows Views, and custom table types
to be connected to models in SqlServer.

Fixes #2529
2012-02-03 21:54:26 -05:00
Shadow6363
62e671f6b8 Changed MySQL in comment to SQLite. 2012-02-03 21:03:34 -05:00
mark_story
a275555297 Merge branch '2.0' into 2.1
Conflicts:
	lib/Cake/Model/Datasource/CakeSession.php
2012-01-29 15:38:56 -05:00
mark_story
4dd13ef554 Fix issue where session would always be regenerated.
Fixes #2519
2012-01-29 15:37:14 -05:00
ADmad
ca32ca185a Fixing API docblock 2012-01-29 22:24:26 +05:30
Jose Lorenzo Rodriguez
37314a2188 Logging transaction commands in DboSource, fixes #2457 2012-01-21 15:48:17 -04:30
Scott Harwell
e1738c8c4a Added check for NOT in key when array count === 1 to prevent SQL error 2012-01-18 15:04:53 -05:00
Jose Lorenzo Rodriguez
e25867da79 Catching any possible exception in DatabaseSession destructor, using exceptions in destructors is a bad idea in PHP 2012-01-12 20:12:38 -04:30
mark_story
97ce118294 Merge branch '2.0' into 2.1
Conflicts:
	lib/Cake/Utility/ClassRegistry.php
2012-01-11 20:59:31 -05:00
Victor Yap
cf8c1cd93b Return length 36 for uuid columns in Postgres.describe()
When describing a Postgres native "uuid" column, the length 36 should be
returned so that Model.save() will be able to correctly set $isUUID as
"true" on that column.

Fixes #2467
2012-01-11 17:27:39 -05:00
mark_story
0e56d742b8 Merge branch '2.0' into 2.1
Conflicts:
	lib/Cake/Model/BehaviorCollection.php
	lib/Cake/basics.php
2012-01-08 21:59:18 -05:00
Jose Lorenzo Rodriguez
850dbb9453 More explicit fetch mode in Mysql datasource 2012-01-08 18:46:42 -04:30
Jose Lorenzo Rodriguez
7b586369e0 Initializing CakeSession class only when required, mixing procedural code with class definitions is not good 2012-01-07 18:31:50 -04:30
Jose Lorenzo Rodriguez
399c293b77 Extracting the CakeSessionHandlerInterface into its own file 2012-01-07 18:20:16 -04:30
Jose Lorenzo Rodriguez
e5c312f4b5 Using an explicit fetch mode in all calls to PDOStatement::fetch, this also reduces the memory usage 2012-01-07 18:06:02 -04:30
Jose Lorenzo Rodriguez
ba097d404f Explicitly using a fetch mode in SQLServer, not doing it causes serious memory leaks 2012-01-07 01:04:02 -04:30
Jose Lorenzo Rodriguez
cd562f52ba Fixing a couple failing tests on windows using sqlserver 2012-01-07 00:37:50 -04:30
José Lorenzo Rodríguez
f9c8d0cbf9 Merge pull request #394 from majna/2.0-sess-doc
Remove unused property CakeSession::$security.
2012-01-04 16:20:24 -08:00
Majna
75b4e7d550 Remove unused property CakeSession::$security. 2012-01-04 22:09:40 +01:00
José Lorenzo Rodríguez
3589eaebcf Merge pull request #393 from majna/2.0-sess-doc
Fix incorrect doc block in CakeSession.
2012-01-04 12:49:36 -08:00
Majna
ba02cf7a9a Fix incorrect doc block in CakeSession. 2012-01-04 21:40:14 +01:00
mark_story
9562638610 Merge branch '2.0' into 2.1 2012-01-04 07:39:35 -05:00
mark_story
c43b099894 Fix null bytea columns.
Apply patch from 'opiazer'  Fixes #2432
2012-01-03 20:51:56 -05:00
mark_story
101148c10f Return 0 if there is no result.
The documented return is an integer.  Stick to that.
Fixes #2430
2012-01-02 20:18:01 -05:00
Rachman Chavik
1d333fd8b7 fullTableName needs to check for empty schemaName 2011-12-29 19:18:37 +07:00
ADmad
389072708a Merge branch '2.0' into 2.1
Conflicts:
	lib/Cake/Test/Case/Model/ModelReadTest.php
	lib/Cake/Utility/Debugger.php
2011-12-22 03:15:04 +05:30
euromark
a41539dfa4 Indentation fix (tab instead of spaces)
Fixes #2398

Conflicts:

	lib/Cake/Test/Case/Console/Command/ShellTest.php

Signed-off-by: mark_story <mark@mark-story.com>
2011-12-20 22:26:43 -05:00
Kyle Robinson Young
d794084d38 More code standards formatting 2011-12-15 23:00:07 -08:00
Kyle Robinson Young
51f9837db4 Code standards formatting 2011-12-15 22:52:07 -08:00
Rachman Chavik
577225b8a6 include schema name when storing in _sequenceMap 2011-12-15 13:49:48 +07:00
Rachman Chavik
a8d0447e61 fix fullTableName duplicate prefix, closes #2355 2011-12-14 14:35:20 +07:00
Rachman Chavik
d2eac08e6b fixing previous incomplete fix 2011-12-14 14:34:41 +07:00
Rachman Chavik
6505dd8e29 fixing conflict resolution in 2e8498e1 re: pgsql 2011-12-14 07:50:44 +07:00
Rachman Chavik
90af608489 keep existing data in unique HABTM closes LH 275
ported to 2.0 branch from cakephp/cakephp#93
2011-12-12 18:09:02 +07:00
mark_story
2e8498e166 Merge branch '2.0' into 2.1
Conflicts:
	lib/Cake/Model/Datasource/Database/Postgres.php
	lib/Cake/Test/Case/Console/TaskCollectionTest.php
	lib/Cake/Test/Case/Model/ModelIntegrationTest.php
	lib/Cake/Test/Case/Utility/ClassRegistryTest.php
	lib/Cake/Utility/ClassRegistry.php
2011-12-11 22:51:40 -05:00
mark_story
c3f17c24f3 Fix issue with duplicate prefixes.
Postgres::truncate() was double prefixing
table names.

Fixes #2355
2011-12-09 21:14:57 -05:00
Kyle Robinson Young
c836ba08a3 Add/move docblocks to make text available in the API docs 2011-12-08 07:35:02 -08:00
Kyle Robinson Young
1e1c7a036d Code consistency formatting tweaks 2011-12-06 12:52:48 -08:00
mark_story
6d269ce25d Merge branch '2.0' into 2.1
Conflicts:
	lib/Cake/Config/config.php
	lib/Cake/Console/Command/Task/ModelTask.php
	lib/Cake/Console/Command/TestsuiteShell.php
	lib/Cake/Model/CakeSchema.php
	lib/Cake/Model/Datasource/Database/Sqlite.php
	lib/Cake/Test/Case/Model/ModelTestBase.php
	lib/Cake/Test/Case/Routing/DispatcherTest.php
	lib/Cake/Test/Case/Utility/FileTest.php
	lib/Cake/VERSION.txt
2011-12-03 13:45:28 -05:00
Kyle Robinson Young
8197f87dbc Spelling and grammar fixes 2011-12-01 21:58:09 -08:00
Kyle Robinson Young
94e119fe67 Adhere to code formatting standard 2011-11-30 23:21:31 -08:00
mark_story
49708ec837 Fix cachefiles being generated with "
Cache files with SQLite should not contain "

Fixes #2323
2011-11-30 21:56:25 -05:00
Kyle Robinson Young
5876744709 Adhering to coding standards 2011-11-30 07:44:11 -08:00
Jose Lorenzo Rodriguez
2bffd4c26d Preventing memory leak in PDO when retrieving results from the driver, fixes #2293 2011-11-25 13:36:14 -04:30
Rachman Chavik
144b556d1f Adding new property Model::schemaName
Just like physical table name, the schema name is an important information
that should be available in models.  The property will be populated accordingly
by the model's datasource.
2011-11-25 22:29:23 +07:00
Ceeram
e5c8a446d6 Add sorting on joined model virtual field, fixes #2250 2011-11-17 00:18:12 +01:00
Ceeram
d8194a5818 Merge commit '2890e6659ecb6f315c82253e6985ece0e6dc489d' into 2.0 2011-11-12 18:09:58 +01:00
mark_story
0b0d180aad Changing how insertMulti handles boolean values.
Binding values individually allows boolean to work correctly.
2011-11-09 22:31:06 -05:00
teddyzeenny
bdbc34bbed Remove session.save_handler from php ini array 2011-11-09 16:40:32 +02:00
mark_story
2c91f119cb Remove redundant check. 2011-11-07 23:17:08 -05:00
Jose Lorenzo Rodriguez
b983aa9192 Small optimization in DboSource 2011-11-04 10:01:45 -04:30
mark_story
f531e7f24b Fix UUID issue in SQLite
Only varchar(36) was interpreted as a uuid.  char(36)
should also be treated this way.  Most documentation refers
to this type.  Also char(x) fields should be treated as strings,
not text.

Fixes #2184
2011-10-31 23:10:48 -04:00
mark_story
43df8d34e7 Use String::tokenize() to split up fields.
It is slightly more intelligent than explode()
Solves basic problems in Sqlite with virtualFields.

Fixes #2163
2011-10-26 21:17:20 -04:00
ADmad
1244656595 Prevent unneeded afterFind callback triggering on associated models. Fixes #2057 2011-10-26 19:36:32 +05:30
mark_story
fe9e595913 Fix issue with postgres and virtualFields
If a virtualField was set to a literal value it would be quoted.
Test added.

Fixes #2085
2011-10-21 22:17:48 -04:00
Ceeram
2890e6659e Fixing execute() $this->_result was not instance of PDOStatement after queries other then SELECT, lastAffected() now returns correct integer 2011-10-20 14:27:48 +02:00
mark_story
6d9b709c7a Fix method signatures of database drivers.
They were incompatible with Datasource.
Add tests for MySQL and SQLite as their implementation changed a bit.
Update docs for Postgres.

Fixes #2100
2011-10-14 21:25:14 -04:00
mark_story
455787ade9 Fixing undefined variable reference.
Fixes #2078
2011-10-09 22:34:59 -04:00
Jose Lorenzo Rodriguez
c56797a15f Adding destructor in CacheSession handler to avoid a fatal error when closing the session 2011-10-06 23:10:13 -04:30
Jose Lorenzo Rodriguez
a14abd6281 Fixing DatabaseSession handler to correctly close the session before the model object is destroyed by php.
This allows to remove an old hack in ConnectionManager
2011-10-06 23:01:49 -04:30