mirror of
https://gitlab.com/crafty-controller/crafty-4.git
synced 2024-08-30 18:23:09 +00:00
Adds delayed start status for auto-launching servers when crafty starts.
This commit is contained in:
parent
f032f4054e
commit
6e54089890
@ -88,9 +88,11 @@ class Controller:
|
||||
|
||||
if s['auto_start']:
|
||||
db_helper.set_waiting_start(s['server_id'], True)
|
||||
|
||||
db_helper.get_waiting_start(s['server_id'])
|
||||
|
||||
server_stats = db_helper.get_server_stats_by_id(s['server_id'])
|
||||
print(server_stats['waiting_start'])
|
||||
server_stats = db_helper.get_all_servers_stats()
|
||||
self.refresh_server_settings(s['server_id'])
|
||||
|
||||
console.info("Loaded Server: ID {} | Name: {} | Autostart: {} | Delay: {} ".format(
|
||||
s['server_id'],
|
||||
|
@ -469,6 +469,11 @@ class db_shortcuts:
|
||||
with database.atomic():
|
||||
Server_Stats.update(waiting_start=value).where(Server_Stats.server_id == server_id).execute()
|
||||
|
||||
@staticmethod
|
||||
def get_waiting_start(server_id):
|
||||
waiting_start = Server_Stats.select().where(Server_Stats.server_id == server_id).get()
|
||||
return waiting_start.waiting_start
|
||||
|
||||
@staticmethod
|
||||
def get_TTL_without_player(server_id):
|
||||
last_stat = Server_Stats.select().where(Server_Stats.server_id == server_id).order_by(Server_Stats.created.desc()).first()
|
||||
|
@ -195,7 +195,6 @@ class Server:
|
||||
if helper.check_internet():
|
||||
loc_server_port = db_helper.get_server_stats_by_id(self.server_id)['server_port']
|
||||
if helper.check_port(loc_server_port):
|
||||
db_helper.set_waiting_start(self.server_id, False)
|
||||
websocket_helper.broadcast('send_start_reload', {
|
||||
})
|
||||
else:
|
||||
@ -207,7 +206,7 @@ class Server:
|
||||
'error': translation.translate('error', 'internet')
|
||||
})
|
||||
|
||||
|
||||
db_helper.set_waiting_start(self.server_id, False)
|
||||
self.process = pexpect.spawn(self.server_command, cwd=self.server_path, timeout=None, encoding='utf-8')
|
||||
out_buf = ServerOutBuf(self.process, self.server_id)
|
||||
|
||||
|
@ -123,6 +123,8 @@ class PanelHandler(BaseHandler):
|
||||
elif page == 'dashboard':
|
||||
if exec_user['superuser'] == 1:
|
||||
page_data['servers'] = db_helper.get_all_servers_stats()
|
||||
for data in page_data['servers']:
|
||||
data['stats']['waiting_start'] = db_helper.get_waiting_start(int(data['stats']['server_id']['server_id']))
|
||||
else:
|
||||
user_auth = db_helper.get_authorized_servers_stats(exec_user_id)
|
||||
logger.debug("ASFR: {}".format(user_auth))
|
||||
@ -172,6 +174,7 @@ class PanelHandler(BaseHandler):
|
||||
# server_data isn't needed since the server_stats also pulls server data
|
||||
page_data['server_data'] = db_helper.get_server_data_by_id(server_id)
|
||||
page_data['server_stats'] = db_helper.get_server_stats_by_id(server_id)
|
||||
page_data['waiting_start'] = db_helper.get_waiting_start(server_id)
|
||||
page_data['get_players'] = lambda: self.controller.stats.get_server_players(server_id)
|
||||
page_data['active_link'] = subpage
|
||||
page_data['permissions'] = {
|
||||
|
@ -132,7 +132,7 @@
|
||||
{% elif server['stats']['updating']%}
|
||||
<a data-id="{{server['server_data']['server_id']}}" class="">{{ translate('serverTerm', 'updating') }}</i></a>
|
||||
{% elif server['stats']['waiting_start']%}
|
||||
<a data-id="{{server['server_data']['server_id']}}" class="">{{ translate('serverTerm', 'starting') }}</i></a>
|
||||
<a data-id="{{server['server_data']['server_id']}}" class="" title={{ translate('dashboard', 'delay-explained')}}>{{ translate('dashboard', 'starting') }}</i></a>
|
||||
{% else %}
|
||||
<a data-id="{{server['server_data']['server_id']}}" class="play_button"><i class="fas fa-play" data-toggle="tooltip" title={{ translate('dashboard', 'start') }}></i></a>
|
||||
<a data-id="{{server['server_data']['server_id']}}" class="clone_button"> <i class="fas fa-clone" data-toggle="tooltip" title={{ translate('dashboard', 'clone') }}></i></a>
|
||||
|
@ -54,6 +54,12 @@
|
||||
<button onclick="" id="restart-btn" style="max-width: 7rem;" class="btn btn-outline-primary m-1 flex-grow-1 disabled">{% raw translate('serverTerm', 'restart') %}</button>
|
||||
<button onclick="" id="stop-btn" style="max-width: 7rem;" class="btn btn-danger m-1 flex-grow-1 disabled">{{ translate('serverTerm', 'stop') }}</button>
|
||||
</div>
|
||||
{% elif data['waiting_start'] %}
|
||||
<div id="control_buttons" class="mt-4 flex-wrap d-flex justify-content-between justify-content-md-center align-items-center px-5 px-md-0" style="visibility: visible">
|
||||
<button onclick="" id="start-btn" style="max-width: 7rem; white-space: nowrap;" class="btn btn-secondary m-1 flex-grow-1 disabled" data-toggle="tooltip" title="{{ translate('serverTerm', 'delay-explained')}}">{{ translate('serverTerm', 'starting') }}</button>
|
||||
<button onclick="" id="restart-btn" style="max-width: 7rem;" class="btn btn-outline-primary m-1 flex-grow-1 disabled">{% raw translate('serverTerm', 'restart') %}</button>
|
||||
<button onclick="" id="stop-btn" style="max-width: 7rem;" class="btn btn-danger m-1 flex-grow-1 disabled">{{ translate('serverTerm', 'stop') }}</button>
|
||||
</div>
|
||||
{% else %}
|
||||
<div id="control_buttons" class="mt-4 flex-wrap d-flex justify-content-between justify-content-md-center align-items-center px-5 px-md-0" style="visibility: visible">
|
||||
<button onclick="send_command(server_id, 'start_server');" id="start-btn" style="max-width: 7rem;" class="btn btn-primary m-1 flex-grow-1">{{ translate('serverTerm', 'start') }}</button>
|
||||
|
@ -99,7 +99,8 @@
|
||||
"kill": "Kill Process",
|
||||
"restart": "Restart",
|
||||
"killing": "Killing process...",
|
||||
"starting": "Delayed Start"
|
||||
"starting": "Delayed-Start",
|
||||
"delay-explained": "The service/agent has recently started and is delaying the start of the minecraft server instance"
|
||||
},
|
||||
"accessDenied": {
|
||||
"accessDenied": "Access Denied",
|
||||
@ -140,7 +141,8 @@
|
||||
"restart": "Restart",
|
||||
"stop": "Stop",
|
||||
"updating": "Updating...",
|
||||
"starting": "Delayed Start"
|
||||
"starting": "Delayed-Start",
|
||||
"delay-explained": "The service/agent has recently started and is delaying the start of the minecraft server instance"
|
||||
},
|
||||
"serverPlayerManagement": {
|
||||
"players": "Players",
|
||||
|
@ -99,7 +99,8 @@
|
||||
"kill": "Tapa prosessi",
|
||||
"restart": "Uudelleenkäynnistää",
|
||||
"killing": "Tappamisprosessi ...",
|
||||
"starting": "Delayed Start"
|
||||
"starting": "Myöhästynyt lähtö",
|
||||
"delay-explained": "Palvelu/agentti on äskettäin aloittanut ja viivästyttää minecraft -palvelimen ilmentymän alkua"
|
||||
},
|
||||
"accessDenied": {
|
||||
"accessDenied": "Käyttö estetty",
|
||||
@ -140,7 +141,8 @@
|
||||
"restart": "Uudelleen­käynnistä",
|
||||
"stop": "Sammuta",
|
||||
"updating": "Updating",
|
||||
"starting": "Delayed Start"
|
||||
"starting": "Myöhästynyt lähtö",
|
||||
"delay-explained": "Palvelu/agentti on äskettäin aloittanut ja viivästyttää minecraft -palvelimen ilmentymän alkua"
|
||||
},
|
||||
"serverPlayerManagement": {
|
||||
"players": "Pelaajat",
|
||||
|
@ -99,7 +99,8 @@
|
||||
"kill": "Tuer le processus",
|
||||
"restart": "Redémarrage",
|
||||
"killing": "Processus de mise à mort...",
|
||||
"starting": "Delayed Start"
|
||||
"starting": "Démarrage retardé",
|
||||
"delay-explained": "Le service/agent a récemment démarré et retarde le démarrage de l'instance du serveur minecraft"
|
||||
},
|
||||
"accessDenied": {
|
||||
"accessDenied": "Accès Interdit",
|
||||
@ -140,7 +141,8 @@
|
||||
"restart": "Redémarrer",
|
||||
"stop": "Arrêter",
|
||||
"updating": "Mise à Jour ...",
|
||||
"starting": "Delayed Start"
|
||||
"starting": "Démarrage retardé",
|
||||
"delay-explained": "Le service/agent a récemment démarré et retarde le démarrage de l'instance du serveur minecraft"
|
||||
},
|
||||
"serverPlayerManagement": {
|
||||
"players": "Joueurs",
|
||||
|
Loading…
Reference in New Issue
Block a user