jf-roku/source/Main.brs

48 lines
1.1 KiB
Plaintext
Raw Normal View History

2019-01-30 04:19:27 +00:00
sub Main()
2019-05-02 17:45:07 +00:00
' If the Rooibos files are included in deployment, run tests
if (type(Rooibos__Init) = "Function") then Rooibos__Init()
2019-04-29 16:44:37 +00:00
' The main function that runs when the application is launched.
keepalive = CreateObject("roSGScreen")
keepalive.show()
app_start:
2019-03-05 04:59:31 +00:00
' First thing to do is validate the ability to use the API
LoginFlow()
' Confirm the configured server and user work
ShowLibrarySelect()
' Have a catch for exiting the library on sign-out
if get_setting("active_user") = invalid
goto app_start
end if
if getGlobal("user_change") = true
' Signal caught, reset
setGlobal("user_change", false)
goto app_start
end if
end sub
sub LoginFlow()
2019-04-29 16:44:37 +00:00
'Collect Jellyfin server and user information
start_login:
if get_setting("server") = invalid then
print "Get server details"
ShowServerSelect()
end if
2019-01-30 04:19:27 +00:00
if get_setting("active_user") = invalid then
print "Get user login"
ShowSigninSelect()
end if
2019-03-02 22:03:11 +00:00
2019-03-05 04:59:31 +00:00
m.user = AboutMe()
2019-04-20 17:40:06 +00:00
if m.user = invalid or m.user.id <> get_setting("active_user")
print "Login failed, restart flow"
2019-04-20 17:40:06 +00:00
unset_setting("active_user")
goto start_login
2019-03-05 04:59:31 +00:00
end if
2019-01-30 04:19:27 +00:00
end sub