Sean Harvey
02c8019bb8
ENHANCEMENT Introduce Database::prepStringForDB(), used by
...
DBField::prepValueForDB() and StringField::prepValueForDB() to ensure
the field value is escaped correctly for the database. This means
databases like MSSQL can introduce an "N" prefix (marking text as
unicode to be saved correctly) by overloading the
prepStringForDB method. MySQL, PostgreSQL and SQLite3
operate as usual.
2012-03-20 21:20:35 +13:00
Sean Harvey
9b0009643a
MINOR Added tests for SS_Map testing value method instead of value field
2012-03-15 17:42:42 +13:00
Fred Condo
df050eda5d
BUGFIX: Correct testSetNullAndZeroValues() of DatetimeTest
...
- Code was assuming NZ time zone
- Set the default timezone to UTC for the test
- Correct the expected times for the epoch from noon to 00:00:00 UTC
2012-03-09 15:41:11 -08:00
Fred Condo
6e6890f689
Clarify failure messages to distinguish string and numeric zero tests
2012-03-09 15:41:11 -08:00
Hamish Friedlander
bc3f5ac329
BUGFIX: DataObjectTest needs its extensions to use the new static-on-object method to keep the ordering as it expects
2012-03-09 18:16:45 +13:00
Sam Minnee
a55e06f6b5
API CHANGE: Introduce SS_Limitable class for adding to SS_Lists that have limit capability.
...
API CHANGE: Deprecated SS_List::getRange() in favour of SS_Limitable::limit().
API CHANGE: Introduce SS_Limitable::limit($limit, $offset = 0) as the only modern way of specifying limits; deprecate all others.
2012-03-09 17:07:40 +13:00
Ingo Schommer
e4a6dd5850
Merge branch 'integration'
...
Conflicts:
forms/gridfield/GridField.php
2012-03-08 20:25:21 +01:00
Ingo Schommer
51bae9e4a6
ENHANCEMENT Allowing to save ManyManyList with multiple foreign keys (e.g. required to add to an overloaded Group->Members() relationship)
2012-03-06 21:38:33 +01:00
Ingo Schommer
bb6d4c506e
BUGFIX Fixed HasManyList and ManyManyList queries for relationships on new records (was returning all available records due to the SQL filtering ignoring ID=0)
2012-03-06 01:23:34 +01:00
Ingo Schommer
299bf8b9c6
Merge branch 'integration'
2012-03-02 20:53:06 +01:00
Ingo Schommer
e5c4b0a36b
ENHANCEMENT Hierarchy->Breadcrumbs()
2012-03-02 20:46:19 +01:00
Sean Harvey
58d48583a9
ENHANCEMENT Date::DayOfMonth() now supports ordinal argument, so you can get somehing like "10th" or "2nd". Also supported in Date::RangeString
2012-02-24 20:38:11 +13:00
Sean Harvey
8fdc531345
BUGFIX Ensure Date and Datetime field types actually set NULL, false, empty string values correctly instead of "1970-01-01" which gets saved to the database instead of NULL.
...
BUGFIX Datetime::Nice() and casting methods return NULL when there is no value, to be consistent with Date::Nice() and so on
2012-02-24 20:37:58 +13:00
Sean Harvey
b1acd0520d
MINOR Fixed tests using PostgreSQL as the database
2012-02-16 12:19:33 +13:00
Sean Harvey
f1a67a87de
MINOR Fixed broken test using PostgreSQL as the database
2012-02-16 12:18:36 +13:00
Fred Condo
d370423825
Clean up trailing ?> per coding standard
...
All sapphire but the lang directory
2012-02-12 12:40:16 -08:00
Sean Harvey
c5452a7d4c
MINOR Fixed broken tests in PostgreSQL
2012-02-11 14:40:39 +13:00
Sean Harvey
753bed5294
MINOR Fixed broken tests in PostgreSQL
2012-02-11 14:25:13 +13:00
Ingo Schommer
91b0c7b3ba
Merge pull request #187 from silverstripe-scienceninjas/story/datadifferencetest-fix
...
MINOR DataDifferenceTest should not test whitespace
2012-02-10 15:43:40 -08:00
Sean Harvey
591dd4efa9
BUGFIX SS_Map::keys() and SS_Map::values() are identical, keys() should return the *keys* not the values #6818
2012-02-11 11:46:20 +13:00
Stig Lindqvist
03abde46be
MINOR DataDifferenceTest should not test whitespace
2012-02-10 23:27:06 +01:00
Sam Minnee
d1a39b0b1a
BUGFIX: Fixed operation of the onlyDeletedFromStage parameter of Hierarchy::liveChildren().
2012-02-08 18:38:37 +13:00
Ingo Schommer
618d767dcb
API CHANGE Removed XML escaping in DBField->LowerCase() and UpperCase(), in order to consistently allow SSViewer to deal with casting. Affects subclasses like Text, Varchar and HTMLText.
...
API CHANGE Deprecated StringField->Lower() and Upper(), use String->LowerCase() and UpperCase() instead. Moved methods from DBField to StringField.
2012-01-31 16:11:55 +01:00
Ingo Schommer
e1e5546ab6
BUGFIX Casting return values on text helper methods in StringField, Text, Varchar
2012-01-31 16:11:55 +01:00
Stig Lindqvist
7f09b6931b
API CHANGE DataList::subtract and DataQuery::subtract for subtracting a list from another list
...
Minor Stripped out ManyManyList tests from DataListTest into it's own test case
2012-01-26 17:59:43 +13:00
Sam Minnee
d296a9411d
Merge remote-tracking branch 'refs/remotes/scienceninjas/story/sort-by-relation-on-datalist'
2012-01-10 17:33:04 +13:00
Sam Minnée
9a1644f9e1
Merge pull request #148 from ajshort/pull-2
...
Added GroupedList
2012-01-06 16:19:20 -08:00
Ingo Schommer
b5421d9598
ENHANCEMENT Allowing custom attributes in (most) FormField implementations, which allows for HTML5 data attributes
2012-01-02 16:48:14 +01:00
Sean Harvey
9e548f501e
API CHANGE FormField::Field() and FormField::FieldHolder() now render into templates on each FormField instead of creating HTML from PHP
2012-01-02 16:48:13 +01:00
ajshort
5242ed1051
FEATURE: Added GroupedList for grouping lists into sub-lists by common values of a field.
2011-12-26 19:48:53 +11:00
Stig Lindqvist
f59d11c91e
MINOR DataList::sort() can sort by relation name
2011-12-18 04:28:09 +01:00
Sam Minnee
5a157a6365
API CHANGE: Deprecate SubstringFilter in favour of PartialMatchFilter.
2011-12-17 16:42:30 +13:00
Stig Lindqvist
9bf247cc33
API CHANGE Introduced DataQuery::whereAny() and SQLQuery::whereAny()
2011-12-17 16:42:30 +13:00
Stig Lindqvist
aafdb8e01c
API CHANGE All SS_List implementators supports filter, exclude and sort methods
2011-12-17 16:42:29 +13:00
Ingo Schommer
3f28582ee8
MINOR Added URLSegmentFilterTest->testReplacements()
2011-12-17 01:13:27 +01:00
Ingo Schommer
0c3af80514
BUGFIX Better handling of multibyte strings in LimitCharacters(), removed code duplication by more flexible base implementation at StringField->LimitCharacters() (Merge pull request #121 from edlund/sapphire)
2011-12-17 00:40:13 +01:00
Ingo Schommer
a8f57be2f2
Merge pull request #118 from silverstripe/multibyte-urlsegment
...
URLSegmentFilter API (sapphire/master)
2011-12-02 02:20:59 -08:00
Ingo Schommer
9b27a4c1be
ENHANCEMENT More flexible URL filtering through new URLSegmentFilter API. Support for multibyte URL segments through URLPathFilter::$default_allow_multibyte. Abstraction from Convert::raw2url() (and SiteTree->generateURLSegment())
2011-11-29 11:04:08 +01:00
Ingo Schommer
dec86b7e6c
MINOR Using assertType() for PHPUnit 3.4 compat in DataListTest
2011-11-15 16:52:15 +01:00
Ingo Schommer
322d98306b
MINOR Whitespace
2011-11-15 16:51:17 +01:00
Fred Condo
5f1faec3e2
BUGFIX: regex-escape strings to prevent regex syntax errors
...
Apply preg_quote to each generator name and to $this->Name so that their use in a
regular expression will not cause run-time errors.
Provided fixture and test.
2011-10-31 11:34:33 -07:00
Stig Lindqvist
260a9e230c
BUGFIX Versioned returns error on singleton($className)->summaryFields()
...
This solves a bugfix when calling singleton($className)->summaryFields() and Versioned kicks back. It is needed to by the GridField functionality to get default columns to show.
This is due to DataExtension calls ClassName::extraStatics() when calling ::load_extra_statics() statically, we need to pass in class and extension.
2011-10-31 11:17:37 +13:00
Sean Harvey
016c70a6e9
MINOR Fixed broken SS_MapTest in PostgreSQL. Need to sort the IDs before asserting the DataList contents.
2011-10-30 12:50:52 +13:00
Sean Harvey
2f4b630340
MINOR Fixed broken test in PostgreSQL where assumption of IDs sorted isn't always the case
2011-10-29 23:53:24 +13:00
Sean Harvey
8f96ea7c9c
MINOR Fixed hardcoded IDs in DataListTest which fail in PostgreSQL
2011-10-29 18:27:26 +13:00
Sam Minnee
5ed14915bb
BUGFIX: Fixed DataList::find() for find by ID and find multiple times.
2011-10-29 17:36:39 +13:00
Sam Minnee
0d683dd8ef
MINOR: Removed use of deprecated join() in favour of innerJoin() and leftJoin().
2011-10-29 17:36:38 +13:00
Sam Minnee
22e5617ee2
MINOR: Moved from use of deprecated SQLMap to SS_Map.
2011-10-29 17:36:37 +13:00
Sam Minnee
c8ce6f9f55
BUGFIX: Don't create unnecessary aliases in generated SQL.
2011-10-29 17:36:37 +13:00
Sam Minnee
3e3188f81a
MINOR: Update tests for deprecated functions to explicitly disable deprecation errors.
2011-10-29 17:34:32 +13:00
Sam Minnee
a4ee0f4dad
ENHANCMEMENT: Added SS_Map to replace SQLMap.
...
API CHANGE: Deprecate SQLMap.
2011-10-29 17:34:32 +13:00
Sean Harvey
f4643e1b4a
MINOR Added double quotes around column names in AggregateTest
2011-10-29 17:28:46 +13:00
Simon Welsh
9dac9e5675
When relying on the order of returned objects, sort explicitly as it is nondeterminate for non-MySQL.
2011-10-29 15:24:06 +13:00
Simon Welsh
ca074eb7ba
Changes default MySQL storage engine to InnoDB. File requires MyISAM for FulltextSearch.
2011-10-29 13:34:45 +13:00
Stig Lindqvist
4123d2c6ab
MINOR Added more tests to the DataList to improve the coverage.
2011-10-28 16:07:19 +13:00
Ingo Schommer
c630f83344
BUGFIX Setting level in DataObject->getChangedFields() to 'value change' rather than 'type change' for CompositeFields, so they save correctly ( fixes #6726 , thanks frankmullenger)
2011-10-07 22:57:23 +02:00
Ingo Schommer
cc61551dae
MINOR Using raw SQL queries in DBDatetimeTest as SQLQuery returns false if no explicit FROM part is provided (previously working API was broken in 4171015d
)
2011-10-07 14:12:52 +02:00
Ingo Schommer
8302af1ea8
ENHANCEMENT Added Database->getLock() and Database->releaseLock() for application-level advisory locks
2011-10-07 14:12:50 +02:00
Ingo Schommer
2ec2c97766
ENHANCEMENT Allowing diffs of has_one relationship in DataDifferencer (AIR-24)
2011-10-07 14:12:48 +02:00
Ingo Schommer
007eb259e0
MINOR Added DataDifferencerTest, starting by testing array-based values (AIR-39)
2011-10-07 14:12:47 +02:00
Stig Lindqvist
8d7bfd4ffa
MINOR Fixed DataObjectTest to use ManyManyList when testing relation manipulations
2011-09-28 12:33:02 +13:00
Will Rossiter
1732a17114
Merged new-orm into datagrid
2011-09-26 16:47:54 +13:00
Ingo Schommer
ce8e72cf0e
MINOR Removing executable flag from all files (thanks miiihi)
2011-09-18 22:04:02 +02:00
Stig Lindqvist
0aeda5c924
MINOR: Fixed DateTest to work on Centos installation with another default date.timezone than Pacific/Auckland
...
Checking for PHP version and using the correct function for setting timezone
2011-08-30 00:39:44 +02:00
Ingo Schommer
908eeb4811
MINOR Fixed SQL quoting in DbDatetimeTest (broke PostgreSQL)
2011-05-31 08:18:50 +12:00
Ingo Schommer
0f7b115d33
MINOR Updated MemberDatetimeOptionsetFieldTest, i18nTest, MoneyTest to accept new default date formats caused by Zend/CLDR upgrade (from 'MM/dd/yyyy' to a less ambiguous 'MMM d, y')
2011-05-30 21:33:27 +12:00
Sam Minnee
878b348a0f
Merge branch 'master' into new-orm
...
Conflicts:
docs/en/reference/built-in-page-controls.md
model/SQLQuery.php
2011-05-26 17:08:10 +12:00
Ingo Schommer
00b1bf8ef7
MINOR Fixed DataObjectTest->testNewClassInstance() to use same ancestry classes, broken in dc367258
2011-05-20 08:38:21 +12:00
Ingo Schommer
11b409aac8
MINOR Using SQLQuery wrapper in DbDatetimeTest to provide better cross-db support, specifically correct LIMIT syntax in MSSQL (previously broken in a9b13509
)
2011-05-19 11:38:43 +12:00
ajshort
2294ef5820
API CHANGE: Deprecated DataObjectSet in favour of DataList or ArrayList.
...
MINOR: Moved DataObjectSet tests to ArrayListTest.
2011-05-06 00:52:50 +10:00
ajshort
b3fc458101
ENHANCEMENT: Made it possible to sort by multiple fields in ArrayList::sort().
2011-05-06 00:24:33 +10:00
ajshort
462689a4e6
ENHANCEMENT: Added ArrayList->removeDuplicates().
2011-05-05 20:53:07 +10:00
ajshort
99a2baf3f8
MINOR: Updated ArrayList->getRange() to return an ArrayList instance.
2011-05-05 20:41:06 +10:00
ajshort
3f132a105b
API CHANGE: Replaced DataObjectSet instances with ArrayList.
2011-05-05 20:40:24 +10:00
ajshort
9f87294427
ENHANCEMENT: Added exists(), replace(), merge(), push(), pop(), unshift() and shift() methods to ArrayList.
2011-05-05 17:48:12 +10:00
ajshort
7e7677bbba
FEATURE: Added ArrayList to allow an array of arrays or objects to be handled as a list.
2011-05-04 00:06:42 +10:00
ajshort
577be1e6fc
MINOR: Explicitly sort objects in DataListTest to prevent test failures across different DB's.
2011-05-03 21:59:51 +10:00
ajshort
c025ce7a4a
MINOR: Replaced usage of deprecated toDropdownMap() with map().
2011-05-03 13:05:27 +10:00
Sam Minnee
2f79961988
MINOR: Moved tests for DataList into DataListTest.
2011-05-01 17:12:50 +12:00
ajshort
2365bfc652
MINOR: Moved model tests into the tests/model directory.
2011-05-01 15:26:30 +12:00
ajshort
3fbb29a6c5
FEATURE: Added PaginatedList, which wraps around a data list or set to provide pagination functionality. This replaces the pagination functionality baked into DataObjectSet.
...
API CHANGE: Removed pagination related methods from DataObjectSet and implemented them on PaginatedList.
API CHANGE: Removed DataObjectSet::parseQueryLimit(), this is now implemented as PaginatedList::setPaginationFromQuery().
API CHANGE: Deprecated DataObjectSet::TotalItems in favour of Count().
ENHANCEMENT: Added FirstLink and LastLink to PaginatedList.
MINOR: Updated documentation, and added a how-to on paginating items.
2011-05-01 15:26:29 +12:00
Sam Minnee
6915e58a39
BUGFIX: Fix SQLQuery::queriedTables() and added test.
2011-05-01 15:26:29 +12:00
Sam Minnee
7efd19e7cb
BUGFIX: Fixed DataList arrayaccess.
2011-05-01 15:26:28 +12:00
Sam Minnee
3a17d5c427
API CHANGE: Add removeByID(), canSortBy(), and byID() to DataList and its subclasses.
2011-05-01 15:26:01 +12:00
Sam Minnee
c615c4eb91
ENHANCEMENT: First cut of running SearchContext through DataList/DataQuery. Note that the eventual goal is probably to ditch SearchContext entirely.
2011-05-01 15:25:58 +12:00
Sam Minnee
de1494e3a8
ENHANCEMENT: Implemented DataList as the successor of DataObjectSet. DataList doesn't execute the query until it's actually needed, allowing for a more flexible ORM.
...
API CHANGE: augmentSQL is now passed a DataQuery object from which query parameters can be extracted.
API CHANGE: DataObjectDecorators that manipulate the query can now define augmentDataQueryCreation().
API CHANGE: The container class argument for DataObject::get() is deprecated.
API CHANGE: DataObject::buildSQL() and DataObject::extendedSQL() are deprecated; just use DataObject::get() now.
API CHANGE: DataObject::instance_get() and DataObject::instance_get_one() are deprecated, and can no longer be overloaded.
API CHANGE: DataObject::buildDataObjectSet() is deprecated.
API CHANGE: Cant't call manual manipulation methods on DataList such as insertFirst()
2011-05-01 15:25:45 +12:00
Sam Minnee
5dd03ca9fb
MINOR: Added additional tests for the ORM.
2011-05-01 15:25:14 +12:00
ajshort
3a1c2df4e7
API CHANGE: Renamed DataObjectDecorator to DataExtension.
...
API CHANGE: Renamed LeftAndMainDecorator to LeftAndMainExtension.
MINOR: Replaced all references to decorators with extension.
2011-04-26 11:01:38 +10:00
Ingo Schommer
fcca1d454d
MINOR Moved TransactionTest->testReadonlyTransaction() to PostgreSQLDatabase driver, which is the only one that actually supports it. We can't have tests failing for all other databases by default for this optional feature which can't be detected through the Database API.
2011-04-06 23:18:31 +12:00
Ingo Schommer
9b29616710
API CHANGE Rearranged files in sapphire to reflect core dependencies more accurately, and have the tests/ folder mirror its folder structure
2011-03-31 09:56:21 +13:00
Ingo Schommer
2870eb9212
MINOR Changed $fixture_path to relative filenames in all sapphire test cases in order to allow easier file moving and less verbosity in tests
2011-03-30 23:04:48 +13:00
Ingo Schommer
a9b13509d2
MINOR Removed dependency on SiteTree in various unit tests
2011-03-29 18:07:58 +13:00
Ingo Schommer
d61444e976
API CHANGE Moved Translatable class into new 'translatable' module
2011-03-29 18:07:56 +13:00
Ingo Schommer
204fd2c4ce
MINOR Moved SiteTree, SiteTreeDecorator, SiteConfig, ErrorPage, RedirectorPage, VirtualPage (and related tests) to "cms" module
2011-03-29 18:07:55 +13:00
Ingo Schommer
2184acf17d
Revert "MINOR Replaced assertType() calls with assertInstanceOf(), deprecated in PHPUnit 3.6 (throws warnings as of 3.5.10)" - cased too many problems with mixed build environments that require PHP 3.4
...
This reverts commit 65f6104cd6
.
2011-03-11 15:06:09 +13:00
Ingo Schommer
0a4aa9dc17
BUGFIX Renamed MySQLDatabase->clear_cached_fieldlist() to clearCachedFieldList() and moved to parent Database class in order to avoid breaking other database drivers (broken in 360176d2
by gmunn)
2011-03-11 14:22:59 +13:00
Ingo Schommer
65f6104cd6
MINOR Replaced assertType() calls with assertInstanceOf(), deprecated in PHPUnit 3.6 (throws warnings as of 3.5.10)
2011-02-21 18:49:09 +13:00
Geoff Munn
360176d23c
MINOR: cached fieldlist array can now be cleared
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@115445 467b73ca-7a2a-4603-9d3b-597d59a354a9
2011-01-12 00:10:38 +00:00
Will Rossiter
71c52f01df
EHANCEMENT: #5673 allow further manipulation on Image_Cached objects. Thanks charden!. BUGFIX: generate valid png files in ImageTest to prevent getimagesize() calls returning false results
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@115202 467b73ca-7a2a-4603-9d3b-597d59a354a9
2010-12-20 02:19:17 +00:00
Ingo Schommer
396f297acb
API CHANGE Using i18n::validate_locale() in various Translatable methods to ensure the locale exists (as defined through i18n::$allowed_locales)
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@114470 467b73ca-7a2a-4603-9d3b-597d59a354a9
2010-12-03 00:28:24 +00:00