Commit Graph

2376 Commits

Author SHA1 Message Date
Maxime Rainville e0197191b8 Rename "Ignore CI Configs" to "Ignored CI Config" 2021-11-22 11:02:27 +13:00
Maxime Rainville 7c3fddfc8a Anwser Peer review feedback 2021-11-18 23:16:03 +13:00
Maxime Rainville cbc4593ab4 ENH Don't index test from PHPUNit 5.7 module wdon using PHPUnit 9.5 2021-11-18 21:45:53 +13:00
Maxime Rainville 640a7e3eea ENH Improve ManifestFileFinder so it can ignore test based on the testing library 2021-11-18 21:45:53 +13:00
Maxime Rainville 2922370d81 API Add Module::getCILibrary function 2021-11-18 21:45:53 +13:00
Maxime Rainville 1bc1e85f68 DOC Fix minor typos in Module 2021-11-18 21:44:26 +13:00
Steve Boyd d2cbf5bc2a Merge branch '4.9' into 4 2021-11-18 17:24:41 +13:00
Maxime Rainville b43d68f9b4 API Add an AttributesHTML trait 2021-11-18 15:31:01 +13:00
Loz Calver 29fa365d10
Fix support for setting TEMP_PATH in .env (fixes #8099) (#10138) 2021-11-16 09:35:28 +13:00
Sergey Shevchenko 5e26757a9e
Merge branch 'silverstripe:4' into 4 2021-11-15 22:07:11 +13:00
LiamKearn a08f43b762
DOC Fix misleading code docblocks (#10145) 2021-11-09 14:55:06 +13:00
Loz Calver b1eb9514d4
FIX Prioritise posix_getuid() when attempting to find current process owner (#10137) 2021-11-08 11:56:44 +13:00
Loz Calver 20134e6a4f
NEW Add FirstPage() and LastPage() to PaginatedList (#10129) 2021-11-08 09:26:21 +13:00
Loz Calver d6866af7e5 Fix broken tests 2021-11-04 10:53:42 +00:00
Kirk Mayo b8d37f9ae4
NEW Validate the Title on Group is not empty (#10113) 2021-11-03 14:26:16 +13:00
GuySartorelli fc349db511
API Add a way to check if a form or form field has an extra css class (#10112)
Required for silverstripe/silverstripe-admin#1252
2021-11-01 17:01:17 +13:00
Sergey Shevchenko 04b7ad51b8
Merge branch 'silverstripe:4' into 4 2021-11-01 13:12:59 +13:00
Florian Thoma 31668e8acf fix: remove login marker cookie on logout
Apply suggestions from code review

Co-authored-by: Michal Kleiner <mk@011.nz>
2021-11-01 10:04:18 +11:00
Steve Boyd cd076542f4
API Upgrade SapphireTest to work with phpunit 9 (#10028) 2021-10-27 15:39:47 +13:00
GuySartorelli 059d8aac0a
NEW Add afterUpdateCMSFields method to DataObject. (#9819) 2021-10-26 16:05:11 +13:00
GuySartorelli 49a7f08c07
ENH: Display validation messages for GridFields (#10015)
* FIX: Display validation messages for GridFields
* ENH: Add test for GridField validation messages.
2021-10-19 12:03:40 +13:00
Steve Boyd 3a852bed36 Merge branch '4.9' into 4 2021-10-19 11:14:19 +13:00
Steve Boyd 766a024a03 Merge branch '4.8' into 4.9 2021-10-19 11:13:50 +13:00
Steve Boyd 04f9a80c0e Merge branch '4.7' into 4.8 2021-10-19 11:13:31 +13:00
Steve Boyd 0361f10f4c
Merge pull request #9869 from chrispenny/bugfix/composite-validator-calls-php
CompositeValidator::validate() to call validate() instead of php(). Fixes #9868
2021-10-19 11:10:43 +13:00
Thomas Portelange 6e2955fe14
BUG Allow extension of getAttributes for Tab and TabSet (#9954) 2021-10-18 23:22:01 +13:00
Mo Alsharaf 2c1ef4df23
MNT Update URL in docs for ICU documentation (#10118) 2021-10-15 11:28:16 +13:00
Michal Kleiner 38fe326262 MNT Fix minor typos 2021-09-25 00:23:43 +12:00
Michal Kleiner 1e5414eac7 FIX Use correct ancestor class when querying for stage and live children
The right ancestor class that has the Hierarchy extension applied needs to be used
since it doesn’t have to be the class directly extending from DataObject, which means
the ID and ParentID columns might be in different tables.
2021-09-25 00:23:43 +12:00
Maxime Rainville 1c698348a2 BUG When asserting an email was sent, sanitise both the To and From field 2021-09-09 19:23:37 +12:00
Steve Boyd 0a389112ca FIX Only send email if email address set 2021-09-07 11:20:29 +12:00
Steve Boyd 00e29758ff DOC Add information regarding Security::setCurrentUser() 2021-09-06 14:04:53 +12:00
Steve Boyd b5c3b60502
Merge pull request #10047 from madmatt/pulls/extend-hydrate
NEW Add extension point to DataObject->hydrate()
2021-08-27 10:41:06 +12:00
Maxime Rainville 02c9736e23 Merge branch '4.8' into 4 2021-08-26 16:58:09 +12:00
Matt Peel f99ba5d716 NEW Add extension point to DataObject->hydrate() 2021-08-25 16:07:02 +12:00
Steve Boyd de87d91d22 FIX Trim email addresses to comply with RFC 2822, 3.6.2 2021-08-24 10:06:15 +12:00
Steve Boyd 92f47da08b
API Update SwiftMailer from v5 to v6 (#10048)
* Update SwiftMailer from v5 to v6

- Fixes #9834
- Update default Swift_Transport to use Swift_SendmailTransport
- Update version restraint for Swiftmailer
- Address new parameter type for Swift_Message::setDate()
- Update class references in docblocks

Co-authored-by: Danaë Miller-Clendon <danae.millerclendon@silverstripe.com>
2021-08-18 12:16:45 +12:00
Steve Boyd 0ea36ad5d6
Merge pull request #10027 from chrometoasters/pulls/director-extension-point-4.8
NEW Add extension point to Director::is_site_url
2021-08-07 09:56:31 +12:00
Daniel Hensby 83b458ff59
Merge pull request #10022 from xini/fix-session-destroy
take current request protocol into account when deleting session cookie
2021-08-06 10:06:08 +01:00
Florian Thoma 9a7c99fc4b FIX Take current request protocol into account when deleting session cookie 2021-08-06 10:55:05 +10:00
Michal Kleiner f8a9431152 NEW Add extension point to Director::is_site_url 2021-08-06 12:54:18 +12:00
Steve Boyd e0548b208e
Merge pull request #10044 from TheBnl/patch-1
Fix error when executing method SSViewer::templates() when $subTempla…
2021-08-06 09:49:00 +12:00
Steve Boyd 9b42624616
Merge pull request #9994 from GuySartorelli/patch-1
ENH Provide onBeforeRenderHolder extension hook in GridField.
2021-08-06 09:47:53 +12:00
Bram de Leeuw ecb233012d
Fix error when executing method SSViewer::templates() when $subTemplates is still null
Without the fix this causes the framework to throw a 500 error:
`ERROR [Warning]: array_merge(): Expected parameter 2 to be an array, null given`

I noticed the error while doing a search with the `GridFieldAddExistingAutocompleter`. The error probably gets supressed on live environments.
2021-08-05 12:10:06 +02:00
Steve Boyd d120367b5a
Merge pull request #9999 from GuySartorelli/patch-2
ENH Use text field's title for validation messages.
2021-08-05 15:47:03 +12:00
Steve Boyd 6b514ebd0c
Merge pull request #10040 from GuySartorelli/patch-5
ENH: Avoid "new" keyword to instantiate CompositeValidator
2021-08-05 13:39:43 +12:00
Steve Boyd dc3b907f5f
Merge pull request #10029 from creative-commoners/pulls/4/titletip
NEW Title tips for form fields
2021-08-03 14:04:55 +12:00
GuySartorelli cacd762357
Avoid "new" keyword to instantiate CompositeValidator
The CompositeValidator is Injectable, so we should allow project code to replace it here via the Injector.
2021-08-02 12:46:53 +12:00
Steve Boyd a90d46dbc4 NEW Title tips for form fields 2021-07-31 14:45:24 +12:00
Daniel Hensby 507c70e2f5
Merge pull request #10023 from xini/fix-destroy-session-on-logout 2021-07-20 09:13:20 +01:00
Florian Thoma 3e2ca3027b destroy session on logout instead of restarting it 2021-07-20 12:05:16 +10:00
GuySartorelli 4cd6b1434a
ENH Reduce duplication of code in GridField view and edit buttons. (#9953)
* ENH Reduce duplication of code in GridField view and edit buttons.

* Fix syntax error

Co-authored-by: Daniel Hensby <dhensby@users.noreply.github.com>

Co-authored-by: Daniel Hensby <dhensby@users.noreply.github.com>
2021-07-18 16:54:22 +01:00
Nicolaas c8c7ee4a08
DOCS better docblock for TinyMCEConfig::removeButtons 2021-07-18 11:30:29 +01:00
GuySartorelli 5699db306d
FIX: Remove limits in removeAll method.
Keeping a limit here results in a DatabaseException "This version of MariaDB doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'"
2021-07-12 17:14:46 +12:00
Ingo Schommer b2a85e7a02
FIX BASE_PATH fallback assumed wrong file location (#9977)
The file was moved back in 2017 with 3873e4ba00 (diff-8ce3f007bef0668c2c08320160362229abce9614025dc2a5b729d1b2b56ed3f7),
but the logic wasn't updated. That wasn't apparent since the fallback usually doesn't need to be triggered.
Whenever constants.php is included through the standard composer autoload, the debug_backtrace() logic took priority.

This is an important piece for using CoreKernel directly to boot Silverstripe,
which I'm currently attempting through a composer plugin (so a different autoloading path).
https://github.com/silverstripe/silverstripe-graphql-composer-plugin
2021-07-08 11:11:39 +12:00
Steve Boyd f6e8d6e591 Merge branch '4.8' into 4 2021-07-07 14:03:02 +12:00
Steve Boyd 87d076faa6 FIX Cast DBInt value to int 2021-07-06 16:43:54 +12:00
Ingo Schommer e8c14a9d5b
Merge pull request #10005 from creative-commoners/pulls/4.8/10k
FIX Parse Enums with dots in their values
2021-07-02 09:33:29 +12:00
Steve Boyd 8e803bbcfc FIX Parse Enums with dots in their values 2021-07-01 16:00:08 +12:00
GuySartorelli e4e4b0924d
ENH Use text field's title for validation messages.
Where a field has a title, this is preferred over the field name in validation messages, as that is the "name" of the field as presented to the user.
2021-06-29 17:45:01 +12:00
Steve Boyd 0b979dc345 FIX Cache duplicate embeds separately 2021-06-29 12:17:07 +12:00
Guy Sartorelli 365998f445 ENH Add extension point for modifying readonly GridFields.
Developers may want to amend a gridfield (either by modifying its
components or amending the list) after it has been transformed to be
readonly.
One such modification may be replacing the GridFieldViewButton
with something else - because components are instantiated with the "new"
keyword this would be the only way to do that.
2021-06-29 11:23:58 +12:00
Guy Sartorelli 009a32fbec ENH Allow GridField readonly components to be globally modified. 2021-06-29 11:21:41 +12:00
GuySartorelli d710990e13
ENH Provide onBeforeRenderHolder extension hook.
GridField has onBeforeRender in its Field method, but that hardly ever gets called.
This commit adds the onBeforeRenderHolder extension hook that is normally available via FormField::FieldHolder().
2021-06-25 13:21:49 +12:00
Steve Boyd 325021c2f8 Merge branch '4.8' into 4 2021-06-21 14:59:01 +12:00
Steve Boyd e812999632 Merge branch '4.7' into 4.8 2021-06-21 14:58:40 +12:00
Steve Boyd b625ba99b3 ENH Remove wording for authenticated devices being manageable 2021-06-18 09:50:13 +12:00
Steve Boyd 7ed7ad0254 FIX Ensure changing a password to blank is validated 2021-06-17 12:05:20 +12:00
Loz Calver 5bb5ef80ed FIX: Form::defaultAction() didn't work if actions were in CompositeFields (fixes #9975) 2021-06-09 17:26:43 +01:00
Steve Boyd 06dbd5237b [CVE-2020-26138] Validate custom multi-file uploads 2021-06-09 09:34:37 +12:00
Steve Boyd 3bb435c241 [CVE-2020-25817] Prevent loading of xml entities 2021-06-09 09:34:26 +12:00
Steve Boyd 9463aaf571 Merge branch '4.8' into 4 2021-06-08 11:49:01 +12:00
Steve Boyd fb0d769049
Merge pull request #9969 from creative-commoners/480-tag
Security fixes from 4.8.0
2021-06-08 11:47:35 +12:00
David Peck 28b5b803be FIX Defensively copy mocked datetime 2021-06-05 16:46:19 +12:00
Steve Boyd 8024551376 [CVE-2020-26138] Validate custom multi-file uploads 2021-06-02 16:24:23 +12:00
Steve Boyd 7f97734a20 [CVE-2020-25817] Prevent loading of xml entities 2021-06-02 16:24:17 +12:00
Michal Kleiner 2017a20433 FIX Use empty array as a fallback for preg_split within dbtext summary
If the content is invalid for whatever reason e.g. when instantiating
a DBText field to get a summary of text through
`DBField::create_field('Text', $content)->Summary(10)`, preg_split returns
false and the rest of the code expects an array.
This tweak ensures an array is always returned even when preg_split fails.
2021-06-02 15:17:58 +12:00
Steve Boyd a3df66860f Merge branch '4.8' into 4 2021-05-31 17:05:11 +12:00
Steve Boyd 9ccdb8efb2 Merge branch '4.7' into 4.8 2021-05-31 17:04:54 +12:00
Maxime Rainville 472fc4ebb4
BUG Update DataQuery::exists to return false when limit causes no result to be returned (#9946)
* BUG Update DataQuery::exists to return false when limit causes no result to be returned

* Update comment

* Fixing linting issue
2021-05-31 16:50:58 +12:00
Ingo Schommer 196752566f
Merge pull request #9655 from sminnee/pulls/9647-find-lost-records
NEW: Add GridFieldDetailForm::setRedirectMissingRecords()
2021-05-21 13:53:18 +12:00
Sam Minnee 8883413ba7 NEW: Add GridFieldDetailForm::setRedirectMissingRecords()
This new opt-in setting will let grid field detail forms redirect to the
“Correct” URL of a GridField if it’s not found in the current list.

This works by:
 * Looking for the item in the database
 * If it exists, check for a CMSEditLink() method that returns a value
 * If so, redirect to that

This is useful if you have a number of grid fields that each show a
partial list of records, and it’s possible for the user to make changes
such the item no longer appears in the list, but does appear in another
list.

It’s an opt-in feature as I think all changes like this should be
opt-in, based on previous experiences improving GridField and in turn
breaking SecurityAdmin and slowing versioned-data-browsing down. ;-)
2021-05-21 13:16:00 +12:00
Ingo Schommer 8c0efd3980 Extension hooks for CsvBulkLoader
Required for versioned-snapshots integration
2021-05-21 11:17:46 +12:00
Ingo Schommer ad4e488dcf
Merge pull request #9192 from sminnee/fix-9163
NEW: Support dot syntax in form field names
2021-05-21 10:34:15 +12:00
Dylan Wagstaff a5fc61a23a
Merge pull request #9948 from open-sausages/4
FIX Tidy extension and cli fix for tests
2021-05-21 09:19:22 +12:00
Guy Marriott 766df06f23
Merge pull request #9631 from open-sausages/pulls/4/custom-sort-gridfield-autocompleter 2021-05-20 14:02:44 -07:00
Ingo Schommer 8806b3befc Fixes required for dot notation support in fields
See #9163
2021-05-20 20:32:25 +12:00
Dan Hensby 23ffd2bbd6 Linting fix 2021-05-20 20:32:25 +12:00
Sam Minnee 5dcf5197da FIX: Make the ./_ substitution optional. 2021-05-20 20:32:25 +12:00
Sam Minnee c7c6bdebdf FIX: Allow join-object to be referenced as a component
This avoids having arbitrary differences between a join object and a
has-one relation.
2021-05-20 20:32:25 +12:00
Sam Minnee 6ba7bf7b2f FIX: Replace ‘.’s with ‘_’s in HTML IDs
The functioning of dot-syntax in form fields mean that .s are more
likely to appear in names. This breaks javascript behaviour in HTML IDs 
and I believe is an invalid character for them.
2021-05-20 20:32:24 +12:00
Sam Minnee 02fb7c3b17 NEW: Support dot syntax in form field names
This change adds support for these in a few places.

 - Form::saveInto($record)
 - Form::loadDataForm($record)
 - Form::loadDataForm($_POST)

Fixes https://github.com/silverstripe/silverstripe-framework/issues/9163
2021-05-20 20:32:24 +12:00
Ingo Schommer 5e2ca7f0a3 FIX Tidy extension and cli fix for tests
Wrap doesn't actually wrap in the tidy extension.
This causes tests to be flakey, for example some of `FormTest` fails
if you happen to have `ext-tidy` installed (which is the default on most systems).
This happened to me on PHP 7.4.19 with tidy 5.6.0 (OSX Homebrew).
Note that the tests aren't failing in Travis right now.

You'd expect `wrap => 0` to be honoured. It's documented as an integer
in the tidy docs: https://api.html-tidy.org/tidy/quickref_5.6.0.html#wrap.

Even tracked this down to the PHP source which appears to be doing the right thing:
https://github.com/php/php-src/blob/master/ext/tidy/tidy.c#L300

There's a bug from 2018 against PHP 7.2.8 which was closed as "not a bug" without comment:
https://bugs.php.net/bug.php?id=76683

You can see the behaviour in action in the following test.

```
<?php
$html = '<p>a really long string which should not be wrapped</p>';

echo "## With tidy extension" . PHP_EOL;
$tidy = new tidy();
$tidy->parseString(
    $html,
    [
        'output-xhtml' => true,
        'numeric-entities' => true,
        'wrap' => 0,
    ],
    'utf8'
);
$tidy->cleanRepair();
echo $tidy . PHP_EOL;

echo "## With tidy cli" . PHP_EOL;
$cmd = sprintf("echo " . escapeshellarg($html) . " | tidy --force-output 1 -n -q -utf8 -asxhtml -w 0 2> /dev/null");
echo shell_exec($cmd);
```

Long story short, setting it to 99999 fixes the issue.
2021-05-20 20:09:42 +12:00
Steve Boyd a6ccc86f94 Merge branch '4.7' into 4.8 2021-05-03 14:21:37 +12:00
Steve Boyd e6aeff6468 Merge branch '4.6' into 4.7 2021-05-03 14:21:20 +12:00
Garion Herman debf1ae9fb
Merge pull request #9887 from lekoala/patch-18 2021-04-24 21:05:29 +12:00
Maxime Rainville 67a008365a
Merge pull request #9743 from kinglozzer/treedropdown-root-id
NEW: Expose TreeDropdownField root node ID in schema
2021-04-23 18:06:23 +12:00
maks 12a6f7bd0f
fix typo in core constants phpdoc block 2021-04-20 18:25:24 +02:00
Maxime Rainville 37ee3a923f
Merge pull request #9917 from creative-commoners/pulls/4/rememberloginhash-getset
API Methods to override logout_accross_devices
2021-04-20 09:49:36 +12:00
Steve Boyd 3d7868449f Merge branch '4.7' into 4 2021-04-19 16:39:15 +12:00
Steve Boyd bcccc63d33 API Methods to override logout_accross_devices 2021-04-19 13:13:35 +12:00
Loz Calver 097da7aed5
Merge pull request #9916 from chrometoasters/bugfix/absolute-base-url-generation
[BUGFIX] Prevent call getHeader() on null HTTPRequest object
2021-04-16 09:15:15 +01:00
Maxime Rainville fdd23a3675 Merge branch '4.7' into 4 2021-04-14 11:35:58 +12:00
Maxime Rainville 6fc25e4e96
RFC Add chunk method to DataList to iterate over large dataset (#8940) 2021-04-14 07:49:44 +12:00
André Kiste e2777ded8e • Add missing string
• Move attribute to login-forms
2021-04-13 15:33:49 +12:00
Kunal Hari 31c5ab2069 [BUGFIX] Prevent call getHeader() on null HTTPRequest object 2021-04-13 14:06:21 +12:00
André Kiste bbcc187c02 Update conflicting translations.
Revert removal of translations.
2021-04-12 11:42:57 +12:00
Andre Kiste dcdc25500b
Merge pull request #9909 from creative-commoners/pulls/4/remember-thirty
ENH Reduce default token period from 90 to 30 days
2021-04-08 12:39:22 +12:00
André Kiste 8692aabe9b Use new designs 2021-04-08 12:32:12 +12:00
Steve Boyd 7ec838f9c2
Merge pull request #9908 from sunnysideup/patch-15
PATCH: fix param in docblock ... add \ to FormField::__construct
2021-04-07 09:56:40 +12:00
Steve Boyd 160ed6f3f1
Merge pull request #9882 from creative-commoners/pulls/4/doc-composite-validator
DOC Clarify return value for CompositeValidator::getValidatorsByType()
2021-04-06 15:26:16 +12:00
Steve Boyd 1c7fd287a1 ENH Reduce default token period from 90 to 30 days 2021-04-06 13:22:10 +12:00
Nicolaas b75860b195
PATCH: fix param in docblock ... add \ to FormField::__construct 2021-04-05 19:43:41 +12:00
Nicolaas 2ecd8b34ee
adding use SilverStripe\Security\Member; to make sure linting works
adding `use SilverStripe\Security\Member;` to make sure that linting works.
2021-04-01 23:36:36 +13:00
Christopher Darling f1e5c72e43
BUG fieldNameError() references invalid $this->form
FieldList references `$this->form` which doesn't exist from what I can see. I presume this should have been `$field->getForm()`.

However, please note that I came across this when looking for something unrelated and haven't tested this PR.
2021-03-31 14:55:50 +01:00
Maxime Rainville 66fa597b3b
FIX Better handling of remember me token when login across devices is disabled (#9895)
* BUG Make sure remember me tokens are not invalidated when logging out without the logout_across_devices flag

* Remove unneeded comment
2021-03-31 11:31:52 +13:00
André Kiste 44fae4497b Better describe the 'keep me signed in' checkbox 2021-03-30 13:19:55 +13:00
Nicolaas 504e20320e
Update DBBoolean.php (#9893) 2021-03-24 12:05:33 +13:00
Brett Tasker 600f8e5b86 Move hasEmptySchem and emptyString to DataSchema on SingleSelectField 2021-03-23 21:53:30 +13:00
Steve Boyd 169c06131a
Merge pull request #9748 from tom890180/4.6
Merge the "Merge pull request #9565 from tom890180/check_items_exist" to 4.6
2021-03-23 11:01:30 +13:00
Christopher Darling daa9060c1a
remove unused class import Convert
Was missed from PR b02a6fa02d
2021-03-22 14:34:13 +00:00
Thomas Portelange 22b2d58b5a
Update src/Security/Member.php
Co-authored-by: Steve Boyd <emteknetnz@gmail.com>
2021-03-22 09:02:18 +01:00
Thomas Portelange 19052e6924
Update src/Security/Member.php
Co-authored-by: Steve Boyd <emteknetnz@gmail.com>
2021-03-22 09:02:13 +01:00
Thomas Portelange 0586c55e62
prevent spaces in emails
so this is not the first time a customer of mine is just copy pasting stuff in emails fields and somehow, a space at the end skips validation. this update ensure there is no space before or after the email, it would probably save a lot of time for everyone to have this build in.
it's probably better to fix it here rather than at form level because this also happens for csv imports etc
2021-03-19 10:11:02 +01:00
Maxime Rainville 7a04090bdf Merge branch '4.7' into 4 2021-03-15 14:27:47 +13:00
Maxime Rainville 4ee92da6b5 DOC Clarify return value for CompositeValidator::getValidatorsByType() 2021-03-10 22:59:06 +13:00
Nik d2fa64b489
BUG Allow Email to re-render when data changes (#9876)
* Fix: Allow Email to re-render when data changes

* Add invalidateBody function

* Make the linter happy
2021-03-04 11:18:46 +13:00
Maxime Rainville 2c54a3fd2f Merge branch '4.7' into 4 2021-03-01 20:37:04 +13:00
Maxime Rainville 028c4fdaa1 BUG Tweak shortcode parser so it properly parse empty attributes 2021-02-25 15:18:16 +13:00
Chris Penny 79d04fed0d CompositeValidator::validate() to call validate() instead of php() 2021-02-22 08:13:54 +13:00
Loz Calver 095a3b70f8 NEW: Provide helpers for isDev/isTest/isLive in templates 2021-02-11 11:19:07 +00:00
Guy Marriott eaadd40c3b
Merge pull request #9845 from HARVS1789UK/dataquery-exists-sql-portability-fix
Bug Fix - Ensure DataQuery::exists() SQL is both valid MySQL and T-SQL
2021-02-10 10:21:42 -08:00
Antony Thorpe 77ecbd854d
Updated TreeDropdownField.php documentation
Updated code example for SS4
2021-02-09 16:27:13 +13:00
Joe Harvey 33365b92f3 Bug Fix - Ensure DataQuery::exists() SQL is both valid MySQL and T-SQL
The original SQL statement is not valid T-SQL for use with SQL Server
2021-02-08 17:22:20 +00:00
Maxime Rainville 9ca33950a2
API Add a CREATE_MEMORY_HYDRATED option to DataObject constructor (#9767) 2021-01-21 14:07:06 +13:00
3Dgoo d1cca0f3fb
Fix DataQuery::exists() not working correctly
Fixes `DataQuery::exists()` not working correctly in some cases as discussed in #9809
2021-01-20 17:03:36 -08:00
Maxime Rainville 0dd59a1e7b
BUG Reset GridFieldFilterHeader grid state when search is cleared (#9829) 2021-01-21 13:47:40 +13:00
Maxime Rainville 54bdabd203 Merge branch '4.7' into 4 2021-01-20 12:57:01 +13:00
Maxime Rainville d13d3a1134
Merge pull request #9818 from creative-commoners/pulls/4.7/check-object-for-key
FIX Type checking in objectForKey() to fix postgres bug
2021-01-20 12:41:49 +13:00
Maxime Rainville 17c6f98ba2 BUG Fix PostgreSQL issue in TreeMultiselectField where field would try to filter list by a blank ID 2021-01-20 12:23:09 +13:00
Maxime Rainville 0da15f0f27 Merge branch '4.7' into 4 2021-01-19 15:33:56 +13:00
Steve Boyd ed5c1488c8
Merge pull request #9817 from creative-commoners/pulls/4/fix-dbcomposite-indexspecs
FIX DBComposite getIndexSpecs method
2021-01-17 11:18:35 +13:00
Ingo Schommer 6153f441ee Merge branch 'phpdoc-fixes' into 4 2021-01-14 11:08:22 +13:00
Ingo Schommer fe2027e486 PHPDoc in PEG parser
Required for https://github.com/silverstripe/silverstripe-framework/pull/9808
2021-01-14 11:07:58 +13:00
Ingo Schommer 5f7239fc3d
Merge pull request #9765 from open-sausages/pulls/4/test-setup-confusion
Warn on database misconfiguration in test runs
2021-01-14 09:18:14 +13:00
Steve Boyd 76ae5bc38a FIX Type checking in objectForKey() to fix postgres bug 2021-01-08 15:25:38 +13:00
Serge Latyntcev 2f64667bd6 FIX DBComposite getIndexSpecs method using self API to get the list of db fields 2021-01-07 16:19:54 +13:00
3Dgoo 3b74c2596f
Fix DataQuery::exists() not working correctly
Fixes `DataQuery::exists()` not working correctly in some cases as discussed in #9809
2020-12-29 16:45:58 +10:30
William Desportes c932d7e7fb
Fix the phpdoc blocks 2020-12-21 22:23:23 +01:00
Sam Minnée a8d121d23f
Merge pull request #9800 from creative-commoners/pulls/4.7/arraylist-value-set
FIX Bug when specifying 0 in ArrayList::offsetSet
2020-12-16 15:40:20 +13:00
Steve Boyd 5be045f9a2 FIX Bug when specifying 0 in ArrayList::offsetSet 2020-12-15 14:50:10 +13:00
Steve Boyd 91c441103b Merge branch '4.7' into 4 2020-12-01 15:29:16 +13:00
Steve Boyd af933e8226 MNT Double quote yaml string, fix phpcs warnings 2020-11-30 11:37:35 +13:00
Guy Marriott d76dd257e4
Merge branch '4.7' into 4 2020-11-17 15:47:25 -08:00
Guy Marriott b0762593da
Merge branch '4.6' into 4.7 2020-11-17 15:46:54 -08:00
Guy Marriott 6a5cee69ab
Merge pull request #9766 from tractorcow/pulls/4.6/faster-dev-build 2020-11-17 15:43:21 -08:00
Andre Kiste 460715197d
Merge pull request #9190 from open-sausages/pulls/4/test-state
Don't include default value in url grid state
2020-11-18 12:31:50 +13:00
Steve Boyd ad839fdd6e Merge branch '4.6' into 4.7 2020-11-16 12:10:48 +13:00
Damian Mooyman 5d45bbdd0d
Update src/ORM/DatabaseAdmin.php
Co-authored-by: Guy Marriott <guy.the.person@gmail.com>
2020-11-13 11:48:50 +13:00
Damian Mooyman 2753516783
Fail over if calling deprecated method 2020-11-13 08:27:53 +13:00
Damian Mooyman 405a1f7cb6
ENHANCEMENT Better optimised class name migration with substantially fewer queries
Fixes #9752
2020-11-12 16:10:28 +13:00
Ingo Schommer a3ae4922e4
Brand naming
Co-authored-by: Aaron Carlino <unclecheese@leftandmain.com>
2020-11-12 15:32:26 +13:00
Ingo Schommer 6306d2ede3 More specific "database missing" error message
It's misleading to imply that an .env doesn't exist when it's not what the actual check looks for.
It's also poor design to hardcode an unrelated error message in a "redirect to installer" function,
which only worked because this function was called from exactly one other place where this
error message was correct.
2020-11-12 13:51:24 +13:00
Ingo Schommer b271d9dd89 FIX Don't swallow app init errors in test setup 2020-11-12 13:51:22 +13:00
Sergey Shevchenko 51402a9c42
fix: don't use int width for mysql > 8.0.17 #9453 2020-10-29 10:54:52 +13:00
Steve Boyd 6e77d5eada NEW DataObject related objects service 2020-10-29 09:29:26 +13:00
Guy Marriott bdeb0aab4f Merge pull request #9565 from tom890180/check_items_exist 2020-10-28 10:27:10 +02:00
Garion Herman e89ae93ac9 FIX Harden hasMethod() against invalid values
This method should typehint the incoming value once union types are
available, but for now this ensures that method_exists() is not called
on scalar values, which is unsupported in PHP 8.
2020-10-28 09:34:33 +13:00
Garion Herman 91f831cd0b ENH Improve scalar response handling
This resolves an issue where method_exists() was being called on scalar
response values, which is not supported in PHP 8.
2020-10-26 13:20:47 +13:00
Loz Calver eedad00ebe NEW: Expose TreeDropdownField root node ID in schema
Forms part of a fix for silverstripe-admin#954
2020-10-22 15:14:15 +01:00
Steve Boyd 0e064300d9 ENH Add disabled attribute to SelectionGroup 2020-10-22 21:15:50 +13:00
Bernard Hamlin f00f64120d
NEW Allow setting sql_mode via config (#9721) 2020-10-22 15:01:30 +13:00
Garion Herman 256bd53557 DEP Remove unused league/flysystem requirement
This has been shifted to silverstripe/assets instead.
2020-10-13 12:15:56 +13:00
wernerkrauss 941df19e88
ENH Improve YamlReader exception message (#9731)
Fixes #9690
2020-10-12 22:38:13 +13:00
Serge Latyntcev 58ed426653 FIX TinyMCEConfig image size presets handle incorrect values 2020-10-12 17:31:59 +13:00
Serge Latyntcev 034bace213 FIX TinyMCEConfig image size presets handle incorrect values 2020-10-12 16:54:29 +13:00
Aaron Carlino 544b137328 Merge branch '4.6' into 4 2020-10-05 14:03:05 +13:00
Aaron Carlino 8053bc7a72 Merge branch '4.5' into 4.6 2020-10-05 13:49:06 +13:00
Sam Minnée 4ab36ac210
Merge pull request #9717 from robbieaverill/pulls/4.7/improve-stuff
Update spaces in syntax, single quotes, early returns where possible
2020-10-02 19:45:05 +13:00
Robbie Averill 7184703a57
Merge pull request #9516 from alessandromarotta/isLockectOut-call-LoginAttempt-getByEmail
isLockedOut() in Member.php call LoginAttempt::getByEmail but it passes to it the unique_identifier_field instead $this->Email
2020-10-01 17:43:30 -07:00
Robbie Averill 4d54a2110f Update spaces in syntax, single quotes, early returns where possible 2020-10-01 17:36:14 -07:00
Guy Marriott 478d487f0e
Merge pull request #9707 from robbieaverill/pulls/4.7/exceptions 2020-10-01 17:16:43 -07:00
Daniel Hensby fe45655a2b
Merge pull request #9698 from sminnee/pulls/symfony4
Symfony 4 support
2020-09-30 23:22:51 +01:00
Garion Herman 8ad4c4e024 FIX Fix namespace parsing under PHP 8, tweak readability of parser
$hadNamespace was ambiguously named, so the original PHP 8 support
update marked it true when it was strictly meant to indicate that a
namespace separator token had been encountered, resulting in bungled
parsing of complex class specs like Class(["arg" => true]).
2020-09-30 16:16:30 +13:00
Aaron Carlino 2042d1c6b0
MINOR: Allow DevelopmentAdmin to have subclasses (#9702) 2020-09-26 21:21:16 +12:00
Robbie Averill ae1e17edec Update exception assertions in tests and remove deprecated annotations 2020-09-25 10:06:49 -07:00
Robbie Averill 27bd5d12e3 ENH Replace E_USER_ERROR errors with exceptions 2020-09-24 23:51:21 -07:00
Sam Minnee 9247bc8b79 NEW: Add Symfony 4 support alongside Symfony 3
- Remove duplicate key in YML file
 - Remove deprecated yaml dump indentation set (the constructor arg works in both ^3 and ^4)

Fixes #9274
2020-09-21 19:09:08 +12:00
Dan Hensby ae0ece2b02
Merge pull request #9665 from creative-commoners/pulls/4/php8-fqcn-token 2020-09-18 20:44:22 +01:00
Sam Minnee 0d7c5a9ece NEW Add/remove callbacks on RelationList
This provides a mechanism for adjusting the behaviour of these
relations when building more complex data models.

For example the following example has a status field incorporates a
Status field into the relationship:

```php
function MyRelation() {
  $rel = $this->getManyManyComponents(‘MyRelation’);
  $rel = $rel->filter(‘Status’, ‘Active’);

  $rel->addCallbacks()->add(function ($relation, $item, $extra) {
    $item->Status = ‘Active’;
    $item->write();
  });
}
```

Introduces a new library dependency: http://github.com/sminnee/callbacklist
2020-09-18 13:33:42 +12:00
Maxime Rainville acce4c4ce7 BUG Remove old boostrap 3 CSS class 2020-09-16 11:03:27 +12:00
Loz Calver bca0f28b62
FIX: Make template parser error on mismatched brackets (fixes #8845) 2020-09-15 16:54:24 +01:00
Loz Calver bfc3b4b468
FIX: Stop empty comments breaking the template parser (fixes #8742) 2020-09-15 16:54:22 +01:00
Sam Minnee 85252ca05e FIX: Ensure Embed options are always array
This maintains support for embed 3.0.0.
2020-09-15 17:40:42 +12:00
Garion Herman f1c94e6d54 FIX Allow quotes in expected ReflectionExceptions within tests 2020-09-15 17:40:42 +12:00
Garion Herman 44685eceba FIX Support PHP 8 namespace tokens in i18nTextCollector 2020-09-15 17:40:42 +12:00
Garion Herman bad0662291 FIX Disable libxml_disable_entity_loader() calls in PHP 8 2020-09-15 17:40:42 +12:00
Sam Minnee b3dd27953b NEW: Allow league/csv ^9
Hopefully this has better PHP 8 support.
2020-09-15 17:40:42 +12:00
Sam Minnee 09fb33e657 FIX: Avoid passing non-class to get_parent_class()
Throws errors in PHP 8
2020-09-15 17:40:42 +12:00
Sam Minnee 5cb3d07f44 FIX: Avoid pass-literal-by-reference warning in PHP 8 2020-09-15 17:40:42 +12:00
Steve Boyd ab50e2cc51 Merge branch '4.6' into 4 2020-09-15 13:44:57 +12:00
Steve Boyd e339549e0d
Merge pull request #9649 from kinglozzer/9648-security-titles
FIX: Include missing security page titles when CMS not installed (fixes #9648)
2020-09-15 13:43:59 +12:00
Sam Minnee 2143660c3f FIX: Add class_exists() guards to SapphireTest
This test helper has a number of hooks to other parts of the
and required many class_exists() guards to operate without them

This has come out of PoC development work as part of:
https://github.com/silverstripe/silverstripe-framework/issues/9679

But can stand-alone as a mergeable PR.
2020-09-14 13:49:21 +12:00
Steve Boyd 015ea8cfc8 Merge branch '4.6' into 4 2020-09-11 11:54:23 +12:00
Damian Mooyman ac6f34846e
BUG Resolve issue where TreeMultiSelectField would error loading its value (#9604)
* BUG Resolve issue with TreeMultiSelectField not retaining value in some situations
E.g. in an elemental form
2020-09-11 11:52:36 +12:00
Robbie Averill de61681dec
Merge pull request #9634 from open-sausages/pulls/4/ellipsis
BUG Use proper ellipsis character in the various summary method.
2020-09-10 14:48:33 -07:00
Maxime Rainville 8bcfa57342 BUG Make PasswordEncryptor::check more resistent to timing attacks 2020-09-10 22:17:50 +12:00
Maxime Rainville acdebcdba7 Fix unit test 2020-09-10 17:08:13 +12:00
Steve Boyd 02827a6670 FIX Problem with direct compare in SELECT statement causing incompatibility with SQL Server database
Co-authored-by: Tomas Bilek
2020-09-10 14:48:09 +12:00
Jackson Darlow 2753f823ee
DOC Added a tip to docs describing how to set a cookie for less than a day (#9552)
DOC Added a tip to docs describing how to set a cookie for less than a day
Co-authored-by: Garion Herman <garion@silverstripe.com>
2020-09-10 12:34:33 +12:00
Steve Boyd 4c3a5441b2 Merge branch '4.6' into 4 2020-09-09 13:58:35 +12:00
Nicolaas 27c1c72912
FIX ModuleManifest::getModuleByPath fix to ensure right module is returned (#9569)
* FIX: ModuleManifest::getModuleByPath returns the wrong module #9561
Co-authored-by: Nicolaas Thiemen <nt@sunnysideup.co.nz>
2020-09-09 13:47:36 +12:00
Maxime Rainville adaf793ddb
BUG Always validate Member credentials against DRAFT stage (#9671) 2020-09-08 11:47:04 +12:00
Sam Minnee 622cf8b914 FIX: Drop parameter names in Injector instantiation to preserve behaviour in PHP 8
Fixes #9667
2020-09-07 17:24:00 +12:00
Sam Minnee e0f3797489 FIX: Remove deprecated & non-functional default argument config
This throws deprecation errors on PHP 8.

Fixes #9666
2020-09-07 17:24:00 +12:00
Garion Herman 08010d5933 NEW Support namespace tokens in ClassInfo::parse_class_spec()
The T_NAME_QUALIFIED and T_NAME_FULLY_QUALIFIED tokens are introduced
in PHP 8, and encapsulate theentire FQCN, replacing the previous
structure of a group of T_STRINGs and T_NS_SEPARATORs.
2020-09-07 17:23:56 +12:00
Guy Marriott ff04f97149
Add return type
Co-authored-by: Robbie Averill <robbie@averill.co.nz>
2020-09-01 08:43:36 -07:00
Guy Marriott 3575070b9d FIX Removing selected column detail only if having is empty (MySQL "feature") 2020-09-01 16:21:43 +12:00
Guy Marriott f9fc4f6641 FIX Allow for BC for DB adapters that return an actual boolean when selecting boolean literals in SQL 2020-09-01 16:20:07 +12:00
Guy Marriott ef0af7ae9c FIX Exists statements can't remove GROUP BY if there's a HAVING clause as it might rely on an aggregate 2020-09-01 16:20:07 +12:00
Guy Marriott 91591373d6 NEW Add exists as a method to the DataQuery API that will generate an SQL "exists" query
The exists query in SQL allows the query optimiser (engine specific) to execute these queries much faster - often only needing the presence of an index to return "yes it exists".
2020-09-01 16:20:07 +12:00
Steve Boyd 7474a76d1b
Merge pull request #9657 from creative-commoners/pulls/4/expose-recipe-core-version
NEW Add recipe-core to default VersionProvider module list
2020-08-28 10:36:58 +12:00
Jackson Darlow 699913406b
NEW Added a dev view to output the current config from dev/config (#9542)
* #3236 Added dev/config view

* Refactored use of echo to

* Added config/audit for matching missing property definitions in the current config

* Minor enhancements to dev/config implementation
2020-08-28 07:19:03 +12:00
Garion Herman 9aa2642d03
Merge pull request #9639 from creative-commoners/pulls/4/embed-performance
NEW Cache embed shortcodes
2020-08-27 12:15:24 +12:00
Garion Herman 680adbd10b NEW Add recipe-core to default VersionProvider module list
Recipe versions are a more useful indicator than the framework module
version, so if installed we want to show the recipe-core version. The
cms module expands upon this to include recipe-cms.
2020-08-26 14:49:11 +12:00
Mojmir Fendek 7c84171d5b
NEW: Improved task runner UI. (#9540)
Co-authored-by: Sacha Judd <sjudd@silverstripe.com>
2020-08-26 11:11:13 +12:00
Dylan Grech efdd359485 Fixed spelling and changed to shorthand array 2020-08-23 14:31:06 +02:00
Dylan Grech a380cc7444
Added exception for enumerated array (#9644)
\SilverStripe\View\ArrayData::__construct() throws error when passed an enumerated array #9644
2020-08-22 13:48:59 +02:00
Loz Calver 7377d094c0 FIX: Include missing security page titles when CMS not installed (fixes #9648) 2020-08-21 14:55:06 +01:00
Garion Herman c143941e44
Merge pull request #9628 from creative-commoners/pulls/4/version-provider
NEW Additional logic for VersionProvider
2020-08-21 14:25:23 +12:00
Mason Dechaineux abd0f3fbf3 Fix DataList->column mutating underlying DataQuery 2020-08-21 09:25:27 +10:00
Sam Minnée b810b7d5c9
API: Allow for user-created objects to have values passed in the constructor (#8591) 2020-08-20 12:28:31 +12:00
Maxime Rainville 5226d961e8 Fix unit test 2020-08-18 10:29:57 +12:00
Maxime Rainville a43414dedb Make sure GridState always outputs a JSON Object string 2020-08-17 23:23:42 +12:00
Maxime Rainville 70ffb3297a API Only include gridfield state value that differ from the expected default 2020-08-17 12:11:56 +12:00
Steve Boyd 7304acb171 NEW Cache embed shortcodes 2020-08-12 12:14:05 +12:00
Steve Boyd e19ef240f7 NEW VersionProvider now supports recipes as well as modules 2020-08-11 13:04:48 +12:00
Maxime Rainville 26b8b7964e Rename DefaultEllipsis to defaultEllipsis 2020-08-07 09:48:42 +12:00
Maxime Rainville 896c0e4388 BUG Use proper ellipsis character in the various summary method. 2020-08-06 19:37:03 +12:00
Mojmir Fendek c2ed6a4cd6 NEW: WithMockTime callback. 2020-08-06 11:18:39 +12:00
Steve Boyd 65c3295917 Merge branch '4.6' into 4 2020-08-05 10:52:49 +12:00
Ingo Schommer 9d03a6856c FIX Retain custom sort on custom lists in GridFieldAddExistingAutoCompleter
Forcing sort by the first search field isn't always appropriate.
When a custom search list is used, we can set the expectation that custom sorting is intended as well.
As an example, this can be used to autocomplete based on FULLTEXT indexes,
and sort based on relevancy.
2020-08-04 22:02:20 +12:00
Loz Calver e368c370ff
Merge pull request #9627 from creative-commoners/pulls/4.6/try-catch-config-db-paths
FIX Handle DatabaseAdapterRegistry cache exception
2020-08-03 09:19:02 +01:00
Steve Boyd b59f75dd50 FIX Handle DatabaseAdapterRegistry cache exception
Co-authored-by: Loz Calver <lozcalver@bigfork.co.uk>
2020-08-03 10:57:27 +12:00
Steve Boyd 8287fad24d Merge branch '4.6' into 4 2020-07-29 11:38:49 +12:00
Steve Boyd 52d38a8b4a
Merge pull request #9615 from creative-commoners/pulls/4.6/embed-iframe-dimensions
FIX Set iframe dimension attributes specified in shortcode
2020-07-28 11:04:24 +12:00
Steve Boyd f0936d4c1e FIX Set iframe dimension attributes specified in shortcode 2020-07-27 18:04:03 +12:00
Garion Herman e2443763a6
Merge pull request #9064 from creative-commoners/pulls/4.5/filter-interface
NEW Add FilterInterface and retrofit into URLSegmentFilter
2020-07-27 11:18:23 +12:00
Nicolaas f264ff8616
PATCH: improving @return values in docblocks 2020-07-23 22:40:14 +12:00
Nicolaas d292eb8840
PATCH: fix doctype return type hints: add null 2020-07-23 21:10:17 +12:00
Guy Marriott 5e7f0a5685
Merge pull request #9599 from martinheise/groupeddropdown-readonly
BUG Readonly version of GroupedDropdownField
2020-07-21 09:21:52 -07:00
Martin Heise 404f450ac3 BUG Readonly version of GroupedDropdownField
GroupedDropdownField was showing empty values in Readonly mode due to not correctly handling the hierarchical source array.
Uses flattened source now in GroupedDropdownField->performReadonlyTransformation()
2020-07-21 09:23:30 +02:00
rdigitalg 56f15b1c14 FIX Try Catch for embeded media (#9424)
* Try Catch for embeded media
* added missing namespaces, translatable message INVALID_URL
* generate tag only once
* catch after closing bracket
* space after comma
* Update src/View/Shortcodes/EmbedShortcodeProvider.php
* Linting
Co-authored-by: ivan@digitalgarage.ro <ivan@digitalgarage.ro>
Co-authored-by: Steve Boyd <emteknetnz@gmail.com>
Co-authored-by: Loz Calver <kinglozzer@gmail.com>
2020-07-17 19:38:01 +12:00
Robbie Averill 84b4057a9a
Merge pull request #9406 from chrispenny/feature/standardise-get-cms-validator
v4 improvement: Standardise getCMSValidator for DataObjects/Forms
2020-07-16 15:58:33 -07:00
Maxime Rainville 34eb170075 Merge branch '4.6' into 4 2020-07-16 11:45:25 +12:00
Nicolaas 65e0233258
PATCH: using standard way to refer to classes Group and PermissionRoleCode 2020-07-14 07:50:05 +12:00
Garion Herman d408a4e714 Merge branch '4.6' into 4 2020-07-13 12:28:14 +12:00
Garion Herman fbe0f5a981 Merge branch '4.5' into 4.6 2020-07-13 12:27:02 +12:00
Garion Herman 2b9ef6be16 Merge tag '4.6.0' into 4.6
Release 4.6.0
2020-07-13 12:26:06 +12:00
Ingo Schommer 8d6a248431 Merge remote-tracking branch 'origin/4.6' into 4 2020-07-11 09:07:39 +12:00
Maxime Rainville cce2b16309 [CVE-2020-6164] Remove/deprecate unused controllers that can potentially give away some information about the underlying project. 2020-07-10 17:57:06 +12:00
Maxime Rainville 8518987cbd [CVE-2019-19326] Stop honouring X-HTTP-Method-Override header, X-Original-Url header and _method POST variable. Add SS_HTTPRequest::setHttpMethod() 2020-07-10 17:56:15 +12:00
Maxime Rainville 996c1b5719 [CVE-2020-6164] Remove/deprecate unused controllers that can potentially give away some information about the underlying project. 2020-07-10 15:03:18 +12:00
Maxime Rainville 71db45b18b [CVE-2019-19326] Stop honouring X-HTTP-Method-Override header, X-Original-Url header and _method POST variable. Add SS_HTTPRequest::setHttpMethod() 2020-07-10 14:57:26 +12:00
Guy Marriott fae61c0f1d
Merge pull request #9582 from open-sausages/pulls/fix-gridfielddatacolumns-callback 2020-07-09 11:58:39 -07:00
Andre Kiste 0ed340faa9
Merge pull request #9584 from open-sausages/pulls/4.5/plain-method-for-chinese-character
BUG Tweak DBHTMLText::Plain to avoid treating some chinese characters…
2020-07-09 23:13:12 +12:00
Maxime Rainville c3f0ac7718 Merge branch '4.5' into 4.6 2020-07-09 14:33:57 +12:00
Maxime Rainville f8360356e0 Merge branch '4.4' into 4.5 2020-07-09 14:28:28 +12:00
Maxime Rainville b780c4f504 BUG Tweak DBHTMLText::Plain to avoid treating some chinese characters as line breaks. 2020-07-09 13:33:43 +12:00
Ingo Schommer 1f0a78e57b FIX More context for GridFieldDataColumns callbacks
This emulates the callback signature from
GridFieldEditableColumns in the symbiote/silverstripe-gridfieldextensions module, which extends GridFieldDataColumns. In case canEdit() fails, this component passes control back to the parent (rendering a standard column content rather than a formfield). Which can become an issue if you've defined custom 'callback' handlers on setDisplayFields() - GridFieldDataColumns passes in only one arg (`$record`), while GridFieldEditableColumns passes in three (`$record`, `$col` and `$grid`).

While you could argue that this is a bug in the other module,
I think this additional context is beneficial for the main
GridFieldDataColumns use case as well, and it just happens to fix that bug.
2020-07-09 09:33:21 +12:00
rdigitalg 3bf89b2d13
FIX Try Catch for embeded media (#9424)
* Try Catch for embeded media
* added missing namespaces, translatable message INVALID_URL
* generate tag only once
* catch after closing bracket
* space after comma
* Update src/View/Shortcodes/EmbedShortcodeProvider.php
* Linting
Co-authored-by: ivan@digitalgarage.ro <ivan@digitalgarage.ro>
Co-authored-by: Steve Boyd <emteknetnz@gmail.com>
Co-authored-by: Loz Calver <kinglozzer@gmail.com>
2020-07-03 13:04:54 +12:00
Sam Minnee 01d3b4fd96 FIX: Set many-many-through joinRecord on newly added records.
When many-many-through relations are queried, a joinRecord is set on
each DataObject in the list to provide the extra fields defined on
the connector object. This didn’t previously happen when the record
was first add()ed to a list. This fixes that bug.
2020-07-02 15:18:12 +12:00
Maxime Rainville ec83959f2c API Remove UpgradeBootstrap (not part of our official API) 2020-06-30 21:35:51 +12:00
Jackson Darlow 57d75c89d5
NEW Added onAfterBuild (#9545)
* Added onAfterBuild
* Remove arbitrary argument
2020-06-30 16:56:14 +12:00
Steve Boyd 16914bfdfc
Merge pull request #9531 from alessandromarotta/patch-1
DBField Documentation correction
2020-06-30 13:00:20 +12:00
Tom Yrjas 00ee8d8abf BUGFIX: Re-declare $items to be an ArrayList if it's null
getBackLink() modified to tolerate empty ArrayList
2020-06-29 16:07:24 +03:00
Tom Yrjas 824b5e0b67 BUGFIX: Ensure $items isn't null in GridFieldDetailForm_ItemRequest->Breadcrumbs() prior to performing operations on it. 2020-06-29 14:13:49 +03:00
Aaron Carlino 658ca4deb1 MINOR: Add noindex metatag to debugview 2020-06-25 12:09:28 +12:00
Sam Minnée 714c4cba9c
Merge pull request #9546 from andrewandante/feature/disambiguate_first_methods_on_lists
deprecate First and Last in order to disambiguate for array lists
2020-06-23 14:46:29 +12:00
Serge Latyntcev b4669ad1bb FIX 4.6 regression in the TempDatabase reset schema logic 2020-06-22 16:17:14 +12:00
Andrew Aitken-Fincham 09dca5fa9e
Update deprecation notice to 5.0.0
Co-authored-by: Robbie Averill <robbie@averill.co.nz>
2020-06-18 21:40:20 +01:00
Andrew Aitken-Fincham 34f660a311
Update src/View/SSViewer_BasicIteratorSupport.php
Co-authored-by: Robbie Averill <robbie@averill.co.nz>
2020-06-18 21:39:32 +01:00
Guy Marriott 4df45f4fe0
Merge pull request #9550 from jakxnz/pulls/4/docs-regarding-cached-get-ones
Added documentation regarding some cached ORM scenarios
2020-06-17 09:04:07 -07:00
Jackson Darlow 6813c0f7e8 Added documentation regarding some cached ORM scenarios 2020-06-17 17:17:04 +12:00
Guy Marriott 9eadef19d3
Merge pull request #9544 from jakxnz/pulls/4.6/dataextension-doc-blocks 2020-06-15 23:32:59 -07:00
Guy Marriott 1a6e2da995
Merge pull request #9543 from jakxnz/pulls/4.6/undeclared-private-statics 2020-06-15 23:16:57 -07:00
Andrew Aitken-Fincham 7c95237e8d update template docs, move deprecation to 5.0, capitalise Is 2020-06-15 12:25:13 +01:00
Jackson Darlow dadac00c19
Added array declaration to `GridFieldDetailForm_ItemRequest::$formActions`
Co-authored-by: Robbie Averill <robbie@averill.co.nz>
2020-06-15 11:45:33 +12:00
Jackson Darlow 1edd8fd754
Added array declaration to `DevelopmentAdmin::$registered_controllers`
Co-authored-by: Robbie Averill <robbie@averill.co.nz>
2020-06-15 11:45:10 +12:00
Jackson Darlow fcc7a9ce5b
Added array declaration to `VersionProvider::$modules`
Co-authored-by: Robbie Averill <robbie@averill.co.nz>
2020-06-15 11:44:43 +12:00
Jackson Darlow dfe8d23ffc Added extra type-hints to DataExtension DocBlocks 2020-06-12 13:45:14 +12:00
Andrew Aitken-Fincham 2e0e04f701 fix deprecation notices 2020-06-12 01:38:24 +01:00
Steve Boyd 7d87ba72d5 Merge branch '4.6' into 4 2020-06-12 11:20:53 +12:00
Steve Boyd 4daccfab67 Merge branch '4.5' into 4.6 2020-06-12 11:20:13 +12:00
Andrew Aitken-Fincham bac826bc06 deprecate First and Last in order to disambiguate for array lists 2020-06-11 23:45:42 +01:00
Jackson Darlow 2175de9560 Adjusted DataExtension DocBlocks to another degree of detail 2020-06-12 10:19:15 +12:00
Jackson Darlow 0d6572a2d6 Added DocBlocks to DataExtension methods 2020-06-11 17:04:45 +12:00
Jackson Darlow 84235c6518 Adjusted missing definitions to only include definitions referenced by framework 2020-06-11 14:28:47 +12:00
Jackson Darlow dfc01457d6 #3236 Added missing config definitions (private statics) 2020-06-11 13:35:15 +12:00
Alessandro Marotta fa406c1115
Documentation correction 2020-06-02 09:33:52 +02:00
Christopher Darling 4303917ac5
DOCS Form::loadDataFrom constants in docblock
... missing MERGE_ prefix as defined in this class
2020-05-28 16:40:12 +01:00
Sam Minnée eb658e0705
Merge pull request #9528 from silverstripe-terraformers/bugfix/remove-recursive-write-rebased
Remove recursive write until its fixed [Rebased]
2020-05-28 17:12:36 +12:00
Adrian Humphreys d320026375
Remove recursive write until its fixed 2020-05-28 14:34:55 +12:00
cpenny d4165db690 Update getter name to getCMSCompositeValidator 2020-05-28 12:23:35 +12:00
cpenny 8ba65313e9 Add internal note for protected method 2020-05-28 11:18:46 +12:00
cpenny bca4be77ed Update name to CompositeValidator. Add docblocks 2020-05-28 11:18:46 +12:00
cpenny a2b57f0801 Update DefaultFormFactory extension point. Use array for validators 2020-05-28 11:18:46 +12:00
cpenny 11e2005b9b Add deprecation notice for 4.6 and update docs 2020-05-28 11:18:46 +12:00
cpenny f977f9734c Add base updateValidatorList method to DataExtension 2020-05-28 11:18:46 +12:00
cpenny b45a3561df Implemented PR feedback. Added some initial test cov 2020-05-28 11:18:46 +12:00
cpenny d7dd93f7a7 Standardise getCMSValidator for DataObjects/Forms 2020-05-28 11:18:46 +12:00
Maxime Rainville acccdd8a1c Merge branch '4.5' into 4 2020-05-26 14:31:06 +12:00
Maxime Rainville 42bb28965c Merge branch '4.4' into 4.5 2020-05-26 14:30:27 +12:00
Maxime Rainville 395893b559 Merge branch '4.3' into 4.4 2020-05-26 14:30:02 +12:00
Maxime Rainville 86fcb9e29c Merge branch '4.2' into 4.3 2020-05-26 14:29:16 +12:00
Daniel Hensby 080ce157ce
Fix various typos in comments 2020-05-16 10:34:53 +01:00
Michal Kleiner 21129b1624
Use short array syntax across the framework's codebase 2020-05-16 10:34:45 +01:00
Brett Tasker 1d19051c10 Add sha1 and md5 hashing options in resource URL 2020-05-12 18:14:03 +12:00
Alessandro Marotta f3d1e308e5 Update Member.php
The public function isLockedOut() in Member.php call LoginAttempt::getByEmail but serves to it the unique_identifier_field.

This PR could allow to extensions to patch the use of uniqueidentifierfield (otherwise it would be necessary to extends the Member Class to override the isLockedOut function, with a lot of problems)
2020-05-10 19:07:22 +02:00
Matt Clegg 153e2383e6
DOCS: Minor typo 2020-05-10 08:01:10 +05:45
Mojmir Fendek 7dc6b36c16
Unique key for DataObject (#9400)
NEW Unique key for DataObject
2020-05-04 09:10:51 +12:00
Andre Kiste 3a424747df
Merge pull request #9332 from shoosah/feature/add-error-message-into-field
Allow to add error message into a specific field
2020-05-01 15:46:29 +12:00
Andre Kiste ec51f98adb
Merge pull request #8870 from jinjie/4
Fix: Allow editing of relation if item is created.
2020-05-01 15:37:52 +12:00
Guy Marriott 693c4cde46
Merge pull request #9499 from lekoala/patch-16 2020-04-28 12:23:28 -07:00
Thomas Portelange 2f3c0fc8dd
Update src/Control/Session.php
Co-Authored-By: Guy Marriott <guy.the.person@gmail.com>
2020-04-28 19:21:52 +02:00
Robbie Averill 8bd9f48669
Merge pull request #9501 from mattclegg/1588075087
DOCS: Fix typos & grammer
2020-04-28 09:42:03 -07:00
mattclegg dbecdd52d2
DOCS: Add reference for undocumented TEMP_FOLDER 2020-04-28 17:51:25 +05:45
mattclegg df8cb9e010
DOCS: Update `filter` to use correct class 2020-04-28 17:50:40 +05:45
mattclegg 76bc7524a7
DOCS: Fix typos & grammer 2020-04-28 17:50:39 +05:45
Thomas Portelange b38c35fe90
Fixes warning if session is not active
See issue https://github.com/silverstripe/silverstripe-framework/issues/9496
2020-04-27 13:51:19 +02:00
Dan Hensby 28ba4f701a
Merge branch '4.5' into 4 2020-04-27 09:54:27 +01:00
Dan Hensby 13b4d60d4a
Merge branch '4.4' into 4.5 2020-04-27 09:53:42 +01:00
Dan Hensby 85b37999be
Merge branch '4.3' into 4.4 2020-04-27 09:52:52 +01:00
Dan Hensby e328d6f0d9
Merge branch '4.2' into 4.3 2020-04-27 09:51:24 +01:00
Dan Hensby 33b0b6985a
Update file paths for autoloading compatibility 2020-04-25 10:28:28 +01:00
Dan Hensby b9f8ab44ac
Rename DBBigint.php for composer autoloading compatability 2020-04-24 23:15:42 +01:00
Garion Herman 50484417da Merge branch '4.5' into 4 2020-04-23 23:11:46 +12:00
Daniel Hensby 42cee6f5fb
Merge pull request #9489 from mattclegg/1587548067
DOCS: Fix typos
2020-04-22 12:28:02 +01:00
Daniel Hensby 826d1fa4eb
Merge pull request #9491 from mattclegg/1587548119
DOCS: Remove unnecessary `return`
2020-04-22 12:22:15 +01:00
mattclegg 2f717a4d90
DOCS: Remove unnecessary `return` 2020-04-22 15:50:12 +05:45
mattclegg d521a52a33
DOCS: Fix typos 2020-04-22 15:20:11 +05:45
Daniel Hensby 237b2d5f74
Convert array delcarations to short array syntax 2020-04-20 18:58:09 +01:00
Garion Herman 9aba767e36
Merge pull request #9460 from chrometoasters/pulls/fix-9459-public-path
Fix SS_BASE_URL logic when undefined and docroot without public folder
2020-04-20 21:06:46 +12:00
Garion Herman f94078d963
Merge pull request #9408 from chrometoasters/pulls/classes-with-extension
Add ClassInfo method to get all classes with a given extension applied
2020-04-20 20:11:01 +12:00
Loz Calver e08bf1cdd9
Merge pull request #9461 from creative-commoners/pulls/4/remove-db-config-glob
Cache results of _configure_database.php glob
2020-04-20 08:45:48 +01:00
mattclegg 2169891651
BUGFIX: Ensure realpath returns a string for stripos
[Deprecated] stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior
2020-04-19 11:21:34 +05:45
Serge Latyntcev cb36aab80c Merge branch '4.5' into 4 2020-04-15 14:49:19 +12:00
Maxime Rainville 7da77be5ce Merge branch '4.5' into 4 2020-04-15 08:22:27 +12:00
Daniel Hensby 03239f9dcc
Merge pull request #9454 from open-sausages/pulls/4/myisam
NEW Allow InnoDB for FULLTEXT indexes
2020-04-14 11:50:45 +01:00
mattclegg 60e670176a
DOCS: Correct spelling 2020-04-14 15:00:08 +05:45