1
0
mirror of https://github.com/hrfee/jfa-go.git synced 2024-12-22 17:10:10 +00:00

Add notice about no self-restarts on windows

This commit is contained in:
Harvey Tindall 2020-09-05 21:52:23 +01:00
parent d31254b18e
commit f5f2a0f190
Signed by: hrfee
GPG Key ID: BBC65952848FB1A2
5 changed files with 33 additions and 2 deletions

View File

@ -1120,7 +1120,10 @@ document.getElementById('settingsSave').onclick = function() {
}
if (restart_setting_changed) {
document.getElementById('applyRestarts').onclick = function(){ sendConfig('restartModal'); };
document.getElementById('applyAndRestart').onclick = function(){ sendConfig('restartModal', restart=true); };
let restartButton = document.getElementById('applyAndRestart')
if (restartButton) {
restartButton.onclick = function(){ sendConfig('restartModal', restart=true); };
}
settingsModal.hide();
restartModal.show();
} else if (settings_changed) {

View File

@ -269,6 +269,15 @@
<div class="modal-header">
<h5 class="modal-title">Warning</h5>
</div>
{{ if .windows }}
<div class="modal-body">
<p>A restart is needed to apply some settings. Self-restarts aren't possible on Windows, so you must restart manually.</p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-light" data-dismiss="modal">Cancel</button>
<button type="button" class="btn btn-secondary" id="applyRestarts" data-dismiss="modal">Apply, Restart manually</button>
</div>
{{ else }}
<div class="modal-body">
<p>A restart is needed to apply some settings. Restart now, later, or cancel?</p>
</div>
@ -277,6 +286,7 @@
<button type="button" class="btn btn-secondary" id="applyRestarts" data-dismiss="modal">Apply, Restart later</button>
<button type="button" class="btn btn-primary" id="applyAndRestart" data-dismiss="modal">Apply &amp; Restart</button>
</div>
{{ end }}
</div>
</div>
</div>

View File

@ -359,7 +359,11 @@
<div class="card-body text-center">
<h5 class="card-title">Finished!</h5>
<p class="card-text">
{{ if .windows }}
Press the button below to submit your settings. Unfortunately you're running on Windows, so jfa-go <a href="https://github.com/golang/go/issues/30662">cannot restart itself.</a> You will manually have to restart.
{{ else }}
Press the button below to submit your settings. The program will restart. Once it's done, refresh this page.
{{ end }}
</p>
<button id="submitButton" class="btn btn-primary">Submit</button>
</div>

11
main.go
View File

@ -14,6 +14,7 @@ import (
"os"
"os/signal"
"path/filepath"
"runtime"
"time"
"github.com/gin-contrib/pprof"
@ -95,6 +96,8 @@ func setGinLogger(router *gin.Engine, debugMode bool) {
}
}
var PLATFORM string = runtime.GOOS
func main() {
fmt.Printf("jfa-go version: %s (%s)\n", VERSION, COMMIT)
// app encompasses essentially all useful functions.
@ -362,8 +365,14 @@ func main() {
}
app.info.Printf("Starting router @ %s", address)
} else {
windows := false
if PLATFORM == "windows" {
windows = true
}
router.GET("/", func(gc *gin.Context) {
gc.HTML(200, "setup.html", gin.H{})
gc.HTML(200, "setup.html", gin.H{
"windows": windows,
})
})
router.POST("/testJF", app.TestJF)
router.POST("/modifyConfig", app.ModifyConfig)

View File

@ -11,6 +11,10 @@ func (app *appContext) AdminPage(gc *gin.Context) {
emailEnabled, _ := app.config.Section("invite_emails").Key("enabled").Bool()
notificationsEnabled, _ := app.config.Section("notifications").Key("enabled").Bool()
ombiEnabled := app.config.Section("ombi").Key("enabled").MustBool(false)
windows := false
if PLATFORM == "windows" {
windows = true
}
gc.HTML(http.StatusOK, "admin.html", gin.H{
"bs5": bs5,
"cssFile": app.cssFile,
@ -20,6 +24,7 @@ func (app *appContext) AdminPage(gc *gin.Context) {
"version": VERSION,
"commit": COMMIT,
"ombiEnabled": ombiEnabled,
"windows": windows,
})
}