Hamish Friedlander
51d53f4b50
Merge pull request #5646 from open-sausages/pulls/4.0/config-table-name
...
API Allow table_name to be declared / introduce DataObjectSchema
2016-06-14 15:06:38 +12:00
Daniel Hensby
9e3f76832b
Merge branch '3'
2016-06-13 13:41:20 +01:00
Daniel Hensby
0d36899afa
Merge branch '3.4' into 3
2016-06-13 12:30:33 +01:00
Daniel Hensby
4e392a4d43
Merge branch '3.3' into 3.4
2016-06-13 12:30:16 +01:00
Damian Mooyman
5e8ae41d47
API Refactor dataobject schema management into separate service
...
API Allow table_name to be configured via Config
2016-06-08 13:22:56 +12:00
Damian Mooyman
decd7e5c57
BUG Fix getFinalisedQuery not including all queried columns
...
Fixes #1669
2016-05-23 08:41:58 +12:00
Daniel Hensby
cdb0b07345
Merge branch '3'
2016-05-20 14:20:33 +01:00
Daniel Hensby
be7e0db26e
Merge pull request #3835 from dnadesign/hideFromHierachy3
2016-05-19 11:52:47 +01:00
Damian Mooyman
b634b1a67d
Merge pull request #5537 from IgorNadj/patch-niceformats
...
ENH: moving hardcoded nice date/time formats to config
2016-05-19 14:12:22 +12:00
Damian Mooyman
6035be7e57
Merge pull request #5548 from kinglozzer/4661-extrafields-casting
...
FIX: castingHelper failed to find many_many_extraFields data (fixes #4661 )
2016-05-19 14:10:37 +12:00
Damian Mooyman
574bc6038b
Merge 3 into master
...
# Conflicts:
# CONTRIBUTING.md
# admin/css/screen.css
# admin/css/screen.css.map
# admin/javascript/LeftAndMain.EditForm.js
# admin/javascript/LeftAndMain.js
# admin/scss/_forms.scss
# dev/Debug.php
# docs/en/05_Contributing/01_Code.md
# forms/DropdownField.php
# model/DataObject.php
# model/Versioned.php
# model/fieldtypes/DBLocale.php
# tests/forms/gridfield/GridFieldExportButtonTest.yml
# tests/model/MoneyTest.php
# tests/model/MoneyTest.yml
# tests/model/SQLQueryTest.php
2016-05-18 18:36:10 +12:00
Damian Mooyman
8ed25ae482
BUG Fix DataObject::isChanged() detecting non saveable changes ( #5545 )
2016-05-18 09:00:04 +10:00
Loz Calver
7a81372294
FIX: castingHelper failed to find many_many_extraFields data ( fixes #4661 )
2016-05-17 16:04:28 +01:00
Damian Mooyman
8947bb0245
BUG Fix filtersOnId ignoring WHERE "ID" IN ()
( #5546 )
2016-05-17 18:30:33 +12:00
John Milmine
c401d9daff
new added hide_from_cms_tree and hide_from_hierarchy
2016-05-16 16:20:14 +12:00
Igor Nadj
c8eda9fd5c
ENH: moving hardcoded nice date/time formats to config
...
Old PR: #4449
2016-05-15 21:25:57 +12:00
Daniel Hensby
0594542e7f
Merge branch '3'
2016-05-12 16:42:48 +01:00
Daniel Hensby
19a4a40d8b
Merge branch '3.3' into 3
2016-05-12 16:25:22 +01:00
Daniel Hensby
264d7e8ffe
Merge branch '3.2' into 3.3
2016-05-12 16:23:57 +01:00
Daniel Hensby
e8962b95d0
Merge branch '3.1' into 3.2
2016-05-12 16:05:54 +01:00
Loz Calver
5b275376d3
Many many bug
2016-05-12 12:38:04 +01:00
Daniel Hensby
dd554d883f
Proving bug with Deep nested many_many relations
...
When adding a filter to a many_many with a shared inheritance, the FROM table is removed and added as a LEFT JOIN which causes a syntax error.
This means `$dataList->filter('ManyManyRel.ID', array(1,2))` doesn't work.
2016-05-12 12:38:02 +01:00
Damian Mooyman
f13e44a265
Merge 3 into master
...
# Conflicts:
# admin/javascript/LeftAndMain.Tree.js
# admin/javascript/lang/cs.js
# admin/javascript/lang/de.js
# admin/javascript/lang/en.js
# admin/javascript/lang/eo.js
# admin/javascript/lang/es.js
# admin/javascript/lang/fa_IR.js
# admin/javascript/lang/fi.js
# admin/javascript/lang/fr.js
# admin/javascript/lang/id.js
# admin/javascript/lang/id_ID.js
# admin/javascript/lang/it.js
# admin/javascript/lang/ja.js
# admin/javascript/lang/lt.js
# admin/javascript/lang/mi.js
# admin/javascript/lang/nb.js
# admin/javascript/lang/nl.js
# admin/javascript/lang/pl.js
# admin/javascript/lang/ro.js
# admin/javascript/lang/ru.js
# admin/javascript/lang/sk.js
# admin/javascript/lang/sl.js
# admin/javascript/lang/sr.js
# admin/javascript/lang/sr@latin.js
# admin/javascript/lang/sr_RS.js
# admin/javascript/lang/sr_RS@latin.js
# admin/javascript/lang/src/cs.js
# admin/javascript/lang/src/de.js
# admin/javascript/lang/src/en.js
# admin/javascript/lang/src/eo.js
# admin/javascript/lang/src/es.js
# admin/javascript/lang/src/fi.js
# admin/javascript/lang/src/fr.js
# admin/javascript/lang/src/id.js
# admin/javascript/lang/src/id_ID.js
# admin/javascript/lang/src/it.js
# admin/javascript/lang/src/ja.js
# admin/javascript/lang/src/lt.js
# admin/javascript/lang/src/mi.js
# admin/javascript/lang/src/nb.js
# admin/javascript/lang/src/nl.js
# admin/javascript/lang/src/pl.js
# admin/javascript/lang/src/ro.js
# admin/javascript/lang/src/ru.js
# admin/javascript/lang/src/sk.js
# admin/javascript/lang/src/sl.js
# admin/javascript/lang/src/sr.js
# admin/javascript/lang/src/sr@latin.js
# admin/javascript/lang/src/sr_RS.js
# admin/javascript/lang/src/sr_RS@latin.js
# admin/javascript/lang/src/sv.js
# admin/javascript/lang/src/zh.js
# admin/javascript/lang/sv.js
# admin/javascript/lang/zh.js
# css/GridField.css
# forms/gridfield/GridFieldExportButton.php
# javascript/GridField.js
# javascript/lang/ar.js
# javascript/lang/cs.js
# javascript/lang/de.js
# javascript/lang/en.js
# javascript/lang/en_GB.js
# javascript/lang/eo.js
# javascript/lang/es.js
# javascript/lang/fi.js
# javascript/lang/fr.js
# javascript/lang/id.js
# javascript/lang/id_ID.js
# javascript/lang/it.js
# javascript/lang/ja.js
# javascript/lang/lt.js
# javascript/lang/mi.js
# javascript/lang/nb.js
# javascript/lang/nl.js
# javascript/lang/pl.js
# javascript/lang/ru.js
# javascript/lang/sk.js
# javascript/lang/sl.js
# javascript/lang/sr.js
# javascript/lang/sr@latin.js
# javascript/lang/sr_RS.js
# javascript/lang/sr_RS@latin.js
# javascript/lang/src/ar.js
# javascript/lang/src/cs.js
# javascript/lang/src/de.js
# javascript/lang/src/en.js
# javascript/lang/src/eo.js
# javascript/lang/src/es.js
# javascript/lang/src/fi.js
# javascript/lang/src/fr.js
# javascript/lang/src/id.js
# javascript/lang/src/id_ID.js
# javascript/lang/src/it.js
# javascript/lang/src/ja.js
# javascript/lang/src/lt.js
# javascript/lang/src/mi.js
# javascript/lang/src/nb.js
# javascript/lang/src/nl.js
# javascript/lang/src/pl.js
# javascript/lang/src/ru.js
# javascript/lang/src/sk.js
# javascript/lang/src/sl.js
# javascript/lang/src/sr.js
# javascript/lang/src/sr@latin.js
# javascript/lang/src/sr_RS.js
# javascript/lang/src/sr_RS@latin.js
# javascript/lang/src/sv.js
# javascript/lang/src/zh.js
# javascript/lang/sv.js
# javascript/lang/zh.js
# scss/GridField.scss
# tests/model/ManyManyListTest.php
# tests/model/SQLQueryTest.php
2016-05-11 15:19:35 +12:00
Damian Mooyman
4f06a43986
Merge 3.3 into 3
...
# Conflicts:
# admin/javascript/lang/src/cs.js
# admin/javascript/lang/src/de.js
# admin/javascript/lang/src/en.js
# admin/javascript/lang/src/eo.js
# admin/javascript/lang/src/es.js
# admin/javascript/lang/src/fi.js
# admin/javascript/lang/src/fr.js
# admin/javascript/lang/src/id.js
# admin/javascript/lang/src/id_ID.js
# admin/javascript/lang/src/it.js
# admin/javascript/lang/src/ja.js
# admin/javascript/lang/src/lt.js
# admin/javascript/lang/src/mi.js
# admin/javascript/lang/src/nb.js
# admin/javascript/lang/src/nl.js
# admin/javascript/lang/src/pl.js
# admin/javascript/lang/src/ro.js
# admin/javascript/lang/src/ru.js
# admin/javascript/lang/src/sk.js
# admin/javascript/lang/src/sl.js
# admin/javascript/lang/src/sr.js
# admin/javascript/lang/src/sr@latin.js
# admin/javascript/lang/src/sr_RS.js
# admin/javascript/lang/src/sr_RS@latin.js
# admin/javascript/lang/src/sv.js
# admin/javascript/lang/src/zh.js
# javascript/lang/fr.js
# javascript/lang/src/ar.js
# javascript/lang/src/cs.js
# javascript/lang/src/de.js
# javascript/lang/src/en.js
# javascript/lang/src/eo.js
# javascript/lang/src/es.js
# javascript/lang/src/fi.js
# javascript/lang/src/fr.js
# javascript/lang/src/id.js
# javascript/lang/src/id_ID.js
# javascript/lang/src/it.js
# javascript/lang/src/ja.js
# javascript/lang/src/lt.js
# javascript/lang/src/mi.js
# javascript/lang/src/nb.js
# javascript/lang/src/nl.js
# javascript/lang/src/pl.js
# javascript/lang/src/ru.js
# javascript/lang/src/sk.js
# javascript/lang/src/sl.js
# javascript/lang/src/sr.js
# javascript/lang/src/sr@latin.js
# javascript/lang/src/sr_RS.js
# javascript/lang/src/sr_RS@latin.js
# javascript/lang/src/sv.js
# javascript/lang/src/zh.js
# lang/it.yml
2016-05-11 14:06:23 +12:00
Damian Mooyman
b165d52f30
Merge 3.2 into 3.3
2016-05-11 14:00:10 +12:00
Damian Mooyman
9da594b326
Merge 3.1 into 3.2
...
# Conflicts:
# admin/javascript/lang/cs.js
# admin/javascript/lang/de.js
# admin/javascript/lang/eo.js
# admin/javascript/lang/es.js
# admin/javascript/lang/fa_IR.js
# admin/javascript/lang/fi.js
# admin/javascript/lang/fr.js
# admin/javascript/lang/id.js
# admin/javascript/lang/id_ID.js
# admin/javascript/lang/it.js
# admin/javascript/lang/ja.js
# admin/javascript/lang/lt.js
# admin/javascript/lang/mi.js
# admin/javascript/lang/nb.js
# admin/javascript/lang/nl.js
# admin/javascript/lang/pl.js
# admin/javascript/lang/ro.js
# admin/javascript/lang/ru.js
# admin/javascript/lang/sk.js
# admin/javascript/lang/sl.js
# admin/javascript/lang/sr.js
# admin/javascript/lang/sr@latin.js
# admin/javascript/lang/sr_RS.js
# admin/javascript/lang/sr_RS@latin.js
# admin/javascript/lang/src/nl.js
# admin/javascript/lang/sv.js
# admin/javascript/lang/zh.js
# javascript/lang/ar.js
# javascript/lang/bg.js
# javascript/lang/cs.js
# javascript/lang/de.js
# javascript/lang/eo.js
# javascript/lang/es.js
# javascript/lang/fa_IR.js
# javascript/lang/fi.js
# javascript/lang/fr.js
# javascript/lang/id.js
# javascript/lang/id_ID.js
# javascript/lang/it.js
# javascript/lang/ja.js
# javascript/lang/lt.js
# javascript/lang/mi.js
# javascript/lang/nb.js
# javascript/lang/nl.js
# javascript/lang/pl.js
# javascript/lang/ru.js
# javascript/lang/sk.js
# javascript/lang/sl.js
# javascript/lang/sr.js
# javascript/lang/sr@latin.js
# javascript/lang/sr_RS.js
# javascript/lang/sr_RS@latin.js
# javascript/lang/sv.js
# javascript/lang/zh.js
# lang/nl.yml
# lang/sk.yml
2016-05-11 13:48:22 +12:00
Daniel Hensby
971d561633
Allow ManyManyListTest to run standalone
2016-05-10 15:24:07 +01:00
Loz Calver
d1df67d308
FIX: SQLSelect count methods now cast to int ( fixes #5498 )
2016-05-10 12:31:45 +01:00
Loz Calver
196c211984
Merge pull request #5425 from tractorcow/pulls/4.0/error-invalid-relationships
...
API Filtering on invalid relation is no longer a silent error
2016-05-10 09:27:31 +01:00
Craig Weber
e732aee6eb
Fixes #3182 Fixes lazy loading of fields when query was created in default stage
...
When a DataObject query is created in the default stage (stage.Stage), then the
stage is changed to something else (stage.Live), the query itself runs
correctly against stage.Stage. However, lazy loaded fields incorrectly run
against stage.Live. This is due to DataQuery parameters not being saved when
the default stage is active.
This commit fixes this bug by always saving query params, even when the default
stage was active at the time of query creation.
2016-05-10 15:44:22 +12:00
Damian Mooyman
0d4c71f393
API Filtering on invalid relation is no longer a silent error
...
Fixes #5331
2016-05-03 17:51:16 +12:00
Damian Mooyman
d52db0ba34
Merge 3 into master
...
# Conflicts:
# .travis.yml
# admin/css/ie7.css
# admin/css/ie7.css.map
# admin/css/ie8.css.map
# admin/css/screen.css
# admin/css/screen.css.map
# admin/javascript/LeftAndMain.js
# admin/scss/_style.scss
# admin/scss/_uitheme.scss
# control/HTTPRequest.php
# core/Object.php
# css/AssetUploadField.css
# css/AssetUploadField.css.map
# css/ConfirmedPasswordField.css.map
# css/Form.css.map
# css/GridField.css.map
# css/TreeDropdownField.css.map
# css/UploadField.css
# css/UploadField.css.map
# css/debug.css.map
# dev/Debug.php
# docs/en/00_Getting_Started/00_Server_Requirements.md
# docs/en/02_Developer_Guides/06_Testing/00_Unit_Testing.md
# docs/en/02_Developer_Guides/06_Testing/index.md
# docs/en/02_Developer_Guides/14_Files/02_Images.md
# docs/en/02_Developer_Guides/15_Customising_the_Admin_Interface/How_Tos/Extend_CMS_Interface.md
# filesystem/File.php
# filesystem/Folder.php
# filesystem/GD.php
# filesystem/Upload.php
# forms/ToggleField.php
# forms/Validator.php
# javascript/lang/en_GB.js
# javascript/lang/fr.js
# javascript/lang/src/en.js
# javascript/lang/src/fr.js
# model/Image.php
# model/UnsavedRelationList.php
# model/Versioned.php
# model/connect/MySQLDatabase.php
# model/fieldtypes/DBField.php
# model/fieldtypes/Enum.php
# scss/AssetUploadField.scss
# scss/UploadField.scss
# templates/email/ChangePasswordEmail.ss
# templates/forms/DropdownField.ss
# tests/behat/features/bootstrap/SilverStripe/Framework/Test/Behaviour/CmsFormsContext.php
# tests/behat/features/bootstrap/SilverStripe/Framework/Test/Behaviour/CmsUiContext.php
# tests/forms/EnumFieldTest.php
# tests/security/MemberTest.php
# tests/security/MemberTest.yml
# tests/security/SecurityTest.php
2016-04-29 17:50:55 +12:00
Damian Mooyman
da8f4a7eb6
Merge pull request #3828 from dhensby/pulls/byids-arraylist
...
API `byIDs` added to `ArrayList`
2016-04-26 17:52:22 +12:00
Daniel Hensby
679185514d
Merge 3.3 into 3
...
Conflicts:
admin/css/screen.css.map
2016-04-26 00:24:59 +01:00
Hamish Friedlander
9a5db5f760
Fix ChangeSet test mixing Object ID and ChangeSetItem ID up
2016-04-15 14:42:32 +12:00
Hamish Friedlander
35e642d0bf
Add two new accessors to ChangeSetItem
...
You shouldn't have to worry about exactly formatting the reference to
get a ChangeSetItem related to a DataObject, and doing it that way makes
you vulnerable to breakages like introduced in previous API change
2016-04-15 14:42:24 +12:00
Hamish Friedlander
2d16d69ddb
API Use base data class for ChangeSetItem#ObjectClass, not just ClassName
...
This is a data structure change, but makes ChangeSetItems less likely to break
on /dev/build where a ClassName changes
2016-04-15 14:41:26 +12:00
Damian Mooyman
3c2b53157e
API Update Versioned methods
2016-04-04 14:50:16 +12:00
Damian Mooyman
87ee4365e7
API Implement ChangeSets for batch publishing
2016-04-04 14:46:38 +12:00
Ingo Schommer
1049288cb5
Merge pull request #5240 from madmatt/pulls/fix-dbstringtest-annotations
...
MINOR: Fix PHPUnit @covers assertions for DBStringTest
2016-03-29 16:13:50 +13:00
Hamish Friedlander
700cf9bd56
Merge pull request #5223 from tractorcow/pulls/4.0/transactions
...
API Add SS_Database::withTransaction for nice enclosed transactions
2016-03-29 10:54:04 +13:00
madmatt
41a3a86862
MINOR: Fix PHPUnit @covers assertions for DBStringTest
...
This resolves issues when PHPUnit is run strictly, where it exits when
it hits an @covers annotation that references a method that doesn't exist
2016-03-26 17:58:28 +13:00
Damian Mooyman
8abede1339
API Add SS_Database::withTransaction for nice enclosed transactions
2016-03-24 09:57:07 +13:00
Damian Mooyman
094745ec0f
API Formally support custom ownership relations
...
API 'owned_by' is no longer mandatory for relations backed by normal db relations
API Extension setOwner/clearOwner is now nested
2016-03-23 14:49:34 +13:00
Roman Schmid
25c453fe7b
Fixed issue where canViewVersioned
caused a DB error when Versioned was used with stages other than the default "Stage" and "Live".
...
Updated VersionedTest to also check an Object with a single stage in the canView test.
2016-03-22 09:42:21 +01:00
Sam Minnee
aeccb8b8e0
API: Move DBField subclasses into SilverStripe\Model\FieldType namespace
...
API: Deprecate SS_Datetime.
The DBField subclasses are have all been renamed to start with “DB” and
be in the SilverStripe\Model\FieldType namespace. To keep DataObject
definitions concise, the original short variations of their names are
preserved as service definitions. Most of the field generation code
doesn’t need to change, but where field classes are referenced directly,
changes will be needed.
SS_Datetime, which is commonly referenced outside the model system
itself, has been preserved as a subclass of DBDatetime. This has been
marked as deprecated and can be removed in SilverStripe 5.
A few places that referred to $db and $casting values weren’t using
the Injector to instantiate the relevant classes. This meant that the
remapping we have created as part of moving classes into a namespace
didn’t work.
2016-03-22 18:09:30 +13:00
Sam Minnee
083799ec03
FIX: Minimal data-model changes to support PHP7.
...
The tidiest fix for this will be to update the namespace/naming of all
field types to follow this pattern. I’ve broken out the minimum
necessary to support PHP7 as its own commit, in case anyone needs to
backport that (e.g. if someone wanted to patch a SS 3 system to get
PHP7 support).
Rather than introduce a new API for fieldtype namespace simplification,
I’ve just used Injector. We may come up with a new configuration tool
that is better, but this has the advantage of existing now, and as such
I think is a good first step.
2016-03-22 17:39:08 +13:00
Simon Erkelens
debe8ba2a3
Improvement: Set the owner on an extension, before getting all the available method names.
...
This enhances the extensions to enable certain features like adding wrapper methods instead of having to have them on the object itself.
2016-03-21 02:36:34 +01:00
Ingo Schommer
8ae794ee99
API TinyMCE Image shortcodes
2016-03-21 09:23:40 +13:00
Damian Mooyman
0848aca462
API Massive refactor of Versioned
...
API Implemented recursive versioned actions (publish, etc)
API Un-deprecate delete batch action
API Changed Versioned getters and setters for stages
BUG Inject query parameters during DataObject construction to prevent incorrect lazy loading
2016-03-17 13:43:53 +13:00