Commit Graph

4007 Commits

Author SHA1 Message Date
Daniel Hensby
5a7cde0e10
Merge branch '3.4' into 3.5.0 2016-11-09 16:14:40 +00:00
Loz Calver
6bf36fbd30
FIX: Correct return type for Member::currentUser() 2016-11-09 14:20:44 +00:00
Damian Mooyman
eefecc21fc BUG Fix incorrect include paths in tests and railsyml (#6279) 2016-11-03 14:41:19 +13:00
Damian Mooyman
ce10530f53 Merge pull request #6251 from open-sausages/pulls/4.0/schema-validation-rules
Implement client-side form validation feedback in React forms
2016-11-03 12:27:54 +13:00
Damian Mooyman
4ee78fc29d BUG Restore travis artifacts (#6277)
Fixes #6046
2016-11-03 12:17:15 +13:00
Damian Mooyman
1142757c21 API Add 'validation' to form schema 2016-11-03 10:07:24 +13:00
Damian Mooyman
019e99dd4d BUG Fix regressions from src folder creation (#6272) 2016-11-02 13:18:56 +13:00
Damian Mooyman
d7cb38434e
Create separate cms-config.yml for cms behat tests within framework 2016-11-02 10:54:09 +13:00
Damian Mooyman
6da36a9ed1
Fix some issues with tests 2016-11-02 09:11:35 +13:00
Damian Mooyman
c0c219e178
Fix invalid files_path 2016-11-01 17:55:43 +13:00
Damian Mooyman
5650254b53 NEW: Fixes to allow code files in src/ folder.
Separated from the file renames for clarity.
2016-11-01 16:35:32 +13:00
Chris Joe
82119888c1 Validation on server side for React forms (fixes #6205) 2016-10-28 16:13:29 +13:00
Damian Mooyman
1734e0d2a3 API Shorten overly-verbose invalid extension error (#6231)
Fixes #6198
2016-10-28 15:20:49 +13:00
Damian Mooyman
e386c6a153 FIX: Refactor bootstrap.php to allow for code sharing with cms bootstrap 2016-10-28 10:53:11 +13:00
Daniel Hensby
3859a1d7e7
Merge branch '3.4' into 3 2016-10-27 16:16:04 +01:00
Sam Minnee
7b44fc7bce FIX: Fix SSViewerTest in PHP7
PHP7 is a bit more picky about passing values by reference.
2016-10-26 15:38:13 +13:00
Ingo Schommer
a4a895ff43 Merge pull request #6219 from open-sausages/pulls/4.0/fix-behat-search-chosen
BUG Prevent intermittent "Element is not currently visible and so may not be interacted with"
2016-10-25 17:33:22 +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
e83f3962a1
BUG Prevent intermittent "Element is not currently visible and so may not be interacted with" 2016-10-25 10:42:13 +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
7cd32b7d72
Remove unnecessary $schemaLink parameter 2016-10-21 11:11:18 +13:00
Ingo Schommer
1e478a5378 Consistently set 'id' in FormSchema
The URL to request the schema representation is the unique identifier.
We can't default to $request->getURL() since that's different for form submissions.

The schema.schema_url key is redundant, since the identifier is already contained on the top level 'id' key.
Keeping schema_url in a schema itself makes it less portable, particularly once we transition into
generic schemas which are not reliant on a particular record context (that's only contained in the schema_url)

This also fixes the issue of form schemas not refreshing after submit,
e.g. when form fields are added or removed.
2016-10-20 15:33:50 +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
Jonathon Menz
b0445f72e4 FIX Ambiguous column SQL error
Specify the table for the field we’re fetching, in case a joined table has a field with the same name
2016-10-18 21:35:37 -07:00
Daniel Hensby
9a6121c867
Merge branch '3.4' into 3 2016-10-16 22:56:37 +01:00
Daniel Hensby
8afff154b8 Merge pull request #6171 from open-sausages/pulls/4.0/use-changeset-for-publish
API Versioned::publishRecursive() now uses a ChangeSet
2016-10-16 14:45:23 +01:00
Damian Mooyman
f60fe7d4a9
API Versioned::publishRecursive() now uses a ChangeSet
API Add IsInferred to inferred changesets
API Add SapphireTest::assertNotDOSContains
Fixes #5667
2016-10-13 17:38:08 +13:00
Damian Mooyman
055795d4d1
API Support fixture paths relative to current directory 2016-10-13 16:53:30 +13:00
Daniel Hensby
4c7ba731be
Merge branch 'open-sausages/pulls/3.4/fix-checkbox-datalist' into 3.4 2016-10-11 20:16:33 +01:00
Damian Mooyman
7368deca8f
BUG Fix issue with SS_List as datasource for dropdown field
BUG Fix validation issue with CheckboxSetField
Fixes #6166
2016-10-11 14:58:48 +13:00
Damian Mooyman
27d35403e8 API Force formschema to be reloaded on form submission
BUG Fix missing action state
2016-10-07 13:26:57 +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
f0dd9af699 API Support named join alias for many_many through list
Add tests for sorting on joined alias
2016-10-06 17:39:48 +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
Christopher Joe
287809ec3b Refactored react FormFields to use react-bootstrap FormControl components
Addded Checkbox, CheckboxSet and Optionset (radio) fields
Refactored documentation
2016-10-05 10:25:21 +13:00
Jonathon Menz
797be6ac82 FIX Revert natural sort
More backwards compatible and more consistent with ORM sorting (fixes #6124)
2016-10-04 13:56:12 -07:00
Loz Calver
cc68d336b1 Tests to cover caching repeated template lookups 2016-10-03 16:01:02 +01:00
Stephan van Diepen
95b66d19b2
Added MySQL support for Bigint.
Conflicts:
	model/MySQLDatabase.php
2016-09-30 16:38:25 +01:00
Damian Mooyman
5a2e2b7ed5 Merge pull request #6089 from open-sausages/pulls/codecoverage
Code coverage via CodeCov.io
2016-09-27 10:23:30 +13:00
Ingo Schommer
9cb33ea5bf Fixed @covers namespaces 2016-09-27 07:46:17 +13:00
Daniel Hensby
74ecaded08
Merge branch '3' 2016-09-26 14:00:58 +01:00
Andrew Aitken-Fincham
ad0d68d133 add IPUtils.php to control and implement symfony IpUtils (#6062) 2016-09-26 12:44:55 +13:00
Daniel Hensby
004bb8f03a
Merge pull request #5998 from sminnee/remove-bbcode 2016-09-23 15:28:30 +01:00
Damian Mooyman
65ff0a4d38
BUG Fix incorrect backslash escaping in htaccess template 2016-09-22 19:11:08 +12:00
Damian Mooyman
aa7a9565ce BUG Fix incorrect ssviewertest path (#6060) 2016-09-22 18:03:14 +12:00
Ingo Schommer
60294654d9 Merge pull request #6056 from open-sausages/pulls/4.0/fix-file-validation
BUG Fix invalid file uploads not being validated
2016-09-22 16:22:01 +12:00
Damian Mooyman
e8375111b1
API Enable default value to be specified for dbstring types at the db level
Fixes #1409
2016-09-22 15:19:30 +12:00
Damian Mooyman
9a9cd97bc3 BUG Fix invalid file uploads not being validated 2016-09-22 14:55:06 +12:00
Sam Minnee
2e054af7b1 FIX: Throw more helpful error if tests are run badly.
If you run tests outside of a composer autoloader-based environment, or
your autoloader isn’t pulling in Constants.php, everything will break.

This provides a more helpful error message.
2016-09-21 09:43:14 +12:00
Sam Minnee
07396e4437 NEW: Move Travis behat test to run locally.
This shifts the behat test run to be triggered form composer activity
within the framework module directly,

 * silverstripe/serve is used to provide a webserver, based on the
   php -S command
 * se/selenium-server-standalone is used to install selenium rather than
   a download command

Because we’re using serve, the behat configuration can be locked down.

Further refinements could be made on this:

 * the behat-extension could be responsible for installing and
   starting/stopping selenium, making these tests more portable
 * xvfb initialisation could be provided with another bin tool in the
   begat-extension: vendor/bin/xvfb 1024x768
 * The bootstrap-file argument to serve could be provided as part of a
   composer.json setting. This would make it easier for developers to
   start a dev server simply by running vendor/bin/serve
 * the behat-extension could be responsible for installing and
   starting/stopping silverstripe/serve, removing the need for
   specifying base_url at all, and possibly utilising the same bootstrap
   file between serve and behat.
2016-09-17 15:40:37 +12:00
Sam Minnee
61d7c3af28 FIX: Fix tests when running directly from framework. 2016-09-17 15:40:32 +12:00
Sam Minnee
9dd5ebee8c NEW: Don’t set up SilverStripe project for test run
The SilverStripe project structure complicates the travis test run, and
the goal of this branch is to prevent it from being necessary.

 - Unit tests can be run simply with PHPUnit.
 - Behat test can be run with the silverstripe/serve module

Note that initially this commit doesn’t cater to the behat tests.

As part of this, we allow dev packages to be installed when testing

These settings don’t affect projects that use framework, only when
framework’s composer install / require calls are used themselves.

Since SS4 is pre-stable, these are important. They can probably be
removed once SS4 stable (and stable versions of support packages) have
been released.
2016-09-16 16:16:44 +12:00
Sam Minnee
93a0122c0f FIX: Don’t treat URLs as root relative when FRAMEWORK_DIR = “”
Code was assuming that FRAMEWORK_DIR would always have a value. If it
doesn’t (because you’re running a test instance of a naked framework)
This caused URLs to be treated as root relative, which creates some
duplicate-inclusion bugs.

The use of ltrim() works, but is a bit clumsy. A more flexible approach
to including front-end assets of given modules would be preferable;
ideally something that also let you keep your code outside of the
web root.
2016-09-16 16:16:39 +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
7d67b24c25 API Removed legacy Jasmine JS Unit tests
They were used for TreeDropdownField JavaScript tests but were never run
on CI, hence have been a bit of a wasted effort.

We're using a different JS unit testing solution now (geared towards React),
and running Jasmine in parallel on Travis for a few test cases
doesn't warrant the setup effort involved.

The TreeDropdownField component will eventually move to a React solution
which can be developed in a test-driven fashion.
2016-09-16 13:46:10 +12:00
Daniel Hensby
a9df28c791
Merge branch '3.4' into 3 2016-09-14 11:40:15 +01:00
Christopher Joe
ee5b4fd8d3 Tabs support in new file/image editor
Introducing <Tabs> component based on react-bootstrap
Better support for nested fields in FormBuilder
Tweaks to get FormBuilder working with frameworktest BasicFieldsPage fields
Added exception in FormBuilder when Component is defined but not found
Added check in SingleSelectField for empty value before adding one in
Added temporary workaround for CompositeFields with no name (another story to address the actual problem)
Added asset_preview_height for File image preview, matches the defined CSS max-height
Added documentation to DBFile::PreviewLink() method
2016-09-14 14:08:59 +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
Damian Mooyman
c6457c50e9
API Allow has_many fixtures to be declared with array format as well as many_many (#5944)
BUG Fix issue with parsing of extrafields in fixtures
BUG Fix issue in duplicate relation name, and ensure FixtureBlueprint fails on these
2016-09-12 14:01:08 +01:00
Damian Mooyman
bfd9cb1aca Rename SS_ prefixed classes (#5974) 2016-09-09 18:43:05 +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
Daniel Hensby
3fd9fe3aa0
Merge branch '3.4' into 3 2016-09-07 09:22:06 +01:00
Ingo Schommer
3b71b7731a Merge pull request #5943 from open-sausages/pulls/4.0/template-lookup-redux
API Update template lookup to late resolution for performance reasons
2016-09-06 20:27:11 +12:00
Damian Mooyman
efb004b72a
API use injector for DataObject::newClassInstance()
API Fail on invalid class type change
2016-09-06 14:10:51 +12: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
Damian Mooyman
fc353dc17a API Allow has_many fixtures to be declared with array format as well as many_many (#5944)
BUG Fix issue with parsing of extrafields in fixtures
BUG Fix issue in duplicate relation name, and ensure FixtureBlueprint fails on these
2016-09-05 16:58:36 +12:00
Daniel Hensby
f2ed59e185
FIX Empty dmyfields on DateField now validate as true 2016-09-01 11:55:17 +01:00
Christopher Joe
d7663e850e Remove duplicate props for PopoverField, added FormBuilder->handleAction and flattened state data 2016-08-28 13:07:30 +12:00
Daniel Hensby
1d1227cc9a
Merge branch '3' 2016-08-23 10:37:47 +01:00
Daniel Hensby
058f57979b
Merge branch '3.4' into 3 2016-08-22 16:23:22 +01:00
Daniel Hensby
060bf6b327
Merge branch '3.3' into 3.4 2016-08-22 16:22:37 +01:00
Daniel Hensby
088d88e978
Merge branch '3.2' into 3.3 2016-08-22 16:22:02 +01:00
Daniel Hensby
4998b80445
FIX ArrayList sorting now caseinsensitive 2016-08-22 11:21:50 +01:00
Damian Mooyman
59efd280ad Fix issues with CMS permission codes
Standardise template locations
Move CMSSettingsController class to SiteConfig module
Fix CMSMenu behaviour for namespaced admin sections
Split classes into one per file
Manual fixes and cleanup
2016-08-17 11:19:14 +12:00
Damian Mooyman
db34e011f3 Apply SilverStripe\Admin namespace 2016-08-17 11:12:22 +12:00
Damian Mooyman
d88516203c Merge 3.4 into 3 2016-08-15 19:05:20 +12:00
Damian Mooyman
bbc865ff67 Merge 3.4.1 into 3.4 2016-08-15 18:37:55 +12:00
Damian Mooyman
b0ba2015d9 [ss-2016-015] Fix value / title escaping in CheckboxSetField and OptionsetField 2016-08-15 15:53:21 +12:00
Damian Mooyman
049cdefacf [ss-2016-015] Fix value / title escaping in CheckboxSetField and OptionsetField 2016-08-15 15:02:58 +12:00
Damian Mooyman
12a6b357e7 [ss-2016-015] Fix value / title escaping in CheckboxSetField and OptionsetField 2016-08-15 14:14:42 +12:00
Damian Mooyman
62a242154e [ss-2016-015] Fix value / title escaping in CheckboxSetField and OptionsetField 2016-08-15 13:24:06 +12:00
Damian Mooyman
ed7fe65156 BUG Fix usage of $this as closure argument 2016-08-12 09:49:23 +12:00
Jonathon Menz
d4114b3dce FIX include related fields on canFilter() check
closes #5576
2016-08-11 10:26:18 -07:00
Damian Mooyman
6005a1c2b2 API Upgrade for silverstripe CMS namespace changes 2016-08-11 11:51:02 +12:00
Damian Mooyman
7026da20db
BUG Make template lookup use 'type' correctly 2016-08-10 15:52:15 +12:00
Hamish Friedlander
0fa39b591f Merge pull request #5874 from open-sausages/pulls/4.0/fix-incorrect-versioned-basetable
BUG Fix incorrect use of baseClass as baseTable
2016-08-10 07:17:44 +07:00
Damian Mooyman
cb1f4335a0
API remove DataFormatter class and all subclasses
Cleanup of #5461
2016-08-09 15:49:11 +12:00
Damian Mooyman
01a13dcba9
BUG Fix incorrect use of baseClass as baseTable 2016-08-08 17:44:46 +12:00
Damian Mooyman
7de5b998e1 Merge 3.4 into 3 2016-08-05 19:12:25 +12:00
Damian Mooyman
ca754eb887 Merge 3.3 into 3.4
# Conflicts:
#	admin/javascript/lang/fa_IR.js
#	admin/javascript/lang/it.js
#	admin/javascript/lang/src/fa_IR.js
#	admin/javascript/lang/src/it.js
#	lang/cs.yml
#	lang/eo.yml
#	lang/fa_IR.yml
#	lang/fi.yml
#	lang/it.yml
#	lang/sk.yml
2016-08-05 16:48:26 +12:00
Paul Clarke
b9445511b7 Bootstrap GridField 2016-08-03 18:35:18 +12:00
Daniel Hensby
e7c6509196
Merge remote-tracking branch 'cow/pulls/3.3/check-isset-config' into 3.3 2016-08-02 12:00:04 +01:00
Damian Mooyman
4ca3d1dc94 API Allow custom 'type' option for scripts
Fixes #5829
2016-08-02 18:49:13 +12:00
Damian Mooyman
cd80d501f9
BUG Fix unset config options returning isset() = true
Fixes #4791
2016-08-02 18:07:55 +12:00
Damian Mooyman
9188628ae3 API Add $action parameter to Controller::Link 2016-08-02 10:27:55 +12:00
Damian Mooyman
7d0b8e6520 BUG Fix permission checking code not correctly handling escaped SQL identifiers
Fixes https://github.com/silverstripe/silverstripe-installer/issues/96
2016-08-01 18:15:30 +12:00
Sam Minnée
c5d662b4fe Merge pull request #5832 from open-sausages/pulls/4.0/bootify-forms-addpage
Add page styles based on new bootstrap forms
2016-07-28 18:13:25 +12:00
Hamish Friedlander
4d2fd04c64 FIX Behat preview mode finder being too specific (#5846) 2016-07-28 17:59:31 +12:00
Damian Mooyman
6e74b57c36 BUG Fix issue with gulpfile.js not compiling client/src/legacy dir
BUG Make SelectionGroup.ss and SelectionGroup.js work together
BUG Fix for IE visual indentation of composite field
2016-07-28 16:32:40 +12:00
Damian Mooyman
20daf1f8e1
API Abstract ThemeManifest into ThemeList
BUG Fix Requirements not resolving $default theme
2016-07-21 12:11:25 +12:00
Daniel Hensby
f548ddf8a8
Merge branch '3' 2016-07-20 21:44:47 +01:00
Daniel Hensby
340a48306b
Merge branch '3.4' into 3 2016-07-20 19:48:17 +01:00
Daniel Hensby
cf247534d5
Merge branch '3.3' into 3.4 2016-07-20 19:43:41 +01:00
Daniel Hensby
96b061ffff
Merge branch '3.2' into 3.3 2016-07-20 19:41:46 +01:00
Daniel Hensby
ac17e12464
Merge pull request #3274 from colymba/custom-admin-url 2016-07-19 14:42:25 +01:00
Damian Mooyman
4b4aa4e91c API Exclude templates in 'themes' directories from $default theme (#5820)
API $themes parameter is now mandatory in TemplateLoader::findTemplate()
2016-07-19 13:17:07 +12:00
madmatt
43dcde5197 FIX: Hierarchy was incorrectly unexpanding nodes that had been previously expanded 2016-07-19 11:22:36 +12:00
Loz Calver
0a7e4cf7c3
Merge branch '3' 2016-07-15 16:01:48 +01:00
Loz Calver
391161208e
Merge branch '3.4' into 3 2016-07-15 14:34:50 +01:00
Loz Calver
44d7919496
Merge branch '3.3' into 3.4 2016-07-15 14:34:18 +01:00
Loz Calver
b3fea3723f
FIX: Fixes support for "inline" form actions (fixes #2534) 2016-07-15 10:11:47 +01:00
Sam Minnée
5c98d331a3 Merge pull request #5804 from open-sausages/feature/themestack
API Theme stacking
2016-07-15 17:12:54 +12:00
Hamish Friedlander
b8b4e98ac2 API Theme stacking 2016-07-15 16:29:25 +12:00
Damian Mooyman
5cb4ab4a82 API Add PopoverField for extra-actions popup in react 2016-07-15 15:46:11 +12:00
Daniel Hensby
a64a066bbf Merge pull request #5665 from tractorcow/pulls/3.3/fix-button-clicked
BUG Fix buttonClicked() error
2016-07-15 00:30:25 +01:00
Daniel Hensby
b7fc0a2752 Merge pull request #5790 from patricknelson/issue-5784-email-reply-to
FIX for #5784: Email API improvements, documentation cleanup.
2016-07-15 00:23:25 +01:00
Patrick Nelson
74c555e004 FIX for #5784: Added ->setReplyTo(), deprecated ->replyTo() for API consistency. Revamping, fixing, and enhancing internal Email API documentation. Simplified code and brought up-to-date with latest standards. 2016-07-14 10:25:40 -07:00
Daniel Hensby
d19955afc8
Merge branch '3' 2016-07-14 14:05:18 +01:00
Daniel Hensby
4c40cf8dbb
Merge branch '3.4' into 3 2016-07-14 12:01:19 +01:00
Daniel Hensby
d766c8559b
Merge branch '3.3' into 3.4 2016-07-14 11:57:15 +01:00
Damian Mooyman
83c2af72ca BUG Fix some regressions from #5653 (#5806) 2016-07-14 14:43:53 +12:00
Damian Mooyman
3b43145954 Merge pull request #5735 from silverstripe-terraformers/versions
FIX: Saving null values to the _versions table.
2016-07-14 13:30:30 +12:00
Damian Mooyman
26d46517ac
API Remove custom DBHTMLText::exists() custom behaviour
Fix merge regressions
2016-07-13 18:45:57 +12:00
Damian Mooyman
6a7c1056fe BUG Fix shortcode parsing in HTMLEditorField::getanchors()
Fixes #5678
2016-07-13 17:15:45 +12:00
Damian Mooyman
b7ac5c564d API / BUG Fix DBField summary methods
Cleanup DBField subclasses
Fixes #2929
Fixes #1381
Fixes #5547
Fixes #1751
2016-07-13 17:15:45 +12:00
Damian Mooyman
5c9044a007 API Enforce default_cast for all field usages
API Introduce HTMLFragment as casting helper for HTMLText with shortcodes disabled
API Introduce DBField::CDATA for XML file value encoding
API RSSFeed now casts from the underlying model rather than by override
API Introduce CustomMethods::getExtraMethodConfig() to allow metadata to be queried
BUG Remove _call hack from VirtualPage
API Remove FormField::$dontEscape
API Introduce HTMLReadonlyField for non-editable readonly HTML
API FormField::Field() now returns string in many cases rather than DBField instance.
API Remove redundant *_val methods from ViewableData
API ViewableData::obj() no longer has a $forceReturnObject parameter as it always returns an object
BUG  Fix issue with ViewableData caching incorrect field values after being modified.
API Remove deprecated DB class methods
API Enforce plain text left/right formfield titles
2016-07-13 17:15:45 +12:00
Damian Mooyman
a0213aa2bf BUG Fix HTTP url rewriting 2016-07-13 17:15:45 +12:00
Frank Mullenger
6d835a64ad FIX: Saving null values to the _versions table. 2016-07-13 16:48:42 +12:00
Damian Mooyman
24efc7edf8 BUG Fix sorting ArrayList with sql-like syntax
Replaces #5726
2016-07-12 17:00:17 +12:00
Daniel Hensby
5776a03141
Merge branch '3' 2016-07-11 23:45:41 +01:00
Florian Thoma
9fc51dc527 add async and defer attributes to js requirements, replaces #4555 2016-07-08 14:31:39 +10:00
Daniel Hensby
8a21d53a07
Merge branch '3.4' into 3 2016-07-07 10:28:49 +01:00
Daniel Hensby
55e1fd8782
Merge branch '3.3' into 3.4 2016-07-07 10:28:17 +01:00
Daniel Hensby
ce47f8112b
Merge branch '3.2' into 3.3 2016-07-07 10:27:25 +01:00
Loz Calver
27cea80b15 FIX: SS_ConfigStaticManifest_Parser failed to handle ::class syntax (fixes #5701) (#5781) 2016-07-07 10:23:38 +01:00
Damian Mooyman
af22a83166 API Apply Framework\Security namespace 2016-07-07 11:32:28 +12:00
Chris Joe
dfe375e87e Fix MemberDatetime helper description, and shifted them to templates (#5766)
* Fix MemberDatetime helper description, and shifted them to templates

* added descriptionTemplate for setting the description

* Unit test for description with templates
2016-07-06 09:16:27 +01:00
Daniel Hensby
a449045b09
Merge branch '3.4' into 3 2016-07-04 23:54:27 +01:00
Daniel Hensby
c35dc508cb
Merge branch '3.3' into 3.4 2016-07-04 23:53:55 +01:00
Daniel Hensby
dfc557afd4
Merge branch '3.2' into 3.3 2016-07-04 23:43:44 +01:00
Daniel Hensby
39238d908e
FIX falsey attribute values in shortcodes now work 2016-07-04 15:17:24 +01:00
Daniel Hensby
765f45eaf1
Check for shortcode tag before trying to parse shortcodes 2016-07-04 15:10:42 +01:00
Daniel Hensby
2cdfe6cc21
FIX Use RAW for DBField template helpers 2016-07-04 14:39:56 +01:00
Daniel Hensby
b0f237bb3a
FIX Use RAW instead of Value for parsing shortcodes 2016-07-04 13:53:56 +01:00
Damian Mooyman
4dadc276b5 Merge pull request #3916 from dhensby/nfauchelle-gd-padding-improvementt
NEW Allow the paddedresize to take another hex value to specify a transparency on the padded color
2016-07-04 17:35:47 +12:00
Christopher Joe
1931ed497f Fix unit test for xml content check 2016-07-04 17:25:53 +12:00
Ingo Schommer
ff846134f2 Merge pull request #5734 from open-sausages/pulls/4.0/namespace-orm
API Apply Framework\ORM Namespace to model
2016-07-01 15:04:47 +12:00
Daniel Hensby
9b061edb44 Merge pull request #5605 from open-sausages/pulls/3.3/fix-cmsall-perm
BUG fix CMS_ACCESS permission being ignored if in incorrect order in array
2016-06-29 15:25:21 +01:00
Daniel Hensby
f728b144ca
Merge branch '3' 2016-06-29 11:44:18 +01:00
Daniel Hensby
390b1fc6c4
Merge branch '3.4' into 3 2016-06-29 11:43:02 +01:00
Daniel Hensby
2ab0dcf618
Merge branch '3.3' into 3.4 2016-06-29 11:42:05 +01:00
Daniel Hensby
da0b62f853
Merge branch '3.2' into 3.3 2016-06-29 11:40:58 +01:00
Daniel Hensby
3fe8d30c2c
Merge branch '3.1' into 3.2 2016-06-29 11:40:27 +01:00
Hamish Friedlander
80d4af6b6e
API Apply Framework\ORM Namespace to model 2016-06-29 10:02:32 +12:00
Damian Mooyman
fd9f29c515 Merge pull request #5732 from open-sausages/pulls/4.0/convert-lowercase
Convert::upperCamelToLowerCamel()
2016-06-29 09:48:35 +12:00
Daniel Hensby
c11ac5d248 Merge pull request #4162 from kinglozzer/pulls/object-parse-class-spec
FIX: Object::parse_class_spec failed to parse associative arrays
2016-06-28 16:07:12 +01:00
Damian Mooyman
f1a0aef0d7
BUG fix CMS_ACCESS permission being ignored if in incorrect order in array 2016-06-28 17:45:15 +12:00
Damian Mooyman
24bea79cd9 Merge pull request #5481 from mikenz/file-name-filter-test
Explictly set the FileNameFilter replacements before testing them
2016-06-28 17:03:19 +12:00
Ingo Schommer
fd0c8ad4c0 Convert::upperCamelToLowerCamel()
Used to expose lowercase web service object keys in SS4,
without requiring an explicit field mapping for these.

The first use case is exposing File data:
[ID => 99, FileName => 'test'] becomes {"id": 99, "fileName": "test"} in JSON.
2016-06-23 12:27:54 +12:00
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
bf00810e1f
BUG Fix buttonClicked() error
Fixes #3208
2016-06-08 12:26:11 +12:00
Loz Calver
429ce55756
FIX: ViewableData::setFailover() didn't remove cached methods 2016-06-07 16:17:49 +01:00
Sam Minnee
a9eebdc7ed NEW: Allow namespaces in template include statements. 2016-06-07 14:36:00 +12:00
Sam Minnee
65eb0bde6a API: Look for templates of namespaced classes in subfolders.
This change will mean that SilverStripe\Control\Controller will look for its
template in templates/SilverStripe/Control/Controller.ss.

In order to preserve some backwards campatibility, non-namespaced classes
can have the templates stored in any template subfolder, but once you
add a namespace to a class, the namespaced path expression will need to
be a subfolder of <module>/templates or themes/<theme>/templates.

Layout and Content templates are stil supported as special template type,
Includes still functions but is a no-op. Other template subfolders should
not be used.
2016-06-07 14:36:00 +12:00
Loz Calver
946495bcf5
FIX: Regression with <% with / %> (fixes #5656) 2016-06-06 10:14:07 +01:00
Nick
dae2295e16
NEW Allow the paddedresize to take another hex value to specify a transparency on the padded color 2016-06-05 00:05:37 +01:00
Antony Thorpe
39d1ef7a4b Bugfix: BulkLoader_Result class - Deleted Items (#5598)
* Bugfix: BulkLoader_Result class - Deleted Items

The Deleted function, within BulkLoader_Result class, calls mapToArrayList, which tries to find the recently deleted dataobjects.
To correct:
- when calling addDeleted, store a map of each dataobject within the $this->deleted array; and,
- have the Deleted function return an ArrayList based upon the $this->deleted array.

* Added tests

- created a new test file for the BulkLoader_Result class
- included tests for other methods of this class
- slightly altered the addDeleted function to be consistent other methods of this class
2016-06-01 09:55:06 +12:00
Simon Erkelens
20fac04637 RFC #5487 Remove Oembed in favor of embed/embed. (#5536) 2016-05-27 13:09:03 +12:00
Daniel Hensby
e5f1ca3bbe
Cleaning up Controller::handleRequest
1. Separated responsibility of handleAction so that it no longer bootstraps the controller and cleans up after the request is handled.
2. NEW beforeHandleRequest to take responsibility of bootstrapping the controller
3. NEW afterHandleRequest to take responsibility of cleanup for the controller
4. NEW calling init on controllers deprecated in favour of callInit() which takes responsibility of enforcing that "base init" is called and the before and after hooks
5. NEW Added prepareResponse to Controller for dealing with responses from controllers
6. NEW setResponse added to controller for setting response objects on the controller
2016-05-23 00:21:04 +01: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
303f695751 Merge 3.3 into 3
# Conflicts:
#	admin/javascript/LeftAndMain.EditForm.js
2016-05-18 17:29:30 +12:00
Damian Mooyman
dad7981332 Merge 3.2 into 3.3 2016-05-18 17:27:28 +12:00
Damian Mooyman
8dfeeb0eb6 Merge 3.1 into 3.2 2016-05-18 17:25:42 +12:00
Hamish Friedlander
d350aa4153 Merge pull request #5555 from open-sausages/pulls/3.1/fix-display-errors
BUG Fix suppression of display_errors in ErrorControlChain
2016-05-18 16:04:57 +12:00
Damian Mooyman
62bd26d11a BUG Fix suppression of display_errors in ErrorControlChain 2016-05-18 13:36:54 +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
Shawn Lin
2a856300c0 Fix bug, export button cannot export value '0' 2016-05-16 16:49:10 +12:00
John Milmine
c401d9daff new added hide_from_cms_tree and hide_from_hierarchy 2016-05-16 16:20:14 +12:00
Damian Mooyman
4d1ddf0e62
BUG Prevent session hijackers from resetting a user password
BUG Member::checkPassword incorrect for default admin
2016-05-16 10:54:18 +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
8ebdedf330 Merge pull request #5488 from robbieaverill/bugfix/4835-array-to-string
Fix for array to string conversion in DropdownField
2016-05-13 13:54:04 +01:00
Robbie Averill
7d7800e5e7 Fix for array to string conversion in DropdownField
* Resolves #4835
* Add unit test to cover array values
* Add value assertion
2016-05-13 10:11:42 +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
Damian Mooyman
01eaf9ed64 Merge 3.3.2 into 3.3 2016-05-11 13:33:45 +12:00
Damian Mooyman
b612c0549d Merge 3.1.19 into 3.1 2016-05-11 13:15:10 +12:00
Daniel Hensby
971d561633
Allow ManyManyListTest to run standalone 2016-05-10 15:24:07 +01:00
Daniel Hensby
c97d3961e5 Merge pull request #4869 from kinglozzer/2617-include-scopes
FIX: Parameters passed to includes overwrite all scopes (fixes #2617)
2016-05-10 15:21:45 +01:00
Daniel Hensby
d5ff8ff5f3 Merge pull request #5499 from kinglozzer/sqlselect-count-int
FIX: SQLSelect count methods now cast to int (fixes #5498)
2016-05-10 13:44:30 +01:00
Daniel Hensby
63e363b55c Merge pull request #5461 from Firesphere/master
RFC #5347 remove RestfulService from SS4.
2016-05-10 12:51:01 +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
6430c66303 Merge pull request #5426 from tractorcow/pulls/3.3/fix-gridfield-autocomplete
BUG Fix GridFieldAddExistingAutocompleter
2016-05-10 09:34:59 +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
Simon Erkelens
c0de5dd11e RFC #5347 remove RestfulService from SS4. Rebuild OEmbed on using curl 2016-05-10 18:55:08 +12: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
Cochrane, Mike
faffdf4981 Explictly set the FileNameFilter replacements before relying on them 2016-05-09 20:12:29 +12:00
Cochrane, Mike
e2d180a754 Explictly set the FileNameFilter replacements before testing them 2016-05-09 20:03:58 +12:00
Damian Mooyman
8b94dd83df API Add CSRF to Campaign delete 2016-05-09 17:33:10 +12:00
Frank Mullenger
b4cd617ee3 FIX: Renaming to HTMLEditorConfig.
FIX: Renaming to HTMLEditorField*.

FIX: Renaming to HTMLEditorSanitiser*.
2016-05-06 14:16:34 +12:00
Daniel Hensby
d1751e3310
Merge remote-tracking branch '3.2.4' into 3.3.2 2016-05-05 12:33:21 +01:00
Daniel Hensby
cf29b2c146
Merge remote-tracking branch '3.1.19' into 3.2.4 2016-05-05 11:17:45 +01:00
Daniel Hensby
b11bbffb7d
Merge branch '3' 2016-05-04 23:36:10 +01:00
Daniel Hensby
457931d664
Merge branch '3.3' into 3 2016-05-04 23:32:10 +01:00
Loz Calver
24660afabd
FIX: Parameters passed to includes overwrite all scopes (fixes #2617) 2016-05-04 16:49:12 +01:00
Loz Calver
4bd9a04896 Merge pull request #5440 from tractorcow/pulls/4.0/api-explicit-injector-inheritance
API Injector dependencies no longer inherit from parent classes
2016-05-04 09:31:51 +01:00
Damian Mooyman
4bc04e795a Excuse php7 errors due to regressions in 7.0.6 2016-05-04 16:33:40 +12:00
Christopher Darling
220290d61c test to prove #5222 2016-05-04 12:05:02 +12:00
Damian Mooyman
8ce3d90e18 API Injector dependencies no longer inherit from parent classes automatically
API Allow classes to inherit service definitions explicitly
2016-05-03 18:39:31 +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
f88d708ee9 BUG Fix GridFieldAddExistingAutocompleter and GridFieldExportButton
Based on https://github.com/silverstripe/silverstripe-framework/pull/5426
Fixes #5267
2016-05-03 17:45:46 +12:00
Damian Mooyman
70480f5ee4 [ss-2015-027] FIX HtmlEditorField_Toolbar#viewfile not whitelisting URLs
Fixes #4947
2016-05-03 15:29:18 +12:00
Damian Mooyman
096f30ebe5 BUG Fix GridFieldAddExistingAutocompleter
This fix exchanges references to sub-components by ID with class references
Fixes #5382
2016-05-03 14:28:41 +12:00
Damian Mooyman
e7d5c92ec1 Fix merge regressions 2016-05-02 09:08:37 +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
Daniel Hensby
8673ac15bc
MINOR Empty YAML config causes invalid argument error 2016-04-26 12:58:27 +01:00
Loz Calver
61a9b2a41a
FIX: GridFieldPaginator now prevents viewing pages with no results (fixes #3192) 2016-04-26 09:34:03 +01: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
David Craig
7fcdf35438 Add DetailEditForm to Campaign admin
- Add edit form to campaigns section
- Handle form submissions with FormBuilder
- Handle form state via Redux
- Garbage collect form state
- Removes $itemID as a required param for schema requests.
  Developers should be able to scaffold forms without populating
  values from an existing record. For example when building a form for creating new records.
2016-04-26 15:32:07 +12:00
Daniel Hensby
679185514d
Merge 3.3 into 3
Conflicts:
	admin/css/screen.css.map
2016-04-26 00:24:59 +01:00
Daniel Hensby
745faebd81
Merge 3.2 into 3.3
Conflicts:
	.travis.yml
2016-04-26 00:17:09 +01:00
Daniel Hensby
a0812f987a
Merge 3.1 into 3.2
Conflicts:
	admin/javascript/LeftAndMain.js
	control/HTTPRequest.php
	docs/en/00_Getting_Started/00_Server_Requirements.md
2016-04-26 00:09:33 +01:00
Damian Mooyman
daf5385833 API Change in behaviour to flysystem reporting for root folders
See 847841974f
2016-04-26 09:36:08 +12:00
Damian Mooyman
8b239a5011 Docs and tests for exempt validation actions 2016-04-22 14:52:38 +12:00
Damian Mooyman
fa5b8b8fb1 BUG Fix error when modals are displayed 2016-04-22 10:31:49 +12:00
JorisDebonnet
9eac541740 Enhance GD::greyscale to allow darker or lighter results, and change color weights for greyscale (#5332)
Tweaking the first three parameters (R, G, B) allows you to get a different mix of colors into grey, but it does not allow you to make the result lighter or darker because their total is normalized. This is quite a common operation on greyscaled images though, so I added a fourth parameter: brightness. It defaults to 100% so that it does not have any effect when not used (making this backwards compatible). $brightness = 50 will make it darker, $brightness = 150 will overlight it.
2016-04-21 19:26:46 +12:00
Jeffrey Guo
4f14175022 setup CMS Settings in one test step 2016-04-20 22:40:04 +12:00
Ingo Schommer
8cf38720b5 Fix Chosen.js selector for Behat feature
The recent upgrade to Chosen.js 1.5 changes the generated markup:
It still renders an <a> tag, but without the "href" attribute.
This attribute isn't actually required to uniquely identify
the link in this structure.
2016-04-20 13:52:51 +12:00
Daniel Hensby
f32c893546
[SS-2016-005] FIX Apply brute force protection to default admin 2016-04-19 23:20:29 +01:00
Damian Mooyman
0bd62735bc BUG Fix issue with Requirements mangling custom scripts (#5337)
API Remove deprecated $template parameter from Requirements::includeInHTML
2016-04-19 17:20:30 +12:00
Daniel Hensby
52226dc462 Merge pull request #5322 from tractorcow/pulls/5105
fix to support facebook autodiscover
2016-04-15 14:27:19 +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
6f548a0ed0 Add unit tests for oembed autodiscover and thumbnail detection 2016-04-15 14:00:10 +12:00
Roman Schmid
9146450c49 Fix Email test issue discovered in #5271.
Updated/added tests for changed- and forgot-password Emails.
Updated fixture and tests to no longer use a real Email address.
2016-04-11 13:46:41 +02:00
Daniel Hensby
d7289a17fc Merge pull request #5271 from bummzack/5244-remove-email-subclasses
Fix 5244: Removed Email Subclasses
2016-04-08 17:09:44 +01:00
Roman Schmid
ca4036b882 Removed Email Subclasses used by the Member class (Member_ChangePasswordEmail and Member_ForgotPasswordEmail).
Added a test for the forgot password email.
Improved the test for the change-password email.
Fixed issue where `SapphireTest::mailer` was cleared during `setUp` by moving instantiation of the mailer at the end of the `setUp` method.
No longer use deprecated i18n method in test-setup.
Replace potentially real Email Address with a fake one.
2016-04-06 09:54:17 +02:00
Ingo Schommer
f0906f6e92 Merge pull request #5261 from tractorcow/pulls/4.0/fixup-tinymce
BUG fix missing language on non-global TinyMCE Configs
2016-04-06 19:32:55 +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
Damian Mooyman
640691f544 BUG fix missing language on non-global configs
BUG Prevent external plugins from being passed to the minifier
API Change TinyMCEConfig::requireJS to getScriptURL() for testabilitiy
2016-04-04 09:59:31 +12:00
Damian Mooyman
6ec2656201 BUG fix ErrorControlChain causing errors to be displayed if display_errors in php.ini is false
Fixes #5250
2016-04-01 11:04:06 +13:00
Damian Mooyman
d8d005d1e2 BUG move test file to correct folder and fix class_exists 2016-03-31 17:06:23 +13:00
Damian Mooyman
e8a68c42ce BUG Prevent live manifest loading files from nested test directories
E.g. framework/admin/tests
2016-03-31 15:58:23 +13:00
Damian Mooyman
0fa7271ec2 Merge pull request #5239 from open-sausages/pulls/4.0/form-schema-fixes
Form schema fixes
2016-03-31 09:49:55 +13:00
Ingo Schommer
fb660225c2 Behat: Wait until CMS loading overlay is removed
This makes tests more robust at the expense of an additional
check with every step. The "ajax steps" logic works similarly,
but does not respect the loading indicator. While this logic
waits for a short time after ajax requests are finished,
in some cases that isn't enough time for the browser to
process the response and remove the loading indicator.
Since the "ajax steps" logic applies to operations outside of the CMS
as well, we can't add the loading indicator check there.
2016-03-29 17:24:47 +13:00
Ingo Schommer
7ba4b5b6ef Merge pull request #5241 from timkung/pulls/upload-validator-filesize-spelling
BUG changing all cases of filesize spelling to file size
2016-03-29 16:15:27 +13: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
Tim Kung
7907d20da7 BUG changing all cases of filesize spelling to file size 2016-03-29 13:38:24 +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
Ingo Schommer
8ae2894890 Fix form schema ID getter
Also moved keys of higher importance to start of array,
easier to review this way
2016-03-28 21:54:24 +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
madmatt
c972692313 MINOR: Fix PHPUnit @covers assertions for GridFieldTest
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 11:55:01 +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
262f487053 MINOR: Avoid access-changing subclass in test.
Using a subclass to change the visibility of protected items didn’t
seem necessary in this case, if we add a reasonably logical getter
method.
2016-03-22 17:39:09 +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
Damian Mooyman
78f19bd2ed Merge pull request #5175 from Firesphere/pulls/feature-set-owner-allmethods
Enhancement: Set the owner on an extension
2016-03-21 17:30:37 +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
Joris Debonnet
4c741125c5 fix #5195: allow empty values in Enum 2016-03-17 22:43:26 +01: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
Damian Mooyman
3dada00905 Cleanup trailing whitespace 2016-03-09 10:20:31 +13:00
Damian Mooyman
6d88caa9b3 Merge pull request #5132 from open-sausages/features/form-schema
API Form schema
2016-03-07 14:08:36 +13:00
Ingo Schommer
3b11d73c46 Merge remote-tracking branch 'origin/3'
# Conflicts:
#	forms/gridfield/GridFieldDetailForm.php
#	javascript/GridField.js
2016-03-07 09:26:35 +13:00
Ingo Schommer
e1fcc64c41 Form field schema state
See https://github.com/silverstripe/silverstripe-framework/issues/4938
2016-03-03 13:36:48 +13:00
David Craig
404ac4ae43 Initial schemaState implementation 2016-03-03 08:20:54 +13:00
David Craig
afccef718c Initial Form Field Schema implementation
- Adds FormSchema class
- Adds FormSchema dependency to LeftAndMain via Injector
- Adds schema allowed_action method to LeftAndMain for generating Form schemas
- Adds FormFieldSchemaTrait to for schema getters and setters on FormFields
2016-03-03 08:20:54 +13:00
Daniel Hensby
817b836870 FIX getIP from behind a load-balancer that adds many IPs to the header 2016-03-01 21:07:48 +00:00
Damian Mooyman
b196d33bfa API Ownership API
API Filter Relation. query parameters from relations when creating objects
API Versioned::publish now triggers invokeWithExtensions
API Update behaviour of versioned for all_versions mode to respect ID filters
API Tweak behaviour of inherited query parameters
2016-02-29 14:38:44 +13:00
Damian Mooyman
e1865151c5 Merge pull request #5098 from bummzack/5086-fix-member-validator
Fix for issue #5086
2016-02-26 14:39:53 +13:00
Ingo Schommer
e88c3c8098 Merge pull request #5094 from tractorcow/pulls/4.0/invokewithextensions
API Extensible::invokeWithExtension has same method signature as Extensible::extend
2016-02-26 13:09:40 +13:00
Roman Schmid
f691a5da32 Improve Member_Validator to:
- properly check for existing members.
- allow extensions.
- remove old code and replace with new syntax and add config API.

Fix issue in Group code where Member_Validator was instantiated via "new" which didn't allow injector overrides.
Added unit-tests.

Establish a link between the member and the validator for said member.
2016-02-25 16:10:52 +01:00
Damian Mooyman
c275c21057 API Extensible::invokeWithExtension has same method signature as Extensible::extend 2016-02-25 17:32:41 +13:00
Damian Mooyman
0ee1564896 BUG Fix deprecated API usage in DataFormatter API and DataObjectTest
PHPDoc Cleanup
API DataFormatter::convertStringToArray is now abstract
2016-02-25 17:10:09 +13:00
Damian Mooyman
3b0a9f4ba2 Merge remote-tracking branch 'origin/3'
# Conflicts:
#	admin/javascript/LeftAndMain.Menu.js
#	control/HTTPRequest.php
#	css/GridField.css
#	css/GridField.css.map
#	docs/en/02_Developer_Guides/03_Forms/Field_types/01_Common_Subclasses.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/01_File_Management.md
#	docs/en/02_Developer_Guides/14_Files/02_Images.md
#	filesystem/Upload.php
#	javascript/HtmlEditorField.js
#	model/Image.php
#	model/connect/MySQLDatabase.php
#	model/fieldtypes/Enum.php
#	model/versioning/Versioned.php
#	scss/GridField.scss
2016-02-25 14:51:59 +13:00
Daniel Hensby
2fdc96a0de Update PHPUnit from 3.7 to 4.8 2016-02-24 21:42:20 +13:00
Damian Mooyman
9fed5561f4 Merge remote-tracking branch 'origin/3.3' into 3
# Conflicts:
#	core/Constants.php
#	dev/DevelopmentAdmin.php
2016-02-24 17:39:04 +13:00
Damian Mooyman
5f2d3f31d7 Merge remote-tracking branch 'origin/3.2' into 3.3
# Conflicts:
#	dev/DevelopmentAdmin.php
#	docs/en/02_Developer_Guides/08_Performance/02_HTTP_Cache_Headers.md
#	lang/cs.yml
#	lang/lt.yml
2016-02-24 17:29:06 +13:00
Damian Mooyman
ff5ed6efeb Merge remote-tracking branch 'origin/3.2.2' into 3.2 2016-02-24 17:03:43 +13:00
Damian Mooyman
013524af50 [ss-2016-002] Ensure Gridfield actions respect CSRF 2016-02-24 11:47:15 +13:00
Damian Mooyman
e2c77c5a8f [ss-2016-002] Ensure Gridfield actions respect CSRF 2016-02-24 11:33:53 +13:00
Tyler Kidd
375bbf954e Enhancement and fix for issue #3186 2016-02-23 14:53:52 -06:00
Ingo Schommer
589fee1a8a Removed obsolete TestRunner->$skipTests flag
Taken care of by the default PHPUnit implementation of markTestSkipped()
2016-02-23 22:29:58 +13:00
Ingo Schommer
d1af214ef5 API Removed custom dev/tests/ execution
Rely on standard vendor/bin/phpunit via CLI instead.
See https://github.com/silverstripe/silverstripe-framework/issues/4254

- Not disabling xdebug. That should be harmful, and is actively harming test development
- No longer able to specifically skip tests via the `SkipTests` request parameter. Use phpunit.xml groups and the `--exclude-group` CLI argument instead
- No longer able to specify multiple comma-separated module folders. use phpunit.xml groups and the `--group` CLI argument instead
- Not explicitly calling `SSViewer::flush_template_cache()` (was never the case on running `phpunit` CLI anyway, and shouldn't be required any more)
2016-02-23 20:19:35 +13:00
Damian Mooyman
510c556739 API File has Versioned extension
API Improved support for versioned DataObject
API GridField extensions for versioned dataobjects
API De-couple File and ErrorPage
API File::handle_shortcode now respects canView()
API AssetControlExtension is now able to delete, publish, or protect files
API Upload now protects new assets by default
2016-02-23 13:46:28 +13:00
Damian Mooyman
65a0981c08 BUG Correct behaviour of publish with $createNewVersion = true
Fixes #5040
Cleanup code to make behaviour more apparent
2016-02-23 10:15:49 +13:00
Damian Mooyman
f20ad434ce API Update TinyMCE to 4.x
API Allow HtmlEditorField to be individually configured
BUG Fix incorrect change detection
BUG Fix missing i18n files
2016-02-23 10:10:02 +13:00
Damian Mooyman
56e92f5a32 [ss-2016-002] Ensure Gridfield actions respect CSRF 2016-02-18 17:28:54 +13:00
Damian Mooyman
829135a85a API remove Object::useCustomClass
API Broke out Injectable, Configurable, and Extensible from Object into traits
BUG Fix missing extraDataObjects in tests
2016-02-17 10:22:04 +13:00
Jean-Fabien Barrois
bab1f230bf NEW Cross device "Remember Me" feature
At the moment, using the "Remember me" function on more than one device will only work with the last device used. Previous devices will not auto login.
This PR introduces a new DataObject for storing hashed tokens against multiple devices. Developers can configure if logging out should discard all tokens, or only the one used on the device logging out; token expiry date is 90 days by default but configurable. For added security, the old behaviour can still be enforced if multiple tokens are not desired.
See silverstripe#1574 for additional background
2016-02-10 09:42:08 +13:00
Mark Stephens
3fcf1e2c98 BUG edge case on many many extra fields (fixes 4991)
Fixes an edge case where extraFields are not returned if
one side of a many many is added via extension (although this
may not be the only failure case). Fixes a
downstream issue with dms breaking the CMS on framework 3.2.

The bug is where a many many relationship exists on a class,
and a sub-class attempts to get the extra fields of the
relationship. The change fixes the test for exact matching of
the relationship class to the instance class, to checking if
the instance is the class or a subclass of the relationship.

The unit tests check the dms failure case, which is a more
complex failure case.
2016-02-04 12:47:07 +13:00
Damian Mooyman
6cebffd89b BUG Fix SSViewerTest not restoring old requirements
BUG Fix incorrect js path in UploadField.php
Restore changes missing from merge
2016-01-26 11:39:53 +13:00
David Craig
2140025c20 Implement RFC-7 JavaScript module loader
- Adds ES6 support via Babel
- Transforms existing JavaScript to UMD modules
- Adds module bundling via Browserify
- Existing JavaScript converted to UMD modules
- lib.js and leftandmain.js are bundled using browserify
- JavaScript minifying of bundles handed by gulp
2016-01-26 11:39:20 +13:00
Daniel Hensby
e74665b639 Merge pull request #4964 from tractorcow/pulls/4.0/tomap-standardise
API Standardise SS_List::map() implementation
2016-01-25 13:31:05 +00:00
Damian Mooyman
69c9ad1428 Merge remote-tracking branch 'origin/3'
# Conflicts:
#	admin/css/ie8.css.map
#	admin/css/screen.css
#	admin/css/screen.css.map
#	admin/scss/_style.scss
#	css/AssetUploadField.css
#	css/GridField.css.map
#	docs/en/02_Developer_Guides/00_Model/08_SQL_Select.md
#	lang/fi.yml
2016-01-25 16:15:41 +13:00
Damian Mooyman
e091bb8474 Merge remote-tracking branch 'origin/3.3' into 3
# Conflicts:
#	admin/scss/_forms.scss
#	admin/scss/_style.scss
#	tests/model/VersionedTest.yml
2016-01-25 15:57:37 +13:00
Damian Mooyman
7c448bb4a2 Merge remote-tracking branch 'origin/3.2' into 3.3
# Conflicts:
#	tests/model/DataObjectLazyLoadingTest.php
#	tests/model/VersionedTest.yml
2016-01-25 14:11:37 +13:00
Damian Mooyman
e77389d0c8 API Standardise SS_List::map() implementation
Fixes #1593
2016-01-25 10:22:47 +13:00
Damian Mooyman
f8ce2d7631 Merge pull request #4973 from dhensby/pulls/multibyte-char-fix
Remove question marks, equal signs and hashes
2016-01-25 10:00:07 +13:00
assertchris
c66f973fce Replaced obsolete mime types 2016-01-24 18:15:47 +13:00
Daniel Hensby
119bd2f873 Merge pull request #4845 from tractorcow/pulls/3/extension-hook-byref
API before/afterExtend now support parameters passed by reference
2016-01-22 16:08:20 +00:00
Damian Mooyman
bf8bf5e4d5 BUG Prevent Versioned::doRollbackTo from creating incorrect versions on subclasses of Versioned DataObjects
Document correct configuration of Versioned DataObjects
Fixes #4936
2016-01-22 15:35:58 +13:00
Daniel Hensby
612772728e Merge pull request #4962 from tractorcow/pulls/4.0/defaultclass
API Refactor out Page default classname hack
2016-01-21 22:40:28 +00:00
Jarkko Linnanvirta
cf8e9f2427 Test removing some bad characters when multibyte is allowed 2016-01-21 12:57:50 +02:00
Damian Mooyman
5138bf1b7f API Refactor out Page default classname hack
Fixes #1932
2016-01-21 17:12:55 +13:00
Damian Mooyman
bdb1a95758 API Cleanup and refactor of select fields
API Standardise Relation interface
2016-01-21 15:40:19 +13:00
Damian Mooyman
df76d783fe BUG Fix VersionedTest sometimes failing given certain querystring arguments 2016-01-20 14:49:46 +13:00
Damian Mooyman
e6b877df27 Merge remote-tracking branch 'origin/3'
# Conflicts:
#	control/Director.php
#	control/HTTP.php
#	core/startup/ParameterConfirmationToken.php
#	docs/en/00_Getting_Started/01_Installation/05_Common_Problems.md
#	docs/en/00_Getting_Started/04_Directory_Structure.md
#	docs/en/00_Getting_Started/05_Coding_Conventions.md
#	docs/en/01_Tutorials/01_Building_A_Basic_Site.md
#	docs/en/01_Tutorials/02_Extending_A_Basic_Site.md
#	docs/en/01_Tutorials/03_Forms.md
#	docs/en/01_Tutorials/04_Site_Search.md
#	docs/en/01_Tutorials/05_Dataobject_Relationship_Management.md
#	docs/en/02_Developer_Guides/12_Search/01_Searchcontext.md
#	docs/en/02_Developer_Guides/13_i18n/index.md
#	docs/en/02_Developer_Guides/15_Customising_the_Admin_Interface/06_Javascript_Development.md
#	docs/en/03_Upgrading/index.md
#	docs/en/changelogs/index.md
#	docs/en/howto/customize-cms-menu.md
#	docs/en/howto/navigation-menu.md
#	docs/en/index.md
#	docs/en/installation/index.md
#	docs/en/installation/windows-manual-iis-6.md
#	docs/en/misc/contributing/code.md
#	docs/en/misc/contributing/issues.md
#	docs/en/misc/module-release-process.md
#	docs/en/reference/dataobject.md
#	docs/en/reference/execution-pipeline.md
#	docs/en/reference/grid-field.md
#	docs/en/reference/modeladmin.md
#	docs/en/reference/rssfeed.md
#	docs/en/reference/templates.md
#	docs/en/topics/commandline.md
#	docs/en/topics/debugging.md
#	docs/en/topics/email.md
#	docs/en/topics/forms.md
#	docs/en/topics/index.md
#	docs/en/topics/module-development.md
#	docs/en/topics/modules.md
#	docs/en/topics/page-type-templates.md
#	docs/en/topics/page-types.md
#	docs/en/topics/search.md
#	docs/en/topics/testing/index.md
#	docs/en/topics/testing/testing-guide-troubleshooting.md
#	docs/en/topics/theme-development.md
#	docs/en/tutorials/1-building-a-basic-site.md
#	docs/en/tutorials/2-extending-a-basic-site.md
#	docs/en/tutorials/3-forms.md
#	docs/en/tutorials/4-site-search.md
#	docs/en/tutorials/5-dataobject-relationship-management.md
#	docs/en/tutorials/building-a-basic-site.md
#	docs/en/tutorials/dataobject-relationship-management.md
#	docs/en/tutorials/extending-a-basic-site.md
#	docs/en/tutorials/forms.md
#	docs/en/tutorials/index.md
#	docs/en/tutorials/site-search.md
#	main.php
#	model/SQLQuery.php
#	security/ChangePasswordForm.php
#	security/MemberLoginForm.php
#	tests/control/ControllerTest.php
#	tests/core/startup/ParameterConfirmationTokenTest.php
#	tests/model/SQLQueryTest.php
#	tests/security/SecurityTest.php
#	tests/view/SSViewerTest.php
#	view/SSTemplateParser.php
#	view/SSTemplateParser.php.inc
#	view/SSViewer.php
2016-01-20 13:16:27 +13:00
Damian Mooyman
8e4db95f72 Fix merge regressions 2016-01-19 17:08:40 +13:00
Damian Mooyman
8c1cafd1a0 Merge remote-tracking branch 'origin/3.3' into 3
# Conflicts:
#	admin/scss/_forms.scss
#	admin/scss/_style.scss
#	admin/scss/_tree.scss
#	javascript/TreeDropdownField.js
2016-01-19 17:08:26 +13:00
Damian Mooyman
5d240feaec Merge remote-tracking branch 'origin/3.2' into 3.3 2016-01-19 15:08:24 +13:00
Damian Mooyman
46cbe809ac Merge remote-tracking branch 'origin/3.1' into 3.2
# Conflicts:
#	docs/en/02_Developer_Guides/09_Security/04_Secure_Coding.md
#	docs/en/02_Developer_Guides/14_Files/01_Image.md
#	docs/en/02_Developer_Guides/15_Customising_the_Admin_Interface/How_Tos/Customise_CMS_Menu.md
#	docs/en/03_Upgrading/index.md
#	docs/en/05_Contributing/01_Code.md
#	forms/TreeMultiselectField.php
#	security/Permission.php
2016-01-19 14:00:19 +13:00
Damian Mooyman
8e1ae55ff6 API Enable single javascript files to declare that they include other files 2016-01-15 09:49:28 +13:00
Damian Mooyman
738e1db756 Update Nginx rules
Prevent disclosure of secure assets
2016-01-13 18:18:22 +13:00
Damian Mooyman
037467beae API Asset Access Control implementation 2016-01-13 18:18:22 +13:00
Daniel Hensby
2dd8d5e518 Fixing anchor selection 2016-01-12 17:35:06 +00:00
Sam Minnee
4aa50534d5 FIX: Fixes needed to adapt to whitespace changes.
API: Whitespace trimmed from custom form field templates

The introduction of trailing newlines on all template files introduced
some changes that needed to be made.

Notably, whitespace has been trimmed from rendered form field templates.
This is the minimal impact to SilverStripe developers, as it preserves
the behaviour of the default field types, but I’ve still noted as a
change.
2016-01-07 14:17:57 +13:00
Sam Minnee
3ee8f505b7 MINORE: Remove training whitespace.
The main benefit of this is so that authors who make use of
.editorconfig don't end up with whitespace changes in their PRs.

Spaces vs. tabs has been left alone, although that could do with a
tidy-up in SS4 after the switch to PSR-1/2.

The command used was this:

for match in '*.ss' '*.css' '*.scss' '*.html' '*.yml' '*.php' '*.js' '*.csv' '*.inc' '*.php5'; do
	find . -path ./thirdparty -not -prune -o -path ./admin/thirdparty -not -prune -o -type f -name "$match" -exec sed -E -i '' 's/[[:space:]]+$//' {} \+
	find . -path ./thirdparty -not -prune -o -path ./admin/thirdparty -not -prune -o -type f -name "$match" | xargs perl -pi -e 's/ +$//'
done
2016-01-07 10:15:54 +13:00
Loz Calver
c9ba0e48fc NEW: Add ViewableData::setFailover() to refresh detected methods when changing failover 2016-01-06 15:19:33 +00:00
Daniel Hensby
4335d8ed22 FIX Members with no ID inherit logged in user permission 2016-01-05 08:16:18 +00:00
Damian Mooyman
bb09340605 Merge pull request #4876 from SilbinaryWolf/remove-validation-from-lookupfield
Added unit test to ensure LookupField can't save into a DataObject
2016-01-05 10:18:36 +13:00
Jake Ben
c07dcaa3af Added unit test to ensure LookupField can't save into a DataObject 2015-12-24 14:30:50 +11:00
Damian Mooyman
fce82519bd BUG Workaround for issues in testing version 2015-12-22 17:47:53 +13:00
Damian Mooyman
19b10044ec Merge remote-tracking branch 'origin/3.2' into 3 2015-12-22 17:05:07 +13:00
Damian Mooyman
66b3a6a2c5 Merge pull request #4840 from mateusz/guard
BUG Guard against users being added to all groups on unsaved Group.
2015-12-22 16:29:09 +13:00
Damian Mooyman
48a30909f3 Merge remote-tracking branch 'origin/3.2' into 3
# Conflicts:
#	admin/javascript/LeftAndMain.BatchActions.js
#	css/UploadField.css
#	forms/HtmlEditorField.php
2015-12-22 14:07:52 +13:00
Loz Calver
d265c9b733 FIX: Allow omitting a value for OptionsetField submissions (fixes #4824) 2015-12-14 16:50:22 +00:00
Loz Calver
9467ab9a7e NEW: Implement unshift() in field list classes (closes #4834) 2015-12-14 16:18:57 +00:00
Damian Mooyman
62f183d037 API before/afterExtend now support parameters passed by reference
Closes #4810
2015-12-14 10:10:45 +13:00
Mateusz Uzdowski
5a21b2fb15 BUG Guard against users being added to all groups on unsaved Group.
If ->Members()->add() is called on an unsaved group (with ID 0), the
collateFamilyIDs() will errorneously return all root Groups thinking
it's looking for Groups with ParentID=0. As a result, the Member will be
added to all root groups, instead of just the selected group and all its
children.
2015-12-11 14:51:51 +13:00
Ingo Schommer
0175167761 Merge pull request #4830 from open-sausages/pulls/3/fix-querystring-stage
API Disable unauthenticated get parameter access to site stage mode
2015-12-10 10:44:43 +13:00
Damian Mooyman
fa0160a874 BUG Fix regression in canViewStage 2015-12-09 14:53:21 +13:00
Hamish Friedlander
1eda9151a4 Merge pull request #4831 from open-sausages/pulls/3/fix-versioned-canview
API Create default security permission model for versioned data objects
2015-12-09 14:17:27 +13:00
Damian Mooyman
6089a7c5bd API Create default security permission model for versioned data objects 2015-12-09 11:33:53 +13:00
Marcus Nyeholt
fc5e584201 Format for SS3 using tabs instead of spaces 2015-12-08 15:19:24 +11:00
Damian Mooyman
38e154af0a API Disable get parameter access to site stage mode
BUG Fix missing and undocumented response from Security::permissionFailure()
2015-12-07 17:39:18 +13:00
Marcus Nyeholt
f7c270a3ba NEW Use Config for determining Vary header
Existing implementation hardcodes the Vary header; swap to using Config layer
instead

Added test for changing the variable from config
2015-12-02 10:28:24 +11:00
Daniel Hensby
b694829084 Merge pull request #4812 from tractorcow/pulls/4.0/api-composite-sort
API Enable DataList::sort to support composite field names
2015-11-30 23:54:45 +00:00
Damian Mooyman
c13b5d989f API Enable advanced configuration options for requirements combined files
API Enable relative root paths for the default Flysystem AssetAdapter
2015-12-01 11:07:13 +13:00
Damian Mooyman
641c26299c API Enable linear-only restriction for DataList::applyRelation
API Remove DataList::getRelation
2015-12-01 09:58:27 +13:00
Damian Mooyman
2b1e5ee071 API Enable DataList::sort to support composite field names (similar to filter) 2015-12-01 09:35:33 +13:00
Damian Mooyman
ce28259c5f API Replace CacheGeneratedAssetHandler with FlysystemGeneratedAssetHandler
API Reduce GeneratedAssetHandler API
API Re-introduce Requirements::delete_all_combined_files();
API Re-introduce Requirements::flush()
API Combined files now uses new filenames distinguished by sha1 of sources
2015-11-26 16:12:05 +13:00
Christopher Darling
e9b833f5f0 FIX: ConfirmedPassword field correctly reports mismatching passwords
added testFormValidation to prove #4780
2015-11-20 15:56:27 +00:00
Loz Calver
68d99be24b FIX: Hidden errors for composite fields nested inside FieldGroups (fixes #4773) 2015-11-17 16:34:17 +00:00
Damian Mooyman
fd6ae72e1d Merge remote-tracking branch 'origin/3.2.1' into 3.2 2015-11-16 16:39:15 +13:00
Hamish Friedlander
b61d6dcd57 [ss-2015-027]: FIX HtmlEditorField_Toolbar#viewfile not whitelisting URLs 2015-11-13 15:20:09 +13:00
Damian Mooyman
fea1158d19 BUG Fix print button only displaying first page 2015-11-12 14:59:08 +13:00
Damian Mooyman
245e0aae2f [ss-2015-026]: BUG Fix FormField error messages not being encoded safely 2015-11-11 17:50:02 +13:00
Ingo Schommer
ac4342d81d [ss-2015-022]: XML escape RSSFeed $link parameter 2015-11-11 17:46:39 +13:00
Damian Mooyman
97f21fddb3 [ss-2015-021] Fix rewrite hash links XSS 2015-11-11 17:46:27 +13:00
Damian Mooyman
bc1b2893ac [ss-2015-026]: BUG Fix FormField error messages not being encoded safely 2015-11-11 16:56:19 +13:00
Ingo Schommer
4f55b6a115 [ss-2015-022]: XML escape RSSFeed $link parameter 2015-11-11 16:54:04 +13:00
Damian Mooyman
132e9b3e2f [ss-2015-021] Fix rewrite hash links XSS 2015-11-11 16:52:53 +13:00
Damian Mooyman
0272e443f4 BUG Prevent dev/build continually regenerating Number field type 2015-11-11 09:21:50 +13:00
Daniel Hensby
d380252488 Merge pull request #4760 from tractorcow/pulls/3.2/fix-empty-filter
BUG Correct behaviour for empty filter array (as per 3.1)
2015-11-10 01:48:47 +00:00
muskie9
603caccb90 ENHANCEMENT CurrencyField to use Currency.currency_symbol
fixes #4035

I have limited experience with regex, so I hope I did it correctly. I was able to save/save & publish with the curent regex and the values look good.
2015-11-09 19:38:51 -06:00
Damian Mooyman
732e705bbf BUG Correct behaviour for empty filter array (as per 3.1) 2015-11-10 14:24:45 +13:00
Will Morgan
6d85d618b6 Merge pull request #4751 from dhensby/pulls/plural-fix
Fixing issue where words ending ay/ey/iy/oy/uy are not pluralised correctly
2015-11-06 16:55:25 +00:00
Daniel Hensby
dad3784621 Fixing issue where words ending ay/ey/iy/oy/uy are not pluralised correctly 2015-11-06 16:23:45 +00:00
Daniel Hensby
ef35c2bb6b Merge pull request #4457 from tractorcow/pulls/4.0/no-query
API Remove SQLQuery
2015-11-03 16:41:07 +00:00
Garion Herman
6a1a3bf182 Corrected TotalItems() method to use Count(). Added test coverage. (fixes #4646) 2015-11-04 00:20:45 +13:00
Damian Mooyman
1e1a7a345c Merge remote-tracking branch 'origin/3'
Conflicts:
	control/Director.php
	filesystem/File.php
	filesystem/GD.php
	filesystem/ImagickBackend.php
	forms/HtmlEditorField.php
	javascript/UploadField_uploadtemplate.js
	model/Image.php
	model/Image_Backend.php
	model/fieldtypes/Enum.php
	templates/AssetUploadField.ss
	tests/model/ImageTest.php
	tests/search/FulltextFilterTest.php
2015-11-03 14:23:16 +13:00
Damian Mooyman
c4dc10b255 Merge remote-tracking branch 'origin/3.2' into 3
Conflicts:
	forms/DropdownField.php
	tests/model/ImageTest.php
2015-11-03 13:06:39 +13:00
Damian Mooyman
2813f94124 BUG Ensure that filters on any fixed field are scoped to the base data table
Fixes #4700
2015-10-30 16:26:14 +13:00
Damian Mooyman
db16248b9a BUG Fix broken InlineFormAction 2015-10-29 10:48:49 +13:00
Damian Mooyman
d1ea74e40d API Implement AssetField to edit DBFile fields 2015-10-23 16:57:44 +13:00
Damian Mooyman
3e7eecf978 API Remove SQLQuery 2015-10-23 16:26:04 +13:00
Damian Mooyman
e17a49f8a5 API Restore JS Minification
BUG Fix incorrect cache on CacheGeneratedAssetHandler
2015-10-23 14:14:38 +13:00
Ingo Schommer
f252cfad20 Merge pull request #4680 from open-sausages/features/dbfile-generated-files
API Generated files API
2015-10-23 13:19:56 +13:00
Damian Mooyman
fe3d23f0d4 BUG Fix GeneratedAssetHandler crashing on expired resources 2015-10-23 11:46:58 +13:00
Damian Mooyman
f9892c628c API Generated files API
API Refactor Requirements_Backend to use new APL
2015-10-23 10:07:48 +13:00
Loz Calver
977642daa9 Remove Spyc YAML library
Also had to fix some fixture files - none of the YAML spec versions actually support tabs anyway
2015-10-19 17:07:34 +01:00
Daniel Hensby
1974e79d71 Allow multi-line enum declarations 2015-10-15 16:23:19 +01:00
Damian Mooyman
d884c859d1 BUG Fix file link tracking for new asset abstraction 2015-10-15 12:15:00 +13:00
Damian Mooyman
be239896d3 API Refactor of File / Folder to use DBFile
API Remove filesystem sync
API to handle file manipulations
2015-10-13 11:57:39 +13:00
Patrick Nelson
f192a6ecaf FIX #4392: Ensure headers are checked first before being clobbered by globally maintained state. Also ensuring tests utilize separate responses for isolation. 2015-10-09 13:50:33 -04:00
Daniel Hensby
95ae107c4c Merge pull request #4486 from uniun/patch-2
BUGFIX. FulltextFilter requires table identifiers in match query
2015-10-07 10:28:15 +01:00
Elvinas L.
630062c0e0 Removed whitespaces 2015-10-07 09:33:02 +03:00
Elvinas L.
19c754bf9a Fixed tests 2015-10-06 18:59:39 +03:00
Damian Mooyman
df805af67b BUG Imagick tests compare image dimensions rather than image hashes 2015-10-06 16:35:44 +13:00
Damian Mooyman
b8335793d6 Merge pull request #4620 from kinglozzer/pulls/manymanyextrafields-compat
FIX: GridFieldDetailForm failing to save many_many relations
2015-10-06 11:49:56 +13:00
Loz Calver
1aa1d65932 Merge pull request #4610 from tractorcow/pulls/3/suppress-custom-theme
Minor: Suppress custom themes in Formtest
2015-09-24 16:17:11 +01:00
Sam Minnée
9fdd8f43db Merge pull request #4627 from tractorcow/pulls/4.0/trait-autoloading
API Support trait loading
2015-09-24 15:02:14 +12:00
Damian Mooyman
ac27836d2b API Implementation of RFC-1 Asset Abstraction 2015-09-24 12:57:28 +12:00
Damian Mooyman
f26c220d86 API Support trait loading 2015-09-24 11:57:45 +12:00
Nicola Fontana
c39cf2d55f Do not hang on nested parameters in search context 2015-09-23 09:12:02 +02:00
Loz Calver
0d89a13c2d FIX: GridFieldDetailForm failing to save many_many relations 2015-09-22 14:46:57 +01:00
Damian Mooyman
10dece653f API Consolidate DataObject db methods
BUG Fix namespace and getField on composite fields
2015-09-22 10:38:12 +12:00
Damian Mooyman
9872fbef4d API Refactor CompositeDBField into an abstract class
API Refactor ClassName into DBClassName
API Update PolymorphicForeignKey to use new CompositeDBField and DBClassName

CompositeDBField is now an interface to nested fields on an underlying dataobject, allowing field manipulation to be performed at the field and dataobject level without having to synchronise them manually.
2015-09-22 10:28:07 +12:00
Damian Mooyman
e97b14ea65 Minor: Suppress custom themes in Formtest 2015-09-17 14:23:52 +12:00
Damian Mooyman
34b71cf6c8 Merge remote-tracking branch 'origin/3' 2015-09-15 13:42:17 +12:00
Damian Mooyman
71b8aec306 Merge remote-tracking branch 'origin/3.2' into 3 2015-09-15 13:35:51 +12:00
Damian Mooyman
c4710b2272 Merge remote-tracking branch 'origin/3.1' into 3.2
Conflicts:
	admin/code/GroupImportForm.php
	admin/code/MemberImportForm.php
	tests/model/DataListTest.php
2015-09-15 13:18:47 +12:00
Damian Mooyman
8c99659e3f Merge pull request #4563 from assertchris/split-bulk-loader-imports-to-reduce-memory-consumption
Splitting BulkLoader imports to reduce memory consumption
2015-09-15 10:22:45 +12:00
Christopher Pitt
1c5089f7fc Splitting BulkLoader imports to reduce memory consumption 2015-09-15 10:06:06 +12:00
Damian Mooyman
7367cf54c4 [ss-2015-020]: Prevent possible Privilege escalation 2015-09-10 13:01:24 +12:00
Damian Mooyman
812b5ecb62 Fix merge regressions 2015-09-09 16:18:39 +12:00
Damian Mooyman
b552a7370f Merge remote-tracking branch 'origin/3'
Conflicts:
	tests/model/ImageTest.php
2015-09-09 15:44:47 +12:00
Damian Mooyman
f10785350e Merge remote-tracking branch 'origin/3.2' into 3
Conflicts:
	docs/en/02_Developer_Guides/02_Controllers/01_Introduction.md
2015-09-09 14:50:47 +12:00
Damian Mooyman
309ac0d196 Merge remote-tracking branch 'origin/3.1' into 3.2
Conflicts:
	.travis.yml
	admin/code/CMSProfileController.php
	admin/tests/LeftAndMainTest.php
	control/HTTP.php
	security/Permission.php
	tests/forms/FormTest.php
	tests/model/ArrayListTest.php
	tests/security/PermissionTest.php
2015-09-09 14:35:29 +12:00
micmania1
9f91b47825 NEW Update SS_ConfigStaticManifest to use Reflection 2015-09-03 22:25:42 +00:00
Daniel Hensby
f6fe1427c2 API Making ArrayList (and others) more consistent with DataList 2015-09-02 23:43:27 +01:00
Jonathon Menz
2ae5d83f08 FIX Resampled images inherit source properties
Ensure Image_Cached objects can access all the properties of the source image (fixes #4569)
2015-09-02 10:38:02 -07:00
Will Morgan
17e97babf1 Merge pull request #4549 from kinglozzer/pulls/recursion-arraylist-sort
FIX: Recursion errors when sorting objects with circular dependencies (fixes #4464)
2015-09-01 16:42:17 +01:00
Loz Calver
0943b3b1a0 FIX: Recursion errors when sorting objects with circular dependencies (fixes #4464) 2015-09-01 09:37:06 +01:00
Damian Mooyman
e86b45bf5d BUG Remove html5 number field due to insufficient localisation support 2015-09-01 12:23:35 +12:00
Damian Mooyman
dc4c40f642 Merge pull request #4507 from JorisDebonnet/resampled-images-in-folders
Save resampled images into a folder structure indicating transformations
2015-09-01 11:16:23 +12:00
JorisDebonnet
ea05526e9d Save resampled images into a folder structure indicating transformations 2015-09-01 00:40:27 +02:00
Sam Minnée
f4b7cd3f68 Merge pull request #4500 from stevie-mayhew/pulls/get-response
FEATURE: implement getter and setter usage for response
2015-08-29 15:35:55 +12:00
Stevie Mayhew
1b57e0ca5b FEATURE: implement getter and setter usage for response 2015-08-29 10:24:06 +12:00
Sam Minnee
1b8d295767 API CHANGE: Shift to Monolog for error reporting and logging
API CHANGE: Debug::showError(), Debug::showLines(), Debug::log(), and Debug::header() removed
NEW: Logging provided

ZendLog has been removed and monolog introduced instead as a dependency.
The “ErrorLogger” injection point is now the used as the logger that
errors are fed into, and implements PSR-3’s Psr\Log\LoggerInterface.

The SS_ERROR_LOG setting expect a Monolog Logger to be provided as the
ErrorLogger.
2015-08-28 16:06:41 +12:00
Ingo Schommer
28554dbe94 Merge pull request #4504 from dhensby/pulls/fields-fix
When loading data into a form, make sure its using ALL fields
2015-08-28 08:38:49 +12:00
Daniel Hensby
cffb11e568 TEST Ensure data is loaded into complete FieldList 2015-08-27 17:56:22 +01:00
Loz Calver
4ec6210c98 Merge pull request #4537 from chillu/pulls/urlsegment-forward-slashes
Remove forward slash in URLs in multibyte mode
2015-08-26 16:18:53 +01:00
Daniel Hensby
2d4b743090 FIX Members can access their own profiles in CMS 2015-08-26 15:47:51 +01:00
Ingo Schommer
860b5dcc6e Remove forward slash in URLs in multibyte mode
Fixes https://github.com/silverstripe/silverstripe-cms/issues/1262
2015-08-26 17:40:04 +12:00
Loz Calver
df9eb77e2b Allow abstract BuildTask subclasses (closes #4538) 2015-08-25 10:14:15 +01:00
Loz Calver
99a8a81e9a Fix issues with tests and "subfolder" URLs 2015-08-25 11:49:01 +12:00
Damian Mooyman
4ea344ac9c Merge remote-tracking branch 'origin/3.2' into 3 2015-08-24 12:57:22 +12:00
Damian Mooyman
1686c83826 Revert #3425 #3396 to restore deprecated functionality
Fixes #4514
2015-08-24 11:26:25 +12:00
Daniel Hensby
6eede57ff2 Fix issue where Access All CMS Sections doesnt work 2015-08-20 22:30:43 +01:00
Patrick Nelson
e13aebc3d7 FIX for #4502 Prevents JSON.parse() from scrambling sorted results from server-side.
Conflicts:
	tests/forms/gridfield/GridFieldAddExistingAutocompleterTest.php
2015-08-19 11:42:45 +01:00
Daniel Hensby
0b36082564 Merge branch '3'
Conflicts:
	.travis.yml
	composer.json
	docs/en/changelogs/4.0.0.md
	forms/gridfield/GridFieldExportButton.php
2015-08-17 13:12:41 +01:00
Dan Hensby
c5c8a6a720 Merge remote-tracking branch '3.2' into 3
Conflicts:
	admin/templates/Includes/ModelAdmin_ImportSpec.ss
	css/GridField.css
2015-08-17 11:59:24 +00:00
Daniel Hensby
a8ab5a468d Merge branch '3.1' into 3.2
Conflicts:
	admin/code/LeftAndMain.php
	composer.json
2015-08-17 11:43:28 +01:00
Daniel Hensby
910156b84c Merge pull request #4443 from JorisDebonnet/base64url
Url-safe alternative for base64_encode in resampled Image filenames
2015-08-10 13:56:35 +01:00
Damian Mooyman
cf9d2d12ac BUG Fix duplicate primary key crash on duplicate 2015-08-10 09:54:30 +12:00
JorisDebonnet
18e163d985 Url-safe alternative for base64_encode in resampled Image filenames 2015-08-05 20:59:40 +02:00
Loz Calver
687de33d0d Ensure ClassInfo is backwards compatible with non-existant classes 2015-08-04 15:07:07 +01:00
Damian Mooyman
1532eeb69e Merge pull request #4459 from kinglozzer/test-path-fixes
Fix issues with tests and "subfolder" URLs
2015-07-31 21:16:46 +12:00
Loz Calver
1aa5d7314c Fix issues with tests and "subfolder" URLs 2015-07-31 09:42:35 +01:00
Damian Mooyman
09210efbc0 Merge remote-tracking branch 'origin/3'
Conflicts:
	composer.json
	control/Session.php
	docs/en/05_Contributing/01_Code.md
	docs/en/05_Contributing/02_Release_Process.md
	forms/FormField.php
	model/DataQuery.php
	model/Image.php
	model/queries/SQLConditionalExpression.php
	view/SSViewer.php
	view/ViewableData.php
2015-07-31 15:49:35 +12:00
Damian Mooyman
e0a560051e Merge remote-tracking branch 'origin/3.2' into 3
Conflicts:
	css/AssetUploadField.css
2015-07-31 14:33:16 +12:00
Damian Mooyman
7ee444e08a Merge remote-tracking branch 'origin/3.1' into 3.2
Conflicts:
	admin/code/LeftAndMain.php
	control/injector/SilverStripeServiceConfigurationLocator.php
	core/ClassInfo.php
	filesystem/File.php
	model/DataObject.php
	model/DataQuery.php
	search/filters/FulltextFilter.php
	search/filters/SearchFilter.php
	tests/core/ClassInfoTest.php
	tests/filesystem/FileTest.php
	tests/model/DataListTest.php
2015-07-31 11:38:18 +12:00
Sam Minnee
a1f7dcafa2 NEW: Add ‘calls’ section to Injector configs.
As well as properties, you can now configure a series of method calls in
your service definitions.
2015-07-30 19:34:46 +12:00
Daniel Hensby
dd0e2dc362 FIX Image_Cached exists method doesnt check for positive ID
FIX Files should only report as "existing" if the file actually exists
2015-07-30 14:52:06 +12:00
Daniel Hensby
130eb8ed02 Merge pull request #4439 from spekulatius/codestyle-model-tests
removing tailing spaces from model tests
2015-07-28 12:28:19 +01:00
Daniel Hensby
ffbeac6b7d Ensuring classinfo is case insensitive 2015-07-28 11:17:50 +01:00
Daniel Hensby
5f0d0ab66a Merge pull request #4155 from kinglozzer/pulls/getfiletype-case
FIX: File::getFileType() was case sensitive (fixes #3631)
2015-07-28 00:13:26 +01:00
Jonathon Menz
40cc567c36 API Force resampling by default
Simplified force resampling by serving up a resampled image throught the getURL() function, but only if the resampled image has a smaller file size than the original.
2015-07-27 12:20:20 -07:00
Peter Thaleikis
bcac1a5afc removing tailing spaces from model tests 2015-07-27 22:38:16 +12:00
Russell
51722e3d12 DataObject accept arrays or stdClass
The constructor of DataObject can take an array or stdClass for $record.
However, it is access as an array [here](https://github.com/silverstripe/silverstripe-framework/blob/3.1/model/DataObject.php#L416) and [here](https://github.com/silverstripe/silverstripe-framework/blob/3.1/model/DataObject.php#L431)

This pull request ensures $record is an array after validation
2015-07-27 10:29:34 +01:00
JorisDebonnet
dd0c85c9cf Use fputcsv in GridFieldExportButton 2015-07-27 04:23:49 +02:00
Loz Calver
20a66136e6 Merge pull request #4403 from tractorcow/pulls/3.2/disable-deprecation
API Disable deprecation notices by default
2015-07-23 14:23:41 +01:00
Loz Calver
778161931b Merge pull request #4325 from dhensby/pulls/http-fix
Fixing issues with HTTP cache control
2015-07-23 14:12:41 +01:00
Sam Minnée
532bf6ccb9 Merge pull request #3554 from tractorcow/pr/3179
FIX: FulltextFilter did not work and was not usable
2015-07-22 11:29:57 +12:00
Sam Minnée
40e9515233 Merge pull request #4053 from tractorcow/pulls/3.1/fix-stringfield-exists
BUG Fix default casted (boolean)false evaluating to true in templates
2015-07-22 11:26:49 +12:00
Dan Hensby
64ceba133c Merge remote-tracking branch 'origin/3.2' into 3
Conflicts:
	admin/css/screen.css
2015-07-20 14:08:36 +00:00
Daniel Hensby
ca8d0f2818 Merge branch '3.1' into 3.2
Conflicts:
	dev/Debug.php
	docs/en/05_Contributing/01_Code.md
	forms/FormField.php
	i18n/i18nTextCollector.php
	model/DataQuery.php
2015-07-20 10:48:01 +01:00
Damian Mooyman
914d734df0 API Disable deprecation notices by default 2015-07-16 09:56:47 +12:00
Damian Mooyman
a556b4854a BUG Fix of multiple i18nTextCollector issues: #3797, #3798, #3417 2015-07-09 10:45:08 +12:00
David Craig
ae3fc84181 Add three column layout to Page content view
- Content filters included in SiteTree view
 - View (tree/list) buttons included in SiteTree view
 - Update view button styles for new layout
 - Updated breadcrumbs for new layout
2015-07-02 10:22:24 +12:00
Daniel Hensby
33d93c2a31 Fixing issues with HTTP cache control 2015-06-29 22:16:02 +01:00
Hamish Friedlander
f5d6f20113 Merge pull request #4333 from sminnee/shortcode-fix
Allow shortcodes inside script tags. Fixes #4332.
2015-06-25 14:51:03 +12:00
Daniel Hensby
3507ddb0e8 FIX MemberPassword history removed with with Members
Currently Members that were deleted would still have their passwords
stored in the DB even though they were deleted. This seems unnecessary
and just increases data that could potentially be compromised later.
2015-06-24 21:04:23 +01:00
David Craig
a6013ed1d0 Move filters from panel to header
- The filter panel has been removed in favour of a search menu in the header.
- The multi-select component has been updated:
  - Now called 'Bulk actions'
  - Styling updated
  - Added placeholder text / removed redundant option
  - Now also appears in SiteTree view
2015-06-23 13:08:23 +12:00
Sam Minnee
6d05c57881 Ensure that shortcodes inside script tags are parsed. Fixes #4332.
The problem is that the marker images aren’t picked up by DOMDocument
if they are inserted into a <script> tag, due to the semantics of HTML.

This fix does an additional replacement after the marker images are
replaced in this way to pick up any leftover tags.
2015-06-22 11:29:12 +01:00
Daniel Hensby
66391ab57a FIX Imported namespaces now correctly used to determine class inheritance
Fixes #3707
2015-06-20 16:09:10 +01:00
Damian Mooyman
e14f743bf0 Set deprecation level for all changes in 3.x to 4.0 2015-06-19 13:07:41 +12:00
Damian Mooyman
1d122803cc Merge remote-tracking branch 'origin/3.1' into 3.2
Conflicts:
	dev/SapphireTest.php
	docs/en/02_Developer_Guides/01_Templates/01_Syntax.md
	forms/DatetimeField.php
	forms/NullableField.php
	forms/NumericField.php
	forms/gridfield/GridField.php
	tests/control/DirectorTest.php
	tests/model/DataObjectSchemaGenerationTest.php
	tests/model/MySQLDatabaseTest.php
2015-06-19 10:48:07 +12:00
Daniel Hensby
aa3871d716 Merge pull request #4306 from gregsmirnov/pulls/3.1/fixed-datetimefield-setname-issue-4305
Issue #4305: fixed DatetimeField::setName()
2015-06-18 22:10:13 +01:00
Gregory Smirnov
5b22e3afc5 Test TimeField value at 12:00 am 2015-06-18 18:53:44 +02:00
Gregory Smirnov
66b1dd9154 Issue 4305: fixed DatetimeField::setName() 2015-06-18 18:36:02 +02:00
Ingo Schommer
7b47501296 Merge pull request #4218 from tractorcow/pulls/4.0/fix-directortest
API New default behaviour for Director::getAbsoluteUrl
2015-06-18 21:42:23 +12:00
Sam Minnée
32eba39cef Merge pull request #4288 from tractorcow/pulls/3.2/fix-pdoconnector
BUG Fix major segfault on PDOConnector after any DDL / Issue in PDOQuery::first()
2015-06-17 17:40:50 +01:00
Damian Mooyman
7597b888c3 Make SQLQuery strict semver for 3.2 2015-06-17 16:54:17 +12:00
Damian Mooyman
0653ba9630 Merge pull request #3979 from dhensby/pulls/test-nest
Nest and unnest Config and Controller for each test
2015-06-17 16:04:27 +12:00
Damian Mooyman
55170a0b74 API make DataObject::validate public 2015-06-17 15:51:30 +12:00
Damian Mooyman
0103b076c3 Merge remote-tracking branch 'origin/3'
Conflicts:
	forms/Form.php
	model/ManyManyList.php
2015-06-17 15:41:13 +12:00
Ingo Schommer
b95fdc7ba0 Merge pull request #4286 from tractorcow/pulls/3.2/fix-public-validate
API Revert DataObject::validate to 3.1 method signature (protected)
2015-06-17 15:36:03 +12:00
Damian Mooyman
ce3b5a5ace BUG Fix major segfault on PDOConnector after any DDL
BUG Fix issue in PDOQuery::first()
Refactor previewWrite and benchmarkQuery into SS_Database
2015-06-17 13:34:21 +12:00
Damian Mooyman
0abacaead6 Merge remote-tracking branch 'origin/3.1' into 3
Conflicts:
	admin/code/LeftAndMain.php
	forms/EmailField.php
	forms/Form.php
	forms/HeaderField.php
	forms/LiteralField.php
	forms/PasswordField.php
	forms/TextareaField.php
	forms/TreeDropdownField.php
	model/DataObject.php
	tests/forms/uploadfield/UploadFieldTest.php
	tests/model/DataObjectTest.php
2015-06-17 11:24:25 +12:00
Daniel Hensby
6169bf2760 FIX No longer caching has_one after ID change 2015-06-16 17:38:34 +01:00
Damian Mooyman
58cc3da8d8 API Revert DataObject::validate to 3.1 method signature (protected) 2015-06-16 11:59:21 +12:00
Damian Mooyman
78a3f703f2 Merge pull request #4178 from dhensby/pulls/cookie-name-normalisation
NEW Cookie names with dots are now handled more gracefully
2015-06-15 11:35:39 +12:00
Daniel Hensby
5c8925f92e Merge pull request #4256 from tractorcow/pulls/3/fix-manymany-falsey-values
BUG Fix false values for many_many_ExtraFields not being saved
2015-06-14 23:32:02 +01:00
Jonathon Menz
838926085c API New and renamed image functions
Renamed image functions with more expressive names. Added CropWidth & CropHeight functions. Added no-upsampling capabilities. Cleaned up Image docs. Closes #4211
2015-06-12 17:02:55 -07:00
Jonathon Menz
24a268a12b FIX Image test cleanup
Ensured files referenced by name in tests are actually used, and fixed added support for Flushable interface in image regeneration. Also ensured getters methods are used for width and height.
2015-06-12 16:43:13 -07:00
Damian Mooyman
513f0191fb API New default behaviour for Director::getAbsoluteUrl 2015-06-12 16:12:38 +12:00
Damian Mooyman
7ff131daa7 BUG Fix default casted (boolean)false evaluating to true in templates 2015-06-12 15:47:15 +12:00
Damian Mooyman
782c4cbf6f API Enable single-column fulltext filter search as fallback 2015-06-12 15:36:03 +12:00
micmania1
40c5b8b675 FIX FulltextFilter did not work and was not usable 2015-06-12 15:31:45 +12:00
Loz Calver
28be51cab0 FIX: Config state leaking between unit tests 2015-06-11 16:37:26 +01:00
Daniel Hensby
3ee5b24898 Nest and unnest Config and Controller for each test and test suite 2015-06-11 16:37:25 +01:00
Daniel Hensby
c062670ba3 Removing unreachable test line 2015-06-09 16:01:33 +01:00
Damian Mooyman
b42ddd107c Merge pull request #3499 from colymba/ie-multi-file-upload-fix
FIX #3458 iframe transport multi file upload FIX #3343, FIX #3148
2015-06-09 13:22:10 +12:00
Damian Mooyman
a8ace75341 API Support for multiple HTMLEditorConfig per page 2015-06-09 12:17:55 +12:00
Damian Mooyman
acf19b72e2 BUG Fix false values for many_many_ExtraFields not being saved
Fixes #4067
2015-06-09 12:05:25 +12:00
Damian Mooyman
786b1dd5d4 Merge remote-tracking branch 'origin/3'
Conflicts:
	control/HTTPRequest.php
	filesystem/Upload.php
	model/ManyManyList.php
2015-06-09 11:10:14 +12:00
Jonathon Menz
223466a8b8 NEW Configurable file version prefix
Numbers are often used at the end of file names in image sequences (e.g. digital photos) and the current renaming scheme can disrupt this, creating a confusing situation for the user. A configurable file version prefix should help prevent this.

Filename   | Old result | New result
-----------|------------|--------------
IMG001.jpg | IMG2.jpg   | IMG001-v2.jpg
2015-06-03 09:24:30 -07:00
Jonathon Menz
44b1ff1931 NEW: Configurable file version prefix
Numbers are often used at the end of file names in image sequences (e.g. digital photos) and the current renaming scheme can disrupt this, creating a confusing situation for the user. A configurable file version prefix should help prevent this, with a default of '-v' proposed for SS4.0.

Filename   | Old result | New result (with '-v' prefix)
-----------|------------|--------------
IMG001.jpg | IMG2.jpg   | IMG001-v2.jpg
2015-06-03 08:55:38 -07:00
Damian Mooyman
51df4df9f1 Fix merge regressions / errors 2015-06-02 20:19:12 +12:00
Damian Mooyman
8331171f2c Merge remote-tracking branch 'origin/3.1' into 3
Conflicts:
	.scrutinizer.yml
	admin/javascript/LeftAndMain.Panel.js
	core/startup/ParameterConfirmationToken.php
	dev/Debug.php
	dev/FixtureBlueprint.php
	docs/en/00_Getting_Started/05_Coding_Conventions.md
	docs/en/00_Getting_Started/index.md
	docs/en/02_Developer_Guides/01_Templates/01_Syntax.md
	filesystem/File.php
	filesystem/Folder.php
	forms/FieldList.php
	forms/LabelField.php
	forms/MoneyField.php
	forms/TextField.php
	forms/TreeDropdownField.php
	forms/Validator.php
	forms/gridfield/GridField.php
	forms/gridfield/GridFieldExportButton.php
	lang/de.yml
	lang/fi.yml
	model/DataObject.php
	model/SQLQuery.php
	parsers/ShortcodeParser.php
	security/ChangePasswordForm.php
	security/Security.php
	tests/control/DirectorTest.php
	tests/core/startup/ParameterConfirmationTokenTest.php
	tests/dev/FixtureBlueprintTest.php
	tests/forms/FieldListTest.php
	tests/forms/MoneyFieldTest.php
	tests/model/SQLQueryTest.php
	tests/security/SecurityTest.php
2015-06-02 19:13:38 +12:00
Ingo Schommer
dac1b5818b Merge pull request #4217 from tractorcow/pulls/3.1/fix-directortest
BUG Fix DirectorTest failing when run with sake
2015-06-01 17:34:26 +12:00
Damian Mooyman
e733efa195 Merge pull request #4206 from gregsmirnov/pulls/localised-moneyfield-fix
BUG Fixed handling of numbers in certain locales
2015-05-29 09:21:43 +12:00
Damian Mooyman
50e33b8e5e Merge remote-tracking branch 'origin/3.1.13' into 3.1 2015-05-28 19:08:12 +12:00
Damian Mooyman
0a8f328947 Fix merge / test regressions 2015-05-28 16:59:05 +12:00
Damian Mooyman
a978b891e1 BUG Fix handling of empty parameter token 2015-05-28 10:13:10 +12:00
Damian Mooyman
79cfa2bb64 Bug fix sqlquery select 2015-05-28 10:11:32 +12:00
Damian Mooyman
922d02f535 API Enable filters to perform 'IS NULL' or 'IS NOT NULL' checks 2015-05-26 12:09:17 +12:00
Loz Calver
68d8df4e04 FIX: DropdownField didn't consider disabled items 2015-05-22 21:14:11 +01:00
Loz Calver
dfb9b76b95 Add validation for GroupedDropdownField (closes #3923) 2015-05-22 20:55:54 +01:00
Gregory Smirnov
94f6a13729 BUG Fixed setting LastEdited for DataObject with class ancestry 2015-05-22 11:32:59 +02:00
Damian Mooyman
e0710ae4e4 BUG Fix DirectorTest failing when run with sake 2015-05-22 14:48:35 +12:00
Gregory Smirnov
f9bdf61b6f BUG Fixed handling of numbers in certain locales 2015-05-20 12:18:34 +01:00
Kamran Vighio
20c9d6f02e Implement validate() method for TextField to validate max length (closes #4073) 2015-05-19 09:36:51 +01:00
Damian Mooyman
cd1eb1b484 Merge remote-tracking branch 'origin/3'
Conflicts:
	admin/tests/CMSFormTest.php
2015-05-19 09:19:47 +12:00
Jonathon Menz
c6bcfea3e3 BUG: FieldList::changeFieldOrder() leftovers discarded
Logical error. Use of + operator means items from second array are only merged if the key does not already appear in the first array. The first array has numeric keys 0,1,2 etc. The second array is keyed by field name, but array_values() resets the keys to be numberic starting at 0. This means that some or all leftovers are discarded instead of appended.
2015-05-17 09:09:35 -07:00
Daniel Hensby
ce5a8f2b41 NEW Cookie names with dots are now handled more gracefully 2015-05-12 10:49:58 +01:00
Damian Mooyman
e8d6f15f28 API Use mysql buffered statements
Avoids the usage of any MySQL Native Driver specific API
2015-05-08 13:23:53 +12:00
Daniel Hensby
e94c2a944e Test to prove having count issue 2015-05-07 21:26:11 +01:00
Loz Calver
a7100e9006 FIX: Object::parse_class_spec failed to parse associative arrays 2015-05-06 18:29:51 +01:00
Loz Calver
23fc498c27 NEW: Allow 'null' limit for database queries (closes #3487) 2015-05-04 22:50:33 +01:00
Loz Calver
1cca37c908 FIX: File::getFileType() was case sensitive (fixes #3631) 2015-05-04 15:10:16 +01:00
Stevie Mayhew
0d94cf15a5 UPDATE: change all instances of $this->request to use appropriate getter/setter 2015-04-30 11:04:08 +12:00
Damian Mooyman
8e24511266 BUG Fix users with all cms section access not able to edit files
Fixes #4078
2015-04-20 18:20:56 +12:00
Damian Mooyman
e91606e494 API Introduce $FromEnd variable for iterators 2015-04-09 17:02:30 +12:00
Ingo Schommer
72a284c9b8 Merge remote-tracking branch 'origin/3'
Conflicts:
	core/Constants.php
	docs/en/05_Contributing/01_Code.md
	tests/model/SQLQueryTest.php
2015-04-09 16:26:16 +12:00
Daniel Hensby
aea3512e61 Merge pull request #4051 from tractorcow/pulls/3/fix-security-returnurl
API Security better respects BackURL on login
2015-03-31 21:44:04 +01:00
Turnerj
ae8dbe309b FEATURE - Added maximum upload file size by type
This support is on both an instance level and a global default level.
2015-03-31 21:57:32 +10:30
Damian Mooyman
95c162ef0d API Security better respects BackURL on login
BUG Restore missing authentication message not appearing in the login form $Content area (regression from #1807)
2015-03-31 20:22:35 +13:00
Damian Mooyman
43f49e8434 Merge remote-tracking branch 'origin/3.1' into 3
Conflicts:
	admin/code/ModelAdmin.php
	control/Director.php
	model/SQLQuery.php
	security/Member.php
	tests/control/HTTPTest.php
	tests/model/SQLQueryTest.php
	tests/security/SecurityTest.php
	tests/view/SSViewerTest.php
2015-03-31 19:54:15 +13:00
Damian Mooyman
7f983c2bae BUG Fix SS-2014-017 2015-03-20 18:27:30 +13:00
Damian Mooyman
80fc55decf Merge branch 'xss-fix' into '3.1'
Xss fix

See merge request !3
2015-03-20 18:19:53 +13:00
Christopher Pitt
604c328712 Fixed XSS vulnerability relating to rewrite_hash 2015-03-20 18:17:51 +13:00
Damian Mooyman
b34c236b3c BUG Fix joins on tables containing "select" being mistaken for sub-selects
Fix PHPDoc on SQLQuery::addFrom and SQLQuery::setFrom
Fixes #3965
2015-03-18 16:10:07 +13:00
Daniel Hensby
de2aa47250 Merge pull request #4006 from kinglozzer/patch-1
FIX: Security::$default_message_set Config value unusable
2015-03-17 17:05:01 +00:00
Loz Calver
a61c08d031 FIX: Security::$default_message_set Config value unusable 2015-03-17 15:51:31 +00:00
Loz Calver
835ee69339 NEW: Only validate DataObject model definitions during a build 2015-03-13 16:16:16 +00:00
Loz Calver
c58f4c469d Replace core uses of DataObject::has_one/has_many/many_many 2015-03-13 16:16:12 +00:00
Loz Calver
7e2a00aa3d Refactor DataObject has_one/has_many/many_many methods 2015-03-13 15:15:23 +00:00
Daniel Hensby
f568052044 Testing empty absolute urls and more thorough tests 2015-03-13 13:56:14 +00:00
Loz Calver
203f77116b Fixes, tests and documentation for multiple many_manys between the same class 2015-03-13 09:27:23 +00:00
Damian Mooyman
319b96b48b Merge remote-tracking branch 'origin/3.1' into 3
Conflicts:
	docs/en/02_Developer_Guides/09_Security/04_Secure_Coding.md
	docs/en/05_Contributing/01_Code.md
	forms/TreeDropdownField.php
	model/DataObject.php
	security/Member.php
	tests/model/DataObjectTest.php
2015-03-11 11:40:06 +13:00
Damian Mooyman
9651889f1b BUG Fix yaml generation to conform to version 1.1, accepted by transifex 2015-03-10 13:44:21 +13:00
Damian Mooyman
622ad54c5b BUG Fix yaml generation to conform to version 1.1, accepted by transifex 2015-03-10 13:42:22 +13:00
Loz Calver
9c70a91f1b Merge pull request #3977 from dhensby/pulls/3566
NEW LimitCharactersToClosestWord helper function
2015-03-09 11:40:58 +00:00
Daniel Hensby
ef818b3b7b Merge pull request #3970 from tractorcow/pulls/3.2/api-zero-pagination
API enable PaginatedList to be disabled by setting page length to 0
2015-03-09 11:28:36 +00:00
Loz Calver
93dca9aabd Merge pull request #3934 from dhensby/pulls/cofig-lru-fix
Change the LRU cache to a simple in-memory model
2015-03-09 09:31:04 +00:00
Simon Welsh
1d135552cf Change the LRU cache to a simple in-memory model
Slight memory increase when there are lots of additions for much better performance in every case.
2015-03-09 02:01:24 +00:00
Damian Mooyman
95efc330e4 Refactor ViewableData::obj caching 2015-03-09 10:32:37 +13:00
Ingo Schommer
1a9c206d15 Merge pull request #3871 from patbolo/3173-folder-treedropdownfield
BUGFIX Use correct query when searching for items managed by a tree drop...
2015-03-08 23:23:03 +13:00
Daniel Hensby
d2a3da2203 Making docs gender agnostic 2015-03-07 12:32:04 +00:00
Anton Smith
dc7bc4673e NEW Text - Limit characters to closest word 2015-03-05 23:12:02 +00:00
Damian Mooyman
9367fd2456 API enable PaginatedList to be disabled by setting page length to 0 2015-03-05 12:07:14 +13:00
Loz Calver
f234301c0a FIX: DataQuery::applyRelation using incorrect foreign key (fixes #3954) 2015-03-02 09:56:47 +00:00
Jean-Fabien Barrois
f9d493dff5 BUGFIX Fixes case insensitive search for postgres databases 2015-03-02 09:55:29 +13:00
Will Rossiter
548f297563 Merge pull request #3890 from dhensby/pulls/testonly
Cleaning up Test DataObjects to ensure TestOnly is implemented
2015-02-28 18:06:53 +13:00
Jean-Fabien Barrois
bbe27999eb BUGFIX Use correct query when searching for items managed by a tree dropdown field #3173 2015-02-27 11:18:27 +13:00
Loz Calver
3a7e24a220 FIX: Unable to access a list of all many_many_extraFields 2015-02-25 10:33:50 +00:00
Damian Mooyman
a86ed93759 Merge remote-tracking branch 'origin/3'
Conflicts:
	docs/en/05_Contributing/01_Code.md
2015-02-20 14:09:38 +13:00
Damian Mooyman
e7619feadb Fix merge errors and regressions 2015-02-20 11:49:47 +13:00
Damian Mooyman
dff65867cc Merge remote-tracking branch 'origin/3.1' into 3
Conflicts:
	control/HTTP.php
	control/HTTPResponse.php
	docs/en/05_Contributing/01_Code.md
	forms/CompositeField.php
	forms/FormAction.php
	forms/FormField.php
	forms/InlineFormAction.php
	forms/NumericField.php
	forms/TreeDropdownField.php
	forms/TreeMultiselectField.php
	templates/forms/TreeDropdownField.ss
	tests/core/CoreTest.php
	tests/forms/NumericFieldTest.php
	tests/model/DataDifferencerTest.php
2015-02-20 10:17:19 +13:00
Sean Harvey
cebc0d08c5 Merge pull request #3894 from tractorcow/pulls/3.1/encoding-fixes
BUG Lots of encoding fixes
2015-02-16 09:18:41 +13:00
Damian Mooyman
1db08bac88 BUG Fix FormAction title encoding
BUG Fix TreeMultiSelectField using the wrong label
BUG Fix encoding of selected title on TreeDropdownField
BUG Fix DataDifferencer trying to compare non-comparable fields (non-dbfield objects)
BUG: Fix issue with TreeMultiSelectField not saving
BUG: Fix issue with GridFieldPrintButton
ENHANCEMENT Instead of using multiple api calls to encode dbfield values, delegate this operation to the individual fields via forTemplate
Instead of using a new API to communicate html encoding to treeselect, just ensure all content is HTML encoded, and enable html_titles in jstree.
2015-02-13 15:50:45 +13:00
Damian Mooyman
518045257e BUG Fixed handling of numbers in certain locales.
Fixes #2161
2015-02-13 10:50:00 +13:00
Daniel Hensby
0ca0bb55b0 Cleaning up Test DataObjects to ensure TestOnly is implemented 2015-02-12 15:22:29 +00:00
JorisDebonnet
047fe3a410 BUG Include php version in default cache folder name
Update CoreTest.php
2015-02-12 17:29:45 +13:00
Ingo Schommer
5f31983ded NEW: updateAttributes hook in FormField 2015-02-08 19:14:31 +13:00
Benjamin R. White
6212b4bd4b FIX: Versioned not ignoring obsolete fields 2015-02-08 18:42:36 +13:00
Will Rossiter
a4d4d0273b Merge pull request #2506 from chillu/pulls/form-validation-exempt
Form validation exempts
2015-02-08 16:58:49 +13:00
Will Morgan
7c9810bf49 Merge pull request #3432 from IgorNadj/3.1-fix-minify
FIX making minify javascript fail-safe
2015-02-06 11:17:59 +00:00
Will Rossiter
abd1e6b856 FIX GridFieldExportButton should honour can method. 2015-02-03 16:21:37 +13:00
Daniel Hensby
5d4c2c4b34 API Adding default_classes to FormField 2015-01-20 13:36:32 +00:00
Daniel Hensby
6d0002780d API Adding default_classes to Form 2015-01-20 13:36:31 +00:00
Loz Calver
77ebdc22fa FIX: DataObject::db returned fields in incorrect order, with incorrect data types
fixes #3802
2015-01-19 20:38:08 +00:00
Damian Mooyman
58cb0af753 Merge remote-tracking branch 'origin/3'
Conflicts:
	composer.json
	docs/en/00_Getting_Started/00_Server_Requirements.md
	docs/en/00_Getting_Started/01_Installation/04_Other_installation_Options/Windows_IIS7.md
	docs/en/00_Getting_Started/01_Installation/04_Other_installation_Options/Windows_Platform_Installer.md
	docs/en/00_Getting_Started/04_Directory_Structure.md
	docs/en/01_Tutorials/01_Building_A_Basic_Site.md
	docs/en/01_Tutorials/02_Extending_A_Basic_Site.md
	docs/en/01_Tutorials/03_Forms.md
	docs/en/01_Tutorials/04_Site_Search.md
	docs/en/01_Tutorials/05_Dataobject_Relationship_Management.md
	docs/en/01_Tutorials/index.md
	docs/en/02_Developer_Guides/00_Model/01_Data_Model_and_ORM.md
	docs/en/02_Developer_Guides/00_Model/11_Scaffolding.md
	docs/en/02_Developer_Guides/01_Templates/06_Themes.md
	docs/en/02_Developer_Guides/03_Forms/How_Tos/Simple_Contact_Form.md
	docs/en/02_Developer_Guides/05_Extending/05_Injector.md
	docs/en/02_Developer_Guides/14_Files/index.md
	docs/en/02_Developer_Guides/15_Customising_the_Admin_Interface/03_CMS_Layout.md
	docs/en/02_Developer_Guides/15_Customising_the_Admin_Interface/06_Javascript_Development.md
	docs/en/02_Developer_Guides/15_Customising_the_Admin_Interface/How_Tos/Customise_CMS_Tree.md
	docs/en/02_Developer_Guides/15_Customising_the_Admin_Interface/How_Tos/Customise_Site_Reports.md
	docs/en/02_Developer_Guides/18_Cookies_And_Sessions/01_Cookies.md
	docs/en/04_Changelogs/3.1.9.md
	docs/en/05_Contributing/00_Issues_and_Bugs.md
	docs/en/05_Contributing/02_Release_Process.md
	docs/en/05_Contributing/03_Documentation.md
2015-01-16 10:08:40 +13:00
Damian Mooyman
88fdc75456 Merge remote-tracking branch 'composer/3.1' into 3
Conflicts:
	.editorconfig
	docs/en/00_Getting_Started/00_Server_Requirements.md
	docs/en/00_Getting_Started/01_Installation/04_Other_installation_Options/Windows_IIS7.md
	docs/en/00_Getting_Started/01_Installation/04_Other_installation_Options/Windows_Platform_Installer.md
	docs/en/00_Getting_Started/04_Directory_Structure.md
	docs/en/00_Getting_Started/index.md
	docs/en/01_Tutorials/01_Building_A_Basic_Site.md
	docs/en/01_Tutorials/02_Extending_A_Basic_Site.md
	docs/en/01_Tutorials/03_Forms.md
	docs/en/01_Tutorials/04_Site_Search.md
	docs/en/01_Tutorials/05_Dataobject_Relationship_Management.md
	docs/en/01_Tutorials/index.md
	docs/en/02_Developer_Guides/00_Model/01_Data_Model_and_ORM.md
	docs/en/02_Developer_Guides/00_Model/11_Scaffolding.md
	docs/en/02_Developer_Guides/01_Templates/06_Themes.md
	docs/en/02_Developer_Guides/03_Forms/How_Tos/Simple_Contact_Form.md
	docs/en/02_Developer_Guides/05_Extending/05_Injector.md
	docs/en/02_Developer_Guides/09_Security/04_Secure_Coding.md
	docs/en/02_Developer_Guides/10_Email/index.md
	docs/en/02_Developer_Guides/11_Integration/01_RestfulService.md
	docs/en/02_Developer_Guides/12_Search/01_Searchcontext.md
	docs/en/02_Developer_Guides/14_Files/index.md
	docs/en/02_Developer_Guides/15_Customising_the_Admin_Interface/03_CMS_Layout.md
	docs/en/02_Developer_Guides/15_Customising_the_Admin_Interface/06_Javascript_Development.md
	docs/en/02_Developer_Guides/15_Customising_the_Admin_Interface/How_Tos/Customise_CMS_Tree.md
	docs/en/02_Developer_Guides/15_Customising_the_Admin_Interface/How_Tos/Customise_Site_Reports.md
	docs/en/02_Developer_Guides/18_Cookies_And_Sessions/01_Cookies.md
	docs/en/04_Changelogs/3.1.9.md
	docs/en/05_Contributing/00_Issues_and_Bugs.md
	docs/en/05_Contributing/02_Release_Process.md
	docs/en/05_Contributing/03_Documentation.md
	filesystem/File.php
	filesystem/GD.php
	model/DataDifferencer.php
	model/Versioned.php
	security/BasicAuth.php
	security/Member.php
	tests/filesystem/FileTest.php
	tests/forms/uploadfield/UploadFieldTest.php
	tests/model/VersionedTest.php
	tests/security/BasicAuthTest.php
2015-01-15 18:52:46 +13:00
Will Rossiter
220bdf342c Merge pull request #3577 from tractorcow/pulls/3.1/fix-basicauth-resetlogin
BUG Fix BasicAuth not resetting failed login counts on authentication
2015-01-15 11:03:52 +13:00
Damian Mooyman
7816875e92 Fix file and uploadfield permissions 2015-01-12 10:56:25 +13:00
Ingo Schommer
c705c547fd Behat: Ignore native dropdowns if they're not visible
The CmsUiContext->theIFillInTheDropdownWith() method was written
primarily for TreeDropdownField, which don't have a select tag (only an input tag).
The method currently fails for CMS dropdowns (Dropdown form field class),
since they have a hidden select tag.

I've checked through core feature files and confirmed that every use
of the method relates to TreeDropdownField, which is why this bug hasn't ocurred earlier.
2015-01-06 10:19:17 +13:00
Damian Mooyman
19549d620f Moved deprecation of SQLQuery to 4.0 2014-12-04 09:30:50 +13:00
Damian Mooyman
1f4f5e68ba BUG Fix versioned
Versioned is not writing Version to _version tables for subclasses of Version dataobjects which have their own DB fields
- Fix disjoint of ID / RecordID (which should be the same)
- Fix calculation of new record version
- Fix use of empty vs !isset to check for existing version

Conflicts:
	model/Versioned.php
	tests/model/VersionedTest.php

Cherry picked from commit c140459ac6
2014-12-02 22:30:59 +02:00
Ingo Schommer
5d1c355cad Form action validation excempts
Thanks to @kinglozzer for doing the majority of work on this. See #2493.
2014-11-26 22:49:37 +13:00
Igor Nadj
77e30d4524 Cleanup, removing redundant returns 2014-11-26 15:31:07 +13:00
Igor Nadj
657606e8c8 Updating code to allow unit test to use try-catch block to catch warning
without stopping code execution inside try
2014-11-26 15:27:54 +13:00
Damian Mooyman
6baf63e18c Merge remote-tracking branch 'origin/3.1'
Conflicts:
	dev/install/install.php5
	docs/en/changelogs/index.md
	security/Security.php
2014-11-19 11:16:46 +13:00
Damian Mooyman
ce93a8a98e Resolve merge regressions 2014-11-19 11:05:07 +13:00
Damian Mooyman
2bdfd65e9b BUG Security::findAnAdministrator doesn't always find an admin 2014-11-18 15:36:34 +13:00
Damian Mooyman
0b1f297873 Merge remote-tracking branch 'origin/3.1'
Conflicts:
	.travis.yml
	README.md
	admin/code/LeftAndMain.php
	admin/css/screen.css
	admin/scss/screen.scss
	api/RestfulService.php
	conf/ConfigureFromEnv.php
	control/injector/ServiceConfigurationLocator.php
	control/injector/SilverStripeServiceConfigurationLocator.php
	core/ClassInfo.php
	core/Object.php
	css/AssetUploadField.css
	css/ComplexTableField_popup.css
	dev/CSSContentParser.php
	dev/DevelopmentAdmin.php
	docs/en/changelogs/index.md
	docs/en/misc/contributing/code.md
	docs/en/reference/execution-pipeline.md
	filesystem/GD.php
	filesystem/ImagickBackend.php
	filesystem/Upload.php
	forms/Form.php
	forms/FormField.php
	forms/HtmlEditorConfig.php
	forms/gridfield/GridFieldDetailForm.php
	forms/gridfield/GridFieldSortableHeader.php
	lang/en.yml
	model/Aggregate.php
	model/DataList.php
	model/DataObject.php
	model/DataQuery.php
	model/Image.php
	model/MySQLDatabase.php
	model/SQLQuery.php
	model/fieldtypes/HTMLText.php
	model/fieldtypes/Text.php
	scss/AssetUploadField.scss
	search/filters/SearchFilter.php
	security/Authenticator.php
	security/LoginForm.php
	security/Member.php
	security/MemberAuthenticator.php
	security/MemberLoginForm.php
	security/Security.php
	tests/behat/features/bootstrap/SilverStripe/Framework/Test/Behaviour/CmsFormsContext.php
	tests/control/HTTPTest.php
	tests/control/RequestHandlingTest.php
	tests/filesystem/UploadTest.php
	tests/forms/FormTest.php
	tests/forms/NumericFieldTest.php
	tests/model/DataListTest.php
	tests/model/DataObjectTest.php
	tests/model/TextTest.php
	tests/security/MemberAuthenticatorTest.php
	tests/security/SecurityDefaultAdminTest.php
	tests/view/SSViewerCacheBlockTest.php
	tests/view/SSViewerTest.php
2014-11-18 12:45:54 +13:00
Stevie Mayhew
41ea83b337 FEATURE: add validation to form field subclasses 2014-11-17 08:17:38 +13:00
Damian Mooyman
7f2161d7a0 Merge pull request #3599 from kinglozzer/numericfield-whitespace
Fix whitespace issues in NumericField/NumericFieldTest
2014-11-14 10:31:21 +13:00
Sam Minnée
71c354d768 Merge pull request #3623 from kinglozzer/pulls/dataobject-db-inheritance
FIX: DataObject::db() doesn't respect overloaded db types (fixes #3620)
2014-11-12 13:41:03 +13:00
Loz Calver
85b4ba15fc FIX: DataObject::db() doesn't respect overloaded db types (fixes #3620) 2014-11-11 10:41:54 +00:00
g4b0
239ed66eaf Bugfix: fixed inheritance breaks filtering if relations are included (issue #3610) 2014-11-11 10:04:41 +01:00
Loz Calver
76b833dfbb Fix whitespace issues in NumericField/NumericFieldTest 2014-11-03 09:13:54 +00:00
muskie9
082c49c1b5 Bugfix NumericField shows (none) for 0 on readonly 2014-11-02 20:57:20 -06:00
Stephen McMahon
20af30ed98 FIX GridFieldExportButton exporting only Paginated list when using ArrayList as source 2014-10-27 11:03:00 +11:00
Loz Calver
a77ca1995a Merge pull request #3521 from halkyon/bigsummary_plain_fix
BUG Text::BigSummary() fails with undefined $data when $plain = false
2014-10-25 23:30:36 +01:00
Loz Calver
2176a6dea8 Merge pull request #3576 from tractorcow/pulls/3.1/upload-attach
BUG File attach handler is no longer accessible if attachment is disallowed or disabled
2014-10-25 23:12:03 +01:00
Damian Mooyman
0a04e2e77b Merge pull request #3484 from dnadesign/object_has_extension_fix
fixed and tested object has_extension
2014-10-24 17:20:00 +13:00
John Milmine
62658a6cca fixed and tested object has_extension 2014-10-24 16:58:50 +13:00
Damian Mooyman
9d78eb7fe6 BUG Fix BasicAuth not resetting failed login counts on authentication 2014-10-24 14:19:12 +13:00
Damian Mooyman
5d27ea4be1 BUG File attach handler is no longer accessible if attachment is disallowed or disabled 2014-10-24 11:31:33 +13:00
Devlin
478edfa0c6 BUG Upload: File versioning with existing files
reinsert oldFilePath = relativeFilePath in while loop
2014-10-22 08:48:55 +13:00
Damian Mooyman
49cb38dfc1 BUG Fix static call to protected instance method 2014-10-20 17:04:25 +13:00
Sam Minnée
3d9fa205fe Merge pull request #3547 from kinglozzer/pulls/3546-apply-relation
Fix DataQuery::applyRelation for multiple relations of the same class (fixes #3546)
2014-10-15 18:00:19 +13:00
Damian Mooyman
53c40a94fa API Enable re-authentication within the CMS if a user session is lost
BUG Resolve issue with error redirection being ignored within CMS
BUG Fix issue with invalid securityID being re-emitted on failure
2014-10-14 15:19:48 +13:00
Damian Mooyman
793784e9d7 BUG Fix flushing of SSViewer cache via testing 2014-10-14 09:47:05 +13:00
Loz Calver
c52e94e98e Fix DataQuery::applyRelation for multiple relations of the same class (fixes #3546) 2014-10-13 19:46:37 +01:00
Loz Calver
97170dd42d Better tests for SSViewer::flush & Flushable 2014-10-13 09:44:14 +01:00
Sean Harvey
f86b0bbca0 Merge pull request #3459 from jdemeschew/3356-fix-js-not-properly-included
Fix #3356 js not properly included
2014-10-13 16:41:37 +13:00
Loz Calver
48eb0e67e6 FIX: Deliberately clear partial cache blocks on flush (fixes #1383)
Move property to top of class definition

Move property to top of class definition
2014-10-09 21:44:01 +01:00
Damian Mooyman
1e612607aa Suggested improvements / test case fixes 2014-10-10 09:28:11 +13:00
Daniel Hensby
3b9056fc01 NEW Cookie_Backend for managing cookie state
I've decoupled `Cookie` from the actual act of setting and getting
cookies. Currently there are a few limitations to how Cookie works that
this change mitigates:

0. `Cookie` currently changes the super global `$_COOKIE` when setting
to make the state of an application a bit more managable, but this is
bad because we shouldn't be modifying super globals
0. One can't actually change the `$cookie_class` once the
`Cookie::$inst` has been instantiated
0. One can't test cookies as there is no class that holds the state of
the cookies (it's just held in the super global which is reset as part
of `Director::test()`
0. One can't tell the origin of a cookie (eg: did the application set it
and it needs to be sent, or did we receive it from the browser?)
0. `time()` was used, so testing was made difficult
0. There was no way to get all the cookies at once (without accessing
the super global)

Todos are on the phpdoc and I'd like to write some tests for the backend
as well as update the docs (if there are any) around cookies.
DOCS Adding `Cookie` docs

Explains basic usage of `Cookie` as well as how the `Cookie_Backend`
controls the setting and getting of cookies and manages state of sent vs
received cookies
Fixing `Cookie` usage

`Cookie` is being used inconsistently with the API throughout framework.
Either by not using `force_expiry` to expire cookies or setting them to
null and then expiring them (which is redundant).
NEW `Director::test()` takes `Cookie_Backend` rather than `array` for `$cookies` param
2014-10-06 17:44:51 +13:00
Sean Harvey
776f6976c9 BUG Text::BigSummary() fails with undefined $data when $plain = false 2014-10-01 16:02:28 +13:00
Thierry François
bbc1cb8270 FIX #3458 iframe transport multi file upload FIX #3343, FIX #3148
UploadField now handles multiple file upload through iframe transport
correctly (mainly for IE) as well as upload errors on a per file basis.
2014-09-26 10:48:41 +03:00
Sean Harvey
c57c24eb81 Merge pull request #3464 from InfinityIo/rewrite_hash_links-SSTemplateParser-fix
Fix over-eager rewrite_hash_links regexp in SSTemplateParser
2014-09-26 18:14:08 +12:00
Nik
5258b84e5c Updated SSViewerTest to test for SSTemplateParser rewrite_hash_links fix 2014-09-26 17:41:27 +12:00
Damian Mooyman
db0cad4616 BUG ErrorControlChain now supports exception handling 2014-09-26 16:54:34 +12:00
torleif
75ec0c4791 Added tests that check comparisonClause()
AS requested by tractorcow: https://github.com/silverstripe/silverstripe-postgresql/pull/26

Tested on MySQL (succeeds as expected)  Tested on PostgreSQL (and fails as expected, but passes with patch). The fixes test only DataQueryTest related items for consistency, e.g. by avoiding DataObject calls.
2014-09-26 12:11:33 +12:00
Sean Harvey
e3056ed831 Merge pull request #3486 from jeffreyguo/pulls/html-field
Updated html field to support quotes
2014-09-26 11:16:42 +12:00
Sean Harvey
f7af0d8955 Merge pull request #3398 from dnadesign/fixsortableheader
API: Add ClassInfo::table_for_object_field to return the table name for ...
2014-09-26 11:14:33 +12:00
Will Rossiter
920978df99 API: Add ClassInfo::table_for_object_field
Returns the table name for a field in a class hierarchy.

This issue raised itself with GridFieldSortableHeader not supporting sorting on fields from parent class fields.
2014-09-26 10:38:31 +12:00
Sean Harvey
99f8fb29b5 Merge pull request #3507 from tractorcow/pulls/fix-mailer
API / FIX / Cleanup - Mailer and Convert::html2raw
2014-09-26 10:15:18 +12:00
Gabrijel Gavranović
cf456d6625 FIX use @param $colName in column call 2014-09-26 09:18:29 +12:00
Damian Mooyman
bf4e9eb044 API Singleton method allowing type inference
This pattern improves over the current usage of singleton by allowing type inference.
This also better supports refactor, code usage detection, and auto-completion of classes.
2014-09-26 09:10:25 +12:00
Sean Harvey
ee717c7f66 Merge pull request #3287 from IgorNadj/3.1
ENH making /dev extendable
2014-09-25 18:34:21 +12:00
Sean Harvey
04e26d4a36 Merge pull request #3025 from tractorcow/pulls/3.2-date-relevance
API DateTime.Ago better infers significance of date units.
2014-09-25 18:28:30 +12:00
Sean Harvey
409aebf0af Merge pull request #2515 from guttmann/html-text-absolutelink-placeholders
HTMLText AbsoluteLink parse placeholders
2014-09-25 16:07:41 +12:00
Damian Mooyman
e47800917a API Mailer can be configured to use different encoding mechanisms, and added support for unicode quoted-string encoding
API Mailer bounce email can now be configured
API Mailer no longer calls Convert::xml2raw on all email subjects
API Deprecate dead Mailer code and refactored duplicate or mis-documented code.
2014-09-25 16:04:56 +12:00
Damian Mooyman
29e3347562 API Convert::html2raw no longer wraps text automatically
BUG Convert::html2raw now correctly decodes single quotes
2014-09-25 16:04:48 +12:00
Sean Harvey
bbd4e8b8c1 Merge pull request #3462 from tractorcow/pulls/3.2/fix-versioned
BUG Fix versioned failing to generate new versions
2014-09-24 18:03:40 +12:00
Sean Harvey
6d12cf372e Merge pull request #2921 from JayDevlin/2904-upload-file-versioning
BUG Upload: file versioning uses illegal underscore in filename
2014-09-24 15:59:53 +12:00
Sean Harvey
4ae0d90c55 Merge pull request #2946 from tractorcow/pulls/3.1-fix-injector-inheritance-bug
BUG Fix issue with inheritance of Injector service configuration
2014-09-24 15:52:00 +12:00
Ingo Schommer
fb8b22c292 Merge pull request #3402 from halkyon/plural_fix
BUG Fixing plural_name messing up singular words ending in "e" (#3251)
2014-09-18 21:56:56 +12:00
Damian Mooyman
062ad8e685 API Allow parameterised joins / subselects 2014-09-16 17:54:30 +12:00
Jeffrey Guo
1f5f2a1798 Updated html field to support quotes 2014-09-12 15:09:12 +12:00
Juri Demeschew
3eabd7d41a Fix #3356 js not properly included 2014-09-09 06:59:31 +02:00
Sean Harvey
151b7e9876 Adding ability to change query distinct on DataList and DataQuery 2014-09-04 13:51:43 +12:00
Damian Mooyman
c140459ac6 BUG Fix versioned
Versioned is not writing Version to _version tables for subclasses of Version dataobjects which have their own DB fields
- Fix disjoint of ID / RecordID (which should be the same)
- Fix calculation of new record version
- Fix use of empty vs !isset to check for existing version
2014-09-02 09:14:08 +12:00
Nightjar
e4b563e596 Fixing the failure of some tests if the framework dir is named something other than 'framework' (which is a legitimate option) 2014-09-01 13:53:06 +01:00
Will Rossiter
7993875f16 FIX: Sorting a DataQuery over a relation.
When sorting a DataQuery over a relation, the SQLQuery automatically included the sort column. The issue with the implement is that potentially the joined record has a field with the same name as the source record causing it to be overridden.

In the attached test case, without the patch the title will be set to 'Bar' rather than 'Foo'.

This patch aliases the sort column. Alternativally a patch would be to
2014-08-26 17:41:38 +12:00
Igor Nadj
f823831a63 FIX making minify javascript fail-safe 2014-08-25 11:49:38 +12:00
Damian Mooyman
96d0874953 BUG Fix issue with inheritance of Injector service configuration 2014-08-25 10:23:01 +12:00
Damian Mooyman
5b553616dc API DateTime.Ago better infers significance of date units.
BUG Fixes missing i18n translation in Date::TimeDiffIn
BUG Fixes Date::TimeDiffIn not respecting mocked SS_Datetime::now
This provides less vague date periods. I.e. "36 days" has a lot more relevance that "1 month"
Reduced duplication of time period calculation code
(ref: CWPBUG-141)
2014-08-25 10:04:24 +12:00
Sean Harvey
0e07f1a7f5 Merge remote-tracking branch 'origin/3.0' into 3.1 2014-08-22 17:50:36 +12:00
Ingo Schommer
1661213e5b FIX Opt-out pf form message escaping (fixes #2796)
This fixes a limitation introduced through http://www.silverstripe.org/ss-2013-008-xss-in-numericfield-validation/.
Form messages used to accept HTML, now they’re escaped by default, effectively removing the ability
to pass in HTML and take care of escaping manually.

We pass through HTML to message in core through the CTF system, so this needs to be fixed.
It’s an alternative fix to https://github.com/silverstripe/silverstripe-framework/pull/2803.
2014-08-22 16:59:34 +12:00
Sean Harvey
8063b349c8 BUG Fixing Director::test() failing on BASE_URL prefixed URLs
Example: you have a site in a sub-directory off the webroot, you call
->Link() on a SiteTree record, which returns "/[sitedir]/my-page", and
you pass this URL to Director::test(). It's a valid URL, but
Director::test() will throw a 404.

Director::test() should be ensuring that all URLs passed to it are
properly made relative, not just in the case where it thinks the URL
is absolute.
2014-08-22 15:21:53 +12:00
Damian Mooyman
aec8430395 Merge pull request #3393 from halkyon/flushable
NEW Provide a consistent way of triggering flush
2014-08-22 10:28:26 +12:00
Sean Harvey
2b316e79e5 NEW Provide a consistent way of triggering flush
Provides an interface for classes to implement their own flush()
functionality. This function gets called early in a request on
all implementations of Flushable when flush=1|all is requested in the
URL.

This fix came out of an issue where Requirements combined files were not
being cleaned up after dev/build?flush=1, due to the fact that flush
would only occur when you called it while on a page that used those
combined files, but not in any other contexts. This will now call flush
on any implementors of Flushable regardless of the context of where
flush was called.
2014-08-22 09:24:27 +12:00
Sean Harvey
61c6dee057 BUG Fixing plural_name messing up singular words ending in "e" (#3251)
This would ideally be fixed with the ability to use an external library
like gettext, but that's an API change. This for now fixes the issue
where a singular like "Page" returns "Pags" for the plural name.
2014-08-20 14:55:40 +12:00
Devlin
4178f7beb0 test all generate methods and formatted image deletetions 2014-08-19 10:12:47 +02:00
Damian Mooyman
eb069e605d Remove all redundant whitespace 2014-08-19 09:17:15 +12:00
Sean Harvey
404478b07f Removing @deprecated 3.1 functionality and classes.
Changelog has been updated to include what was removed in terms of
major functionality, and what to use as a replacement.
2014-08-18 16:00:13 +12:00
Sean Harvey
5f1552b365 BUG Custom label set in summary_fields config gets overridden 2014-08-14 14:19:41 +12:00
Mateusz Uzdowski
8bf3853887 Merge remote-tracking branch 'origin/3.1'
Conflicts:
	docs/en/misc/contributing/issues.md
	docs/en/reference/uploadfield.md
	forms/HtmlEditorField.php
	i18n/i18n.php
	javascript/HtmlEditorField.js
	model/DB.php
	model/Image.php
	model/SQLQuery.php
2014-08-14 09:08:26 +12:00
John Milmine
0a36951ab1 adding exclamation mark and question mark to delimiters, made text work the same as HTML Text 2014-08-07 21:01:23 +10:00
Igor Nadj
b3d52de531 ENH making /dev extendable 2014-08-06 16:29:52 +12:00
Marcus Nyeholt
b273f3b524 API Updated aspect proxy service
- Updated AspectProxyService to handle multiple handlers for each proxied
  object's methods.
- Changed BeforeCallAspect to allow for providing a return value that
  should be returned to the caller instead of the proxied return value
- Changed AfterCallAspect behaviour to allow for returning the value of
  the aspect to the caller instead of the proxied return value
2014-08-06 13:48:26 +10:00
Sean Harvey
1759d5d017 API Use "number" HTML5 type for NumericField by default 2014-08-04 14:27:35 +12:00
Damian Mooyman
2c24d51c0b Revert #3358 2014-08-04 12:13:19 +12:00
Sean Harvey
b2dac644a0 BUG Fixed escaping of name/value in options of form fields
DropdownField was currently escaping options, but CheckboxSetField and
OptionsetField were not. This fixes them to be consistent.
2014-08-04 09:55:35 +12:00
Damian Mooyman
a89dbd29e1 Revert #3345 #3323 2014-07-31 17:05:57 +12:00
Daniel Hensby
04e5c11ed9 TEST Empty absolute urls - tests for #3323 2014-07-30 23:22:37 +01:00
Jeffrey Guo
5519a026e8 expand a tree node and check a CMS tab 2014-07-30 17:17:08 +12:00
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
Damian Mooyman
0433ba1642 BUG Revert some changes to ManyManyList
BUG Fix incompatibility in Member_GroupList
Fix regressions in merges from 3.1
BUG Fix Security failing on test classes
BUG Fix postgresql compatibility
Clarify sql encoding of table names
2014-07-23 12:38:41 +12:00
Senorgeno
df6a8b6fb6 BUG #3282: Added ability to subselect with in left or inner join 2014-07-17 13:27:28 +12:00
Simon Welsh
c14d58f585 Merge branch '3.1'
Conflicts:
	.travis.yml
	model/ManyManyList.php
	model/fieldtypes/DBField.php
2014-07-16 21:24:02 +10:00
Loz Calver
791ee7171b API: Prevent large images from repeatedly crashing PHP on resize 2014-07-16 09:18:51 +01:00
Damian Mooyman
d8e9af8af8 API New Database abstraction layer. Ticket #7429
Database abstraction broken up into controller, connector, query builder, and schema manager, each independently configurable via YAML / Injector
Creation of new DBQueryGenerator for database specific generation of SQL
Support for parameterised queries, move of code base to use these over escaped conditions
Refactor of SQLQuery into separate query classes for each of INSERT UPDATE DELETE and SELECT
Support for PDO
Installation process upgraded to use new ORM
SS_DatabaseException created to handle database errors, maintaining details of raw sql and parameter details for user code designed interested in that data.
Renamed DB static methods to conform correctly to naming conventions (e.g. DB::getConn -> DB::get_conn)
3.2 upgrade docs
Performance Optimisation and simplification of code to use more concise API
API Ability for database adapters to register extensions to ConfigureFromEnv.php
2014-07-09 18:04:05 +12:00
Damian Mooyman
c26df0b3c6 Revert "BUG Config::merge_array_low_into_high() ignores falsey values" 2014-07-09 09:57:25 +12:00
Sean Harvey
16e546300f BUG Config::merge_array_low_into_high() ignores falsey values
Specific case: LeftAndMain::$session_keepalive_ping = true cannot be
set to false in config.yml for some cases because the value is ignored
when merge_array_low_into_high() is processing the config arrays.
2014-07-08 15:18:26 +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
Damian Mooyman
c30111eee3 Better encoding of javascript
Fixes #2988
2014-07-07 09:01:53 +12:00
Stevie Mayhew
1d86fe4f52 FEATURE allow force resampling on images 2014-07-05 14:29:01 +12:00
Damian Mooyman
d3c7e41419 BUG using isDev or isTest query string no longer triggers basic auth 2014-07-02 11:51:51 +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
Damian Mooyman
6ff1d3ccbc Merge pull request #3225 from halkyon/log_constants
Adding some more commonly used SS_Log priority constants.
2014-06-23 13:15:45 +12:00
Sean Harvey
9c2ddd4850 Adding some more commonly used SS_Log priority constants. 2014-06-23 11:50:05 +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
ef03dfdd5b Merge remote-tracking branch 'origin/3.1' 2014-06-17 18:17:24 +12:00
Damian Mooyman
11cc27f700 Merge pull request #2967 from halkyon/formfield_readonly
Fixing FormField not setting readonly attribute on setReadonly(true)
2014-06-17 14:48:56 +12:00
Sean Harvey
b4bfb75a0d Merge pull request #3207 from chillu/pulls/behat-gridfield
Moved table-related feature steps to behat extension
2014-06-17 13:43:33 +12:00
Loz Calver
3d71a22a98 FIX: ClassManifest errors if files contain duplicate class names (fixes #3210) 2014-06-16 22:18:18 +01:00
Ingo Schommer
bb03f6ba2f Merge remote-tracking branch 'origin/3.1'
Conflicts:
	forms/HtmlEditorField.php
2014-06-15 22:50:20 +12:00
Ingo Schommer
415ba11356 Merge pull request #3175 from tractorcow/pulls/3.1/mink-update
Update for Mink 1.6 compatibility (DO NOT MERGE)
2014-06-13 16:34:22 +12:00
Ingo Schommer
a433fa2ec4 Moved table-related feature steps to behat extension
Reused for tables other than GridField.
See https://github.com/silverstripe-labs/silverstripe-behat-extension/pull/51
2014-06-13 15:10:16 +12:00
Damian Mooyman
d516063db7 BUG fix dependency injection stumbling over ViewableData's __isset 2014-06-12 10:08:59 +12:00
Damian Mooyman
4c5de82625 Versioned no longer sets redundant session data 2014-06-11 16:42:22 +12:00
Damian Mooyman
4fdfff8a23 Update for Mink 1.6 compatibility 2014-05-30 15:46:54 +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
Simon Welsh
b020cabc1a Merge pull request #3138 from tractorcow/pulls/3.1/fix-arraylist-sorting
BUG ArrayList failing to respect the SS_Sortable interface
2014-05-24 11:05:25 +10:00
Ingo Schommer
ec325a3c7f API Fix HTTPS proxy header detection
Didn't use the de facto standard HTTP_X_FORWARDED_PROTO or the less standard HTTP_FRONT_END_HTTPS.
Removed the 'X-Forwarded-Proto', since PHP should prefix/underscore all HTTP headers before it hits $_SERVER.

References:
- https://docs.djangoproject.com/en/1.4/ref/settings/#secure-proxy-ssl-header
- https://drupal.org/node/1859252
- https://drupal.org/node/313145
- http://scottwb.com/blog/2013/02/06/always-on-https-with-rails-behind-an-elb/
2014-05-22 18:34:15 +12:00
Devlin
5f7ebd3c23 API UploadField: move replaceFile to the front end config 2014-05-21 12:03:26 +02: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
Damian Mooyman
ec578e5c8a Merge remote-tracking branch 'origin/3.1' 2014-05-12 11:32:22 +12:00
Damian Mooyman
51c3346b46 BUG Fix deprecated use of statics in test cases 2014-05-12 08:44:11 +12:00
Ingo Schommer
a05d8113af Merge pull request #3103 from simonwelsh/configstatic_nextstring
Adds to nextString() method to ConfigStaticManifest
2014-05-09 16:08:19 +12:00
Daniel Hensby
7617f08ad3 Use Controller::join_links() in RestfulService
At the moment, `RestfulService` duplicates functionality of
`Controller::join_links` (badly) and it means that one MUST use a base
URL with a trailing slash for the URL to be constructed properly

Plus tests for `RestfulService::getAbsoluteRequestURL()`

API Deprecating `RestfulService::constructURL()`

This function isn't used in core so we should remove it
2014-05-08 08:59:57 +01:00
Ingo Schommer
6d3f7887a6 Merge pull request #3018 from willmorgan/patch-3
FIX change action variable source to getViewer
2014-05-07 08:38:33 +12:00
Simon Welsh
3602ce2db8 Adds to nextString() method to ConfigStaticManifest
This is used to get the classname out of the tokens, rather than assuming that
the class name is a single T_STRING.
2014-05-06 15:35:37 +10:00
Hamish Friedlander
50e1ed2f72 Merge pull request #3101 from tractorcow/pulls/3.1-fileexists-checking
BUG Better checking of existing files
2014-05-06 15:32:06 +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
df28ccb59f BUG Better checking of existing files
[ref: CWPBUG-158]
2014-05-06 14:06:16 +12:00
Damian Mooyman
a3c8a594ca BUG Fix data query not always joining necessary tables
Fixes #2846
2014-05-06 12:22:46 +12:00
Hamish Friedlander
bbd7bba11f Merge pull request #3058 from tractorcow/pulls/injector-stack-tests
API Injector supports nesting
2014-05-06 11:35:32 +12:00
Damian Mooyman
e9c3ff933f Merge remote-tracking branch 'origin/3.1'
Conflicts:
	.travis.yml
	composer.json
2014-05-06 10:22:09 +12:00
Hamish Friedlander
ad27cd5ec9 FIX Folder Title not being exactly the same as Name field
Backport to 3.0 of PR #3086
2014-05-05 14:39:45 +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
Hamish Friedlander
8e841cc471 FIX folder Title not being exactly the same as Name field if setName modified the value 2014-05-02 14:41:10 +12:00
Ingo Schommer
ff42ad268e Merge pull request #3077 from tractorcow/pulls/fix-imagetest
BUG Fix ImageTest
2014-04-29 21:34:04 +12:00
Mateusz U
2c9f99c1f0 Merge pull request #3031 from tractorcow/pulls/3.1-fix-tree-duplication
BUG Fix jstree when duplicating subtrees
2014-04-29 16:19:00 +12:00
Damian Mooyman
0b4f62dfd8 BUG Fix jstree when duplicating subtrees 2014-04-29 16:00:07 +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
2e73dcb891 API Remove swf,html,htm,xhtml,xml as default allowed upload able file types 2014-04-29 11:09:30 +12:00
Damian Mooyman
d06d5c113b API Injector supports nesting
BUG Resolve issue with DirectorTest breaking RequestProcessor
Injector::nest and Injector::unnest are introduced to better support sandboxing of testings.
Injector and Config ::nest and ::unnest support chaining
Test cases for both Injector::nest and Config::nest
2014-04-29 08:59:33 +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
Stephan Bauer
81210bb6fe Enhanced DBTest to respect SS_DATABASE_PREFIX if set 2014-04-24 23:32:23 +02:00
Damian Mooyman
1dcaf36c9b Fix merge regressions 2014-04-22 13:28:44 +12:00
Damian Mooyman
982ad569b9 Merge remote-tracking branch 'origin/3.1' 2014-04-22 12:09:51 +12:00
Hamish Friedlander
f2c4a629a7 FIX: ConfirmedPasswordField used to expose existing hash 2014-04-17 11:57:57 +12:00
Will Morgan
c6797f52ea Test nested controller actions and Controller->getViewer
Adds tests and supporting classes for testing that the correct action is passed to Controller->getViewer inside Controller->handleRequest.
2014-04-16 13:34:09 +01:00
Damian Mooyman
3620d01998 Merge pull request #3004 from stecman/delete-resampled-after-image-upload
Delete formatted images after image upload
2014-04-16 08:10:37 +12:00
Damian Mooyman
997077ae83 API Security.remember_username to disable login form autocompletion 2014-04-11 09:05:25 +12:00
Damian Mooyman
d8836fd488 Merge remote-tracking branch 'origin/3.0' into 3.1 2014-04-08 17:10:07 +12:00
Stephen Holdaway
3be01968ec Delete formatted images after image upload
This change fixes an issue where old/existing formatted images are used
when a filename is reused (by overwrite or by coincidence), regardless
of if the file contents have changed. To users this mainly manifests
as a file overwrite appearing not to work; the thumbnails in the CMS
show the original image until regeneration is forced.

Calling Image::deleteFormattedImages() after image upload ensures that
no stagnant formatted images will be used.
2014-04-08 14:33:44 +12:00
Damian Mooyman
15c6b67c29 Docs / Tests for Director::absoluteURL 2014-04-08 09:16:48 +12:00
Damian Mooyman
4c69d42bd2 Merge remote-tracking branch 'origin/3.1' 2014-04-02 17:23:39 +13: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
Mateusz Uzdowski
38609c0762 Add Behat behaviours to click links and submit forms in preview. 2014-04-01 11:04:42 +13:00
Simon Welsh
1d5706f15c Correct line length and indentation 2014-03-30 21:11:56 +13:00
Simon Welsh
e07b14f5bc Correct line length and endings 2014-03-30 20:59:28 +13:00
Simon Welsh
dde90dc346 Correct line length and endings 2014-03-30 19:51:38 +13:00
Simon Welsh
2566795b59 Merge branch '3.1'
Conflicts:
	view/SSViewer.php
2014-03-30 19:39:18 +13:00
Simon Welsh
ac1546eb97 Correct line length and indentation 2014-03-30 19:37:54 +13:00
Simon Welsh
6db96eac8f Correct errors from differening behaviour between 3.0 and 3.1 2014-03-30 19:29:18 +13:00
Simon Welsh
fe8dc50ffc Merge branch '3.1'
Conflicts:
	tests/view/SSViewerTest.php
2014-03-30 18:17:24 +13:00
Simon Welsh
f9c44e4ceb Merge branch '3.0' into 3.1
Conflicts:
	model/Versioned.php
	view/SSTemplateParser.php
	view/SSViewer.php
2014-03-30 18:15:12 +13:00
Damian Mooyman
cf5d524235 BUG Fix regressions from #2206 in hasValue and dbObject
Fixes #2982
2014-03-30 18:05:46 +13:00
Damian Mooyman
4415a75d93 BUG Fix issue with versioned dataobjects being cached between stages 2014-03-27 13:17:29 +13:00
Ingo Schommer
023641e263 Merge pull request #2776 from ryanwachtl/fix-get-candidate-template
FIX Overriding of theme templates in project folder
2014-03-25 23:08:36 +13:00
Devlin
0096ab0d3d Upload: refactor file versioning 2014-03-24 11:45:37 +01:00
Sean Harvey
f11adcfe2e Fixing FormField not setting readonly attribute on setReadonly(true) 2014-03-24 08:59:35 +13:00
Damian Mooyman
7c60c73dbb API Polymorphic has_one behaviour 2014-03-18 09:18:04 +13:00
James Goodman
cd4ebb25ca Fix HTMLText AbsoluteLinks not parsing placeholder
Add an AbsoluteLinks method to HTMLText that parses placeholders instead of returning the raw value.
2014-03-18 07:53:42 +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
Cam Spiers
145d78edca Cache templates created from string SSViewer_FromString 2014-03-16 13:16:24 +13:00
Simon Welsh
dbf64399b8 Update expected ID value 2014-03-16 09:52:37 +13:00
Simon Welsh
8f31352039 Merge remote-tracking branch 'origin/3.1'
Conflicts:
	.travis.yml
2014-03-16 09:36:48 +13:00
Loz Calver
a73c3574e2 FieldList->insertBefore/After now accept arguments in either order (fixes #2737) 2014-03-15 11:32:51 +00: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 Welsh
b145e96d27 Merge pull request #2818 from tractorcow/pulls/gridstate_data-error-test
BUG GridState_Data doesn't hold falsey values - Fixes #2813
2014-03-15 21:29:56 +13:00
Simon Welsh
66b60cb486 Merge pull request #2754 from madmatt/pulls/behat-profile
Allow GridFields without titles to be found.
2014-03-15 21:13:06 +13:00
Simon Welsh
279b927df1 Merge pull request #2903 from tractorcow/pulls/fix-fileupload-fileexists
BUG Fix issues with uploading to /assets
2014-03-15 21:02:36 +13:00
Simon Welsh
5beaebc43a Merge pull request #2718 from silverstripe-rebelalliance/2503
BUG: Fixes performReadonlyTransformation for OptionSetField

Closes #2503
2014-03-15 20:45:04 +13:00
Simon Erkelens
6676787176 ENHANCEMENT: Allow nested grouping of GroupedList 2014-03-15 19:20:28 +13:00
Simon Welsh
d1befdd37c Merge pull request #2901 from dhensby/director-test
Making Director::test() ignore URL Anchors
2014-03-15 00:09:06 +13:00
Simon Welsh
d431e98ecf Merge branch '3.1'
Conflicts:
	forms/Form.php
	forms/FormField.php
	security/Member.php
	security/MemberLoginForm.php
2014-03-10 22:58:49 +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
cad863204c Merge pull request #2871 from feejin/urlsegment-trailing-space
BUG Trim URLSegment before applying replacements in filter
2014-03-06 08:16:31 +13:00
Damian Mooyman
c61c9e7ac2 Merge pull request #2922 from JayDevlin/2904-upload-loadintofile
BUG Upload: loadIntoFile() duplicates files if replaceFile=true
2014-03-05 16:43:45 +13:00
Damian Mooyman
0cbad41d3b Rewrote usages of error suppression operator 2014-03-05 15:48:55 +13:00
Damian Mooyman
6d5d3d8cb7 Rewrote usages of error suppression operator 2014-03-05 14:22:19 +13:00
Devlin
3c1e82b42c Upload: retrieve existing File if an object without an ID is given and replaceFile=true 2014-03-04 18:02:33 +01: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
1cc366fe23 Merge pull request #2850 from kinglozzer/2827-member-extend
FIX: Rewrite Member getCMSFields to ensure updateCMSFields is only run once (fixes #2827)
2014-03-04 13:42:17 +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
Simon Welsh
ccb791995e Merge pull request #2894 from wilr/3.1-manymanyyaml
Add support for many_many_extraField in YAML
2014-03-04 11:35:58 +13:00
Colin Richardson
7b13041449 Remove trailing dashes from URLSegment 2014-03-03 22:22:03 +00:00
Ingo Schommer
c047a7b990 Reset FailedLoginCount on successful password reset 2014-03-03 17:47:16 +13:00
Colin Richardson
1795b21df0 Remove redundant underscore and update the comment 2014-03-02 15:03:02 +00:00
Damian Mooyman
c1e0f98f87 BUG Fix case where setFolder('/') would break UploadField::fileexists
BUG Prevent Upload from writing to the site root folder
2014-02-27 14:23:32 +13:00
Daniel Hensby
5e6c1b902b Making Director::test() ignore URL Anchors
Anchors should never make it to the server when they are in the browser URL bar, however tests are slightly different and some `Link()` functions may return a URL anchor. Instead of every test checking a link and stripping the anchor, I feel the Director::test() function should strip them off.
2014-02-26 12:04:47 +00:00
Will Rossiter
8b92300622 Add support for many_many_extraField in YAML
Format is

RelationName:
  - =>Obj.name:
    ExtraFieldName: "Foo"
2014-02-24 22:03:53 +13:00
Damian Mooyman
ebeb663ddf BUG Fixed critical issue with Folder::find_or_make failing to handle invalid filename characters
BUG Fix UploadField duplicate checking with invalid folderName
2014-02-21 09:11:34 +13:00
Ingo Schommer
705c75baa5 Merge pull request #2861 from srizzling/expand-filter-update
Expand CMS Panel Update + New Test File
2014-02-18 23:38:31 +13:00
Ingo Schommer
d8361f9d3f Merge remote-tracking branch 'origin/3.1' 2014-02-18 22:06:59 +13:00
Hamish Friedlander
d6630d240a NEW Allow specifying element whitelist in HTMLText fields 2014-02-18 14:02:04 +13:00
Sriram Venkatesh
80997171cc Updated Expand CMS Panel to find first visible panel and added new test file 2014-02-18 11:17:31 +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
Sean Harvey
03f14565b5 Merge pull request #2841 from chillu/pulls/dateformat-simplified
API Default to "yyyy-MM-dd" for date format
2014-02-17 14:05:39 +13:00
Loz Calver
d91c7d14b8 FIX: Rewrite Member getCMSFields to ensure updateCMSFields is only run once (fixes #2827)
Fix usage of  inside closure

Can't use self:: in closure either

Basic unit tests to check extensions are applied correctly
2014-02-16 21:21:15 +00:00
Ingo Schommer
f63a78c0b9 Fixed Filesystem class capitalization 2014-02-17 00:12:26 +13:00
Ingo Schommer
6906c9bd1a API Removed auto-detection for i18n date/time formats
Default to "yyyy-MM-dd" for date format, and "H:mm" for time_format.
Switched to config API for setting/getting values.

Avoid using "MMM" in particular, since it causes
inconsistencies in month names between jQuery UI and Zend_Locale_Format.

Fixes https://github.com/silverstripe/silverstripe-cms/issues/544
2014-02-16 23:57:49 +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
Sam Minnee
346d3edb37 Merge branch '3.1' 2014-02-13 17:58:30 +13:00
Sam Minnee
4f7c6ebcff FIX: Fixed behat text selection rule, which broke some tests.
The behat rule for text selection wasn't working due to the JavaScript not executing properly. I have
also updated the code to traverse all childNodes, which is important if you have text like this:

<p>text1 <b>text2</b> text3</p>

And you are trying to select 'text3'
2014-02-13 17:36:46 +13:00
Sean Harvey
9048eab4a2 Merge branch '3.1' 2014-02-12 11:06:54 +13:00
Ingo Schommer
5e38ef9e55 Merge pull request #2835 from kinglozzer/1891-csrf-friendly-error
NEW: Forms with invalid/expired SecurityIDs are repopulated (fixes #1891)
2014-02-12 09:44:03 +13:00
Sean Harvey
c322cb2d65 Fixing SQLQueryTest failures on PHPUnit 3.7.30 2014-02-10 13:32:39 +13:00
Loz Calver
058219c0ee NEW: Forms with invalid/expired SecurityIDs are repopulated (fixes #1891) 2014-02-09 10:19:24 +00:00
Ingo Schommer
4af9143d3b Merge remote-tracking branch 'origin/3.1'
Conflicts:
	docs/en/misc/contributing/code.md
2014-02-07 16:43:22 +13:00
madmatt
267786a7d1 Add behat test for security permission checkboxes. 2014-02-07 15:41:33 +13:00
Mateusz Uzdowski
e91f10b0ab Add Behat step to click on a row in the first GridField table. 2014-02-07 15:40:06 +13:00
Ingo Schommer
bb9f84afd5 Merge pull request #2806 from tractorcow/pulls/bug-member-locale
BUG Default Member.Locale now chooses a better default value when i18n.locale is not a valid translation
2014-02-03 17:03:48 -08:00
Ingo Schommer
457ec9446b Merge pull request #2700 from ajshort/injector-factory
Injector Factory
2014-02-03 16:50:15 -08:00
Damian Mooyman
cd213ab488 BUG Fixed handing of false values in GridState_Data
API Added ability to unset values
2014-02-04 10:26:26 +13:00
Daniel Hensby
6df276c843 BUG GridState_Data doesn't hold falsey values
After patch #2522 was taken GridField_Data was no longer able to hold
falsey values. See failing tests.
2014-02-04 10:26:18 +13:00
Ingo Schommer
0d7e9a9692 Merge remote-tracking branch 'origin/3.1'
Conflicts:
	_config/routes.yml
	docs/en/topics/datamodel.md
	forms/DropdownField.php
2014-02-04 08:19:04 +13:00
Andrew Short
2f817ba177 NEW: Allow specifying a factory to use for creating services.
A service factory can be used for creating instances where a non-trivial
construction process is required. This is done by adding a `factory`
key to the service definition.
2014-02-03 11:30:22 +11:00
Ingo Schommer
91b363b141 Merge pull request #2756 from madmatt/pulls/behat-form-context
Update theHtmlFieldShouldContain step to include negation.
2014-01-30 18:09:55 -08:00
Ingo Schommer
558d202bf2 Merge pull request #2746 from micmania1/move-test-theme-setup
API moved useTestTheme to base Sapphire test class so that it can be used elsewhere
2014-01-30 18:08:21 -08:00
Kirk Mayo
44a8537f68 BUG: #2503 Fixes performReadonlyTransformation for OptionSetField
NEW: Adding unit test for performReadonlyTransformation #nd fixing OptionSetField #2503

BUG: Fixing undefined variables and function parameters for PerformReadonlyTransformation unit tests

NEW: Adding unit test to OptionsetField for read only fields
2014-01-30 16:09:55 +13:00
Damian Mooyman
293c672fa7 BUG Default Member.Locale now chooses a better default value when i18n.locale is not a valid translation
This will resolve issues in cases where the site locale may be assigned a value that does not have an explicit translation. E.g. if the locale is en_NZ (and it's appropriate for this to be the assigned locale), Afrikaans will no longer be the default selected locale when creating members. Now en_US is chosen as a better fallback default.

This is a minor ease of use fix that means fewer CMS users can be accidentally created in Afrikaans within NZ based sites.

Test cases included.
2014-01-30 15:55:14 +13:00
Simon Welsh
cf01ca818a Revert "MINOR: Added behat test to cover changes made in e69e65c."
This reverts commit e0b4e6125c.
2014-01-22 15:20:48 +13:00
Mateusz U
ce3a944903 Merge pull request #2780 from madmatt/pulls/securityadmin-js2
BUGFIX: Fix JS for PermissionCheckboxsetField in SecurityAdmin
2014-01-20 19:00:00 -08:00
madmatt
e0b4e6125c MINOR: Added behat test to cover changes made in e69e65c. 2014-01-15 16:20:19 +13:00
Ryan Wachtl
5f87d344f1 FIX Overriding of theme templates in project folder
Fixes issue of templates not being found when a Page's main/Layout templates are split between the project and theme folders. Adds more expansive testing for template loading.
2014-01-14 15:05:24 -06:00
Will Rossiter
a50996a010 NEW: Add support for push operator on ArrayList (Fixes #1539) 2014-01-12 18:55:40 +13:00
Will Rossiter
e7266535c5 FIX: Allow empty checkboxes through setValue(null) (#1392) 2014-01-12 17:28:09 +13:00
Will Rossiter
4ea62b44f9 FIX: Ensure GridFieldDetailForm has the current record validator.
Currently the validator is only set through
ModelAdmin and not through GridField
directly. This will set the validator based on the
record unless a custom validator has been
provided.

http://www.silverstripe.org/data-model-questions/show/34650?start=8#post331958
2014-01-12 16:08:31 +13:00
Will Rossiter
f433b5000f FIX: Resolve issue when selected value is zero. (#2530)
$this->value is stored as string internally. In
the special case that the option value is 0, the
type comparison fails to resolve 0 == '0',
see http://www.php.net/manual/en/types.comparisons.php.
2014-01-11 13:25: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
Simon Welsh
39d42e4ea3 Merge branch '3.1' 2014-01-09 08:22:47 +13:00
Jeremy Shipman
8d8f3abace FIX: ConfirmedPasswordField setName failed to set names of child fields.
FIX: ConfirmedPasswordField relied on POST variables. These should instead come from setValue().
Added all important tests for validating the field: valid if passwords match, invalid if passwords differ.
2014-01-07 17:17:55 +13:00
Matt Peel
0eaae90bdb Update theHtmlFieldShouldContain step to include negation.
This allows steps to be declared as either “should contain” or “should not
contain”.
2014-01-06 17:22:40 +13:00
madmatt
2b00036d9d Allow GridFields without titles to be found. 2014-01-06 10:20:44 +13:00
micmania1
5fff5afb47 API moved useTestTheme to base Sapphire test class so that it can be used elsewhere (eg CMS test) 2013-12-23 21:54:20 +00:00
Stephen Shkardoon
40163edba7 Make CacheTest sleep properly
This way it will always sleep for the right amount of time (or longer)
2013-12-21 15:05:51 +13:00
Will Rossiter
3d2875a111 Merge pull request #2741 from simonwelsh/hhvm-test
Changes to error message detection to handle the differences in HHVM
2013-12-20 16:55:14 -08:00
Simon Welsh
8de403abd4 Changes to error message detection to handle the differences in HHVM 2013-12-21 13:17:47 +13:00
micmania1
229bea399b added logout url to Security and deprecated Security::set_login_url in favour of config 2013-12-20 21:55:54 +00:00
Ingo Schommer
60333f68ee NEW UploadField lists all files, shows path info
It doesn't make a lot of sense to limit the listing
to assets/Uploads/, which is the default set through FileField->folderName.
Showing all files regardless of folder makes them easier
to find, users can still opt-in to filtering by folder
through the TreeDropdownField.
2013-12-20 01:00:36 +01:00
madmatt
7d271d5346 Fix profile.feature behat test 2013-12-20 12:32:44 +13:00
Ingo Schommer
1afb8bb414 Merge remote-tracking branch 'origin/3.1' 2013-12-19 20:47:31 +01:00
Ingo Schommer
d032fadfb5 Fixed spelling of class in test 2013-12-19 20:47:16 +01:00
Ingo Schommer
f29d51f433 Merge remote-tracking branch 'origin/3.1'
Conflicts:
	docs/en/reference/dataobject.md
	lang/es.yml
2013-12-19 20:23:09 +01:00
Ingo Schommer
78a530524b Merge pull request #2684 from Firesphere/feature/force_write_js_to_bottom
NEW Forcefully write javascripts to the end of the HTML if wished
2013-12-19 09:21:06 -08:00
Sean Harvey
6fc9db6f0e API DataObject::validate() visibility changed to public (issue #1659)
DataObject::validate() is currently set to protected, but this means
you can't call validate() from outside the context of itself unless
you overload the method to use a public visibility and then call
parent::validate()

As it would turn out, most classes that overload this method already
set the visibility to public, so it would make sense the parent matches
that as well.
2013-12-19 16:36:39 +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
Firesphere
af7afbe918 IMPROVEMENT/FEATURE Forcefully write javascripts to the end of the HTML if wanted.
It's defaulted to false. But when set to true, the JS is written to the end of the HTML, even though there are earlier scripts.
This results in faster page-loading if the JS isn't needed earlier-on.
2013-12-14 14:04:03 +01: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
Firesphere
41371fea72 NEW Force the javascripts to be put before the closing body tag 2013-12-07 15:47:31 +01:00
Fred Condo
b88a0955a5 API: Support string descriptors for unique indexes in Versioned
- Document the format for descriptor arrays
- Implement the behaviour that developers have come to expect for
  string descriptors of indexes
- Add test for handling of unique indexes (MySQL & sqlite3)
- Resolve #2403

Versioned needs to convert unique indexes to non-unique for its suffixed
tables, such as Foo_Live and Foo_versions. Because DataObject accepts
string descriptors such as array('UniqIDX' => 'unique (Uniq)') as well
as array-based descriptors, Versioned needs to recognize string
descriptors. This patch accomplishes that. Before, Versioned would fail
to convert string-described indexes to non-unique, resulting in run-time
errors when creating a new version of an object.
2013-12-06 10:02:44 -08:00
Ingo Schommer
740560c487 Fixed merge errors
- HTML identifier changes in master breaking tests
- Regression from b6b3cd9889 in GridFieldSortableHeader (var capitalisation)
2013-12-06 15:37:51 +01:00
Ingo Schommer
6176d65bd2 Merge remote-tracking branch 'origin/3.1'
Conflicts:
	forms/gridfield/GridFieldSortableHeader.php
	model/DataList.php
	model/fieldtypes/Enum.php
2013-12-02 20:49:34 +01:00
Ingo Schommer
a7ad85c2a8 Better "editable page" Behat assertion 2013-12-02 19:07:14 +01:00
micmania1
b89ab1eb16 Added SSViewer::get_templates_by_class() to make the functionality in LeftAndMain::getTemplatesWithSuffix() more open. 2013-12-01 07:42:37 +00:00
Ingo Schommer
df2d59df1c Use more solid getValue() in Behat assertions
getAttribute('value') behaves inconsistently with Selenium drivers
(fails on Travis and TeamCity, but works locally). Selenium2Driver
in Mink provides a JS wrapper for getting the value, which is more reliable.

This fixes "insert a link" failures, see https://travis-ci.org/silverstripe/silverstripe-cms/jobs/14281251
2013-11-30 13:27:20 +01:00
Ingo Schommer
73eae2990f Merge pull request #2683 from tractorcow/pulls/2682-fix-gridfieldsortableheader
BUG Fixes #2682 - Regression in #2595
2013-11-29 09:17:39 -08:00
Sean Harvey
3a8833ec28 Fixing broken manage-users behat test.
"ADMIN group" is created by default, but assertions are checking
for "Admin Group".
2013-11-29 14:51:46 +13:00
Sean Harvey
cfc009964c Fixing undefined step caused by change in behat-extensio module. 2013-11-29 14:17:04 +13:00
Sean Harvey
761cc63e19 Adding test for CheckboxSetField saving into a text DB field. 2013-11-29 11:38:07 +13:00
Damian Mooyman
7636699c9f BUG Fixes #2682 - Regression in #2595 causing gridfield headers to break on summary_fields containing field methods 2013-11-27 18:43:27 +13:00
froog
755857b22a NEW: Created LessThanOrEqualFilter and GreaterThanEqualFilter 2013-11-25 03:59:51 +00:00
Ingo Schommer
784c766ee6 Revert "Don't rely on Behat/Selenium returning 'value' for textarea"
This reverts commit 8245125349.
2013-11-22 20:38:56 +01:00
Ingo Schommer
7e291133a0 Merge pull request #2663 from ajshort/has-many-prepopulate
NEW: Pre-populate and disable foreign key field on has many lists.
2013-11-22 11:18:11 -08:00
Ingo Schommer
053258b984 Merge pull request #2595 from kinglozzer/gridfield-sort-relation
NEW: GridField can sort on relation columns
2013-11-22 11:14:12 -08:00
Ingo Schommer
8245125349 Don't rely on Behat/Selenium returning 'value' for textarea
Technically a textarea DOM node doesn't have a 'value' attribute,
but rather a HTML content. This used to work, but likely broke either
by updated browser handling or updated selenium logic.
Fixes "Scenario: I can edit title and content and see the changes on draft"
2013-11-22 20:05:17 +01: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
Ingo Schommer
bd5fdf1f19 Fixing coding conventions in Behat files 2013-11-15 12:03:43 +01:00
Loz Calver
a1a402224f NEW: GridField can sort on relation columns
Slightly improved logic

Add support for relations more than one 'level' apart

Add unit tests

Fixing PostgreSQL support

Throw exception if attempting to sort on a has_many/many_many relation
2013-11-13 10:33:00 +00:00
Andrew Short
fc773c5c22 NEW: Pre-populate and disable foreign key field on has many lists.
This is a common use case, and by default a form field is added which
has no effect. While this coupling is undesirable, it makes the default
behaviour much more sensible.

See #2662, #2651, #2637 for more information.
2013-11-13 16:21:18 +11:00
Andrew Short
bedf292612 Merge branch '3.1'
Conflicts:
	docs/en/reference/execution-pipeline.md
	lang/nl.yml
2013-11-11 18:18:25 +11:00
Cam Spiers
14486902fb Allow users to extend the SSTemplateParser by defining open & closed blocks
Currently the only way the extend SSTemplateParser is to define a class
extension of it and then tell the injector component to use your new
custom class. This new change allows a user to define new "open blocks"
and "closed blocks" for SSTemplateParser to use without needing to
recompile the real SSTemplateParser class.

The following example shows how the functionality can be used
to add a new <% minify %>…<% end_minify %> syntax to the template parser

In a config.yml file, define the new minify closed block to call the
static function "Minifier::minify"

```
Injector:
	SSTemplateParser:
		properties:
			closedBlocks:
				minify: "Minifier::minify"
```

Define a new class with the minify static method that returns the new
template code when regenerating templates:

```
class Minifier {
    public static function minify(&$res) {
        return <<<PHP
{$res['Template']['php']}
\$val = zz\Html\HTMLMinify::minify(\$val, array('optimizationLevel' => zz\Html\HTMLMinify::OPTIMIZATION_ADVANCED));
PHP;
    }
}
```
2013-11-04 14:24:58 +13:00
Sean Harvey
70c23f37de Merge pull request #2608 from andrewvt/3.1
added removeFromGroupByCode() function to Member.php
2013-11-03 12:27:10 -08:00
andrewvt
389bdb4ddf Added a unit test for removeFromGroupByCode()
Added a unit test for removeFromGroupByCode()
2013-10-31 22:05:13 -04: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
Will Rossiter
a0b7bfc7a5 Merge pull request #2604 from chillu/pulls/versioned-single-stage
Fixed support for single stage in Versioned
2013-10-29 01:40:40 -07: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
Ingo Schommer
7cf8e65309 Merge pull request #2598 from halkyon/test_execution_error
i18nSSLegacyAdapterTest setting wrong arguments for manifest.
2013-10-24 04:24:19 -07:00
Sean Harvey
e3542fead3 i18nSSLegacyAdapterTest setting wrong arguments for manifest.
Currently if you run i18nSSLegacyAdapterTest twice in a row you
get errors about classes not existing, because the class manifest
doesn't get set correctly during the test setUp() method.
2013-10-24 17:22:16 +13:00
Damian Mooyman
b6b3cd9889 API GridState_Data values can have default values specified during retrieval.
Fixes issues with GridStata_Data being returned from various states when value types are necessary.
Pruning of dead code from GridFieldAddExistingAutocompleter
Documentation for GridState
2013-10-24 16:15:33 +13:00
Ingo Schommer
628b920ea7 Fixed merge error in MemberTest 2013-10-23 18:26:05 +02:00
Ingo Schommer
b56ca812dc Merge remote-tracking branch 'origin/3.1'
Conflicts:
	tests/security/MemberTest.php
2013-10-23 14:53:29 +02:00
Ingo Schommer
d7e10e620a Merge pull request #2537 from wilr/membervalidator
FIX: Use Injector API for managing Member_Validator instance.
2013-10-23 03:01:15 -07:00
Ingo Schommer
6f41b6fae6 Merge pull request #2566 from NicoHaase/master
BUG: An enum field in the search panel model admin misses an option to not filter on that field
2013-10-22 06:43:36 -07:00
Nico Haase
ab10c2ecdc BUG: An enum field in the search panel model admin misses an option to not filter on that field 2013-10-22 15:39:37 +02:00
Ingo Schommer
39efaca54f Disable "lost password" feature, breaks on "php -S"
PHP's built-in webserver doesn't reliably expose SCRIPT_NAME,
see https://github.com/silverstripe/silverstripe-framework/issues/2580.
This breaks URL routing on /Security/passwordsent/admin%40test.com
2013-10-22 15:26:20 +02:00
Ingo Schommer
f2d362b629 Merge pull request #2576 from halkyon/fulltextsearch_test
FulltextSearchableTest doesn't clean up after itself.
2013-10-22 01:56:29 -07:00
Sean Harvey
acaf0e40cc FulltextSearchableTest doesn't clean up after itself.
The extension doesn't get unloaded correctly at the end of the test,
resulting in tests afterwards sometimes failing because the table
type is reset back to InnoDB.

See silverstripe/silverstripe-cms ed8ee4e9b for a similar fix done
in the cms module.
2013-10-22 17:52:51 +13:00
mandrew
56d7c1fde2 Behat tests for lost password 2013-10-22 00:06:36 +02:00
Ingo Schommer
5c1a9d9da5 Using Behat EmailContext by default 2013-10-21 00:50:29 +02:00
Ingo Schommer
d75f545887 Clear DB caches in SecurityTest 2013-10-20 14:23:23 +02:00