Commit Graph

341 Commits

Author SHA1 Message Date
Levente Huszko edcc4af68a Properly utilize the plainOnly flag in mail.beforeAddContent (#3479)
Credit to @hlev
2018-09-24 16:54:16 -06:00
TimFoerster 51d79ffaba Make auto inline brand CSS for email layouts optional (#3192)
Fixes #3133. Credit to @TimFoerster. Thanks to all the reviewers from #3192.
2018-09-23 20:49:19 -06:00
Rike-cz a03a76ee52 Finish implementing localPath in combineToFile (#3727)
Fixes #3721. Credit to @Rike-cz
2018-09-23 14:38:59 -06:00
chrisbethelepb 0ffdbc5efd Relax restrictions on MediaLibrary filenames (#3778)
Fixes #3741. Credit to @chrisbethelepb
2018-09-12 11:37:21 -06:00
Nathan van der Werf 8fd16d4db6
Merge branch 'develop' into feature/cleanup
# Conflicts:
#	modules/backend/formwidgets/FileUpload.php
2018-08-24 19:52:54 +02:00
Nathan van der Werf 0f0d108da0
Remove unused imports 2018-08-24 19:51:59 +02:00
Nathan van der Werf 66fa03f17e
Revert "Remove unused imports"
This reverts commit 742a5f415b.
2018-08-24 19:40:40 +02:00
Samuel Georges bf841b4340 Minor peer review 2018-08-21 13:24:59 +10:00
Samuel Georges ab4074cec1 Extra table check
Fixes #3706
2018-08-18 12:52:05 +10:00
Samuel Georges ab7dda260b User disabled plugins now stay disabled after sign in
Fixes #1795
Fixes #3691
2018-08-16 14:11:05 +10:00
Nathan van der Werf ee9414f3fd Simplify ternary operators 2018-08-15 19:26:20 +02:00
Nathan van der Werf 8b6f11e6ac Extract child instructions 2018-08-15 19:25:42 +02:00
Nathan van der Werf fbca3bea92 Remove redundant variables 2018-08-15 19:23:12 +02:00
Nathan van der Werf 62c59a4903 Refactor ternary operators to null coalescing operators 2018-08-15 19:15:13 +02:00
Nathan van der Werf a3d7a028b4 Replace is_null with "=== null" comparison 2018-08-15 18:54:46 +02:00
Nathan van der Werf 123145fd54 Remove unnecessary parentheses 2018-08-15 18:49:52 +02:00
Nathan van der Werf a075be206b Replace class references with "self" 2018-08-15 18:47:06 +02:00
Nathan van der Werf 02bd38cfb1 Merge if constructs 2018-08-15 18:45:37 +02:00
Nathan van der Werf 742a5f415b Remove unused imports 2018-08-15 18:27:36 +02:00
Szabó Gergő b564e3178d Only add missing dependencies once (#3682)
Only add missing dependencies to the list of missing dependencies once per dependency. Credit to @gergo85
2018-08-09 07:39:37 -06:00
Jim Cottrell bfee483805 Adds support for minifying framework assets (#3240)
Fixes #2753. Credit to @jimcottrell
2018-07-05 17:57:17 -04:00
Samuel Georges 000a880742 Alternative fix to #3607
Fixes #3607
Fixes #3606
2018-06-29 14:20:55 +10:00
Scott Bedard 8b650e3bd0 Display error when migration file is not found (#3597)
Fixes #3590. Credit to @scottbedard
2018-06-25 15:51:07 -06:00
Samuel Georges fb2aa1730c Fixes security issue
Refs #3604
2018-06-22 22:57:38 +10:00
Luke Towers 4d304645d7 Added readonly support to the mediamanager widget and the ability to set the MediaLibary cache key through code 2018-04-19 10:23:15 -06:00
Luke Towers 23a504d9d5
Allow settings models and controllers to be defined in one definition
This change allows both settings models and custom settings controllers to be registered in one definition by preventing overwriting of the provided `url` when present. This enables the use case of extending the base \System\Controllers\Settings controller to implement custom functionality on your settings controller while retaining the majority of the default functionality enabled through the use of a SettingsModel.
2018-03-20 13:40:14 -06:00
Raja Khoury d977ba54b5 Fixes S3 media items in bucket root folders (#3461)
FIxes #3445. Credit to @rajakhoury
2018-03-20 10:57:13 -06:00
Alexander Shapoval 13596c8629 Add Cache-Control header to combined assets (#3430)
Related: #2474
2018-03-06 08:31:37 -06:00
Samuel Georges 669a4cee6e Merge branch 'maintenance-mediamanager' into develop 2017-10-16 17:56:34 +11:00
Samuel Georges 2a1234d21c Update MM lang refs 2017-10-16 17:52:50 +11:00
James Allen a697970b92 fix documentation #3160 2017-10-10 21:24:56 -04:00
Harmen Janssen a2a91a38e6 Added PluginManager::unregisterAll() (#3156) 2017-10-08 12:14:17 -06:00
Luke Towers a24da988ae Moving MediaLibrary and MediaLibraryItem classes to the System module 2017-09-27 22:10:20 -06:00
Peter Halverson dc50b34c7b Edge support for `october:util set build` 2017-08-15 17:02:57 -06:00
Samuel Georges 5a417d72d3 Sending raw markdown emails
If raw == (string) content, then it is a markdown email (html/text are ignored -- markdown sets them)
If raw == (bool) true, then it is true raw (html/text must be supplied)
2017-07-30 00:25:11 +10:00
Samuel Georges d8df4f6c18 extractCore no longer needs args 2017-07-29 16:21:34 +10:00
Samuel Georges 1a365b10b7 Decouple extracting core and set build number
There is an unfortunate workflow issue when updating from Build 419 -> Build 420 via the back-end, which seems unavoidable. The first update will fail because there is some logic that occurs after the core zip is extracted, this results in a half 5.1 / half 5.5 version of the app running and it chokes. Refreshing the page and performing the update again fixes it.
2017-07-29 16:10:37 +10:00
Samuel Georges 3abd61244a Code dusting 2017-07-29 15:33:51 +10:00
Samuel Georges 5346617a91 Archive unlink comes last to allow retry
If the file is deleted and subsequent logic fails, clicking Retry is a show stopper
2017-07-29 15:18:46 +10:00
Samuel Georges 5eddd13fe2 Rem debug code 2017-07-26 17:49:05 +10:00
Samuel Georges 18b9253bcb Change to mail partial syntax 2017-07-26 17:48:00 +10:00
Samuel Georges f1ac7eea3b Typo 2017-07-25 17:46:21 +10:00
Samuel Georges 3f0e6d8b29 Register `appName` as global view variable
Minor mail template improvements
2017-07-23 17:20:53 +10:00
Samuel Georges b2b82588f2 Implement CSS to inline styles
Refit system layout
2017-07-22 21:49:48 +10:00
Samuel Georges 261760e4c8 Reset mail brand settings to default
UX fixes to mailtemplates controller, active tab now remains active and redirects leverage active tab setting
2017-07-22 21:20:25 +10:00
Samuel Georges 744bf6af6e Consolidate methods 2017-07-22 20:19:03 +10:00
Samuel Georges 28c30daa4f Use safe md parsing for mail
Ensure backward compatibility by disabling indented code blocks for mail templates
Tweak mail brand colors to match October
2017-07-22 19:01:20 +10:00
Samuel Georges 4e5ac44999 Create remaining mail partials
Improve mail partial lookup method
2017-07-22 18:03:58 +10:00
Samuel Georges 31ffadbc4c Introduce mail branding settings 2017-07-22 17:20:48 +10:00
Samuel Georges 4663531de2 Introduce mail partials + twig
Improve layout seeding
2017-07-19 21:14:08 +10:00
Samuel Georges e1629a9413 Remove system dependency on cms module
Refit #2970
2017-07-15 10:14:15 +10:00
BenjaVR c2d99e6d92 UpdateManager runs without Cms module 2017-07-15 10:11:23 +10:00
Samuel Georges 81b28e3938 Render order should be Twig -> Markdown -> Html
Use unrendered markdown as defaul text template
2017-07-15 00:55:56 +10:00
Samuel Georges 78d722adf0 Set last build number, updating via composer 2017-07-14 22:01:11 +10:00
Samuel Georges 5a4e2b6b11 Email templates now use Markdown
Move mail template management to MailManager
2017-07-14 16:20:53 +10:00
Samuel Georges 1db67af8e8 Merge remote-tracking branch 'remotes/origin/develop' into l55upgrade
Conflicts:
	modules/system/lang/en/lang.php
2017-07-11 10:48:54 +10:00
Sevdin Filiz 3dba1a8f61 Make SettingsManager more like NavigationManager (#2954)
Enables partial modification of Setting Items just like is currently supported in Menu Items
2017-07-04 08:30:48 -06:00
Samuel Georges 87f8f8feb1 Fixes inconsistency in component partial folder names
This is a breaking change that will require further attention - refs #1854

Eg: myComponent, the default component partial would use lower case folders
- /plugins/acme/test/components/mycomponent/default.htm

The theme component partial override would use case sensitive folders
- /themes/foobar/partials/myComponent/default.htm

This is fixed as
- /themes/foobar/partials/mycomponent/default.htm

Minor code fix to ModelBehavior class
2017-06-27 05:34:13 +10:00
Samuel Georges f3de51e992 Add backend and notifications settings category
URL -> url
Move mail settings below mail templates
2017-06-05 17:36:44 +10:00
Samuel Georges bab7976331 Merge branch 'develop' into l55upgrade 2017-05-20 09:08:09 +10:00
Samuel Georges 25bcc35020 Stream notes to console 2017-05-20 09:03:58 +10:00
Samuel Georges 6136e89a54 share -> singleton 2017-05-20 00:32:34 +10:00
Samuel Georges 8a95fec188 Refit october:down 2017-05-13 20:43:44 +10:00
Samuel Georges 5ea79489af pluck -> value
This is an odd one from Laravel, pluck is now value and lists is now pluck. We'll need a release note about this one.
2017-05-12 07:19:06 +10:00
Luke Towers 68e874dc97 AssetMaker Improvements (#2847)
* Check if asset file exists before symbolizing path

Adds a check to see if the asset file exists before attempting to symbolize it, this will allow the asset combiner to be passed assets with complete paths instead of only relative paths.

* Implement combiner business logic

* Improve handling of bad inputs
2017-04-27 00:17:05 -06:00
Quezler cc17b679f1 Code dusting (#2826)
Code cleaning according to PSR-2 w/ exemptions (mostly dust).
2017-04-24 21:38:19 +10:00
Samuel Georges 8aa9d25a91 Broadcast combined assets as static
Follow on from 329a275f10
Fixes #2474 (again)
2017-03-31 13:02:16 +11:00
Samuel Georges a40357cec9 Added a check for missing dependencies in two places
- System dashboard now lists missing dependencies
- Installing a plugin with missing dependencies will also attempt to install those dependencies at the same time
Fixes #36
2017-03-21 17:42:56 +11:00
Samuel Georges 0a981a25f7 API docs progress
Controller -> SystemController for consistency
2017-03-16 17:08:20 +11:00
Samuel Georges b841f9e066 {@inheritDoc} -> @inheritDoc 2017-03-16 06:26:14 +11:00
Samuel Georges ec18697ae2 Cannot use Cms\Classes\Controller as Controller because the name is already in use
Remove test code
2017-03-14 19:42:37 +11:00
Luke Towers 03fc5cb78e Merge pull request #2742 from firemankurt/master
Allows Settings to be defined in YAML
2017-03-10 14:37:02 -06:00
Kurt Jensen 0710418df7 Converted all indents to spaces
Converted all indents to spaces
2017-03-10 12:08:42 -08:00
Kurt Jensen c6d3780d10 Allows Settings to be defined in YAML
Allow settings array to be defined in the plugin.yaml file instead of just in php file.
2017-03-09 21:33:35 -08:00
Samuel Georges 462c9cd4e8 Introduce theme logging + log settings
CmsObject changes can now be tracked (disabled by default)
Request logging is now disabled by default (security vector)
2017-02-08 05:44:04 +11:00
Samuel Georges f7e80b2cb6 Added a $force flag to bootAll and registerAll method for unit tests
Fixes #2592
2017-02-05 07:09:27 +11:00
Samuel Georges 22bc5fce68 Bust OP cache for CMS template cache files
Fixes #2385
2017-01-20 07:20:08 +11:00
Samuel Georges 1a267b8d03 Code clean up from #2562 2017-01-13 06:15:59 +11:00
Samuel Georges 17d0d5dc6b Merge pull request #2562 from sw-double/feature/tables-config
Respect database tables config.
2017-01-13 06:08:27 +11:00
Konstantin L 2b5cf64ddf Use Config::get() instead of config() helper. 2017-01-10 15:51:26 +01:00
Samuel Georges 6af6ebe733 Added config backendForceSecure used to force HTTPS
Refs https://security.googleblog.com/2016/09/moving-towards-more-secure-web.html
2016-12-17 10:16:02 +11:00
Konstantin L f10de2fc10 Respect database tables config. 2016-12-15 20:57:17 +01:00
Samuel Georges e8ba7fef5b Plugin dependency definitions no longer case sensitive
Dependency checking is disabled for the front end to increase performance
2016-12-10 10:59:45 +11:00
Pásztor Gábor 94ab13cd8b Fix exception message, remove some unneded imports. 2016-12-07 21:33:05 +01:00
Samuel Georges 329a275f10 Prevent code eval on cached assets
When the request tells the server that the asset is cached, there is no point firing up the combiner, computing the contents and affecting performance. This change should result in a nice boost in secondary page load times.

Thanks to @zerkms for pointing this out

Fixes #2474
2016-11-23 08:42:47 +11:00
Pásztor Gábor cf1fda7437 Allow combine scss files from command. 2016-11-16 20:09:46 +01:00
Samuel Georges f9dd5b2f57 Plugins can now define custom list column types 2016-10-21 07:15:08 +11:00
Scott Bedard 544a8c38cd Fixing a typo 2016-09-05 08:35:43 -07:00
Samuel Georges 58c669bf1e Exception handling when disabled.json returns null
Fixes #2341
2016-09-03 12:19:22 +10:00
Samuel Georges b02e4d7ecf Resolve paths correctly when deep hashing
Fixes #2270
2016-08-05 07:51:15 +10:00
Jérémy Gaulin 2be29e6d48 Fix missing sprintf in exception message (wrong signature) 2016-07-30 10:14:21 +02:00
Samuel Georges b1a86b5f9f Performance enhancement
Don't use deep handing lastMod check if we don't have to
2016-07-30 16:14:54 +10:00
Samuel Georges 3a6bf35f06 Only need to pasa a single asset now 2016-07-30 16:06:37 +10:00
Samuel Georges cf76e4c64a Performance enhancement 2016-07-30 16:05:37 +10:00
Samuel Georges b08e2c4912 Introduce deep hashing on asset combiner
Added cms.enableAssetDeepHashing config item, disabled by default
Recompile assets
Refs #2248
Refs https://github.com/octobercms/library/pull/225
2016-07-30 15:06:50 +10:00
Samuel Georges a50d3c1387 Merge pull request #2248 from christianWilling/fix-asset-cache
Fix asset cache
2016-07-30 13:01:20 +10:00
Christian Willing 2b71055677 change spaces 2016-07-27 11:49:16 +02:00
Joel Ekström Svensson 5f7b7d8c6d Escapes exception output
Fixes #2198
2016-07-11 17:32:30 +02:00
Christian Willing 743d2d1b4e added scss to core 2016-07-10 19:44:54 +02:00
Christian Willing c343758d7c asset cache fix 2016-07-06 11:21:15 +02:00
Samuel Georges d7ef9b1738 Apply chmod rules to combiner cache 2016-06-18 09:23:16 +10:00
Pavel c34b2afd9c Removes hardcoded "Misc" settings group translation.
This pull request allows to properly show "Misc" setting group in other languages.
2016-06-12 14:23:42 +03:00
Samuel Georges 744d5654b3 ThemeData model now busts the [front-end] combiner cache
Separation of concerns, move the combiner asset variable injection logic to the cms module
Tweak readme
2016-06-03 07:22:05 +10:00
Samuel Georges 27dc84c59b ThemeData can now pass variables to the combiner
Add support for fileuploads to ThemeData
Fixes #1539
2016-06-02 05:23:05 +10:00
Samuel Georges 74a6a71bcb Parameters -> Parameter
(Models should be singular)
2016-05-31 08:17:48 +10:00
Dave Shoreman c746954c03 Make sure Project ID is always included in POST (#1728)
* Make sure Project ID is always included in POST

Attempting to install a paid plugin through Artisan would return an 'authority not found' error, when the same would work fine when clicking "Update" in the backend.

This moves the code that adds the project ID into the applyHttpAttributes method to ensure it gets added for all post requests, and not just those that are actually requesting a file.

* Remove projectId from requestUpdateList method

After moving the other setter to the applyHttpAttributes method,
this one is no longer necessary as the apply method is called from
the closure inside $this->requestServerData.
2016-05-28 16:22:55 +10:00
Jérémy Gaulin be9d65f372 Fix plugin management page - Ref #907 (#2034)
* Disable activate/deactive and delete buttons after a successful AJAX delete request.

* Allow to load disabled plugin language files for display.
2016-05-23 05:05:19 +10:00
Samuel Georges f45c04a3aa Minor logic error
Trash strict mode off during default migrations: this will occur as a one-time during the RC->stable since the code exists in the migration.
2016-04-30 06:01:51 +10:00
Samuel Georges 1c8de67610 Merge pull request #1964 from dshoreman/date-fixes
Date fixes
2016-04-30 05:21:32 +10:00
Samuel Georges 1608d80127 Reorganise code editor prefs
Fixes visual bugs
Update dashboard icon
Restyle flash messages
2016-04-30 04:53:33 +10:00
Dave Shoreman e2b110a611 Disable strict mode before running migrations
This will ensure strict mode is not applied while running migrations
for both modules and plugins, either when installing or removing.

We don't need to call disableStrictMode from UpdateManager::uninstall()
as it is called within the plugin removal methods, which are run first.

To force strict mode to be enabled, set 'strict' => true in the database config.
2016-04-29 19:32:11 +01:00
Samuel Georges 87a4de40de Address serialize/unserialize issues
This will require a cache clear for the combiner
Ref https://davidwalsh.name/php-serialize-unserialize-issues
2016-04-16 08:22:31 +10:00
Samuel Georges 2a7dbdd74a Merge branch 'stable' into ui
Conflicts:
	modules/cms/classes/CmsObject.php
	modules/cms/widgets/MediaManager.php
2016-03-25 18:42:13 +11:00
Samuel Georges 4ddc8055c6 Merge branch 'develop' into stable 2016-03-25 18:39:16 +11:00
Samuel Georges 0950959904 Do not show disabled plugins in the update list
Fixes #1716
2016-03-25 12:37:15 +11:00
Samuel Georges 2a3a63857c text/javascript is obsolete. Fixes #1847 2016-03-21 19:13:01 +11:00
Samuel Georges d76863a3ec Merge branch 'develop' into stable
Conflicts:
	composer.json
2016-02-27 14:55:52 +11:00
pawel c38b841eb8 fix function output in accordance to phpdoc and function naming 2016-02-25 01:11:29 +03:00
alekseybobkov d58b6d4d51 Fixed loading permissions from plugin.yaml 2016-02-15 17:23:10 -08:00
Samuel Georges 87f4cfc91f Use a dedicated hostname 2016-02-12 06:12:48 +11:00
Pásztor Gábor 537f637e47 Storage path 2016-01-15 10:07:39 +01:00
alekseybobkov 7d9d2176ef Merge branch 'builder-ui' into develop
Conflicts:
	modules/system/assets/ui/js/input.monitor.js
	modules/system/assets/ui/js/inspector.editor.object.js
	modules/system/assets/ui/storm-min.js
2015-12-24 14:36:31 -08:00
alekseybobkov 747ca4357f Set default focus in popup windows, minor style fix in the flash message, minor fix in YAML-based back-end navigation initialization. 2015-12-24 14:15:02 -08:00
Vojta Svoboda 3b4f915598 Update SettingsManager.php
I think that format is in Vendor.Modele format e.g. RainLab.User.
2015-12-08 11:54:38 +01:00
alekseybobkov fd33be0932 Minor update in the form change monitor API. Minor updates in the version manager to support features required for the Builder. 2015-12-06 15:01:06 -08:00
alekseybobkov 5e454ee069 Minor update in the sidebar navigation client-side code. Plugins now can load navigation menus from plugin.yaml file. 2015-11-28 19:18:08 -08:00
alekseybobkov 30eedebed9 Added the ability to load plugin permissions from the plugin.yaml file. Minor improvement in the side panel behavior. 2015-11-19 21:02:10 -08:00
Joel Ekström Svensson 7dd0d76155 Allow plugins to be symlinks
This change makes sure that plugins can be loaded even though they are symlinks. The change makes it easier to have custom schemes to handle version control with zero-downtime deployment.
2015-10-24 23:39:18 +02:00
Vojta Svoboda 16eb704793 Add missing PHPDoc @return tag 2015-10-17 09:17:37 +11:00
Alwin Drenth 98dd952d4b Fix undefined variable $filePath
Also added proper phpDoc to the PluginBase class
2015-09-29 15:02:48 +02:00
Samuel Georges 933ea641cc Adds failed jobs table (from docs)
Allow closures to be passed to Form|ListController
Tidy up server detail payload
2015-09-23 05:45:55 +10:00
Samuel Georges 9812e1f4ec Fix protection level on formExtendFields
Improve styling on collapsible sections
2015-09-10 20:42:24 +10:00
Samuel Georges b39837834b MySQL may fall asleep during core extraction, so always try to wake it up 2015-08-27 17:34:34 +10:00
Samuel Georges 6f414fe611 Default direction is ascending 2015-08-15 10:00:11 +10:00
Jérémy GAULIN e65f5c3c04 Ensure versions history are retrieved by id - Refs issue #1356 2015-08-09 20:21:41 +02:00
Samuel Georges 2a26aa6889 Fixes combiner to only move ../css when in ./less 2015-07-29 19:14:54 +10:00
Peter Soots 08da2b0b81 Ensuring version order of database histroy. 2015-07-21 18:40:50 -07:00
alekseybobkov 33b8584ab9 Merge branch 'develop' into builder-ui
Conflicts:
	modules/backend/assets/css/october.css
2015-07-15 18:12:13 -07:00
alekseybobkov 5e3818a49d General plugin details can be loaded from plugin.yaml file. Minor updates in the back-end UI. 2015-07-14 18:01:55 -07:00
Samuel Georges 733d783ada Clicking on a plugin redirects to plugin detail page
Upgrade guide can now be fetched from the server
2015-07-14 07:42:21 +10:00
Samuel Georges 6f4590404c Add logic to look for !!! in plugin updates - Fixes #785 2015-07-10 15:51:24 +10:00
Samuel Georges adada0b4a5 Show plugin icon in update list 2015-06-30 15:46:46 +10:00
Samuel Georges f4efcb455e Use fill()+save() instead of save() 2015-06-27 14:32:52 +10:00
Samuel Georges 6c6c7b9e1f Implement ComposerManager::autoload for plugins that use composer.
All packages are now added to a global pool to prevent double loading and the load order is respected.
Refs #1227
2015-06-27 13:37:34 +10:00
Samuel Georges 19e648cab8 Remove useless reference 2015-06-27 12:34:24 +10:00
Leonardo Shinagawa 171e5e2278 Small typo error in docblock 2015-06-24 09:14:44 -03:00
Samuel Georges b81efa9c46 Might reconsider this, since the exact line in twig is lost 2015-06-04 17:37:29 +10:00
Samuel Georges 9ed73e0cba Updates for new symbolizePath API, requires latest rain lib code
Backend layouts can now be provided by plugins
2015-05-30 15:54:47 +10:00
Samuel Georges 73cf4b7050 If a version.yaml file contains no array, then treat it as empty - fixes #1104 2015-05-09 10:56:11 +10:00
Samuel Georges d02d9ba674 Minor improvement to error handling 2015-05-07 18:00:57 +10:00