@ -22,21 +22,26 @@ class LoginQRViewModel : IpnViewModel() {
val numCode : StateFlow < String ? > = MutableStateFlow ( null )
val numCode : StateFlow < String ? > = MutableStateFlow ( null )
val qrCode : StateFlow < ImageBitmap ? > = MutableStateFlow ( null )
val qrCode : StateFlow < ImageBitmap ? > = MutableStateFlow ( null )
// Remove this once changes to admin console allowing input code to be entered are made.
val codeEnabled = false
init {
init {
viewModelScope . launch {
viewModelScope . launch {
Notifier . browseToURL . collect { url ->
Notifier . browseToURL . collect { url ->
url ?. let {
url ?. let {
qrCode . set ( generateQRCode ( url , 200 , 0 ) )
qrCode . set ( generateQRCode ( url , 200 , 0 ) )
// Extract the string after "https://login.tailscale.com/a/"
val prefix = " https://login.tailscale.com/a/ "
if ( codeEnabled ) {
val code =
// Extract the string after "https://login.tailscale.com/a/"
if ( it . startsWith ( prefix ) ) {
val prefix = " https://login.tailscale.com/a/ "
it . removePrefix ( prefix )
val code =
} else {
if ( it . startsWith ( prefix ) ) {
null
it . removePrefix ( prefix )
}
} else {
numCode . set ( code )
null
}
numCode . set ( code )
}
}
}
?: run {
?: run {
qrCode . set ( null )
qrCode . set ( null )