diff --git a/backend/subscriptions.js b/backend/subscriptions.js
index f1d89e6..ee0ff7b 100644
--- a/backend/subscriptions.js
+++ b/backend/subscriptions.js
@@ -439,7 +439,11 @@ async function getAllSubscriptions() {
}
async function getSubscription(subID) {
- return await db_api.getRecord('subscriptions', {id: subID});
+ const sub = await db_api.getRecord('subscriptions', {id: subID});
+ // now with the download_queue, we may need to override 'downloading'
+ const current_downloads = await db_api.getRecords('download_queue', {running: true, sub_id: sub.id}, true);
+ if (!sub['downloading']) sub['downloading'] = current_downloads > 0;
+ return sub;
}
async function getSubscriptionByName(subName, user_uid = null) {
diff --git a/src/app/dialogs/edit-subscription-dialog/edit-subscription-dialog.component.html b/src/app/dialogs/edit-subscription-dialog/edit-subscription-dialog.component.html
index 67f6a6e..2d08862 100644
--- a/src/app/dialogs/edit-subscription-dialog/edit-subscription-dialog.component.html
+++ b/src/app/dialogs/edit-subscription-dialog/edit-subscription-dialog.component.html
@@ -9,13 +9,13 @@
Download all uploads
-
+
Download videos uploaded in the last
-
+
-
+
{{time_unit + (timerange_amount === 1 ? '' : 's')}}
diff --git a/src/app/dialogs/subscribe-dialog/subscribe-dialog.component.html b/src/app/dialogs/subscribe-dialog/subscribe-dialog.component.html
index d8432ae..484dfec 100644
--- a/src/app/dialogs/subscribe-dialog/subscribe-dialog.component.html
+++ b/src/app/dialogs/subscribe-dialog/subscribe-dialog.component.html
@@ -24,14 +24,14 @@
Download all uploads
-
+
Download videos uploaded in the last
-
+
-
+
{{time_unit + (timerange_amount === 1 ? '' : 's')}}
diff --git a/src/app/dialogs/subscription-info-dialog/subscription-info-dialog.component.html b/src/app/dialogs/subscription-info-dialog/subscription-info-dialog.component.html
index 4517a47..9acebfd 100644
--- a/src/app/dialogs/subscription-info-dialog/subscription-info-dialog.component.html
+++ b/src/app/dialogs/subscription-info-dialog/subscription-info-dialog.component.html
@@ -23,5 +23,5 @@
-
+
\ No newline at end of file
diff --git a/src/app/dialogs/subscription-info-dialog/subscription-info-dialog.component.ts b/src/app/dialogs/subscription-info-dialog/subscription-info-dialog.component.ts
index eebd285..5e14fc3 100644
--- a/src/app/dialogs/subscription-info-dialog/subscription-info-dialog.component.ts
+++ b/src/app/dialogs/subscription-info-dialog/subscription-info-dialog.component.ts
@@ -1,6 +1,7 @@
import { Component, OnInit, Inject } from '@angular/core';
-import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';
+import { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';
import { PostsService } from 'app/posts.services';
+import { ConfirmDialogComponent } from '../confirm-dialog/confirm-dialog.component';
@Component({
selector: 'app-subscription-info-dialog',
@@ -13,7 +14,8 @@ export class SubscriptionInfoDialogComponent implements OnInit {
unsubbedEmitter = null;
constructor(public dialogRef: MatDialogRef,
- @Inject(MAT_DIALOG_DATA) public data: any, private postsService: PostsService) { }
+ @Inject(MAT_DIALOG_DATA) public data: any, private postsService: PostsService,
+ private dialog: MatDialog) { }
ngOnInit() {
if (this.data) {
@@ -22,6 +24,22 @@ export class SubscriptionInfoDialogComponent implements OnInit {
}
}
+ confirmUnsubscribe() {
+ const dialogRef = this.dialog.open(ConfirmDialogComponent, {
+ data: {
+ dialogTitle: $localize`Unsubscribe from ${this.sub['name']}:subscription name:`,
+ dialogText: $localize`Would you like to unsubscribe from ${this.sub['name']}:subscription name:?`,
+ submitText: $localize`Unsubscribe`,
+ warnSubmitColor: true
+ }
+ });
+ dialogRef.afterClosed().subscribe(confirmed => {
+ if (confirmed) {
+ this.unsubscribe();
+ }
+ });
+ }
+
unsubscribe() {
this.postsService.unsubscribe(this.sub, true).subscribe(res => {
this.unsubbedEmitter.emit(true);
@@ -30,7 +48,7 @@ export class SubscriptionInfoDialogComponent implements OnInit {
}
downloadArchive() {
- this.postsService.downloadArchive(this.sub).subscribe(res => {
+ this.postsService.downloadArchive(null, this.sub.id).subscribe(res => {
const blob: Blob = res;
saveAs(blob, 'archive.txt');
});
diff --git a/src/app/settings/settings.component.ts b/src/app/settings/settings.component.ts
index 820a3c7..7577fb2 100644
--- a/src/app/settings/settings.component.ts
+++ b/src/app/settings/settings.component.ts
@@ -170,9 +170,9 @@ export class SettingsComponent implements OnInit {
deleteCategory(category: Category): void {
const dialogRef = this.dialog.open(ConfirmDialogComponent, {
data: {
- dialogTitle: 'Delete category',
- dialogText: `Would you like to delete ${category['name']}?`,
- submitText: 'Delete',
+ dialogTitle: $localize`Delete category`,
+ dialogText: $localize`Would you like to delete ${category['name']}:category name:?`,
+ submitText: $localize`Delete`,
warnSubmitColor: true
}
});
@@ -180,12 +180,11 @@ export class SettingsComponent implements OnInit {
if (confirmed) {
this.postsService.deleteCategory(category['uid']).subscribe(res => {
if (res['success']) {
- // TODO: Make translatable
- this.postsService.openSnackBar(`Successfully deleted ${category['name']}!`);
+ this.postsService.openSnackBar($localize`Successfully deleted ${category['name']}:category name:!`);
this.postsService.reloadCategories();
}
}, () => {
- this.postsService.openSnackBar(`Failed to delete ${category['name']}!`);
+ this.postsService.openSnackBar($localize`Failed to delete ${category['name']}:category name:!`);
});
}
});
diff --git a/src/app/subscription/subscription/subscription.component.html b/src/app/subscription/subscription/subscription.component.html
index 586879c..fa0172a 100644
--- a/src/app/subscription/subscription/subscription.component.html
+++ b/src/app/subscription/subscription/subscription.component.html
@@ -10,9 +10,9 @@
-
-
-
+
+
+
\ No newline at end of file
diff --git a/src/app/subscription/subscription/subscription.component.ts b/src/app/subscription/subscription/subscription.component.ts
index c7c7688..4c73efc 100644
--- a/src/app/subscription/subscription/subscription.component.ts
+++ b/src/app/subscription/subscription/subscription.component.ts
@@ -54,6 +54,9 @@ export class SubscriptionComponent implements OnInit, OnDestroy {
this.subscription['downloading'] = res['subscription']['downloading'];
}
return;
+ } else if (res['subscription']['videos'].length > (this.subscription?.videos.length || 0)) {
+ // only when files are added so we don't reload files when one is deleted
+ this.postsService.files_changed.next(true);
}
this.subscription = res['subscription'];
});
diff --git a/src/app/subscriptions/subscriptions.component.html b/src/app/subscriptions/subscriptions.component.html
index e9e8059..2a097d2 100644
--- a/src/app/subscriptions/subscriptions.component.html
+++ b/src/app/subscriptions/subscriptions.component.html
@@ -15,10 +15,10 @@
-
@@ -39,10 +39,10 @@
-
+
edit
-
+
info
@@ -57,4 +57,4 @@
-
add
\ No newline at end of file
+
add
\ No newline at end of file