File tree Expand file tree Collapse file tree 1 file changed +26
-0
lines changed Expand file tree Collapse file tree 1 file changed +26
-0
lines changed Original file line number Diff line number Diff line change @@ -976,5 +976,31 @@ func UpdateServerSettings(w http.ResponseWriter, r *http.Request) {
976976 return
977977 }
978978 log .Printf ("Received settings JSON: %s" , body )
979+
980+ err = json .Unmarshal (body , & FactorioServ .Settings )
981+ if err != nil {
982+ log .Printf ("Error unmarshaling server settings JSON: %s" , err )
983+ resp .Data = fmt .Sprintf ("Error in updating settings: %s" , err )
984+ resp .Success = false
985+ if err := json .NewEncoder (w ).Encode (resp ); err != nil {
986+ log .Printf ("Error encoding server settings response: %s" , err )
987+ }
988+ return
989+ }
990+
991+ settings , err := json .MarshalIndent (& FactorioServ .Settings , "" , " " )
992+ if err != nil {
993+ log .Printf ("Failed to marshal server settings: %s" , err )
994+ return
995+ } else {
996+ ioutil .WriteFile (filepath .Join (config .FactorioDir , "server-settings.json" ), settings , 0644 )
997+ log .Printf ("Saved Factorio server settings in server-settings.json" )
998+ }
999+
1000+ resp .Success = true
1001+ resp .Data = fmt .Sprintf ("Settings successfully saved: %s" , & FactorioServ .Settings )
1002+ if err := json .NewEncoder (w ).Encode (resp ); err != nil {
1003+ log .Printf ("Error in sending server settings response: %s" , err )
1004+ }
9791005 }
9801006}
You can’t perform that action at this time.
0 commit comments