Skip to content

Commit

Permalink
Minor fix for null reference on getting paid messages and filtering o…
Browse files Browse the repository at this point in the history
…ut paid posts when downloading paid messages
  • Loading branch information
sim0n00ps committed May 20, 2023
1 parent b3b5e85 commit 9a423f5
Showing 1 changed file with 28 additions and 10 deletions.
38 changes: 28 additions & 10 deletions OF DL/Helpers/APIHelper.cs
Original file line number Diff line number Diff line change
Expand Up @@ -777,9 +777,12 @@ public async Task<Dictionary<long, string>> GetMedia(MediaType mediatype, string
{
for (int i = 0; i < archive.preview.Count; i++)
{
if (!previewids.Contains((long)archive.preview[i]))
if(archive.preview[i]?.ToString() != "poll")
{
previewids.Add((long)archive.preview[i]);
if (!previewids.Contains((long)archive.preview[i]))
{
previewids.Add((long)archive.preview[i]);
}
}
}
}
Expand Down Expand Up @@ -1140,17 +1143,17 @@ public async Task<Dictionary<long, string>> GetMedia(MediaType mediatype, string
}
}

paidMessages = paidMessages.OrderByDescending(x => x.postedAt).ToList();
paidMessages = paidMessages.Where(z => z.responseType == "message").OrderByDescending(x => x.postedAt).ToList();
DBHelper dBHelper = new DBHelper();
foreach (Purchased purchase in paidMessages)
{
if(purchase.postedAt != null)
{
await dBHelper.AddMessage(folder, purchase.id, purchase.text != null ? purchase.text : string.Empty, purchase.price != null ? purchase.price : "0", true, false, purchase.postedAt.Value, purchase.fromUser.id);
await dBHelper.AddMessage(folder, purchase.id, purchase.text != null ? purchase.text : string.Empty, purchase.price != null ? purchase.price : "0", true, false, purchase.postedAt.Value, purchase.fromUser != null ? purchase.fromUser.id : purchase.author.id);
}
else
{
await dBHelper.AddMessage(folder, purchase.id, purchase.text != null ? purchase.text : string.Empty, purchase.price != null ? purchase.price : "0", true, false, purchase.createdAt, purchase.fromUser.id);
await dBHelper.AddMessage(folder, purchase.id, purchase.text != null ? purchase.text : string.Empty, purchase.price != null ? purchase.price : "0", true, false, purchase.createdAt, purchase.fromUser != null ? purchase.fromUser.id : purchase.author.id);
}

if (purchase.media != null && purchase.media.Count > 0)
Expand All @@ -1160,14 +1163,20 @@ public async Task<Dictionary<long, string>> GetMedia(MediaType mediatype, string
{
for (int i = 0; i < purchase.previews.Count; i++)
{
previewids.Add((long)purchase.previews[i]);
if (!previewids.Contains((long)purchase.previews[i]))
{
previewids.Add((long)purchase.previews[i]);
}
}
}
else if (purchase.preview != null)
{
for (int i = 0; i < purchase.preview.Count; i++)
{
previewids.Add((long)purchase.preview[i]);
if (!previewids.Contains((long)purchase.preview[i]))
{
previewids.Add((long)purchase.preview[i]);
}
}
}

Expand Down Expand Up @@ -1216,7 +1225,10 @@ public async Task<Dictionary<long, string>> GetMedia(MediaType mediatype, string
{
continue;
}
return_urls.Add(medium.id, $"{medium.files.drm.manifest.dash},{medium.files.drm.signature.dash.CloudFrontPolicy},{medium.files.drm.signature.dash.CloudFrontSignature},{medium.files.drm.signature.dash.CloudFrontKeyPairId},{medium.id},{purchase.id}");
if(!return_urls.ContainsKey(medium.id))
{
return_urls.Add(medium.id, $"{medium.files.drm.manifest.dash},{medium.files.drm.signature.dash.CloudFrontPolicy},{medium.files.drm.signature.dash.CloudFrontSignature},{medium.files.drm.signature.dash.CloudFrontKeyPairId},{medium.id},{purchase.id}");
}
}
}
else
Expand All @@ -1240,7 +1252,10 @@ public async Task<Dictionary<long, string>> GetMedia(MediaType mediatype, string
{
continue;
}
return_urls.Add(medium.id, medium.source.source);
if(!return_urls.ContainsKey(medium.id))
{
return_urls.Add(medium.id, medium.source.source);
}
}
else if (medium.canView && medium.files != null && medium.files.drm != null)
{
Expand All @@ -1261,7 +1276,10 @@ public async Task<Dictionary<long, string>> GetMedia(MediaType mediatype, string
{
continue;
}
return_urls.Add(medium.id, $"{medium.files.drm.manifest.dash},{medium.files.drm.signature.dash.CloudFrontPolicy},{medium.files.drm.signature.dash.CloudFrontSignature},{medium.files.drm.signature.dash.CloudFrontKeyPairId},{medium.id},{purchase.id}");
if(!return_urls.ContainsKey(medium.id))
{
return_urls.Add(medium.id, $"{medium.files.drm.manifest.dash},{medium.files.drm.signature.dash.CloudFrontPolicy},{medium.files.drm.signature.dash.CloudFrontSignature},{medium.files.drm.signature.dash.CloudFrontKeyPairId},{medium.id},{purchase.id}");
}
}
}
}
Expand Down

0 comments on commit 9a423f5

Please sign in to comment.