From d99d0e46021dfb116d4122211b38a8cf311183df Mon Sep 17 00:00:00 2001 From: Marcel Klehr Date: Tue, 4 Aug 2026 11:51:59 +0200 Subject: [PATCH 1/2] v4.1.0 Signed-off-by: Marcel Klehr --- CHANGELOG.md | 11 +++++++++++ appinfo/info.xml | 4 ++-- package.json | 2 +- 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index fa16f1d..c8cda68 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,17 @@ and this project adheres to [Semantic Versioning](http://semver.org/). ## [Unreleased] +## [4.1.0] - 2026-08-04 + +### New + +- Add support for nc 35 + +### Fixed + +- Update dependencies +- Update translations from Transifex + ## [4.0.4] - 2026-05-26 ### Fixed diff --git a/appinfo/info.xml b/appinfo/info.xml index 09fffde..b7c4ae4 100644 --- a/appinfo/info.xml +++ b/appinfo/info.xml @@ -5,7 +5,7 @@ Integration of Zammad user support/ticketing solution - 4.0.4 + 4.1.0 agpl Julien Veyssier Zammad @@ -18,7 +18,7 @@ https://github.com/nextcloud/integration_zammad/issues https://github.com/nextcloud/integration_zammad/raw/main/img/screenshot1.jpg - + OCA\Zammad\BackgroundJob\CheckOpenTickets diff --git a/package.json b/package.json index 5e544a6..59a2b84 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "integration_zammad", - "version": "4.0.4", + "version": "4.1.0", "description": "Zammad integration", "main": "index.js", "directories": { From 0acdce2bdf224d3e070085dbbc8508c0318457bc Mon Sep 17 00:00:00 2001 From: Marcel Klehr Date: Tue, 4 Aug 2026 11:59:46 +0200 Subject: [PATCH 2/2] fix: Run cs:fix Signed-off-by: Marcel Klehr --- lib/AppInfo/Application.php | 2 -- lib/BackgroundJob/CheckOpenTickets.php | 1 - lib/Controller/ConfigController.php | 9 ++++----- lib/Controller/ZammadAPIController.php | 1 - lib/Dashboard/ZammadWidget.php | 1 - lib/Migration/Version030000Date20241003141518.php | 1 + lib/Migration/Version030200Date20251230225956.php | 1 + lib/Migration/Version040000Date20260129225956.php | 1 + lib/Notification/Notifier.php | 1 - lib/Reference/ZammadReferenceProvider.php | 1 - lib/Search/ZammadSearchProvider.php | 1 + lib/Search/ZammadSearchResultEntry.php | 1 + lib/Service/ZammadAPIService.php | 1 - lib/Settings/Admin.php | 1 - lib/Settings/Personal.php | 1 - 15 files changed, 9 insertions(+), 15 deletions(-) diff --git a/lib/AppInfo/Application.php b/lib/AppInfo/Application.php index 59cc920..a4babaa 100644 --- a/lib/AppInfo/Application.php +++ b/lib/AppInfo/Application.php @@ -19,13 +19,11 @@ use OCP\AppFramework\App; use OCP\AppFramework\Bootstrap\IBootContext; use OCP\AppFramework\Bootstrap\IBootstrap; - use OCP\AppFramework\Bootstrap\IRegistrationContext; use OCP\Collaboration\Reference\RenderReferenceEvent; use OCP\Config\IUserConfig; use OCP\IL10N; use OCP\INavigationManager; - use OCP\IURLGenerator; use OCP\IUserSession; use OCP\Notification\IManager as INotificationManager; diff --git a/lib/BackgroundJob/CheckOpenTickets.php b/lib/BackgroundJob/CheckOpenTickets.php index 153705d..98b71ba 100644 --- a/lib/BackgroundJob/CheckOpenTickets.php +++ b/lib/BackgroundJob/CheckOpenTickets.php @@ -26,7 +26,6 @@ use OCA\Zammad\Service\ZammadAPIService; use OCP\AppFramework\Utility\ITimeFactory; use OCP\BackgroundJob\TimedJob; - use Psr\Log\LoggerInterface; class CheckOpenTickets extends TimedJob { diff --git a/lib/Controller/ConfigController.php b/lib/Controller/ConfigController.php index b3708a6..bebe7fb 100644 --- a/lib/Controller/ConfigController.php +++ b/lib/Controller/ConfigController.php @@ -27,7 +27,6 @@ use OCP\IAppConfig; use OCP\IL10N; use OCP\IRequest; - use OCP\IURLGenerator; use OCP\PreConditionNotMetException; use OCP\Security\ICrypto; @@ -191,8 +190,8 @@ public function oauthRedirect(string $code = '', string $state = ''): RedirectRe // get user info $this->storeUserInfo(); return new RedirectResponse( - $this->urlGenerator->linkToRoute('settings.PersonalSettings.index', ['section' => 'connected-accounts']) . - '?zammadToken=success' + $this->urlGenerator->linkToRoute('settings.PersonalSettings.index', ['section' => 'connected-accounts']) + . '?zammadToken=success' ); } $result = $this->l->t('Error getting OAuth access token.') . ' ' . $result['error']; @@ -200,8 +199,8 @@ public function oauthRedirect(string $code = '', string $state = ''): RedirectRe $result = $this->l->t('Error during OAuth exchanges'); } return new RedirectResponse( - $this->urlGenerator->linkToRoute('settings.PersonalSettings.index', ['section' => 'connected-accounts']) . - '?zammadToken=error&message=' . urlencode($result) + $this->urlGenerator->linkToRoute('settings.PersonalSettings.index', ['section' => 'connected-accounts']) + . '?zammadToken=error&message=' . urlencode($result) ); } diff --git a/lib/Controller/ZammadAPIController.php b/lib/Controller/ZammadAPIController.php index 60d7c93..ad9c622 100644 --- a/lib/Controller/ZammadAPIController.php +++ b/lib/Controller/ZammadAPIController.php @@ -20,7 +20,6 @@ use OCP\AppFramework\Http\Attribute\NoCSRFRequired; use OCP\AppFramework\Http\DataDisplayResponse; use OCP\AppFramework\Http\DataResponse; - use OCP\Config\IUserConfig; use OCP\IRequest; use OCP\PreConditionNotMetException; diff --git a/lib/Dashboard/ZammadWidget.php b/lib/Dashboard/ZammadWidget.php index a4ae804..6dcac82 100644 --- a/lib/Dashboard/ZammadWidget.php +++ b/lib/Dashboard/ZammadWidget.php @@ -28,7 +28,6 @@ use OCP\Dashboard\IWidget; use OCP\IL10N; use OCP\IURLGenerator; - use OCP\Util; class ZammadWidget implements IWidget { diff --git a/lib/Migration/Version030000Date20241003141518.php b/lib/Migration/Version030000Date20241003141518.php index 3502144..29da340 100644 --- a/lib/Migration/Version030000Date20241003141518.php +++ b/lib/Migration/Version030000Date20241003141518.php @@ -6,6 +6,7 @@ * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ + namespace OCA\Zammad\Migration; use Closure; diff --git a/lib/Migration/Version030200Date20251230225956.php b/lib/Migration/Version030200Date20251230225956.php index 04a5d4b..1e49c92 100644 --- a/lib/Migration/Version030200Date20251230225956.php +++ b/lib/Migration/Version030200Date20251230225956.php @@ -6,6 +6,7 @@ * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ + namespace OCA\Zammad\Migration; use Closure; diff --git a/lib/Migration/Version040000Date20260129225956.php b/lib/Migration/Version040000Date20260129225956.php index 40df040..1c57a30 100644 --- a/lib/Migration/Version040000Date20260129225956.php +++ b/lib/Migration/Version040000Date20260129225956.php @@ -6,6 +6,7 @@ * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ + namespace OCA\Zammad\Migration; use Closure; diff --git a/lib/Notification/Notifier.php b/lib/Notification/Notifier.php index ac65b74..d5b355d 100644 --- a/lib/Notification/Notifier.php +++ b/lib/Notification/Notifier.php @@ -85,7 +85,6 @@ public function prepare(INotification $notification, string $languageCode): INot ); //->setIcon($this->url->getAbsoluteURL($iconUrl)); return $notification; - default: // Unknown subject => Unknown notification => throw throw new UnknownNotificationException(); diff --git a/lib/Reference/ZammadReferenceProvider.php b/lib/Reference/ZammadReferenceProvider.php index 6fa83e1..e803671 100644 --- a/lib/Reference/ZammadReferenceProvider.php +++ b/lib/Reference/ZammadReferenceProvider.php @@ -93,7 +93,6 @@ public function getSupportedSearchProviderIds(): array { return $ids; } return ['zammad-search']; - } private function isMatching(string $referenceText, string $url): bool { diff --git a/lib/Search/ZammadSearchProvider.php b/lib/Search/ZammadSearchProvider.php index e5a379b..2270982 100644 --- a/lib/Search/ZammadSearchProvider.php +++ b/lib/Search/ZammadSearchProvider.php @@ -22,6 +22,7 @@ * along with this program. If not, see * */ + namespace OCA\Zammad\Search; use DateTime; diff --git a/lib/Search/ZammadSearchResultEntry.php b/lib/Search/ZammadSearchResultEntry.php index 6eca4de..ed56ecc 100644 --- a/lib/Search/ZammadSearchResultEntry.php +++ b/lib/Search/ZammadSearchResultEntry.php @@ -22,6 +22,7 @@ * along with this program. If not, see * */ + namespace OCA\Zammad\Search; use OCP\Search\SearchResultEntry; diff --git a/lib/Service/ZammadAPIService.php b/lib/Service/ZammadAPIService.php index 77cd6ab..1658da0 100644 --- a/lib/Service/ZammadAPIService.php +++ b/lib/Service/ZammadAPIService.php @@ -30,7 +30,6 @@ use OCP\IUserManager; use OCP\Notification\IManager as INotificationManager; use OCP\PreConditionNotMetException; - use OCP\Security\ICrypto; use Psr\Log\LoggerInterface; diff --git a/lib/Settings/Admin.php b/lib/Settings/Admin.php index e3577e9..f4b0c22 100644 --- a/lib/Settings/Admin.php +++ b/lib/Settings/Admin.php @@ -6,7 +6,6 @@ use OCP\AppFramework\Http\TemplateResponse; use OCP\AppFramework\Services\IInitialState; use OCP\IAppConfig; - use OCP\Settings\ISettings; class Admin implements ISettings { diff --git a/lib/Settings/Personal.php b/lib/Settings/Personal.php index afd9c9b..fbb9df0 100644 --- a/lib/Settings/Personal.php +++ b/lib/Settings/Personal.php @@ -7,7 +7,6 @@ use OCP\AppFramework\Services\IInitialState; use OCP\Config\IUserConfig; use OCP\IAppConfig; - use OCP\Security\ICrypto; use OCP\Settings\ISettings;