Commit graph

335 commits

Author SHA1 Message Date
Git'Fellow
dccfb6d68a
fix: check if key is set
Co-authored-by: Côme Chilliet <91878298+come-nc@users.noreply.github.com>
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2024-09-13 09:49:09 +02:00
Julius Knorr
38e0a89972
fix: Add whiteboard to education and public sector bundle
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2024-09-12 09:13:42 +02:00
Git'Fellow
8585b05357 fix(appstore): Ensure returned apps from AppStore are valid
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>

fix: lint

chore: remove space

Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>

fix: check if response array is null

Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>

chore: Add log
2024-09-11 11:12:59 +02:00
John Molakvoæ
0858ff7a07
Merge pull request #47834 from nextcloud/retAppsManDis 2024-09-10 16:31:17 +02:00
John Molakvoæ
4d3168fb24
fix(appstore): disabled appstore log level bump from debug to info
Co-authored-by: Joas Schilling <213943+nickvergessen@users.noreply.github.com>
Signed-off-by: John Molakvoæ <skjnldsv@users.noreply.github.com>
2024-09-10 16:00:56 +02:00
provokateurin
70ed08daf1
refactor(AppManager): Deprecated default apps handling
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-09-09 11:04:36 +02:00
Git'Fellow
2ac8d9a3db fix(appstore): return if appstore is manually disabled
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>

fix: camel case

Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>

fix: log a debug log

Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>

fix: typing

Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>

fix: typo

fix: typing
2024-09-09 09:56:22 +02:00
Marcel Müller
b2c2c93a03 fix(appstore): Cache apps.json also on dev instances
Signed-off-by: Marcel Müller <marcel-mueller@gmx.de>
2024-09-04 21:56:58 +02:00
Julius Härtl
3ca7480829 fix: Do not throw if appstore is unavailable during upgrade
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2024-09-04 09:31:13 +02:00
Daniel Kesselberg
af6de04e9e
style: update codestyle for coding-standard 1.2.3
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-08-25 19:34:58 +02:00
Jérôme Herbinet
c221090c86 fix: unify bundle naming
Signed-off-by: Jérôme Herbinet <33763786+Jerome-Herbinet@users.noreply.github.com>
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-08-06 11:14:07 +02:00
Richard Steinmetz
718ef5dea5
Merge pull request #46510 from nextcloud/feat/info-xml-backends
feat: hide caldav server settings if no app uses the caldav backend
2024-07-17 18:57:08 +02:00
Git'Fellow
8665a9ba16
chore: add warning in case of failure
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2024-07-16 18:13:25 +02:00
Git'Fellow
b010474c78
fix(appstore): Return an empty array in case of fail
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2024-07-16 11:42:35 +02:00
Richard Steinmetz
e42bceac9f
feat: hide caldav server settings if no app uses the caldav backend
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2024-07-16 09:18:33 +02:00
Côme Chilliet
01dbb8fca2
fix(profiler): Remove bogus profiler event start
This fixes profiler event graph by removing an event start which had no
 matching end() call.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-06-27 12:25:20 +02:00
Josh
c494a0cc63
fix(AppManager): Name correct method in error + show error string
Signed-off-by: Josh <josh.t.richards@gmail.com>
2024-06-09 09:36:32 -04:00
Andy Scherzinger
dae7c159f7
chore: Add SPDX header
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-05-24 13:11:22 +02:00
Côme Chilliet
5d1ca7e25a
fix: Drop workarounds for unsupported obsolete PHP versions
Also improved error handling in Installer.php to be type safe.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-04-22 16:55:42 +02:00
Côme Chilliet
ac1d868d18
fix: Lazy load IURLGenerator from AppManager to avoid installation crash
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-04-22 15:50:06 +02:00
Côme Chilliet
0e7bac72ae
fix: Make sure that AppManager can be built before Nextcloud is installed
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-04-22 12:17:31 +02:00
Côme Chilliet
ec5133b739 fix: Apply new coding standard to all files
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-04-02 14:16:21 +02:00
Ferdinand Thiessen
63f19661d2
fix(AppStore\Fetcher): Ensure get returns an array
When fetch fails and the `data` prop contains null (e.g. `json_decode` failed),
then we should return an empty array instead of null.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-03-22 15:01:16 +01:00
Ferdinand Thiessen
bae133bf4f fix(AppDiscoverFetcher): Do not remove entries as expired that have no expiry date
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-03-19 09:36:06 +01:00
Ferdinand Thiessen
df502c114d
feat(settings): Cache app discover images to ensure privacy of users
Co-authored-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
Co-authored-by: Ferdinand Thiessen <opensource@fthiessen.de>

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-03-14 20:45:25 +01:00
Ferdinand Thiessen
f4efb762ec
feat: Allow to fetch app discover json and provide frontend API route
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-03-14 20:45:24 +01:00
sorbaugh
82a17248f0 feat: Adding PublicSectorBundle
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2024-03-12 10:26:50 -07:00
Ferdinand Thiessen
c8d7a5acaa fix(AppManager): Allow to query dark **or** bright icon
The navigation needs the bright icon, while the notifications and activity need a dark icon.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-03-08 09:51:03 +01:00
Ferdinand Thiessen
876e2d6198
feat(AppManager): Provide getAppIcon function
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-03-07 22:40:31 +01:00
Julius Härtl
e13fb468cf
fix: Fetch custom app store url without internet connection
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2024-03-04 12:47:14 +01:00
Hamid Dehnavi
cf17db2fe6 Fix psalm errors
Signed-off-by: Hamid Dehnavi <hamid.dev.pro@gmail.com>
2024-02-23 15:53:41 +01:00
Hamid Dehnavi
b6ef67edfc Make adjustments based on the psalm review
Signed-off-by: Hamid Dehnavi <hamid.dev.pro@gmail.com>
Co-authored-by: Julius Härtl <jus@bitgrid.net>
Signed-off-by: Hamid Dehnavi <hamid.dev.pro@gmail.com>
2024-02-23 15:53:41 +01:00
Hamid Dehnavi
7a8d79b85c Fix code style
Signed-off-by: Hamid Dehnavi <hamid.dev.pro@gmail.com>
2024-02-23 15:53:41 +01:00
Hamid Dehnavi
84749d53a9 Refactor lib/private/App
Signed-off-by: Hamid Dehnavi <hamid.dev.pro@gmail.com>
2024-02-23 15:53:41 +01:00
Joas Schilling
582ec1294a
fix(apps): Fix type information of app manager
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-01-23 09:55:06 +01:00
Joas Schilling
57a30e9bbe
fix(appstore): Only send subscription keys to valid appstores
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-01-15 15:39:45 +01: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
Ferdinand Thiessen
927e7fcf67
fix(AppManager): Ensure that app manager can handle empty app keys on the navigation entries
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2023-11-14 20:04:48 +01:00
Ferdinand Thiessen
8d0c7cc5fa
fix: Allow to set custom app order on navigation entries added by closures to NavigationManager
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2023-11-14 20:03:28 +01:00
Ferdinand Thiessen
363d9ebb13
feat(NavigationManager): Always sort the default app first
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2023-10-19 22:04:20 +02:00
Ferdinand Thiessen
08cff0777a
feat(IAppManager): Allow to set the (user) default apps and get all global default apps
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2023-10-19 22:04:20 +02:00
Hamid Dehnavi
ea06cf2f39 Convert isset ternary to null coalescing operator
Signed-off-by: Hamid Dehnavi <hamid.dev.pro@gmail.com>
2023-09-28 17:44:19 +03:30
Côme Chilliet
8049702413
Fix behavior when defaultapp is empty
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-09-28 09:22:54 +02:00
Côme Chilliet
a4a3d94f05
Default to first application if no default app is set
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-09-26 14:40:14 +02:00
Joas Schilling
5bb6a7804f
fix: Move AppManager events to IEventDispatcher
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-07-27 09:57:51 +02:00
Joas Schilling
2014e7b836
fix(apps): Fix loading info.xml file
Ref: https://bugs.php.net/bug.php?id=62577

Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-07-20 10:40:09 +02:00
Arthur Schiwon
ffa30ce89b
Merge pull request #38524 from nextcloud/chore/app/clear-unused-cache-key
chore(app): Do not clear unused cache key
2023-06-05 17:48:44 +02:00
Christoph Wurst
3d1acca1f3
chore(app): Do not clear unused cache key
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2023-05-30 17:48:20 +02:00
Faraz Samapoor
e7cc7653b8 Refactors "strpos" calls in lib/private to improve code readability.
Signed-off-by: Faraz Samapoor <fsamapoor@gmail.com>
2023-05-15 15:17:19 +03:30
Côme Chilliet
426c0341ff
Use typed version of IConfig::getSystemValue as much as possible
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-04-05 12:50:08 +02:00
Christopher Ng
4f8e916585 Add label for logo link
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2023-03-29 13:36:45 -07:00
Côme Chilliet
13c71ed24a
Small cleanups for AppManager
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-03-20 10:21:45 +01:00
Côme Chilliet
78c1716818
Move loadApps to the AppManager
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-03-20 10:21:45 +01:00
Côme Chilliet
8dc5f82189
Move isType to AppManager
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-03-20 10:21:45 +01:00
Côme Chilliet
a224551132
Avoid calling Server::get more times than necessary in loadApp
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-03-20 10:21:42 +01:00
Côme Chilliet
f0bdf2a4cd
Strong type private properties and methods in AppManager
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-03-20 10:19:42 +01:00
Côme Chilliet
71ed968e34
Switch away from Server::get for AppManager and logger in loadApp
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-03-20 10:17:28 +01:00
Côme Chilliet
a7c8090dc3
Move loadApp function to the AppManager
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-03-20 10:01:17 +01:00
Thomas Citharel
f1751c4428
Introduced app enable/disable/update typed events
OCP\App\ManagerEvent is depreciated since 22 without a replacement

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2023-03-13 11:52:57 +01:00
Joas Schilling
bf7fe04c4b
fix(appinfo): navigation type is optional
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-02-03 09:52:37 +01:00
Christopher Ng
62b7bb7395 Allow settings navigation items with no route entry
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2023-02-02 17:11:17 -08:00
Côme Chilliet
f5c361cf44
composer run cs:fix
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-01-20 11:45:08 +01:00
Côme Chilliet
7af4fea0e3
Suppress false-positives from psalm, waiting for fix upstream
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-11-07 10:01:53 +01:00
Côme Chilliet
56f24cff9f
Avoid a crash when a PHP extension has no version
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-11-03 11:53:51 +01:00
Arthur Schiwon
a133a8a9d7
remove getDefaultInstallationBundle
- because all apps are shipped now it was returning an empty result

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2022-09-22 15:11:39 +02:00
Arthur Schiwon
759eaee5ed
remove Core Bundle
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2022-09-22 13:20:37 +02:00
Maxence Lange
0efd6d9950 set defaultEnabled in shipped.json
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2022-09-15 08:15:33 -01:00
Carl Schwan
9b8ca9ad1f
Move findBinaryFinder and isFunctionEnabled away from OC_Helper
findBinaryFinder is now a service that is still private but with some
minor optimization (remove the hasKey check).

isFunctionEnabled is now in OCP\Util

Both function are still keep but all internal usage in nextcloud/server
were migrated to the new usage, so that we can remove it in 26

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-08-23 19:44:04 +02:00
luz paz
368f83095d Fix typos in lib/private subdirectory
Found via `codespell -q 3 -S l10n -L jus ./lib/private`

Signed-off-by: luz paz <luzpaz@github.com>
2022-07-27 08:52:17 -04:00
Vincent Petry
9746229558
Merge pull request #30030 from nextcloud/fexists
Fix disabled `php_uname`
2022-07-26 23:10:12 +02:00
acsfer
bebf888c72 Fix #30003
Fix #30003
2022-06-21 16:54:13 +00:00
Côme Chilliet
c598e3cafa
composer run cs:fix
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-06-21 16:36:25 +02:00
Côme Chilliet
1bd5222224
Fix PHP 8.2 warnings about undeclared properties
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-06-21 16:17:52 +02:00
Joas Schilling
a9ba631e4d
Also allow pre-releases and nightlies when installing from git
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-03-10 16:10:25 +01:00
Joas Schilling
4f9c8b08ca
Similar to the fetch() method respect the channel in the get()
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-03-10 16:10:25 +01:00
MichaIng
0d749b7e9a Remove iconv from dependencies and tests
which is not used anymore since: https://github.com/nextcloud/server/pull/29470

Signed-off-by: MichaIng <micha@dietpi.com>
2021-11-30 02:33:12 +01:00
Joas Schilling
66ffedcb16
Fix updating with apps
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-11-11 13:56:42 +01:00
Julien Veyssier
facb50ebcc
fix appstoreenabled check in Fetcher so it's coherent with AppSettingsController
Signed-off-by: Julien Veyssier <eneiluj@posteo.net>
2021-10-18 12:39:43 +02:00
John Molakvoæ
1f76423500
Send the subscription key to the appstore requests
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
2021-10-14 14:48:45 +02:00
Joas Schilling
811d0cd1b5
Merge pull request #29135 from nextcloud/feat/appstore-filtering
Allow to filter apps from the appstore
2021-10-14 09:50:37 +02:00
John Molakvoæ
c721581cd9
Fix variable
Co-authored-by: Joas Schilling <213943+nickvergessen@users.noreply.github.com>
2021-10-13 18:14:48 +02:00
John Molakvoæ
1a6bac5874
Allow to whitelist apps from the apsptore
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
2021-10-13 11:13:33 +02:00
Joas Schilling
0b747538ff
Keep group restrictions when reenabling apps after an update
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-10-13 09:34:55 +02:00
Carl Schwan
6958d8005a
Add admin privilege delegation for admin settings
This makes it possible for selected groups to access some settings
pages.

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2021-09-29 21:43:31 +02:00
Louis Chemineau
3f6d3dc307 Fix typing error in AppFetcher.php
Signed-off-by: Louis Chemineau <louis@chmn.me>
2021-06-21 16:31:24 +02:00
John Molakvoæ
c04e0d1db9
Merge pull request #27098 from nextcloud/fix/noid/missing-key-in-addInfo
force 'name' key in array
2021-06-16 17:13:45 +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
Maxence Lange
65649468f3 force 'name' key in array
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2021-05-25 09:33:20 -01:00
Joas Schilling
2d75868935
Fix PHP CS
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-04-27 14:34:33 +02:00
Joas Schilling
56ae87c281
Less ILogger
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-04-27 14:34:32 +02:00
Jakub Onderka
1992d11d7d Fix warning in AppFetcher.php when appstore is disabled
Signed-off-by: Jakub Onderka <ahoj@jakubonderka.cz>
2021-03-10 16:30:02 +01: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
Christoph Wurst
e618ea83b5
Make the app code checker a NOOP
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-02-11 11:46:02 +01:00
Christoph Wurst
b4f71ccf4d
Fix app fetcher php comparison to allow wider ranges
When app app specifies php 7.4 as upper limit we have to allow the
installation on php>7.4.0. The previous version check didn't do that.
This adjusts the regexes to discard any irrelevant suffix after the
three version numbers so that we can use more fine granular checks than
php's version_compare can do out of the box, like for php 7.4 we only
compare the major and minor version numbers and ignore the patch level.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-01-26 16:35:43 +01:00
Christoph Wurst
652bf9d363
Revert "Fix comparison of PHP versions"
This reverts commit bedd9acf78.
2021-01-26 13:48:06 +01:00
Damien Goutte-Gattat
bedd9acf78 Fix comparison of PHP versions
Use the builtin function `version_compare` to check an app's
compatibility with the available PHP version, instead of reusing
the `OC\App\CompareVersion::isCompatible` method which is intended
to compare Nextcloud versions. PHP version strings do not always
necessarily follow the simple Major.Minor.Patch format used by
Nextcloud and therefore cannot be properly compared by that method.

Signed-off-by: Damien Goutte-Gattat <dgouttegattat@incenp.org>
2021-01-14 23:03:20 +00:00
Roeland Jago Douma
fdd111924f
Merge pull request #25039 from nextcloud/fix/libxml-use-internal-errors-deprecated
Only use libxml_disable_entity_loader on php older than 8
2021-01-11 16:14:38 +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
Christoph Wurst
f8efab7c85
Only use libxml_disable_entity_loader on php older than 8
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-01-08 16:33:46 +01:00
Christoph Wurst
d89a75be0b
Update all license headers for Nextcloud 21
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-12-16 18:48:22 +01:00