Commit Graph

1543 Commits

Author SHA1 Message Date
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 Minnee
b311fbf038 MINOR: Always flush the manifest when using sapphire/test/bootstrap.php 2012-01-10 17:28:11 +13:00
Sam Minnee
65299afd27 MINOR: Removed database coupling from GridFieldTest. 2012-01-10 17:00:02 +13:00
Sam Minnee
6a08a82c9c MINOR: Removed notice-level errors from form field construction. 2012-01-10 16:58:27 +13:00
Sam Minnee
489191b44f BUGFIX: Fixed notice-level errors in GridField, exposed by test failures. 2012-01-10 16:39:12 +13:00
Sam Minnée
c2da56d4a1 Merge pull request #136 from simonwelsh/54_fixes
BUGFIX Generate valid PHP when $includeDebuggingComments is true.
2012-01-09 19:09:45 -08:00
Sam Minnee
88f645ef59 Merge remote-tracking branch 'refs/remotes/scienceninjas/pull/gridfield-tests' 2012-01-10 16:02:06 +13:00
Sam Minnee
34cc18e66b MINOR: Added a test for GridField_URLHandler components. 2012-01-10 11:10:38 +13:00
Stig Lindqvist
3c516b7b97 API CHANGE: Refactored GridField modifiers into GridField_ColumnProvider, GridField_HTMLProvider, GridField_ActionProvider, and GridField_DataModifier interfaces, all added as components in the config.
API CHANGE: Simplified state handling so that it's just a key store. Affectors are replaced with GridField_ActionProviders. API CHANGE: Removed GridField state manipulation actions instead opting for GridField_ActionProvider actions.
API CHANGE: Removed support for modifiers that add "body" rows, instead having core support for generating the body rows hardcoded into the GridField.
API CHANGE: Allow modification of columns across the whole GridField with the GridField_ColumnProvider interface.
API CHANGE: Renamed GridField_AlterAction to GridField_Action, and added actionName/args parameters, since it can be used for all actions (including batch actions and row actions)
API CHANGE: Removed GridFieldRow class.
2012-01-09 13:30:34 +13:00
Stig Lindqvist
ea4b9fe939 MINOR Added tests for GridField with minor changes to support them
MINOR Added docblocks
2012-01-07 04:59:34 +01:00
Sam Minnée
9a1644f9e1 Merge pull request #148 from ajshort/pull-2
Added GroupedList
2012-01-06 16:19:20 -08:00
Sam Minnée
2c770a6f8f Merge pull request #146 from simonwelsh/namespace-manifest
BUGFIX Namespaced classes were always having their namespace prepended t...
2012-01-06 15:58:46 -08:00
Sean Harvey
3d8079c1b5 API CHANGE Removed GeoIP functionality from sapphire. This now belongs in a separate "silverstripe-geoip" GitHub repository: https://github.com/silverstripe-labs/silverstripe-geoip 2012-01-02 18:00:36 +01:00
Ingo Schommer
4056b94f75 BUGFIX Improved ClassInfo::ancestry() performance through in-memory caching and removal of unnecessary is_object() check - get_class() will complain if its not passed an object already) 2012-01-02 16:49:33 +01:00
Ingo Schommer
72694d8349 ENHANCEMENT Custom form attributes through Form->setAttribute() 2012-01-02 16:49:33 +01: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
Ingo Schommer
b36ad3b876 MINOR Testing nested if blocks in SSViewerTest 2012-01-02 16:48:13 +01:00
Sean Harvey
19e9b19a1a BUGFIX Ensure TextareaField template is encoding characters correctly 2012-01-02 16:48:13 +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
Ingo Schommer
b3c08dba12 API CHANGE Deprecated FieldSet-specific methods from Form, namely dateFieldByName(), unsetDataFieldByName(), unsetFieldFromTab(), resetField() 2012-01-02 16:47:59 +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
ajshort
3478e4f9e6 ENHANCEMENT: Made the form enctype configurable via a method Form->setEncType().
API CHANGE: Deprecated Form->FormEncType() in favour of Form->getEncType().
MINOR: Added enctypes as constants to the Form class.
2011-12-26 18:36:24 +11:00
Ingo Schommer
565e2ab318 Merge pull request #143 from Innovatif/sapphire
---

BUGFIX Having <header tag in HTML causes requirements to double. See http://www.silverstripe.org/general-questions/show/17524
2011-12-23 16:36:01 +01:00
Ingo Schommer
7d245c3803 MINOR Reduced unnecessary autoloading 2011-12-23 10:31:35 +01:00
Simon Welsh
dd546a9888 BUGFIX Merge request arrays recursively 2011-12-23 17:48:49 +13:00
Simon Welsh
27a51ed7ed BUGFIX Namespaced classes were always having their namespace prepended to their base class 2011-12-23 10:24:42 +13:00
Stig Lindqvist
f59d11c91e MINOR DataList::sort() can sort by relation name 2011-12-18 04:28:09 +01:00
Simon Welsh
04c8e2b762 BUGFIX Generate valid PHP when $includeDebuggingComments is true. 2011-12-17 17:35:26 +13: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
Hamish Friedlander
45c25e93b4 MINOR: Disable PhpSyntaxTest until we decide whether to re-write it or remove it 2011-12-17 15:40:06 +13:00
Hamish Friedlander
be9286fbc4 Merge pull request #132 from simonwelsh/namespace-manifest 2011-12-17 15:40:06 +13:00
Ingo Schommer
1d92172931 BUGFIX Returning 'first last' in ViewableData->FirstLast() if item is both at the same time 2011-12-17 02:32:21 +01:00
Simon Welsh
97f8cc4ab3 BUGFIX Skip NamespacedClassManifestTest on PHP versions before 5.3 2011-12-17 14:26:03 +13:00
Simon Welsh
3e6a91a07f ENHANCEMENT Allow ClassManifest to handle classes with namespaces, or that extend classes in namspaces or that implement interfaces in namespaces. 2011-12-17 14:03:53 +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
Sam Minnee
70d40cf4df BUGFIX: Removed use of base "Exception" class in order to avoid failures on PHPUnit 3.6. 2011-12-17 11:51:40 +13:00
Ingo Schommer
1b544a46a3 MINOR Backported bootstrap.php changes from CI setup (creates a FakeController to avoid empty controller stacks, fake empty session global) 2011-12-04 13:35:06 +01:00
Ingo Schommer
34686ca1dc BUGFIX Restoring system error handlers in bootstrap.php so running tests through the phpunit binary behaves the same way as TestRunner (specifically to fix DeprecationTest on our CI infrastructure) 2011-12-04 13:10:28 +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
Ingo Schommer
ea7310c36a MINOR Specifically turning off Transliterator in FileNameFilterTest, was assumed to be on regardless of setting (surfaced by d1ebe1ce9) 2011-11-14 16:30:53 +01:00
Ingo Schommer
d30b4b1d00 BUGFIX Respecting api_access on has_one relations in RestfulServer
BUGFIX Limiting fields according to api_access on relation object (rather than the "root" object) in RestfulServer
BUGFIX Limit listing of has_one relations in RestfulServer to actual relation (was listing all objects before)
BUGFIX Creating correct object instances in RestfulServer->getHandler() for relation queries
2011-11-13 14:09:44 +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
Sam Minnee
7978dd5d40 MINOR: Removed WebserverRoutingTest as it does more harm than good (checked with Stig and Ingo) 2011-10-31 11:45:54 +13: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
Ingo Schommer
96d18efa58 MINOR Replaced calls to deprecated FormField->Name() with getName() 2011-10-29 13:27:11 +02:00
Sean Harvey
f2fba45a77 MINOR Fixed broken GridFieldPresenterTest assuming IDs 2011-10-30 00:13:27 +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
ec73555db4 MINOR: Text fix. 2011-10-29 17:36:38 +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
a49b56a348 MINOR: Removed usage of deprecated FormField::Name() 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
Sam Minnee
4c93c3be19 ENHANCEMENT: Allow Deprecation::notice() to be called without passing release number. 2011-10-29 17:34:31 +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
2c0257e9b9 Cast the header value to string as PHPUnit can't handle it being NULL. 2011-10-29 15:24:06 +13:00
Simon Welsh
c8f1379407 Merge branch 'master' of git://github.com/silverstripe/sapphire 2011-10-29 13:55:50 +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
Sam Minnée
244f0707b1 Merge pull request #82 from silverstripe-scienceninjas/release/gridfield-pagination
ENHANCEMENT Release of DataGridPagination
2011-10-28 16:34:33 -07:00
Simon Welsh
1eab669f9b Fucntion signatures should match when containing arrays (PHP5.4 bug) 2011-10-29 12:07:58 +13:00
Stig Lindqvist
83e90aaafe ENHANCEMENT Release of DataGridPagination
This class extends the DataGridPresenter with the behaviour and looks of a paginated Datagrid.
2011-10-28 17:34:15 +13:00
Hamish Friedlander
cf408d766a Merge pull request #80 from silverstripe-scienceninjas/release/datagrid-renaming
API CHANGE: Rename DataGrid to GridField to be more in line with other field class names
2011-10-27 20:55:30 -07:00
Stig Lindqvist
b229c17e1d ENHANCEMENT Renamed DataGrid to GridField 2011-10-28 16:35:39 +13:00
Sam Minnée
ca29cf9b72 Merge pull request #72 from stojg/lookupfieldtest
MINOR Fix test to use the non deprecated way of fetching database records
2011-10-27 20:13:25 -07:00
Sam Minnée
499f6d4887 Merge pull request #79 from silverstripe-scienceninjas/release/datalist-test-improvements
MINOR Added more tests to the DataList to improve the coverage.
2011-10-27 20:11:41 -07:00
Stig Lindqvist
4123d2c6ab MINOR Added more tests to the DataList to improve the coverage. 2011-10-28 16:07:19 +13:00
Stig Lindqvist
e38dd08ea5 MINOR: Fix docblocks to reference SS_List instead of (now deprecated) DataObjectSet where appropriate 2011-10-28 15:58:55 +13:00
Hamish Friedlander
e5ea2ea94d ENHANCEMENT: Add Deprecation class to handle throwing deprecation notices nicely on methods that are still in use in framework or cms 2011-10-28 15:58:54 +13:00
Stig Lindqvist
d6f7b55f04 MINOR Fix test to use the non deprecated way of fetching database records 2011-10-22 16:47:39 +02:00
Ingo Schommer
e2bf21ba1a BUGFIX Escaping base URLs for anchor links rewritten by SSViewer::process() with the 'rewriteHashlinks' option enabled (which is a framework default, and necessary because of the use of a <base> tag). Also added escaping for base URLs rendered through the 'php' variation of 'rewriteHashlinks' 2011-10-18 11:42:55 +02: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
dcf59959d8 MINOR Removed dependency of DatagridFunctionalTest on ContentController (sapphire vs. cms) 2011-10-07 14:37:15 +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
3a5b3af7c6 BUGFIX Fixed tag stacking in Diff.php thirdparty lib (AIR-71) 2011-10-07 14:12:52 +02:00
Ingo Schommer
40db114218 MINOR Resetting date/time defaults for DateFieldTest, TimeFieldTest, DatetimeFieldTest 2011-10-07 14:12:51 +02:00
Ingo Schommer
c89bdbb268 ENHANCEMENT Added user timezone support to DatetimeField 2011-10-07 14:12:50 +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
f37640b493 BUGFIX Added support for array values in LookupField, to ensure it works correctly when used as a readonly representation of ListboxField (AIR-39) 2011-10-07 14:12:49 +02:00
Ingo Schommer
715638333e API CHANGE Obeying existing memory_limit settings in increase_memory_limmit_to(). Introduced set_increase_memory_limit_max() and set_increase_time_limit_max() 2011-10-07 14:12:48 +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
4d31ac65a0 ENHANCEMENT Allowing array values in ListboxField->setValue(), serialising into comma-separated list of values (AIR-35) 2011-10-07 14:12:47 +02:00
Ingo Schommer
007eb259e0 MINOR Added DataDifferencerTest, starting by testing array-based values (AIR-39) 2011-10-07 14:12:47 +02:00
Ingo Schommer
da0ac49d5f API CHANGE Rewriting underscores to dashes in files uploaded through Upload->load(), Folder->addUploadToFolder() or Image->loadUploadedImage(). Transliterating non-ASCII characters automatically (turn off via FileNameFilter::$default_use_transliterator=false)
ENHANCEMENT New FileNameFilter class for a more customisable way to influence filename filtering in Upload->load(), Folder->addUploadToFolder() or Image->loadUploadedImage()
2011-10-07 14:12:46 +02:00
Ingo Schommer
afeccbc9cb ENHANCEMENT Added File::get_class_for_file_extension() instead of hardcoding it in Folder->constructChild(). Allows for custom classes in files uploaded through core functionality like the Upload and FileField logic. 2011-10-07 14:12:45 +02:00
Stig Lindqvist
b1b1615a58 ENHANCEMENT Datagrid renders ArrayList according to Datagrid#setModelClass() 2011-09-29 14:15:02 +13:00
Stig Lindqvist
1811fc2746 MINOR Cleaning up code of Datagrid with related classes with more tests 2011-09-29 12:16:15 +13:00
Jean-Fabien
197913842c ENHANCEMENT First cut at data grid with the data presenter 2011-09-28 17:49:14 +13:00
Stig Lindqvist
85cdb3771c FEATURE Added initial commit of Datagrid with tests 2011-09-28 12:33:02 +13: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
Will Rossiter
60ea09bb42 BUGFIX: prevent TestRunner from dying when running through sake and loading FullTestSuite 2011-09-26 16:08:31 +13:00
Ingo Schommer
2651a1ba81 MINOR Marking Director::extract_request_headers() public because we can't unit test protected methods in PHP 5.2 2011-09-19 16:01:33 +02:00
ajshort
a60f03f28e ENHANCEMENT Sapphire Doesn't Read HTTP Headers (fixes #6311) 2011-09-19 14:49:55 +02: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
dfb0504d0d BUGFIX Setting "Content-Length" header in HTTPResponse to avoid problems with proxies timing out 2011-07-26 08:25:09 +02:00
Ingo Schommer
908eeb4811 MINOR Fixed SQL quoting in DbDatetimeTest (broke PostgreSQL) 2011-05-31 08:18:50 +12:00
Ingo Schommer
e1931c107f MINOR Updated MemberTest to accept new default date formats caused by Zend/CLDR upgrade (from 'MM/dd/yyyy' to a less ambiguous 'MMM d, y') 2011-05-31 07:55:12 +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
Ingo Schommer
0adac9d40b ENHANCEMENT Allowing filtered arguments on specific functions like mysql_connect() in SS_Backtrace 2011-05-26 22:04:01 +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
4f9065918a MINOR Fixed CheckboxSetTest (broken by wrossiter in 771e93ef18) 2011-05-24 08:58:36 +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
67ec23677a MINOR Fixed RestfulServerTest 2011-05-19 15:17:38 +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
Ingo Schommer
a2d334ca0c MINOR Fixed fixture ordering in RestfulServerTest to work with PostgreSQL 2011-05-19 11:09:06 +12:00
ajshort
1f6f7f0862 API CHANGE: Deprecated CompositeField->FieldSet() in favour of CompositeField->FieldList().
MINOR: Replaced usage of FieldSet with FieldList.
MINOR: Renamed FieldSetTest to FieldListTest.
2011-05-11 17:51:54 +10:00
ajshort
f0676c7d56 API CHANGE: Updated FieldSet to use ArrayList rather then DataObjectSet.
MINOR: Updated FieldSetTest since position information is no longer available on iterated objects.
2011-05-06 08:30:54 +10: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
ajshort
04e30243d0 MINOR: Updated MemberTest to work with a standard array iterator. 2011-05-03 12:16:40 +10:00
ajshort
54a5fc6a74 BUGFIX: Fixed the manifest not parsing interfaces which extended from multiple interfaces. 2011-05-02 10:37:26 +10:00
Ingo Schommer
37774d4103 ENHANCEMENT Added ClassManifest->getModules(), and removed limitation to toplevel modules in ClassManifest->handleFile() (necessary to detect new sapphire/admin/ "submodule") 2011-05-01 20:23:07 +12: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
0de6dbc848 BUGFIX: Fixed Permission::add_to_hidden_permissions() and Permission::remove_from_hidden_permissions() 2011-05-01 15:26:28 +12:00
Sam Minnee
7efd19e7cb BUGFIX: Fixed DataList arrayaccess. 2011-05-01 15:26:28 +12:00
Sam Minnee
4a061fd071 ENHANCEMENT: Refactored MemberTableList field to make better use of DataList and ManyManyList. Refactored ComplexTableField and TableListField to, stripping out as much model logic as possible. 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
319d2f4952 ENHANCEMENT: Refactored TableListField and subclasses to rely on the DataList to handle data manipulatation.
API CHANGE: A DataList can be passed as the 2nd argument to the constructor; this is the recommended approach for editing non-relations.
API CHANGE: You can't set a custom query; only a custom DataList.
API CHANGE: You can't have one of these fields editing data that doesn't correspond to a DataList - there must be some kind of DataObject behind it.
API CHANGE: If the field's name corresponds to a relation on the object being edited, then the relation is used as the data set - all the source* parameters are ignored.
API CHANGE: relationAutoSetting only works if your form has had the corresponding data object loaded with $form->loadDataFrom().
API CHANGE: relationAutoSetting can't be turned off; attach a non-relation DataList instead.
2011-05-01 15:25:45 +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
Sam Minnee
3619eae9eb MINOR: Don't couple GroupTest to the Member_GroupSet object. 2011-05-01 15:25:14 +12:00
Ingo Schommer
79e0634537 Merge branch 'cms-ui-preparation' 2011-04-28 22:48:02 +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
583f669c68 API CHANGE Adjusting to split of SiteTree->getCMSFields() into getSettingsFields(), and new tab paths ("Root.Content" instead of "Root.Content.Main") 2011-04-24 11:46:49 +12:00
Ingo Schommer
d5efacbf56 BUGFIX Less fragile 'newness' check on Group->Code in Group->onBeforeWrite() (fixes #6595) 2011-04-14 21:38:07 +12: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
f4a16d3c77 MINOR Making HTTPTest less fragile around global state. Improved test readability. 2011-03-31 08:37:48 +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
14e1341df6 ENHANCEMENT Added support for SapphireTest::$fixture_file paths relative to current class location ('MyTest.yml' or '../otherfolder/MyTest.yml'). Added SapphireTest->getCurrentAbsolutePath() and getCurrentRelativePath() for easy access within unit tests 2011-03-30 20:05:22 +13:00
Julian Seidenberg
eaa6c6c49d API-CHANGE: removing protected object_to_array method (use get_object_vars instead) 2011-03-30 18:16:17 +13:00
Julian Seidenberg
dec5c0ae60 API CHANGE: TextareaField doesn't have hidden value on read-only transformation. Added hidden fields in a way that doesn't break unit tests too severely (fixes #5056, thanks jshipman) 2011-03-30 18:16:17 +13:00
Julian Seidenberg
0b93a8f7cf API-CHANGE: Allowing non-standard path for session store 2011-03-30 18:16:16 +13:00
Julian Seidenberg
5efdc60029 API-CHANGE: Renaming a folder did not update the folder's filename on the disk. This is now fixed. There is now a one-to-one mapping between a folder and its "Title" label. Files still can have a Title that is different from the Filename (fixes #6088, thanks Pike) 2011-03-30 18:16:16 +13:00
Julian Seidenberg
a204c136fe API CHANGE: JSONDataFormatter builds JSON itself, changing it to use Convert::array2json() instead (fixes #5162, thanks sharvey) 2011-03-30 18:16:12 +13:00
Julian Seidenberg
f94be66cb2 BUGFIX: HTMLText.Summary() will return nothing if there's an image at the beginning. Regex to strip out the image and unit tests (fixes #6436, thanks webbower) 2011-03-30 18:12:31 +13:00
Julian Seidenberg
341245dd4a ENHANCEMENT Allowing custom HTMLCleaner implementations via Diff:: and new TidyHTMLCleaner and PurifierHTMLCleaner classes 2011-03-30 18:02:25 +13:00
Ingo Schommer
0d39a888a1 MINOR Removed references to ContentController from documentatin 2011-03-29 18:20:14 +13:00
Ingo Schommer
95dcc74c10 MINOR Removed reliance of sapphire/admin unit tests on SiteTree and CMSMain 2011-03-29 18:20:10 +13:00
Ingo Schommer
65e7b83421 MINOR Made login form redirection test in SecurityTest explicit, rather than implicit through testLogInAsSomeoneElse() 2011-03-29 18:08:33 +13:00
Ingo Schommer
29afbea69d BUGFIX Fixed ComplexTableFieldTest to work without a valid root url (which breaks the AddForm() redirection) 2011-03-29 18:07:59 +13:00
Ingo Schommer
b78b1309c9 MINOR Removing SiteTree dependency from FulltextSearchableTest 2011-03-29 18:07:58 +13:00
Ingo Schommer
67cc18f5bf MINOR Optional dependency on ThumbnailStripField in HtmlEditorField, preparing the split of this field into a "basic" and "cms" version 2011-03-29 18:07:58 +13:00
Ingo Schommer
41e51abd9a MINOR Made HtmlEditorField dependency to SiteTree optional (to be moved into separate aspect, or down to DBField/model layer) 2011-03-29 18:07:58 +13:00
Ingo Schommer
a9b13509d2 MINOR Removed dependency on SiteTree in various unit tests 2011-03-29 18:07:58 +13:00
Ingo Schommer
ecc28cb565 MINOR Moved MigrateSiteTreeLinkingTask from 'sapphire' to 'cms' module 2011-03-29 18:07:57 +13:00
Ingo Schommer
764c5a842b MINOR Moved Widget, WidgetArea and related files from 'sapphire' to 'cms' module 2011-03-29 18:07:57 +13:00
Ingo Schommer
1c213906cb MINOR Removed unnecessary SiteTree dependency from TransactionTest 2011-03-29 18:07:57 +13:00
Ingo Schommer
d93025d668 MINOR Moved File->BackLinkTracking feature from 'sapphire' to 'cms' 2011-03-29 18:07:57 +13:00
Ingo Schommer
d61444e976 API CHANGE Moved Translatable class into new 'translatable' module 2011-03-29 18:07:56 +13:00
Ingo Schommer
8847beded2 MINOR Moved SearchFormTest and ContentControllerSearchExtensionTest into 'cms' module 2011-03-29 18:07:56 +13:00
Paul Meyrick
251c1df63a MINOR Fixed SSViewerTest->testCurrentTheme() not to rely on SiteConfig 2011-03-29 18:07:55 +13:00
Paul Meyrick
dc36725869 MINOR Using BlankPage template in SecurityTest, BasicAuthTest to remove ContentController dependency
MINOR Checking for SiteTree class existence in Security, Translatable
MINOR Checking for ContentController existence in FulltextSearchable
MINOR Removed unnecessary ContentController tests from ObjectTest
MINOR Replaced CMS specific examples in PermissionCheckboxSetFieldTest, DataObjectTest
MINOR Changed SecurityTest to make assertions against Security/login rather than relying on redirection from admin/cms
2011-03-29 18:07:55 +13:00
Ingo Schommer
7f06f97761 MINOR Moved WidgetArea (and related tests) to "cms" module 2011-03-29 18:07:55 +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
5bf5b744d8 MINOR Moved ContentController, ModelAsController, NestedController, RootURLController (and related tests) to "cms" module 2011-03-29 18:07:55 +13:00
Ingo Schommer
1a598fe39e MINOR Removed obsolete 'usetestmanifest' flag from documentation and RestfulServiceTest 2011-03-28 08:14:03 +13:00
ajshort
bd2a54769c MINOR: Updated WebserverRoutingTest to use Security/ping to test if the server is accesible, since ?usetestmanifest is no longer available. 2011-03-25 14:59:34 +11:00
Hamish Friedlander
2f1ffe2f6f BUGFIX: Manifest test fixtures were interfering with other tests 2011-03-25 14:07:18 +13:00
ajshort
eb1a3fe75a API CHANGE: Separated the actual CURL request generation code from RestfulService::request() into RestfulService::curlRequest().
MINOR: Updated RestfulServiceTest to use a mock service rather than the actual site. This eliminates the need for ?usetestmanifesst.
2011-03-24 21:31:00 +11:00
ajshort
1a0ced4adc MINOR: Updated the i18n tests to use mock template and class manifests. 2011-03-24 21:31:00 +11:00
ajshort
c34105438c FEATURE: Replaced the template manifest with SS_TemplateLoader, which finds templates from a stack of SS_TemplateManifest objects. 2011-03-24 21:30:57 +11:00
ajshort
76f0fc0c92 FEATURE: Added SS_TemplateManifest, which finds all templates within a directory organised by theme and type. 2011-03-24 21:30:20 +11:00
ajshort
07b1308cd4 MINOR: Made it possible to disable caching on a class manifest via a constructor parameter, and used this in ClassManifestTest. 2011-03-24 20:14:43 +11:00
ajshort
bc0a1b7a05 MINOR: Updated various methods to use new manifest methods rather than ManifestBuilder functions or globals. 2011-03-24 20:14:43 +11:00
ajshort
0c78935db4 API CHANGE: Replaced ManifestBuilder::load_test_manifest() calls with new function TestRunner::use_test_manifest(), which pushes a test manifest onto the class loader. 2011-03-24 20:14:43 +11:00
ajshort
184da5bbcc FEATURE: Replaced ManifestBuilder (and related bootstrap code) with a new SS_ClassLoader class which loads classes and interfaces from a stack of SS_ClassManifest instances. 2011-03-24 20:14:42 +11:00
ajshort
c685893251 ENHANCEMENT: Added a SS_ClassManifest class which finds all config files, classes and interfaces in a directory, as well as constructing descendant and implementor information. 2011-03-24 20:14:42 +11:00
ajshort
ecc6840344 ENHANCEMENT: Added a ManifestFileFinder class, which is an extension to SS_FileFinder which takes into account modules, exclude files and lang/test/themes/assets dirs. 2011-03-24 20:14:42 +11:00
ajshort
852920237e MINOR: Updated ClassInfo::allClasses() and ::exists() to use $_CLASS_MANIFEST rather than $_ALL_CLASSES. This means results from ClassInfo::allClasses() are now lowercase. 2011-03-24 20:14:42 +11:00
ajshort
a0f66099ed FEATURE: Added the SS_FileFinder class for finding files within a directory true that match a set of rules. 2011-03-24 20:14:42 +11:00
ajshort
5c972b231d API CHANGE: Moved ManifestBuilder::get_themes() to SSViewer::get_themes(). 2011-03-24 20:14:41 +11:00
ajshort
803e67b87d API CHANGE: Refactored ClassInfo::subclassesFor() to traverse the child tree, rather than needing to store a list of every classes descendants.
API CHANGE: Updated ClassInfo::subclassesFor() so all the array keys are consistently the same as the values.
2011-03-24 20:14:41 +11:00
ajshort
f55cc7ec67 MINOR: Refactored ClassInfo::dataClassesFor() to use existing methods rather than creating the class array itself. 2011-03-24 20:14:41 +11:00
ajshort
eba1a85ead MINOR: Refactored ClassInfo::ancestry() to use inbuilt PHP methods rather than the parent manifest. 2011-03-24 20:14:41 +11:00
ajshort
0d03348926 API CHANGE: Refactored ClassInfo::baseDataClass() to use inbuilt PHP methods, and throw an exception if the passed class is not a subclass of DataObject. 2011-03-24 20:14:38 +11:00
Ingo Schommer
0b40bda1cc MINOR Changed TreeDropdownField markup from <div href="..."> to <div data-url-tree="..."> in order to support other URLs (e.g. reordering) - important for the main CMS tree 2011-03-22 18:15:03 +13:00