diff options
| author | Fuwn <[email protected]> | 2024-01-04 23:54:07 -0800 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2024-01-04 23:55:12 -0800 |
| commit | 13735f9cf2a6e490128ca49c2fb6343074d26256 (patch) | |
| tree | 8551c2ee8a574d3db43cd687c17de255e8f8c809 /src/routes/user | |
| parent | refactor(badges): move ui to card (diff) | |
| download | due.moe-13735f9cf2a6e490128ca49c2fb6343074d26256.tar.xz due.moe-13735f9cf2a6e490128ca49c2fb6343074d26256.zip | |
feat(badges): disable download if too many
Diffstat (limited to 'src/routes/user')
| -rw-r--r-- | src/routes/user/[user]/badges/+page.svelte | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/routes/user/[user]/badges/+page.svelte b/src/routes/user/[user]/badges/+page.svelte index e0ca15d5..91c95e72 100644 --- a/src/routes/user/[user]/badges/+page.svelte +++ b/src/routes/user/[user]/badges/+page.svelte @@ -22,6 +22,9 @@ let confirmDelete = 0; let selectedBadge: Badge | undefined = undefined; let loadError: string | null = null; + let badgeCount = 0; + + $: downloadDisabled = badgeCount > 20; type GroupedBadges = { [key: string]: Badge[] }; @@ -173,6 +176,8 @@ const groupBadges = (badges: Badge[]) => { const groupedBadges: GroupedBadges = {}; + badgeCount = badges.length; + badges.forEach((badge) => { if (!badge.category) badge.category = 'Uncategorised'; @@ -217,10 +222,14 @@ {editMode ? 'Disable' : 'Enable'} Edit Mode </button> • - <button on:click={() => screenshot()}>Download</button> + <button + disabled={downloadDisabled} + on:click={() => (downloadDisabled ? undefined : screenshot())}>Download</button + > • - <input type="checkbox" bind:checked={dark} /> Dark Mode - <input type="checkbox" bind:checked={transparent} /> Transparent Background + <input disabled={downloadDisabled} type="checkbox" bind:checked={dark} /> Dark Mode + <input disabled={downloadDisabled} type="checkbox" bind:checked={transparent} /> Transparent + Background {/if} {#if editMode && isOwner} |