Use websocket proto for getting file stats and rate limits. Remove view_token

This commit is contained in:
2024-04-25 14:50:42 +02:00
parent c8f3f8222f
commit afd3f16181
10 changed files with 159 additions and 179 deletions

View File

@@ -2,16 +2,16 @@
import { formatDataVolume } from "../../util/Formatting.svelte";
import TextBlock from "./TextBlock.svelte";
import ProgressBar from "../../util/ProgressBar.svelte";
import { download_limits } from "../DownloadLimitStore";
import { stats } from "../StatsSocket"
export let file = {
size: 0,
}
$: transfer_left = $download_limits.transfer_limit - $download_limits.transfer_limit_used
$: transfer_left = $stats.limits.transfer_limit - $stats.limits.transfer_limit_used
</script>
{#if $download_limits.loaded}
{#if $stats.limits_init}
<TextBlock center={true}>
{#if file.size > transfer_left}
<div class="highlight_yellow">
@@ -24,8 +24,8 @@ $: transfer_left = $download_limits.transfer_limit - $download_limits.transfer_l
{/if}
<p>
You have used {formatDataVolume($download_limits.transfer_limit_used, 3)} of
your daily {formatDataVolume($download_limits.transfer_limit, 3)} transfer
You have used {formatDataVolume($stats.limits.transfer_limit_used, 3)} of
your daily {formatDataVolume($stats.limits.transfer_limit, 3)} transfer
limit. When the transfer limit is exceeded your download speed will
be reduced.
</p>
@@ -39,6 +39,6 @@ $: transfer_left = $download_limits.transfer_limit - $download_limits.transfer_l
</strong>
</p>
<ProgressBar total={$download_limits.transfer_limit} used={$download_limits.transfer_limit_used}></ProgressBar>
<ProgressBar total={$stats.limits.transfer_limit} used={$stats.limits.transfer_limit_used}></ProgressBar>
</TextBlock>
{/if}

View File

@@ -12,7 +12,7 @@ import { file_type } from "../FileUtilities.svelte";
import RateLimit from "./RateLimit.svelte";
import Torrent from "./Torrent.svelte";
import SpeedLimit from "./SpeedLimit.svelte";
import { download_limits } from "../DownloadLimitStore";
import { stats } from "../StatsSocket";
import Zip from "./Zip.svelte";
let viewer
@@ -60,7 +60,7 @@ export const toggle_playback = () => {
</div>
{:else if viewer_type === "abuse"}
<Abuse bind:this={viewer} on:download></Abuse>
{:else if !premium_download && $download_limits.transfer_limit_used > $download_limits.transfer_limit}
{:else if !premium_download && $stats.limits.transfer_limit_used > $stats.limits.transfer_limit}
<SpeedLimit file={current_file} on:download></SpeedLimit>
{:else if viewer_type === "rate_limit"}
<RateLimit bind:this={viewer} on:download></RateLimit>

View File

@@ -1,7 +1,7 @@
<script>
import { createEventDispatcher } from "svelte";
import { formatDataVolume } from "../../util/Formatting.svelte";
import { download_limits } from "../DownloadLimitStore";
import { stats } from "../StatsSocket";
import IconBlock from "./IconBlock.svelte";
import TextBlock from "./TextBlock.svelte";
let dispatch = createEventDispatcher()
@@ -36,15 +36,15 @@ let file = {
</h1>
<p>
You have reached your download limit for today. Without a pixeldrain
account you are limited to downloading {$download_limits.download_limit} files
or {formatDataVolume($download_limits.transfer_limit, 3)} per 48 hours. This limit
account you are limited to downloading {$stats.limits.download_limit} files
or {formatDataVolume($stats.limits.transfer_limit, 3)} per 48 hours. This limit
is counted per IP address, so if you're on a shared network it's
possible that others have also contributed to this limit.
</p>
<p>
In the last 24 hours you have downloaded
{$download_limits.download_limit_used} files and used
{formatDataVolume($download_limits.transfer_limit_used, 3)} bandwidth.
{$stats.limits.download_limit_used} files and used
{formatDataVolume($stats.limits.transfer_limit_used, 3)} bandwidth.
</p>
{/if}
<p>

View File

@@ -1,7 +1,7 @@
<script>
import { createEventDispatcher } from "svelte";
import { formatDataVolume, formatDuration } from "../../util/Formatting.svelte";
import { download_limits } from "../DownloadLimitStore";
import { stats } from "../StatsSocket";
import IconBlock from "./IconBlock.svelte";
import TextBlock from "./TextBlock.svelte";
let dispatch = createEventDispatcher()
@@ -20,10 +20,10 @@ export let file = {
<p>
Pixeldrain's free tier is supported by my Patrons (be grateful). There's
only so much that you can do with the budget they provide.
{formatDataVolume($download_limits.transfer_limit, 3)} per day is about
{formatDataVolume($stats.limits.transfer_limit, 3)} per day is about
the most I can give away for free while keeping it fair for everyone,
and according to our records you have already downloaded
{formatDataVolume($download_limits.transfer_limit_used, 3)}.
{formatDataVolume($stats.limits.transfer_limit_used, 3)}.
</p>
<p>
It's not that I want to withold this file from you, it's just that I