Fix repair condition

This commit is contained in:
Ben Adrian Sarmiento
2024-06-19 13:11:50 +02:00
parent 7e54d6c441
commit bd8c6c9932
8 changed files with 90 additions and 58 deletions

View File

@@ -270,7 +270,7 @@ func (zr *Handlers) handleHome(resp http.ResponseWriter, req *http.Request) {
<td>%v</td>
</tr>
<tr>
<td>IDs to be deleted once download completes</td>
<td>IDs to be deleted</td>
<td colspan="2">%v</td>
</tr>
<tr>
@@ -288,6 +288,9 @@ func (zr *Handlers) handleHome(resp http.ResponseWriter, req *http.Request) {
<form method="post" action="/torrents/repair">
<input type="submit" value="Repair torrents" /> Trigger repair of all torrents
</form>
<form method="post" action="/torrents/reset-repair-state">
<input type="submit" value="Reset repair state" /> Reset repair state of all torrents so they can be repaired again
</form>
</td>
<tr>
<td>Debug</td>
@@ -367,58 +370,6 @@ func (zr *Handlers) handleHome(resp http.ResponseWriter, req *http.Request) {
fmt.Fprint(resp, out)
}
func (zr *Handlers) handleRebootWorkerPool(resp http.ResponseWriter, req *http.Request) {
resp.Header().Set("Refresh", "2; url=/")
zr.workerPool.Release()
zr.workerPool.Reboot()
zr.log.Infof("Rebooted worker pool")
fmt.Fprint(resp, "Rebooting worker pool...")
}
func (zr *Handlers) handleRebootRefreshWorker(resp http.ResponseWriter, req *http.Request) {
resp.Header().Set("Refresh", "2; url=/")
zr.torMgr.RefreshWorkerKillSwitch <- struct{}{}
zr.torMgr.StartRefreshJob()
zr.log.Infof("Rebooted refresh worker")
fmt.Fprint(resp, "Rebooting refresh worker...")
}
func (zr *Handlers) handleRebootRepairWorker(resp http.ResponseWriter, req *http.Request) {
resp.Header().Set("Refresh", "2; url=/")
zr.torMgr.RepairWorkerKillSwitch <- struct{}{}
zr.torMgr.StartRepairJob()
zr.log.Infof("Rebooted repair worker")
fmt.Fprint(resp, "Rebooting repair worker...")
}
func (zr *Handlers) handleRemountDownloads(resp http.ResponseWriter, req *http.Request) {
resp.Header().Set("Refresh", "2; url=/")
zr.torMgr.RemountTrigger <- struct{}{}
zr.log.Infof("Triggered remount of downloads")
fmt.Fprint(resp, "Remounting downloads...")
}
func (zr *Handlers) handleDumpTorrents(resp http.ResponseWriter, req *http.Request) {
resp.Header().Set("Refresh", "2; url=/")
zr.torMgr.DumpTrigger <- struct{}{}
zr.log.Infof("Triggered dump of torrents")
fmt.Fprint(resp, "Dumping torrents...")
}
func (zr *Handlers) handleAnalyzeTorrents(resp http.ResponseWriter, req *http.Request) {
resp.Header().Set("Refresh", "2; url=/")
zr.torMgr.AnalyzeTrigger <- struct{}{}
zr.log.Infof("Triggered media analysis of torrents")
fmt.Fprint(resp, "Analyzing all torrents...")
}
func (zr *Handlers) handleTriggerRepairAll(resp http.ResponseWriter, req *http.Request) {
resp.Header().Set("Refresh", "2; url=/")
zr.torMgr.EnqueueForRepair(nil)
zr.log.Infof("Triggered repair of all torrents")
fmt.Fprint(resp, "Repairing all torrents...")
}
func bToMb(b uint64) uint64 {
return b / 1024 / 1024
}