From 58bee495d6f76ff3181c4dc13ae5fc5003dcde24 Mon Sep 17 00:00:00 2001 From: TheIceCreamTroll <33820904+TheIceCreamTroll@users.noreply.github.com> Date: Fri, 12 Aug 2022 17:28:09 -0400 Subject: [PATCH] UI/dashboard polish (#1407) * Reposition "Blur Unread Summaries" toggle under "Page Layout Mode" * Save buttons now disable themselves after being clicked. Change Password save button only enables if passwords match * Center user roles to Roles: in admin dashboard * Made ordering of common elements between series and entity info consistent. Renamed "Read Left" to "Time Left" --- .../manage-email-settings.component.html | 2 +- .../manage-email-settings.component.ts | 1 + .../manage-media-settings.component.html | 2 +- .../manage-media-settings.component.ts | 1 + .../manage-settings.component.html | 2 +- .../manage-settings.component.ts | 3 +- .../manage-system/manage-system.component.ts | 1 + .../manage-tasks-settings.component.html | 2 +- .../manage-tasks-settings.component.ts | 1 + .../manage-users/manage-users.component.html | 30 +++++++------ .../manage-users/manage-users.component.scss | 6 ++- .../entity-info-cards.component.html | 42 +++++++++---------- .../series-info-cards.component.html | 29 ++++++------- .../user-preferences.component.html | 9 ++-- .../user-preferences.component.ts | 1 + 15 files changed, 72 insertions(+), 60 deletions(-) diff --git a/UI/Web/src/app/admin/manage-email-settings/manage-email-settings.component.html b/UI/Web/src/app/admin/manage-email-settings/manage-email-settings.component.html index 62dd94ea5..63ac841ca 100644 --- a/UI/Web/src/app/admin/manage-email-settings/manage-email-settings.component.html +++ b/UI/Web/src/app/admin/manage-email-settings/manage-email-settings.component.html @@ -23,7 +23,7 @@
- +
\ No newline at end of file diff --git a/UI/Web/src/app/admin/manage-email-settings/manage-email-settings.component.ts b/UI/Web/src/app/admin/manage-email-settings/manage-email-settings.component.ts index 604128ae6..93a6ea911 100644 --- a/UI/Web/src/app/admin/manage-email-settings/manage-email-settings.component.ts +++ b/UI/Web/src/app/admin/manage-email-settings/manage-email-settings.component.ts @@ -26,6 +26,7 @@ export class ManageEmailSettingsComponent implements OnInit { resetForm() { this.settingsForm.get('emailServiceUrl')?.setValue(this.serverSettings.emailServiceUrl); + this.settingsForm.markAsPristine(); } async saveSettings() { diff --git a/UI/Web/src/app/admin/manage-media-settings/manage-media-settings.component.html b/UI/Web/src/app/admin/manage-media-settings/manage-media-settings.component.html index da280aeb7..7447a4a56 100644 --- a/UI/Web/src/app/admin/manage-media-settings/manage-media-settings.component.html +++ b/UI/Web/src/app/admin/manage-media-settings/manage-media-settings.component.html @@ -15,7 +15,7 @@
- +
\ No newline at end of file diff --git a/UI/Web/src/app/admin/manage-media-settings/manage-media-settings.component.ts b/UI/Web/src/app/admin/manage-media-settings/manage-media-settings.component.ts index 799e7ab84..9f619dfe7 100644 --- a/UI/Web/src/app/admin/manage-media-settings/manage-media-settings.component.ts +++ b/UI/Web/src/app/admin/manage-media-settings/manage-media-settings.component.ts @@ -26,6 +26,7 @@ export class ManageMediaSettingsComponent implements OnInit { resetForm() { this.settingsForm.get('convertBookmarkToWebP')?.setValue(this.serverSettings.convertBookmarkToWebP); + this.settingsForm.markAsPristine(); } async saveSettings() { diff --git a/UI/Web/src/app/admin/manage-settings/manage-settings.component.html b/UI/Web/src/app/admin/manage-settings/manage-settings.component.html index 9a79d0684..d104e9bd6 100644 --- a/UI/Web/src/app/admin/manage-settings/manage-settings.component.html +++ b/UI/Web/src/app/admin/manage-settings/manage-settings.component.html @@ -87,7 +87,7 @@
- +
\ No newline at end of file diff --git a/UI/Web/src/app/admin/manage-settings/manage-settings.component.ts b/UI/Web/src/app/admin/manage-settings/manage-settings.component.ts index c58e99405..8ac01b73e 100644 --- a/UI/Web/src/app/admin/manage-settings/manage-settings.component.ts +++ b/UI/Web/src/app/admin/manage-settings/manage-settings.component.ts @@ -60,6 +60,7 @@ export class ManageSettingsComponent implements OnInit { this.settingsForm.get('emailServiceUrl')?.setValue(this.serverSettings.emailServiceUrl); this.settingsForm.get('enableSwaggerUi')?.setValue(this.serverSettings.enableSwaggerUi); this.settingsForm.get('totalBackups')?.setValue(this.serverSettings.totalBackups); + this.settingsForm.markAsPristine(); } async saveSettings() { @@ -91,7 +92,7 @@ export class ManageSettingsComponent implements OnInit { modalRef.closed.subscribe((closeResult: DirectoryPickerResult) => { if (closeResult.success) { this.settingsForm.get(formControl)?.setValue(closeResult.folderPath); - this.settingsForm.markAsTouched(); + this.settingsForm.markAsDirty(); } }); } diff --git a/UI/Web/src/app/admin/manage-system/manage-system.component.ts b/UI/Web/src/app/admin/manage-system/manage-system.component.ts index bd91a7a4c..77891e859 100644 --- a/UI/Web/src/app/admin/manage-system/manage-system.component.ts +++ b/UI/Web/src/app/admin/manage-system/manage-system.component.ts @@ -46,6 +46,7 @@ export class ManageSystemComponent implements OnInit { this.settingsForm.get('port')?.setValue(this.serverSettings.port); this.settingsForm.get('loggingLevel')?.setValue(this.serverSettings.loggingLevel); this.settingsForm.get('allowStatCollection')?.setValue(this.serverSettings.allowStatCollection); + this.settingsForm.markAsPristine(); } saveSettings() { diff --git a/UI/Web/src/app/admin/manage-tasks-settings/manage-tasks-settings.component.html b/UI/Web/src/app/admin/manage-tasks-settings/manage-tasks-settings.component.html index c6d22af31..e0dc4211a 100644 --- a/UI/Web/src/app/admin/manage-tasks-settings/manage-tasks-settings.component.html +++ b/UI/Web/src/app/admin/manage-tasks-settings/manage-tasks-settings.component.html @@ -67,7 +67,7 @@
- +
\ No newline at end of file diff --git a/UI/Web/src/app/admin/manage-tasks-settings/manage-tasks-settings.component.ts b/UI/Web/src/app/admin/manage-tasks-settings/manage-tasks-settings.component.ts index 3e8cde66e..a78d0daaf 100644 --- a/UI/Web/src/app/admin/manage-tasks-settings/manage-tasks-settings.component.ts +++ b/UI/Web/src/app/admin/manage-tasks-settings/manage-tasks-settings.component.ts @@ -99,6 +99,7 @@ export class ManageTasksSettingsComponent implements OnInit { resetForm() { this.settingsForm.get('taskScan')?.setValue(this.serverSettings.taskScan); this.settingsForm.get('taskBackup')?.setValue(this.serverSettings.taskBackup); + this.settingsForm.markAsPristine(); } async saveSettings() { diff --git a/UI/Web/src/app/admin/manage-users/manage-users.component.html b/UI/Web/src/app/admin/manage-users/manage-users.component.html index 915b87c32..17320496d 100644 --- a/UI/Web/src/app/admin/manage-users/manage-users.component.html +++ b/UI/Web/src/app/admin/manage-users/manage-users.component.html @@ -51,18 +51,22 @@ -
Last Active: - Never - - {{member.lastActive | date: 'short'}} - -
-
Sharing: {{formatLibraries(member)}}
-
- Roles: None - - {{role}} - +
+
Last Active: + Never + + {{member.lastActive | date: 'short'}} + +
+
Sharing: {{formatLibraries(member)}}
+
+
+ Roles: None + + {{role}} + +
+
@@ -75,4 +79,4 @@ There are no other users. - \ No newline at end of file + diff --git a/UI/Web/src/app/admin/manage-users/manage-users.component.scss b/UI/Web/src/app/admin/manage-users/manage-users.component.scss index 04f1c6b73..418fbb3f3 100644 --- a/UI/Web/src/app/admin/manage-users/manage-users.component.scss +++ b/UI/Web/src/app/admin/manage-users/manage-users.component.scss @@ -1,3 +1,7 @@ .presence { font-size: 12px; -} \ No newline at end of file +} + +.user-info > div { + margin-top: 3px; +} diff --git a/UI/Web/src/app/cards/entity-info-cards/entity-info-cards.component.html b/UI/Web/src/app/cards/entity-info-cards/entity-info-cards.component.html index ff9a069ff..106194377 100644 --- a/UI/Web/src/app/cards/entity-info-cards/entity-info-cards.component.html +++ b/UI/Web/src/app/cards/entity-info-cards/entity-info-cards.component.html @@ -1,4 +1,22 @@
+ +
+ + {{chapter.releaseDate | date:'shortDate'}} + +
+
+
+ + +
+ + {{chapter.ageRating | ageRating | async}} + +
+
+
+
@@ -8,10 +26,10 @@
- +
- - {{chapter.releaseDate | date:'shortDate'}} + + {{totalWordCount | compactNumber}} Words
@@ -28,24 +46,6 @@
- -
-
- - {{totalWordCount | compactNumber}} Words - -
-
- - -
-
- - {{chapter.ageRating | ageRating | async}} - -
-
-
diff --git a/UI/Web/src/app/cards/series-info-cards/series-info-cards.component.html b/UI/Web/src/app/cards/series-info-cards/series-info-cards.component.html index 88a511fd6..d38ead742 100644 --- a/UI/Web/src/app/cards/series-info-cards/series-info-cards.component.html +++ b/UI/Web/src/app/cards/series-info-cards/series-info-cards.component.html @@ -1,4 +1,12 @@
+ +
+ + {{seriesMetadata.releaseYear}} + +
+
+
@@ -10,15 +18,6 @@
- -
- - {{seriesMetadata.releaseYear}} - -
-
-
-
@@ -58,7 +57,6 @@
- @@ -67,9 +65,9 @@ {{series.wordCount | compactNumber}} Words
-
+
- +
@@ -78,9 +76,7 @@
-
- - +
@@ -93,11 +89,10 @@
-
- + ~{{readingTimeLeft.avgHours}} Hour{{readingTimeLeft.avgHours > 1 ? 's' : ''}} Left
diff --git a/UI/Web/src/app/user-settings/user-preferences/user-preferences.component.html b/UI/Web/src/app/user-settings/user-preferences/user-preferences.component.html index 4b965a4c3..314086490 100644 --- a/UI/Web/src/app/user-settings/user-preferences/user-preferences.component.html +++ b/UI/Web/src/app/user-settings/user-preferences/user-preferences.component.html @@ -34,7 +34,9 @@
+
+
@@ -45,6 +47,7 @@ Blurs summary text on volumes or chapters that have no read progress (to avoid spoilers)
+
@@ -59,7 +62,7 @@
- +
@@ -152,7 +155,7 @@
- +
@@ -267,7 +270,7 @@
- +
diff --git a/UI/Web/src/app/user-settings/user-preferences/user-preferences.component.ts b/UI/Web/src/app/user-settings/user-preferences/user-preferences.component.ts index a06055302..12e1b44d7 100644 --- a/UI/Web/src/app/user-settings/user-preferences/user-preferences.component.ts +++ b/UI/Web/src/app/user-settings/user-preferences/user-preferences.component.ts @@ -188,6 +188,7 @@ export class UserPreferencesComponent implements OnInit, OnDestroy { this.settingsForm.get('blurUnreadSummaries')?.setValue(this.user.preferences.blurUnreadSummaries); this.settingsForm.get('promptForDownloadSize')?.setValue(this.user.preferences.promptForDownloadSize); this.cdRef.markForCheck(); + this.settingsForm.markAsPristine(); } resetPasswordForm() {