Commit Graph

459 Commits

Author SHA1 Message Date
Stig Lindqvist
333a2aa8f9 BUG: CMS tree filters doesn't count the correct number of children for deleted pages
This is a bug that combines Hierarchy, Versioned and LeftAndMain admins and CMSSiteTreeFilters.

This bug can be reproduced by having a large site tree with enough deleted pages in it so it doesn't
pre load all the children pages when initially opening an admin. Filter by either 'All pages including deleted'
or 'Deleted pages'. For CMS users it will look like deleted pages are gone.

The solution involves a couple of smaller fixes in both CMS and framework modules.

1) Ensure that 'numHistoricalChildren' are used instead of 'numChildren' when dealing with deleted pages
2) LeftAndMain::currentPage() deletes all the 'marking' cache previously built up by Hierarchy::markPartialTree()
3) Use Versioned::get_included_deleted() instead of raw DB queries against the DataObject tables when calculating parents in CMSSiteTreeFilter
2014-07-25 16:19:30 +12:00
Senorgeno
df6a8b6fb6 BUG #3282: Added ability to subselect with in left or inner join 2014-07-17 13:27:28 +12:00
Sean Harvey
d1d295056b Merge pull request #3265 from stevie-mayhew/images-force-resample
FEATURE allow force resampling on images
2014-07-07 11:27:16 +12:00
Stevie Mayhew
1d86fe4f52 FEATURE allow force resampling on images 2014-07-05 14:29:01 +12:00
Will Rossiter
2c741fec0c FIX Add support for compositedbfield within many_many_extraFields
Previously selectFromTable would simply try to select the composite field name. This expands the extraField name to include the children field names and uses CompositeDBField::writeToManipulation to generate the correct SQL for the queries.
2014-06-28 10:54:48 +12:00
Sean Harvey
0ee3a683a5 Better support for overloading start and destroy methods in Session
Move functionality from static start and destroy functions into instance
methods, allowing these to be overloaded. This works the same way as
calling Session::set() which then in turn calls inst_set()

Additionally use Injector to create the default Session instance to
allow the class to be swapped out.
2014-06-20 10:35:53 +12:00
Damian Mooyman
4c5de82625 Versioned no longer sets redundant session data 2014-06-11 16:42:22 +12:00
Simon Welsh
9b3bfb2e10 Merge pull request #3145 from tractorcow/pulls/3.1/fix-choose-stage
BUG Fix access to protected Session::current_session()
2014-05-24 11:07:40 +10:00
Damian Mooyman
4a34c364e6 BUG Fix access to protected Session::current_session()
Fixes #3144
2014-05-20 10:17:33 +12:00
Damian Mooyman
c24a2c2177 BUG ArrayList failing to respect the SS_Sortable interface
ref: CWPBUG-133
2014-05-15 14:25:23 +12:00
Hamish Friedlander
149b4e4356 Merge pull request #3019 from tractorcow/pulls/3.1-dataquery-tables
BUG Fix data query not always joining necessary tables
2014-05-06 15:26:26 +12:00
Damian Mooyman
ae573f829f BUG Fix Versioned stage not persisting in Session. Fixes #962
BUG Disabled disruptive test case in DirectorTest
API RequestProcessor and VersionedRequestFilter now both correctly implement RequestFilter
Better PHPDoc on RequestFilter and implementations
2014-05-06 14:11:44 +12:00
Damian Mooyman
a3c8a594ca BUG Fix data query not always joining necessary tables
Fixes #2846
2014-05-06 12:22:46 +12:00
Ingo Schommer
f2b2ee8a68 Merge pull request #3021 from tractorcow/pulls/3.1-htmltext-whitelist
BUG HTMLText whitelist considers text nodes
2014-05-05 13:23:52 +12:00
Damian Mooyman
91034d1341 BUG HTMLText whitelist considers text nodes
Minor improvement to #2853.
If a list of whitelisted elements are specified, text nodes no longer evade the whitelist
2014-04-29 11:52:16 +12:00
Damian Mooyman
8673b11cd9 BUG Fix ImageTest
Image test would erroneously reset the Image::$backend to null if the test was skipped, breaking subsequent test cases
2014-04-29 08:57:23 +12:00
Damian Mooyman
84d8022b32 BUG Fix Date and SS_DateTime::FormatFromSettings
This issue is caused by the odd default behaviour of Zend_Date, which attempts to parse yyyy-mm-dd format date and times as though they were yyyy-dd-mm.
2014-04-02 15:38:35 +13:00
Russell Michell
26f8341438 NEW Added FormatFromSettings(). Formats dates as per user preferences.
- Required for silverstripe-cms/issue/965.
- Separate implementations for Date and SS_Datetime.
2014-03-17 10:15:59 +13:00
Simon Welsh
90ba514cda Merge pull request #2917 from tractorcow/pulls/fix-lazyload-queryparams
BUG Fix DataObject / Versioned publishing issues
2014-03-15 21:45:42 +13:00
Simon Welsh
ccaca9a6aa Merge pull request #2916 from tractorcow/pulls/fix-classname-generation
BUG Prevent unnecessary reconstruction of ClassName field
2014-03-15 21:44:29 +13:00
Simon Erkelens
6676787176 ENHANCEMENT: Allow nested grouping of GroupedList 2014-03-15 19:20:28 +13:00
Simon Welsh
0e0597f8cd Merge branch '3.0' into 3.1
Conflicts:
	control/Director.php
	dev/Backtrace.php
	docs/en/installation/nginx.md
	model/HTMLValue.php
	tests/model/SQLQueryTest.php
2014-03-10 22:56:27 +13:00
Damian Mooyman
23f5f08eda BUG Fix DataObject::loadLazyFields discarding original query parameters
BUG Fix Versioned::writeToStage failing to write object with unchanged fields
2014-03-04 16:12:07 +13:00
Damian Mooyman
53b5adbcd9 BUG Prevent unnecessary reconstruction of ClassName field after default records are generated 2014-03-04 12:03:45 +13:00
Colin Richardson
7b13041449 Remove trailing dashes from URLSegment 2014-03-03 22:22:03 +00:00
Colin Richardson
1795b21df0 Remove redundant underscore and update the comment 2014-03-02 15:03:02 +00:00
Hamish Friedlander
d6630d240a NEW Allow specifying element whitelist in HTMLText fields 2014-02-18 14:02:04 +13:00
Sean Harvey
30e3904e4c Merge pull request #2845 from kinglozzer/1429-summary-searchable-fields
FIX: searchable_fields inheritance from summary_fields includes methods called on fields (fixes #1429)
2014-02-17 15:14:54 +13:00
Loz Calver
a91a4bbdc2 FIX: Searchable fields with dot notation can be inherited from summary_fields (fixes #1429) 2014-02-14 21:52:47 +00:00
Sam Minnee
a1c3cf1cf4 Removed use of assertCount() from this test as it causes infinite loops on Travis. 2014-02-14 16:39:36 +13:00
Sean Harvey
c322cb2d65 Fixing SQLQueryTest failures on PHPUnit 3.7.30 2014-02-10 13:32:39 +13:00
Will Rossiter
a50996a010 NEW: Add support for push operator on ArrayList (Fixes #1539) 2014-01-12 18:55:40 +13:00
Jeremy Shipman
62694b0a8b NEW: Made ValidationResult functions chain-able.
Added unit tests for CombiningResults
2014-01-09 16:32:27 +13:00
Daniel Pickering
94c19e349a FIX: Year.php getDefaultOptions now fixed, sets key as year. Also added YearTest unit test. 2013-12-16 03:29:29 +00:00
Ingo Schommer
ab91a5a80b Merge pull request #2622 from froog/patch-1
Created LessThanOrEqualFilter and GreaterThanEqualFilter
2013-12-13 03:34:45 -08:00
Ingo Schommer
c811556ea5 Removed debug code 2013-12-13 10:04:26 +01:00
froog
755857b22a NEW: Created LessThanOrEqualFilter and GreaterThanEqualFilter 2013-11-25 03:59:51 +00:00
Ingo Schommer
70207b0c98 Merge pull request #2626 from Zauberfisch/filterByCallback
filterByCallback added to SS_Filterable interface and implemented in ArrayList
2013-11-21 05:34:36 -08:00
Zauberfisch
d9b74874fc added filterByCallback() to interface SS_Filterable and all implementing classes 2013-11-21 13:03:18 +00:00
Will Rossiter
0e89c4b6cd API: Implement SS_Map::push() to append values.
FIX: SS_Map::count() not taking into account additional firstItems
2013-11-18 20:38:57 +13:00
Damian Mooyman
c74f7e7640 BUG Fixes issue where items could be deleted from a has_many relation by an entirely unrelated HasManyList calling delete on that item. 2013-11-01 11:39:13 +13:00
Ingo Schommer
dfabd54bdb Fixed support for single stage in Versioned
This used to work in 2.4, so is considered a regression.
To test, simply add a Versioned("Stage") extension to
some record in 2.4 vs. 3.1.
2013-10-24 17:09:17 +02:00
Damian Mooyman
afaf7f6b4e BUG Sort column order maintained correctly when using expressions in SQLQuery and DataQuery 2013-10-03 14:20:31 +13:00
Ingo Schommer
ba5984e2bf Only compare array notations in SQLQuery->getOrderedJoins()
If more than two $from were added through SQLQuery->addFrom(),
the getOrderedJoins() comparison kicks in. It assumes all $from
parts are in array notation, which isn't always the case.
For legacy reasons, and because we don't have full API support,
you can still add literal joins through addFrom('INNER JOIN ...').
On PHP 5.3, the ordering comparison still works because it
allows array access in strings, with string rather than numeric indexes.
Thankfully that's no longer supported in PHP 5.4.
2013-09-17 22:08:48 +02:00
Sean Harvey
17fb7752db Skipping SQLQueryTest::testZeroLimitWithOffset() for MSSQLDatabase.
This test doesn't work on MSSQLDatabase.
2013-09-13 15:50:36 +12:00
Sean Harvey
bf1110d911 Adding a test for SQLQuery::setLimit() parsing OFFSET string clause. 2013-09-13 15:44:46 +12:00
Russell Michell
bbda63a16f MINOR: Corrected tests to use assertFalse|True() 2013-09-13 12:27:37 +12:00
Russell Michell
3aaa12f114 FIX: Fixes #2398
- hasAmount() failed to return true for values <= 0.99 and >= 0.01
- Added unit tests
2013-09-13 12:21:21 +12:00
Sean Harvey
95bb799e6f BUG Fixing SQLQuery::aggregate() adding ORDER BY when no limit.
DataQuery::initialiseQuery() will add a default sort to a query,
and when calling up an aggregate it will make a query like this
which doesn't make sense:

SELECT MAX("LastEdited") FROM "Member" ORDER BY "ID"

In this case there is no need to add the ORDER BY, and it will
break databases like MSSQL in cases such as
GenericTemplateGlobalProvider
which provides a default List() function for adding aggregates
into SSViewer template cacheblocks.

If we add a limit, however, then it does make sense:

SELECT MAX("LastEdited") FROM "Member" ORDER BY "ID" LIMIT 10

This fixes SQLQuery::aggregate() to NOT add an ORDER BY to an
aggregate call if there is no limit.
2013-09-06 18:11:11 +12:00
Johannes Hammersen, x75
b8495da5d9 BUG Cached images stored in wrong folder
If multiple image manipulations are performend the resulting cached image is stored in assets/_resampled because the cached version of the image has no ParentID, which cacheFilename needs to set the correct path.
2013-08-26 10:16:42 +02:00