Commit Graph

82 Commits

Author SHA1 Message Date
Josh
f5039750b3 chore: fix formatting
Signed-off-by: Josh <josh.t.richards@gmail.com>
2025-09-24 11:29:36 -04:00
Josh
5131897997 fix(workflowenigne): stricter length headler handling
Fixes #55276 and tidies things up a bit more for future maintenance.

Signed-off-by: Josh <josh.t.richards@gmail.com>
2025-09-24 11:18:07 -04:00
Carl Schwan
6154bfa823 chore(psalm): Fix most issues with the workflowengine
This found a real bug where we were catching an Doctrine exception
instead of a OCP\DB\Exception. This will be backported separately.

Signed-off-by: Carl Schwan <carl.schwan@nextcloud.com>
2025-09-17 09:57:10 +02:00
Joas Schilling
78dcf3744d Revert "feat: Implement Directory Check"
This reverts commit feae8ba16a.
2025-08-05 11:18:50 +02:00
Robin Windey
feae8ba16a feat: Implement Directory Check
* Partially implements #27591

Signed-off-by: Robin Windey <ro.windey@gmail.com>
2025-08-01 09:43:59 +00:00
Ferdinand Thiessen
5981b7eb51 chore: apply new CSFixer rules
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>

# Conflicts:
#	apps/settings/lib/SetupChecks/PhpOpcacheSetup.php
2025-07-01 16:26:50 +02:00
provokateurin
f25a71806b fix(apps): Fix wrong or missing casts
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-10-23 17:08:29 +02:00
provokateurin
381077028a refactor(apps): Use constructor property promotion when possible
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-10-21 12:37:59 +02:00
provokateurin
9836e9b164 chore(deps): Update nextcloud/coding-standard to v1.3.1
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-09-19 14:21:20 +02:00
Joas Schilling
a2a0a5afcb fix(workflows): Fix file systemtag cache
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-07-10 11:55:29 +02:00
Andy Scherzinger
cc1686dba9 chore: Add SPDX header
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-05-31 10:38:47 +02:00
Joas Schilling
aa5f037af7 chore: apply changes from Nextcloud coding standards 1.1.1
Signed-off-by: Joas Schilling <coding@schilljs.com>
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2023-11-23 10:36:13 +01:00
Côme Chilliet
bfe42de8f8 Merge pull request #38604 from fsamapoor/replace_strpos_calls_in_workflowengine_app
Refactors "strpos" calls in /apps/workflowengine
2023-08-07 09:10:43 +02:00
Julius Härtl
06d80ba809 fix: Avoid failing with duplicate checks
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2023-07-12 16:54:13 +02:00
Faraz Samapoor
9d15e6e21d Fixes "PossiblyFalseArgument" notices.
Co-authored-by: Côme Chilliet <91878298+come-nc@users.noreply.github.com>
Signed-off-by: Faraz Samapoor <f.samapoor@gmail.com>
Signed-off-by: Faraz Samapoor <fsa@adlas.at>
2023-07-03 13:13:11 +03:30
Faraz Samapoor
5db241b942 Refactors "strpos" calls in /apps/workflowengine to improve code readability.
Signed-off-by: Faraz Samapoor <f.samapoor@gmail.com>
Signed-off-by: Faraz Samapoor <fsa@adlas.at>
2023-07-03 13:13:11 +03:30
Joas Schilling
9ba091b348 fix(workflow): Check tag attribute
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-03-16 08:44:41 +01:00
Robin Appelman
83cc8202b8 remove file exists check from cacheAndReturnMimeType
the method is only called if the file exists already

a check against storing the fallback mimetype is added as a safety instead

Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-12-20 13:28:40 +01:00
Robin Appelman
c5a8246742 use mimetype from cache for workflow if available
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-12-20 13:28:33 +01:00
Côme Chilliet
9ba9f9a7dc Make sure to not pass null to DateTime::createFromFormat
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-11-14 16:23:50 +01:00
Carl Schwan
cbf9064b8e Fix psalm issues
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-01-13 12:30:27 +01:00
Carl Schwan
695165260f Add helper method in Wrapper
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-01-13 10:39:36 +01:00
Carl Schwan
0479fff37c The storage is not static anymore
Don't call twice $cache->getId

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-01-13 10:39:36 +01:00
Carl Schwan
1f392d666a Optimize FileSystemTags workflow for groupfolder
In https://github.com/nextcloud/server/pull/28774 we disabled the
caching for the groupfolder application since it worked due to the fact
that in groupfolders, getFileIds could be called with the same $cacheId
and path for actually different groupfolders.

This revert this change and instead add the folderId from the
groupFolder to the cacheId. This solve the issue of the uniqueness of
the cacheId inside GroupFolder. Downside is that we introduce
groupfolder specific implementation inside the server repo.

The seconf optimization is to not consider paths starting with
__groupfolders in executeCheck. This is due to the fact that files in
the groupfolder application call two times executeCheck one time with
the url __groupfolder/<folderId>/<path> and the other time with <path>.
The first time will always return an empty systemTags array while the
second call will return the correct system tags.

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-01-13 10:39:32 +01:00
Carl Schwan
08bf47a5de Fix RequestURL check for cli commands
Fix https://github.com/nextcloud/files_automatedtagging/issues/526

Fix https://github.com/nextcloud/groupfolders/issues/1855

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-01-11 19:45:07 +01:00
Robin Appelman
e95745c074 fix tests
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-12-02 17:43:16 +01:00
Joas Schilling
7a6d559f19 Detect mimetype by content only with content
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-10-27 10:46:44 +02:00
Richard Steinmetz
8bd8e97181 Do not cache file ids in FileSystemTags inside group folders
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2021-09-14 15:10:44 +02:00
John Molakvoæ (skjnldsv)
215aef3cbd Update php licenses
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2021-06-04 22:02:41 +02:00
szaimen
35d978c2fc Rename External storages to External storage
Signed-off-by: szaimen <szaimen@e.mail.de>
2021-05-20 12:13:04 +02:00
dependabot-preview[bot]
eb502c02ff Bump nextcloud/coding-standard from 0.3.0 to 0.5.0
Bumps [nextcloud/coding-standard](https://github.com/nextcloud/coding-standard) from 0.3.0 to 0.5.0.
- [Release notes](https://github.com/nextcloud/coding-standard/releases)
- [Changelog](https://github.com/nextcloud/coding-standard/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nextcloud/coding-standard/compare/v0.3.0...v0.5.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-02-18 13:31:24 +01:00
Morris Jobke
24d436cb60 Remove unneeded casts that were found by Psalm
In preparation of the update of Psalm from 4.2.1 to 4.3.1+ (see https://github.com/nextcloud/server/pull/24521)

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2021-01-11 13:14:41 +01:00
Arthur Schiwon
04cd1348ec consider local external storages, too
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-12-15 11:50:04 +01:00
Arthur Schiwon
14bbec5fa7 enables the file name check also to match name of mountpoints
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-12-15 00:05:42 +01:00
Morris Jobke
c44ec8c5d5 Only execute plain mimetype check for directories and do the fallback only for non-directories
Ref #23096

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-11-30 16:43:57 +01:00
Julius Härtl
63479684a5 Make sure to check the mimetype on the path if a secure one could not be detemined though the content
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-09-29 16:01:50 +02:00
J0WI
1639289b95 Update urls to stackoverflow.com to "HTTPS"
Signed-off-by: J0WI <J0WI@users.noreply.github.com>
2020-09-17 17:38:27 +02:00
Julius Härtl
11329dcb42 Flow: Include root folder for shared storages when fetching system tags
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-06-15 08:28:12 +02:00
Christoph Wurst
28f8eb5dba Add visibility to all constants
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 16:54:27 +02:00
Christoph Wurst
caff1023ea Format control structures, classes, methods and function
To continue this formatting madness, here's a tiny patch that adds
unified formatting for control structures like if and loops as well as
classes, their methods and anonymous functions. This basically forces
the constructs to start on the same line. This is not exactly what PSR2
wants, but I think we can have a few exceptions with "our" style. The
starting of braces on the same line is pracrically standard for our
code.

This also removes and empty lines from method/function bodies at the
beginning and end.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 14:19:56 +02:00
Christoph Wurst
14c996d982 Use elseif instead of else if
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 10:35:09 +02:00
Christoph Wurst
afbd9c4e6e Unify function spacing to PSR2 recommendation
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 13:54:22 +02:00
Christoph Wurst
2a529e453a Use a blank line after the opening tag
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 11:50:14 +02:00
Christoph Wurst
41b5e5923a Use exactly one empty line after the namespace declaration
For PSR2

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 11:48:10 +02:00
Christoph Wurst
74936c49ea Remove unused imports
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-03-25 22:08:08 +01:00
Arthur Schiwon
4a0926f5de make the mime type checker for flow available to regular users
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-01-09 12:29:26 +01:00
Joas Schilling
4a151c545a Allow to specify apps that somethign is a dir
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-12-10 09:11:43 +01:00
Joas Schilling
511a4ba66f Improve mimetype detection in workflow components
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-12-10 09:11:43 +01:00
Joas Schilling
d4d3725bfe Only cache the mimetype if the file exists
Otherwise files access control will cache "application/octet-stream"
for all the target node on:
rename, move, copy and all other methods which create a new item

To check this:
1. Add an automated tagging rule which tags on mimetype NOT "httpd/unix-directory"
2. Add an access control rule which checks for any mimetype
3. Create a folder and rename it, the folder should not be tagged, but it is

Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-10-14 10:05:45 +02:00
Joas Schilling
0f3de7828e Don't call basename on null
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-10-01 17:30:52 +02:00