From 20b7ff9f9f4ae4dc02cb7438e58db4ff99a775dd Mon Sep 17 00:00:00 2001
From: shamoon <4887959+shamoon@users.noreply.github.com>
Date: Thu, 19 Dec 2024 08:05:06 -0800
Subject: [PATCH 1/2] Fix: resolve test warning
---
src-ui/src/app/components/admin/logs/logs.component.spec.ts | 3 +++
1 file changed, 3 insertions(+)
diff --git a/src-ui/src/app/components/admin/logs/logs.component.spec.ts b/src-ui/src/app/components/admin/logs/logs.component.spec.ts
index 07a5d85d2..2c17e2e82 100644
--- a/src-ui/src/app/components/admin/logs/logs.component.spec.ts
+++ b/src-ui/src/app/components/admin/logs/logs.component.spec.ts
@@ -1,6 +1,7 @@
import { provideHttpClient, withInterceptorsFromDi } from '@angular/common/http'
import { provideHttpClientTesting } from '@angular/common/http/testing'
import { ComponentFixture, TestBed } from '@angular/core/testing'
+import { FormsModule, ReactiveFormsModule } from '@angular/forms'
import { BrowserModule, By } from '@angular/platform-browser'
import { NgbModule, NgbNavLink } from '@ng-bootstrap/ng-bootstrap'
import { NgxBootstrapIconsModule, allIcons } from 'ngx-bootstrap-icons'
@@ -37,6 +38,8 @@ describe('LogsComponent', () => {
BrowserModule,
NgbModule,
NgxBootstrapIconsModule.pick(allIcons),
+ FormsModule,
+ ReactiveFormsModule,
],
providers: [
provideHttpClient(withInterceptorsFromDi()),
From 2bcbed31e91b12f2d75b4c00d92a2c67e9474231 Mon Sep 17 00:00:00 2001
From: shamoon <4887959+shamoon@users.noreply.github.com>
Date: Thu, 19 Dec 2024 08:08:46 -0800
Subject: [PATCH 2/2] Fix: add some minor frontend permissions checks (#8524)
---
src-ui/messages.xlf | 10 +++++-----
.../app/components/app-frame/app-frame.component.html | 2 +-
.../app/components/app-frame/app-frame.component.ts | 9 ++++++++-
src-ui/src/app/services/settings.service.ts | 8 +++++++-
4 files changed, 21 insertions(+), 8 deletions(-)
diff --git a/src-ui/messages.xlf b/src-ui/messages.xlf
index a4dc5cc4f..102d50ce3 100644
--- a/src-ui/messages.xlf
+++ b/src-ui/messages.xlf
@@ -1532,7 +1532,7 @@
src/app/components/app-frame/app-frame.component.ts
- 125
+ 132
@@ -2883,21 +2883,21 @@
Sidebar views updated
src/app/components/app-frame/app-frame.component.ts
- 209
+ 216
Error updating sidebar views
src/app/components/app-frame/app-frame.component.ts
- 212
+ 219
An error occurred while saving update checking settings.
src/app/components/app-frame/app-frame.component.ts
- 233
+ 240
@@ -9592,7 +9592,7 @@
You can restart the tour from the settings page.
src/app/services/settings.service.ts
- 655
+ 661
diff --git a/src-ui/src/app/components/app-frame/app-frame.component.html b/src-ui/src/app/components/app-frame/app-frame.component.html
index 2354b68fc..442f9f366 100644
--- a/src-ui/src/app/components/app-frame/app-frame.component.html
+++ b/src-ui/src/app/components/app-frame/app-frame.component.html
@@ -334,7 +334,7 @@
}
} @else {
-
diff --git a/src-ui/src/app/components/app-frame/app-frame.component.ts b/src-ui/src/app/components/app-frame/app-frame.component.ts
index efa42f382..92efd7628 100644
--- a/src-ui/src/app/components/app-frame/app-frame.component.ts
+++ b/src-ui/src/app/components/app-frame/app-frame.component.ts
@@ -81,7 +81,14 @@ export class AppFrameComponent
if (this.settingsService.get(SETTINGS_KEYS.UPDATE_CHECKING_ENABLED)) {
this.checkForUpdates()
}
- this.tasksService.reload()
+ if (
+ this.permissionsService.currentUserCan(
+ PermissionAction.View,
+ PermissionType.PaperlessTask
+ )
+ ) {
+ this.tasksService.reload()
+ }
this.djangoMessagesService.get().forEach((message) => {
switch (message.level) {
diff --git a/src-ui/src/app/services/settings.service.ts b/src-ui/src/app/services/settings.service.ts
index e270adc81..9e1b3e360 100644
--- a/src-ui/src/app/services/settings.service.ts
+++ b/src-ui/src/app/services/settings.service.ts
@@ -646,7 +646,13 @@ export class SettingsService {
completeTour() {
const tourCompleted = this.get(SETTINGS_KEYS.TOUR_COMPLETE)
- if (!tourCompleted) {
+ if (
+ !tourCompleted &&
+ this.permissionsService.currentUserCan(
+ PermissionAction.Change,
+ PermissionType.UISettings
+ )
+ ) {
this.set(SETTINGS_KEYS.TOUR_COMPLETE, true)
this.storeSettings()
.pipe(first())