Commit Graph

4780 Commits

Author SHA1 Message Date
Luke Towers b407f26e02 Add support for \Path\To\Class::staticMethodName for defining field options.
Related: 95d0b61a29
2020-09-10 12:12:46 -06:00
Ben Thomson 619be11d23
Make "october:env" command privileged.
This allows developers to use the command even if plugins are failing to boot due to missing configuration options (such as the DB configuration being incorrect). Previously, plugins which use the database in boot would prevent the command from running if the database details were incorrect.

This change removes a barrier from configuring your site correctly.
2020-09-09 17:47:18 +08:00
Ben Thomson b251867f56
Use path.config binding in "october:env" to allow unit test to work 2020-09-09 12:38:48 +08:00
Raja Khoury 561815cac1
Define beforeAddAsset properties as references in docs. (#5269) 2020-09-09 10:18:51 +08:00
Luke Towers 2c4d3c9f98 Fix issue where URLs generated by the ImageResizer were not correctly encoded.
Related https://github.com/laravel/framework/issues/34199
2020-09-08 16:04:40 -06:00
Luke Towers ce47c0248f Fix issue displaying protected file thumbnails when width or height is empty.
Related #5267
2020-09-07 15:23:00 -06:00
lctoan 1ef50d4751
Improve Taiwanese translations (#5264) 2020-09-07 09:48:12 -06:00
Luke Towers 79cbfa34a6 Composer updates for 1.1.0 2020-09-06 21:07:10 -06:00
Luke Towers fd2d634b5e Composer updates for 1.0.469 2020-09-06 21:05:00 -06:00
Luke Towers 482167d1d1 Merge branch '1.0' into develop 2020-09-04 15:23:02 -06:00
Luke Towers e9e4210842 Allow infinitely nested CmsObjects that may have been permitted to load previously through the filesystem continue to load. 2020-09-04 15:22:48 -06:00
Luke Towers 91e4e96929 Allow the Filter widget container to be targeted by the AJAX framework 2020-09-04 14:29:06 -06:00
Luke Towers dd5fd34ae7 Merge branch '1.0' into develop 2020-09-04 01:27:53 -06:00
Luke Towers 7cb148c167 minor cleanup and docblocks 2020-09-04 01:23:03 -06:00
Samuel Georges ceb2ff8a6e Clean up redundancies 2020-09-04 13:35:21 +10:00
Samuel Georges 4c650bb775 Security fixes for v1.0.469
Introduces sandbox policy to block extendable methods allowing arbitrary code execution
2020-09-04 13:02:01 +10:00
Ben Thomson 5bceda9496
Add "changes" option for "october:version" command.
Will include a list of added/modified/removed files when detecting the October CMS build.
2020-09-03 11:48:35 +08:00
Ben Thomson 4141646105
Implement improved "set build" replacement (#5087)
This change implements an improved "set build" utility through the "october:version" Artisan command that, instead of checking the October CMS server for the latest build, checks the module files against a source manifest kept on GitHub.

This check allows us to accurately determine the build based on the module files in the October CMS installation, and can even detect versions if the module files are modified (except in the cases of extreme modification).

An additional utility has been implemented, "october:manifest", which will build the manifest JSON file in order to provide the maintainers with a way of generating this manifest file as required.

Replaces #4615.
2020-09-02 14:48:08 +08:00
Web-VPF 50bdfa0c39
Improve Russian translations (#5258) 2020-09-02 11:58:00 +08:00
Luke Towers bf241baee7 Fix handling some target values for linkable tabs.
Replaces #5257
2020-09-01 13:27:03 -06:00
Ben Thomson 32c63e0e3c
Reorder cases to keep default at bottom as per established style 2020-08-31 16:00:21 +08:00
Ben Thomson dce3931f20
Clean up uncustomised partials if they are no longer provided.
An exception was being thrown in some instances if a partial had been added to the DB that was provided by a plugin that no longer exists, or had been disabled. This will remove any partials provided by non-existent plugins, only if they haven't been subsequently customised by the developer.

Fixes https://github.com/octobercms/october/issues/5065
2020-08-31 14:18:53 +08:00
Ben Thomson ce8c96b66f
Automatically set SMTP port depending on mail encryption type.
This only occurs if the SMTP port field is using a standard port (25, 465, 587). Custom ports are not overwritten.

Fixes https://github.com/octobercms/october/issues/4755
2020-08-31 11:21:50 +08:00
Luke Towers acd0616aaa Fix typo, credit to @alxy for identifying 2020-08-30 02:08:06 -06:00
Luke Towers 812c0552e8 Avoid logging SystemExceptions twice
SystemExceptions are already logged when the System ServiceProvider listens to the Message Logged event, this code used to be for ApplicationExceptions to bypass the fact that they were explicitly ignored by October's core exception handler.

ApplicationExceptions were added 27 Jan 2015 in 6a68036260
ApplicationExceptions were explicitly ignored in the core exception handler on 16 Feb 2015 in 237d97d87a (diff-b6bf0348130fdd1311473a97536310cdR20) and were explicitly logged in the System exception handler on the same day in 7b52e07b65 (diff-547f5794a63e9f138c33b20de8649b7eR20-R31)

Not sure why that was originally the case, but we've made the decision that ApplicationExceptions shouldn't be logged by default as they should occur semi-regularly in a healthy application (mostly as an expression of complex logical validation that triggers them based on bad user input): https://github.com/octobercms/october/pull/4569#issuecomment-550172508

Fixes octobercms/october#5253.
2020-08-28 13:57:12 -06:00
Luke Towers 6b214edf1f Add getAllPlugins() method to PluginManager 2020-08-27 15:47:42 -06:00
Luke Towers 19ebc8854e Remove unnecessary $sourceDisk & $sourcePath variables.
The $resizer instance provides access to the necessary data.
2020-08-25 11:06:38 -06:00
Luke Towers 0eac129003 Improve support for invalid inputs provided to the resize filter. 2020-08-24 15:24:40 -06:00
Luke Towers 2126cd3a0b Added $sourceDisk and $sourcePath as parameters to the image resizing events for better logging 2020-08-24 11:00:54 -06:00
Ben Thomson c75231c60e
Fix repeated condition in thumbnail options 2020-08-24 21:34:28 +08:00
Ben Thomson 684d18ffc4
Clean up 2020-08-24 15:23:49 +08:00
Ben Thomson d104d47911
Clear relation fields when unlinking a relation 2020-08-24 15:18:33 +08:00
Ben Thomson b51428f585
Unassign previous hasOne relation when creating or linking a new record.
Prevents multiple relations existing for a hasOne relation when used in a Relation widget.
2020-08-24 15:17:38 +08:00
Ben Thomson e384a37457
Apply same fix from 5a843bc to the create action as well 2020-08-24 15:16:01 +08:00
Luke Towers d3e346013d minor inline doc correction 2020-08-23 23:58:31 -06:00
Luke Towers 5a843bc909 Fix support for updating belongsTo relationships with the RelationController.
Fixes #5198, #5243; replaces #5217. Related: 6e25c5a8d0#
2020-08-23 23:57:05 -06:00
Web-VPF f708754f07
Update Russian translation (#5247) 2020-08-23 02:51:48 -06:00
Luke Towers edae0c2476 Allow aliased non-compound use statements in the code section.
Follow up to: c1bb695f4b (diff-2040a96d3a0b43fe38675a7ee54fd8d6)
2020-08-23 01:23:06 -06:00
Luke Towers c1c728e413
Merge pull request #5231 from octobercms/wip/image-resizing
Implement core support for `| resize(width, height, options)` filter
2020-08-21 18:01:47 -06:00
Luke Towers 779a87999c Added support for new "image" column type that uses the ImageResizer class 2020-08-21 17:54:31 -06:00
Luke Towers 38718e0b5d Fixed bug where FileModel images wouldn't properly store their config after being retrieved from the cache 2020-08-21 17:53:28 -06:00
Luke Towers a25567c750 Use the same resizing process for FileModels that's used for everything else. 2020-08-21 16:22:14 -06:00
Luke Towers 825075a19b Fix support for Windows 2020-08-21 16:07:48 -06:00
Luke Towers 1e6573cc62 Cleaned up inline docs for ImageResizer, fixed tests 2020-08-21 14:07:23 -06:00
Luke Towers 444069da00 Finished implement imageWidth & imageHeight filters 2020-08-21 13:39:45 -06:00
Luke Towers 3864e5b1c6 Allow plugin view & configuration files to be registered on protected routes
Fixes #5245
2020-08-19 09:57:57 -06:00
Luke Towers 3f58951855 wip on imageWidth / imageHeight filter 2020-08-19 09:49:13 -06:00
Luke Towers 05731b1069 Fix bug 2020-08-18 13:41:53 -06:00
Ben Thomson 0020809634
Additional work on tests, should pass now 2020-08-17 16:41:49 +08:00
Ben Thomson 1fd9529786
Add 'auto' height and width options 2020-08-17 12:07:52 +08:00
Ben Thomson c25e41d51a
Remove unneeded use case 2020-08-17 10:32:52 +08:00
Luke Towers f29562023d Disable HTML5 form validation on backend Settings pages
Fixes #5239.
2020-08-15 20:59:53 -06:00
Luke Towers f346312266 Minor improvements 2020-08-15 00:55:17 -06:00
Luke Towers 7fde924ec1 Finish implementing october:util purge uploads command.
Only works for uploads stored on the local disk right now, support for remote disks may be added in the future at some point.

Replaces #4518 & #4029. Credit to @LukeTowers, @BennoThommo, & @austinderrick.
2020-08-15 00:33:08 -06:00
Luke Towers 75e6633926 Merge branch 'wip/image-resizing' of github.com:octobercms/october into wip/image-resizing 2020-08-14 15:39:48 -06:00
Luke Towers 288918a7d7 Finished initial implementation of resizer for all supported input image sources, added the storage/app/resized directory to the mirror command 2020-08-14 15:39:30 -06:00
Ben Thomson 064fc1fe36
Merge branch 'develop' into wip/image-resizing 2020-08-14 15:14:48 +08:00
Luke Towers 2351f2104d Implemented resizing logic for File models, fixed bugs 2020-08-13 20:58:48 -06:00
Ben Thomson c7ed0ffa1a
Implement improved testing procedure (#5238)
Refs: 5feb7b872f
2020-08-14 08:00:39 +08:00
Luke Towers 04de6ef0e2 Play nicer with tests 2020-08-13 03:15:53 -06:00
Luke Towers f54b167f00 Merge branch 'develop' into wip/image-resizing 2020-08-13 03:11:20 -06:00
Luke Towers 17664dce6c Reorganized the ImageResizer class 2020-08-13 03:10:30 -06:00
Luke Towers 9cb8a0861b Finished implementing support for retrieving thumb URLs from FileModels, initial support for detecting completed resize operations 2020-08-13 03:02:06 -06:00
Ben Thomson 3a1f547adb
Use new PathResolver methods for handling file Asset / Object paths 2020-08-13 12:48:07 +08:00
moisessepulveda cdb8acd214
Improvements to Spanish translations (#5237) 2020-08-13 12:03:35 +08:00
Ben Thomson 8bc440defa
Revert "Change File model to use fillable as opposed to guardable attributes"
This reverts commit abfe156d8d.
2020-08-10 09:17:32 +08:00
Ben Thomson abfe156d8d
Change File model to use fillable as opposed to guardable attributes 2020-08-10 09:07:24 +08:00
Luke Towers b4dd25534e Merge branch 'develop' into wip/image-resizing 2020-08-09 04:26:48 -06:00
Luke Towers a992fb44bc Support the resized URL as a route param instead of GET variable, initial WIP on supporting File models 2020-08-09 03:07:07 -06:00
Luke Towers 6926908dad required code from last commit 2020-08-08 20:18:11 -06:00
Luke Towers 263ae871b7 More WIP on image resizer
Refactored resizer URLs to support custom disks, switched to using a signed version of the resized image's URL as the identifier for the configuration
2020-08-08 20:17:35 -06:00
Luke Towers 7b9408e394 More WIP, moved logic in the appropriate locations 2020-08-07 23:27:32 -06:00
Ben Thomson 50e61df10e
Fix path validation for CmsObjects & Assets (#5229)
Instead of using a temporary file to allow checks with `realpath()` to succeed, use the new `resolve_path()` helper added in a9a629b012 to replace the `realpath()` usage and allow for path resolution of files that don't exist yet.

This will allow new asset files to still be saved correctly, whilst still preventing paths outside of the assets directory to be used.

Replaces b1954e9258.
2020-08-05 12:00:22 -06:00
Luke Towers 0a9c751e1b Merge branch 'develop' into wip/laravel-6 2020-08-03 01:49:06 -06:00
Ben Thomson df2b8b5817
Recompile Storm UI JS asset 2020-08-03 11:07:55 +08:00
Luke Towers 18af35d928 Prevent error from occurring when the active sorting column is hidden from the results.
Fixes #5227
2020-07-30 10:54:09 -06:00
Luke Towers b1954e9258 Fix creating asset files
Fixes #5228
2020-07-30 10:35:02 -06:00
Ben Thomson 7f7bc04288
Merge remote-tracking branch 'origin/develop' into wip/laravel-6 2020-07-26 15:02:08 +08:00
Ben Thomson d49266ad90
Make popup textarea HTML5-compliant in Inspector editor.
Previously, this was a self-closing tag with a value attribute. Neither are supported for the textarea tag in HTML5. It appears that browsers now are actually checking this and/or won't work with it.

Fixes #5222.
2020-07-25 22:52:23 +08:00
Ben Thomson 0dee0e54b1
Alias Illuminate\Support\Debug\HtmlDumper to Symfony's HtmlDumper 2020-07-20 10:40:50 +08:00
Luke Towers 6ea06b3d8e restore original password min length value 2020-07-19 02:07:09 -06:00
Luke Towers 18714ae9f0 Add L6 as a dep to the modules to prevent people with older Laravel versions from accidentally pulling in the L6 update 2020-07-19 01:42:58 -06:00
Luke Towers 1aab58d1e4 Merge branch 'develop' into wip/laravel-6 2020-07-19 01:35:37 -06:00
Luke Towers a56e0cdf61 Use Arabic numerals instead of Indic ones for Arabic date translations.
Fixes #5213
2020-07-19 01:15:07 -06:00
Luke Towers c1fd1b9346 Fix support for ignoreTimezone in date filter types
Fixes #5197
2020-07-19 01:01:09 -06:00
Klaas Poortinga 517c588ef7
Fix filter type "group" when 500+ options are available (#5141)
When 500 options or more are presented in a group filter, PHP `max_input_vars` limits may prevent the filter from working. This fix passes selected options through as a JSON string to get around the limits.
2020-07-17 17:12:41 +08:00
Luke Towers d17b6eaf32 Merge branch 'develop' into wip/laravel-6 2020-07-17 00:47:32 -06:00
Ben Thomson 70eac9b0e2
Recompile assets 2020-07-16 18:00:19 +08:00
Patrick Boivin 987dfa4eb7
Add Paragraph Formats to Editor Settings (#4861)
Co-authored-by: Luke Towers <github@luketowers.ca>
Co-authored-by: Ben Thomson <ben@abweb.com.au>
2020-07-16 17:54:21 +08:00
Ruben van Erk 3be6e26e84
Clear input after creating tag (#5053)
When using the taglist field type, the input isn't cleared after a tag has been created. This problem is described here: https://github.com/select2/select2/issues/4698
This change fixes that issue.
2020-07-16 17:26:49 +08:00
Romain 'Maz' BILLOIR 745bdf9022
Add missing French translations (#5210) 2020-07-16 16:42:28 +08:00
Ben Thomson 8fd1ddf7aa
Provide an accessor for the form widget of the Settings controller (#5212)
Co-authored-by: Luke Towers <github@luketowers.ca>
2020-07-15 14:04:01 +08:00
Ben Thomson 327d7be604
Merge remote-tracking branch 'origin/develop' into wip/laravel-6 2020-07-10 16:02:01 +08:00
Ben Thomson bb3d018590
Add fallback alias for Illuminate\Support\Facades\Input
This will redirect any instances of the now-removed Input facade from Laravel to the Rain library's Input facade.
2020-07-10 15:56:11 +08:00
Luke Towers c1bb695f4b
Fix "use statement with non-compound names has no effect" (#5206)
Fixes #5205.
2020-07-09 02:19:36 -06:00
Ben Thomson 4950edc196
Add sensitive field input (#5201)
A field widget that allows for entering of sensitive information that can be revealed at the user's request - ie. API keys, secrets.

When a sensitive field that has been previously populated is loaded again, a placeholder is used instead of the real value, until the user opts to reveal the value. The real value is loaded via AJAX.

Credit to @tomaszstrojny for the original implementation.

Replaces #5062. Fixes #5061, #1850, perhaps #1061.

Co-authored-by: Tomasz Strojny <tomasz@init.biz>
Co-authored-by: Luke Towers <github@luketowers.ca>
2020-07-08 16:26:38 +08:00
Ben Thomson 9412a2bb20
Merge remote-tracking branch 'origin/develop' into wip/laravel-6 2020-07-01 10:42:33 +08:00
Meysam 9082a231a6
Document Select2's dynamic option creation (#5052) 2020-07-01 10:11:16 +08:00
Luke Towers dea03a698c Use the Lang facade rather than the trans helper function 2020-06-28 11:14:35 -06:00
Luke Towers c84c51c820 Improve error message when attempting to fork an unforkable component.
Fixes #5142 and rainlab/forum-plugin#141
2020-06-28 10:57:47 -06:00