Commit Graph

306 Commits

Author SHA1 Message Date
Damian Mooyman
6e589aac75
API Updates to Form, ValidationResponse, ValidationException
API Implement form schema "errors" handling
2016-12-09 14:24:11 +13:00
Daniel Hensby
c6d43b477e
Merge branch '3' 2016-11-29 13:27:49 +00:00
Damian Mooyman
792a9ec3ed Add missing changelog content 2016-11-29 16:21:14 +13:00
Daniel Hensby
4bb6765392
Merge branch '3.4' into 3.5 2016-11-28 13:36:06 +00:00
Daniel Hensby
17690ff6bc
Merge branch '3.3' into 3.4 2016-11-28 13:30:29 +00:00
Daniel Hensby
6552dce70e
Merge branch '3.2' into 3.3 2016-11-28 13:26:31 +00:00
Daniel Hensby
214c3d2582
Merge branch '3.1' into 3.2 2016-11-28 13:16:27 +00:00
Dan Hensby
179996b5f9 Added 3.5.0 changelog 2016-11-28 12:35:19 +00:00
Daniel Hensby
1be2e70a2a
Merge branch '3' 2016-11-24 14:18:09 +00:00
Damian Mooyman
6e8304ff2f API Namespace framework tests 2016-11-23 19:25:12 +13:00
Dan Hensby
47c33dc7c2 Added 3.5.0-rc3 changelog 2016-11-22 14:53:03 +00:00
Dan Hensby
3067bcbd24 Added 3.4.2 changelog 2016-11-21 13:28:00 +00:00
Dan Hensby
375df539eb Added 3.3.4 changelog 2016-11-21 12:37:09 +00:00
Dan Hensby
4a82041061 Added 3.2.6 changelog 2016-11-18 15:14:42 +00:00
Dan Hensby
586e5281e0 Added 3.1.21 changelog 2016-11-18 12:17:03 +00:00
Dan Hensby
fcd3d2478c Added 3.5.0-rc2 changelog 2016-11-10 14:30:07 +00:00
Dan Hensby
e1c092e73a Added 3.5.0-rc1 changelog 2016-11-09 11:45:29 +00:00
Damian Mooyman
af27a0f888 Added 4.0.0-alpha3 changelog 2016-11-03 15:27:10 +13:00
Damian Mooyman
ea6851fd70 API Rename _versions table to _Versions
API Support case-sensitive changes to tables
Fixes #2365
2016-10-25 13:27:21 +13:00
Damian Mooyman
316ac86036
API Writes to versioned dataobjects always writes to stage even when written on live
API Remove "Archive" actions
API "Delete" actions for pages now archives records
BUG Fix batch actions failing on certain controllers
Fixes #6059
2016-10-21 13:16:32 +13:00
Damian Mooyman
840f275235 API Created a generic FormFactory interface (#6178)
Created a generic DataObject FormFactory interface that can be substituted in place of getCMSFields. Different FormFactories can depend on different kinds of context, such as
'Record' or 'Controller' - it's the responsibility of the code calling the factory to interpret and
supply this context.

The expected use-case is that rather than overriding getCMSFields(), developers can
change CMS UIs by manipulating the FormFactory associated with the given DataObject.

This is an experimental UI and may change before 4.0 stable is released.
2016-10-20 12:42:24 +13:00
Damian Mooyman
92e34b7434 API controller::join_links supports array values 2016-10-07 13:25:56 +13:00
Damian Mooyman
cb24d199b6 API Convert fieldSpec options to bitwise operators (#6161)
Fixes #6159
2016-10-06 23:23:22 +01:00
Damian Mooyman
11bbed4f76
API Move many methods from DataObject to DataObjectSchema 2016-10-06 19:57:24 +13:00
Damian Mooyman
e7303170c2 API Implement many_many through
API Remove DataObject::validateModelDefinitions, and move to DataObjectSchema
API Remove deprecated 3.0 syntax for addSelect()
API made DataList::createDataObject public
API Move component parsing logic to DataObjectSchema
API Remove support for triangular has_many / belongs_many relationships
2016-10-06 17:39:48 +13:00
Damian Mooyman
380d6523c5
API Cleaned up versioned status checks 2016-10-06 10:31:09 +13:00
Daniel Hensby
004bb8f03a
Merge pull request #5998 from sminnee/remove-bbcode 2016-09-23 15:28:30 +01:00
Damian Mooyman
68ac1283d0 Add changelog placeholder 2016-09-23 16:27:11 +12:00
Loz Calver
fc72434ea5 Update 4.0.0.md 2016-09-22 16:56:37 +01:00
Ingo Schommer
54aad839c4 Clarified <% include %> use in SS4 (see #5952) 2016-09-22 11:29:32 +12:00
Ingo Schommer
8f23fa99a5 API Moved CMS-specific JavaScript to admin/thirdparty
The 'admin' module will be split off from 'framework',
where 'framework' only provides (mostly) frontend-agnostic PHP classes.
For example, HTMLEditorField.php has a TinyMCEConfig.php driver,
but doesn't come with its own JS includes.
2016-09-16 13:46:10 +12:00
Ingo Schommer
2316b0da9f API Remove i18n::js_i18n option
The JavaScript i18n functionality in SilverStripe is used in the CMS as well as form field implementations.
Form fields used to include their own JavaScript for usage outside of CMS. This now requires custom build tooling in a project.
Hence there's no need for an i18n shim (i18nx.js), since the CMS always uses i18n support.
2016-09-16 13:46:09 +12:00
Ingo Schommer
ee10dbb680 API Moved frontend assets into admin/ "module"
We've removed the ability to directly reference JS and CSS files
for form fields and other SilverStripe features in favour of a common bundle built by Webpack.

The logical next step is to make the framework module free of frontend dependencies,
which should simplify its operation, and avoid another time intensive "npm install" on a module.
2016-09-16 13:46:06 +12:00
Ingo Schommer
0a380a94cd API Removed unused UMD builds of individual JS files
This has been made obsolete, since those files are all included in the main bundle (see bundle-lib.js).
They should not be referenced individually (e.g. through Requirements::block() or Requirements::javascript()).
2016-09-15 22:19:10 +12:00
Sam Minnee
2e577ddb1d API Use Webpack
The bundle is generated by running “webpack” directly - gulp is no
longer needed as an intermediary. The resulting config is a lot shorter,
although more configuration is pushed into lib.js.

Modules are shared between javascript files as global variables.
Although this global state pollution is a bit messy, I don’t think it’s
practically any worse than the previous state, and it highlights the
heavy coupling between the different packages we have in place.
Reducing the width of the coupling between the core javascript and
add-on modules would probably be a better way of dealing with this than
replacing global variables with some other kind of global state.

The web pack execution seems roughly twice as fast - if I clear out my
framework/client/dist/js folder, it takes 13.3s to rebuild. However,
it’s not rebuilding other files inside dist, only the bundle files.

CSS files are now included from javascript and incorporated into
bundle.css by the webpack. Although the style-loader is helpful in some
dev workflows (it allows live reload), it introduces a flash of
unstyled content which makes it inappropriate for production.

Instead ExtractTextPlugin is used to write all the aggregated CSS
into a single bundle.css file. A style-loader-based configuration could
be introduced for dev environments, if we make use of the webpack live
reloader in the future.

Note that the following features have been removed as they don't appear to be
necessary when using Webpack:
 - UMD module generation
 - thirdparty dist file copying

LeftAndMain.js deps: Without it, ssui.core.js gets loaded too late,
which leads e.g. to buttons being initialised without this added behaviour.
2016-09-15 22:19:05 +12:00
Sam Minnee
aecf5260fc API: Remove TextParser and BBCodeParser
These have been archived at
https://github.com/silverstripe-archive/silverstripe-bbcodeparser
2016-09-14 09:10:49 +12:00
Ingo Schommer
01fdb7949f Clarify upgrader docs 2016-09-09 13:54:54 +12:00
Ingo Schommer
97c2baedeb Less verbosity in upgrading guide 2016-09-09 13:33:52 +12:00
Damian Mooyman
fe5925726e
Restructure 4.0.0.md 2016-09-09 13:16:09 +12:00
Damian Mooyman
8dd644d25d
API Namespace all classes
Namespace all templates
Move difflib and BBCodeParser2 to thirdparty
Remove deprecated API marked for removal in 4.0
2016-09-08 10:23:17 +12:00
Daniel Hensby
918fb94396
Merge branch '3' 2016-09-07 09:31:23 +01:00
Damian Mooyman
c9b6e9bac0
API Update template lookup to late resolution for performance reasons
API Update behaviour of form fields to use standard template lookup mechanism
API Support custom "type" parameter to template lookup
2016-09-06 12:54:03 +12:00
Damian Mooyman
7105099497
API Change behaviour of filter API to support injected search filter classes
API Remove DataList::applyFilterContext(), superseded by DataList::createSearchFilter()
API SearchFilter::getSupportedModifiers() added to support supported modifier inspection
2016-09-05 17:28:36 +12:00
Daniel Hensby
1d1227cc9a
Merge branch '3' 2016-08-23 10:37:47 +01:00
Christopher Darling
ef1d93c994 DOCS add missing commit af3412a to 3.4.1 changelog 2016-08-18 16:27:36 +01:00
Ingo Schommer
f3db2e3e03 Upgrade note on HeaderField 2016-08-16 11:09:20 +12:00
Damian Mooyman
f4ba3cd175 Merge 3.3 into 3.4
# Conflicts:
#	security/ChangePasswordForm.php
#	templates/forms/OptionsetField.ss
2016-08-15 19:03:13 +12:00
Damian Mooyman
ebc0bafea9 Merge 3.2 into 3.3 2016-08-15 18:51:07 +12:00
Damian Mooyman
f3afd14e4f Merge 3.2 into 3.3 2016-08-15 18:47:43 +12:00
Damian Mooyman
8ec89be9d4 Merge 3.1 into 3.2
# Conflicts:
#	forms/CheckboxSetField.php
#	forms/OptionsetField.php
#	security/Member.php
#	tests/forms/CheckboxSetFieldTest.php
2016-08-15 18:46:26 +12:00