Commit Graph

2721 Commits

Author SHA1 Message Date
ajshort
34e9ddfcc3 MINOR: Moved files from /core/model into /model. 2011-05-01 15:26:30 +12:00
ajshort
81c0caaddb API CHANGE: Renamed DataList::filter() and DataQuery::filter() to ::where(). 2011-05-01 15:26:30 +12:00
ajshort
8ec412e4d9 MINOR: Updated PaginatedList to be a list decorator. 2011-05-01 15:26:30 +12:00
ajshort
45a8866fab FEATURE: Added SS_ListDecorator, which is a utility class used to create decorators which wrap around a list instance, but are stll recognised as a list. 2011-05-01 15:26:29 +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
7efd19e7cb BUGFIX: Fixed DataList arrayaccess. 2011-05-01 15:26:28 +12:00
Sam Minnee
8db236f444 BUGFIX: Fixed DataList::relation(). 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
050e0675ce ENHANCEMENT: Created HasManyList and ManyManyList objects that represent relations. API CHANGE: Relation methods no longer cache their results. API CHANGE: ComponentSet is deprecated. API CHANGE: DataObject::getManyManyComponentsQuery() no longer exists; just use the ManyManyList itself. API CHANGE: DataObject::getManyManyJoin() no longer exists; just use the ManyManyList itself. API CHANGE: DataObject::getManyManyFilter() no longer exists; just use the ManyManyList itself. 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
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
Simon Welsh
44dabbb865 Landing pull request 3. BUGFIX: Object::__call() checking the wrong static. Fixes #6438 2011-04-25 23:11:09 +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
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
5ea4615d4d ENHANCEMENT: Refactoring and documenting the ArrayData class. Deprecating the "object_to_array" method (fixes #4875, thanks tobych) 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
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
7ebe602482 BUGFIX: Enum now escapes field values (fixes #6437, thanks simon_w) 2011-03-30 18:12:35 +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
5f59b3a3c9 MINOR Fixed paths due to file moving into sapphire/admin 2011-03-29 18:08:32 +13:00
Ingo Schommer
1225426e75 MINOR Fixed @package declarations 2011-03-29 18:07:58 +13:00
Ingo Schommer
3f3f0f6211 API CHANGE Moved SiteTree->doRollbackTo() to Versioned class 2011-03-29 18:07:58 +13:00
Ingo Schommer
502131171b BUGFIX Declaring has_many "Versions" relationship according to decorated class in Versioned->extraStatics() 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
463b23baee MINOR Exception when SiteTree or File are not present in MySQLDatabase->searchEngine() 2011-03-29 18:07:57 +13:00
Ingo Schommer
357ea56c02 BUGFIX Replaced hardcoded SiteTree dependency in DataObjectSet->groupWithParents() with method parameter 2011-03-29 18:07:57 +13:00
Ingo Schommer
7e5da27443 MINOR Added comments to DataObject->can() 2011-03-29 18:07:57 +13:00
Ingo Schommer
42fa7572e7 MINOR Moved CurrentPageIdentifier from 'sapphire' to 'cms' module 2011-03-29 18:07:56 +13:00
Ingo Schommer
4adcdba226 MINOR Moved SilverStripeNavigator from 'sapphire' to 'cms' 2011-03-29 18:07:56 +13:00
Ingo Schommer
d61444e976 API CHANGE Moved Translatable class into new 'translatable' module 2011-03-29 18:07:56 +13:00
Paul Meyrick
eb221ca821 MINOR Moved Diff class from cms to sapphire module (cms/code/Diff.php) 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
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
Hamish Friedlander
5ca97c7099 BUGFIX: Make SSTemplateParser work with empty templates 2011-03-25 14:07:07 +13:00
ajshort
2d4fe274a6 API CHANGE: Removed unused SSViewer::getTemplateFile() and getTemplateContent().
MINOR: Updated SSViewer::getTemplateFileByType() to use the template loader.
2011-03-24 21:31:00 +11:00
ajshort
2c22dee176 API CHANGE: Updated i18n::get_owner_module() to only search classes, since it is never used to search for templates. 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
7df8929bc0 API CHANGE: Updated Requirements::themedCSS() to take two parameters - the CSS name and a fallback module. It first looks for the CSS file inside the current theme, then falls back to the CSS file inside the module. This eliminates the need for a CSS manifest. 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
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
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
9caf597aee MINOR: Updated DataObject::buildSQL() to use DB::getConn() to check to see if a DB connection has been intialised rather than ManifestBuilder::has_been_included(). 2011-03-24 20:14:41 +11:00
ajshort
5c972b231d API CHANGE: Moved ManifestBuilder::get_themes() to SSViewer::get_themes(). 2011-03-24 20:14:41 +11:00
ajshort
969aa0b51e MINOR: Replaced deprecated ClassInfo::is_subclass_of() calls. 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