Adding a select all button for the delete torrent popup

This commit is contained in:
Eugene Kallivrousis 2025-04-08 15:20:56 -04:00
parent 3f4fb6d20a
commit 6f67f38600
2 changed files with 23 additions and 4 deletions

View file

@ -106,20 +106,27 @@
<div class="field">
<label class="label"></label>
<div class="control">
<label class="checkbox">
<input type="checkbox" [(ngModel)]="deleteData" />
<label class="checkbox">
<input type="checkbox" [(ngModel)]="deleteData" (change)="updateSelectAll()" />
Delete Torrents from client
</label>
<br />
<label class="checkbox">
<input type="checkbox" [(ngModel)]="deleteRdTorrent" />
<input type="checkbox" [(ngModel)]="deleteRdTorrent" (change)="updateSelectAll()" />
Delete Torrents from provider
</label>
<br />
<label class="checkbox">
<input type="checkbox" [(ngModel)]="deleteLocalFiles" />
<input type="checkbox" [(ngModel)]="deleteLocalFiles" (change)="updateSelectAll()" />
Delete local files
</label>
<br />
<br />
<!-- Select All Checkbox -->
<label class="checkbox">
<input type="checkbox" [(ngModel)]="selectAll" (change)="toggleAllOptions()" />
Select All
</label>
</div>
</div>
<div class="notification is-primary">

View file

@ -20,6 +20,7 @@ export class TorrentTableComponent implements OnInit {
public isDeleteModalActive: boolean;
public deleteError: string;
public deleting: boolean;
public selectAll: boolean;
public deleteData: boolean;
public deleteRdTorrent: boolean;
public deleteLocalFiles: boolean;
@ -247,4 +248,15 @@ export class TorrentTableComponent implements OnInit {
},
});
}
// Called when "Select All" is toggled
toggleAllOptions() {
this.deleteData = this.selectAll;
this.deleteRdTorrent = this.selectAll;
this.deleteLocalFiles = this.selectAll;
}
// Called when any individual checkbox is toggled
updateSelectAll() {
this.selectAll = this.deleteData && this.deleteRdTorrent && this.deleteLocalFiles;
}
}