Преглед изворни кода

fix(sdtd): read web dashboard port from WebDashboardPort (#5221)

7 Days to Die Alpha 21 replaced ControlPanelEnabled, ControlPanelPort and ControlPanelPassword with WebDashboardEnabled and WebDashboardPort. The stock serverconfig.xml only has the new keys, so details showed the web port as 0. Read the WebDashboard keys first and fall back to the ControlPanel keys for older configs.
Daniel Gibbs пре 1 дан
родитељ
комит
457939b8d8
1 измењених фајлова са 8 додато и 2 уклоњено
  1. 8 2
      lgsm/modules/info_game.sh

+ 8 - 2
lgsm/modules/info_game.sh

@@ -2088,9 +2088,15 @@ fn_info_game_scpsl() {
 fn_info_game_sdtd() {
 	if [ -f "${servercfgfullpath}" ]; then
 		fn_info_game_xml "gamemode" "/ServerSettings/property[@name='GameMode']/@value"
-		fn_info_game_xml "httpenabled" "/ServerSettings/property[@name='ControlPanelEnabled']/@value"
+		fn_info_game_xml "httpenabled" "/ServerSettings/property[@name='WebDashboardEnabled']/@value"
+		if [ -z "${httpenabled}" ]; then
+			fn_info_game_xml "httpenabled" "/ServerSettings/property[@name='ControlPanelEnabled']/@value"
+		fi
 		fn_info_game_xml "httppassword" "/ServerSettings/property[@name='ControlPanelPassword']/@value"
-		fn_info_game_xml "httpport" "/ServerSettings/property[@name='ControlPanelPort']/@value"
+		fn_info_game_xml "httpport" "/ServerSettings/property[@name='WebDashboardPort']/@value"
+		if [ -z "${httpport}" ]; then
+			fn_info_game_xml "httpport" "/ServerSettings/property[@name='ControlPanelPort']/@value"
+		fi
 		fn_info_game_xml "maxplayers" "/ServerSettings/property[@name='ServerMaxPlayerCount']/@value"
 		fn_info_game_xml "servername" "/ServerSettings/property[@name='ServerName']/@value"
 		fn_info_game_xml "serverpassword" "/ServerSettings/property[@name='ServerPassword']/@value"