--Alle Rechte an SimSoft 3 sind "SimlorLP" (oder in Minecraft auch nur "Simlor") vorbehalten.

BC(128)
Clear()

SimSoftBalken("SimSoft 3 - OS update", 21)

TC(1)
BC(128)
CP(4,5)
print("Update console")

TC(256)

--Version des eigenen OS
CP(2,7)
file = fs.open("SimSoft/Daten/Config","r")
local fileData = {}
local line = file.readLine()
repeat
table.insert(fileData,line)
line = file.readLine()
until line == nil
file.close()

SS2V = fileData[3]

print("Clint os version: "..SS2V)

--Update Datei wird geladen
CP(2,8)
print("Load update details")
local cacheBuster = ("%x"):format(math.random(0, 2 ^ 30))
local datei = http.get("https://pastebin.com/raw/LZch2Xnt".. "?cb=" .. cacheBuster)
datei = datei.readAll()

local file = fs.open("SimSoft/Daten/UpdateCheck/S","w") 
file.writeLine(datei)
file.close()

CP(2,9)
TC(256)

file = fs.open("SimSoft/Daten/UpdateCheck/S","r")
local fileData = {}
local line = file.readLine()
repeat
table.insert(fileData,line)
line = file.readLine()
until line == nil
file.close()

v = fileData[1]

if v == SS2V then
 print("The latest version is already")
 CP(2,10)
 print("installed")
 TC(1)
 CP(2,11)
 print("Please wait...")
 sleep(4)
 fs.delete("SimSoft/Daten/UpdateCheck/S")
 print(" System reboot...")
 sleep(0.2)
 os.reboot()
else
 print("Updates are installed...")
 sleep(2)
 BC(32768)
 TC(1)
 Clear()
 print("SimSoft 3.1 Update Console 2b")
 
 a = 1
 
 while true do
  a = (a+3)
  v = fileData[a]
  
  if v == SS2V then
   break
  end
 end
 
 a = (a+1)
 l = fileData[a]
 
 local cacheBuster = ("%x"):format(math.random(0, 2 ^ 30))
 local datei = http.get("https://pastebin.com/raw/" .. textutils.urlEncode(l) .. "?cb=" .. cacheBuster)
 datei = datei.readAll()

 local file = fs.open("SimSoft/Daten/UpdateCheck/version","w") 
 file.writeLine(datei)
 file.close()

 shell.run("SimSoft/Daten/UpdateCheck/version")
 
 fs.delete("SimSoft/Daten/UpdateCheck/S")
 print("System reboot...")
 sleep(0.2)
 os.reboot()
end

--End