better restart logic
This commit is contained in:
parent
b4e3e71a30
commit
eb3cadf75a
@ -1,4 +1,10 @@
|
|||||||
jQuery(document).ready(function ($) {
|
jQuery(document).ready(function ($) {
|
||||||
|
var done = function () {
|
||||||
|
setTimeout(function() {
|
||||||
|
document.location.reload();
|
||||||
|
}, 3000);
|
||||||
|
};
|
||||||
|
|
||||||
$(document).on('click', '.sysinfo-restart', function () {
|
$(document).on('click', '.sysinfo-restart', function () {
|
||||||
if (confirm(l.js_sysinfo_restart_confirmation)) {
|
if (confirm(l.js_sysinfo_restart_confirmation)) {
|
||||||
$('body').html(l.js_sysinfo_restart_loading).css({margin:200});
|
$('body').html(l.js_sysinfo_restart_loading).css({margin:200});
|
||||||
@ -7,11 +13,7 @@ jQuery(document).ready(function ($) {
|
|||||||
headers: {'Content-Type': 'application/json'},
|
headers: {'Content-Type': 'application/json'},
|
||||||
data: '',
|
data: '',
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
}).catch(function () {
|
}).done(done).catch(done);
|
||||||
setTimeout(function() {
|
|
||||||
document.location.reload();
|
|
||||||
}, 3000);
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|||||||
@ -90,7 +90,7 @@ def inject_global_vars():
|
|||||||
PlayerController(app, LANGDICT, slide_manager)
|
PlayerController(app, LANGDICT, slide_manager)
|
||||||
SlideshowController(app, LANGDICT, slide_manager)
|
SlideshowController(app, LANGDICT, slide_manager)
|
||||||
SettingsController(app, LANGDICT, variable_manager)
|
SettingsController(app, LANGDICT, variable_manager)
|
||||||
SysinfoController(app, LANGDICT)
|
SysinfoController(app, LANGDICT, config)
|
||||||
|
|
||||||
if vars['fleet_enabled'].as_bool():
|
if vars['fleet_enabled'].as_bool():
|
||||||
FleetController(app, LANGDICT, screen_manager)
|
FleetController(app, LANGDICT, screen_manager)
|
||||||
|
|||||||
@ -1,5 +1,7 @@
|
|||||||
import os
|
import os
|
||||||
import sys
|
import sys
|
||||||
|
import platform
|
||||||
|
import subprocess
|
||||||
|
|
||||||
from flask import Flask, render_template, jsonify
|
from flask import Flask, render_template, jsonify
|
||||||
from src.utils import get_ip_address
|
from src.utils import get_ip_address
|
||||||
@ -7,9 +9,10 @@ from src.utils import get_ip_address
|
|||||||
|
|
||||||
class SysinfoController:
|
class SysinfoController:
|
||||||
|
|
||||||
def __init__(self, app, lang_dict):
|
def __init__(self, app, lang_dict, config):
|
||||||
self._app = app
|
self._app = app
|
||||||
self._lang_dict = lang_dict
|
self._lang_dict = lang_dict
|
||||||
|
self._config = config
|
||||||
self.register()
|
self.register()
|
||||||
|
|
||||||
def register(self):
|
def register(self):
|
||||||
@ -24,7 +27,18 @@ class SysinfoController:
|
|||||||
)
|
)
|
||||||
|
|
||||||
def sysinfo_restart(self):
|
def sysinfo_restart(self):
|
||||||
|
if platform.system().lower() == 'darwin':
|
||||||
|
if self._config['debug']:
|
||||||
python = sys.executable
|
python = sys.executable
|
||||||
os.execl(python, python, *sys.argv)
|
os.execl(python, python, *sys.argv)
|
||||||
|
else:
|
||||||
|
try:
|
||||||
|
subprocess.run(["sudo", "systemctl", "restart", 'obscreen'], check=True, timeout=10, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
|
||||||
|
pass
|
||||||
|
except subprocess.TimeoutExpired:
|
||||||
|
pass
|
||||||
|
except subprocess.CalledProcessError:
|
||||||
|
pass
|
||||||
|
|
||||||
return jsonify({'status': 'ok'})
|
return jsonify({'status': 'ok'})
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user