Fix Freetube subscriptions import

This commit is contained in:
Samantaz Fox 2022-02-13 22:35:22 +01:00
parent 60e870b277
commit 57353fe0c6
No known key found for this signature in database
GPG key ID: F42821059186176E

View file

@ -152,9 +152,16 @@ struct Invidious::User
# ------------------- # -------------------
def from_freetube(user : User, body : String) def from_freetube(user : User, body : String)
# Legacy import?
matches = body.scan(/"channelId":"(?<channel_id>[a-zA-Z0-9_-]{24})"/) matches = body.scan(/"channelId":"(?<channel_id>[a-zA-Z0-9_-]{24})"/)
subs = matches.map(&.["channel_id"])
user.subscriptions += matches.map(&.["channel_id"]) if subs.empty?
data = JSON.parse(body)["subscriptions"]
subs = data.as_a.map(&.["id"].as_s)
end
user.subscriptions += subs
user.subscriptions.uniq! user.subscriptions.uniq!
user.subscriptions = get_batch_channels(user.subscriptions) user.subscriptions = get_batch_channels(user.subscriptions)