Sub Url2Id
' param url
' return id - photo id
p = Text.GetIndexOf(url, "_") - 1
id = ""
c = Text.GetSubText(url, p, 1)
While c <> "/"
id = Text.Append(c, id)
p = p - 1
c = Text.GetSubText(url, p, 1)
EndWhile
EndSub
Sub Base58Encode
' param id - photo id
' return encoded - base58 photo id
alphabet = "123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"
base = Text.GetLength(alphabet)
encoded = ""
While 0 < id
mod = Math.Remainder(id, base)
encoded = Text.Append(Text.GetSubText(alphabet, mod + 1, 1), encoded)
id = Math.Floor(id / base)
EndWhile
EndSub
Sub Base58Decode
' param encoded - base58 photo id
' return id - photo id
alphabet = "123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"
base = Text.GetLength(alphabet)
len = Text.GetLength(encoded)
id = 0
place = 1
For p = len To 1 Step -1
id = id + place * (Text.GetIndexOf(alphabet,Text.GetSubText(encoded, p, 1)) - 1)
place = place * base
EndFor
EndSub