From e486b86c220ef54f106506762735986068131f01 Mon Sep 17 00:00:00 2001 From: MuslemRahimi Date: Tue, 8 Apr 2025 23:54:03 +0200 Subject: [PATCH] add paywall to save strategy --- src/routes/options-calculator/+page.svelte | 28 ++++++++++++++-------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/src/routes/options-calculator/+page.svelte b/src/routes/options-calculator/+page.svelte index 1a40a14b..cff90fe1 100644 --- a/src/routes/options-calculator/+page.svelte +++ b/src/routes/options-calculator/+page.svelte @@ -1355,6 +1355,12 @@ } async function handleSaveStrategy() { + if (data?.user?.tier !== "Pro") { + toast.error("Upgrade to Pro to unlock this feature!", { + style: `border-radius: 5px; background: #fff; color: #000; border: 1px solid ${$mode === "light" ? "#F3F4F6" : "#4B5563"}; font-size: 15px; padding: 10px;`, + }); + return; + } try { // Create filtered strategies without strikeList and dateList const strategiesToSave = userStrategy.map( @@ -1379,18 +1385,20 @@ } onMount(async () => { - try { - const savedStrategy = localStorage?.getItem( - "options-calculator-strategy", - ); + if (data?.user?.tier === "Pro") { + try { + const savedStrategy = localStorage?.getItem( + "options-calculator-strategy", + ); - if (savedStrategy) { - const parsedData = JSON.parse(savedStrategy); - userStrategy = parsedData?.userStrategy; - selectedTicker = parsedData?.ticker; + if (savedStrategy) { + const parsedData = JSON.parse(savedStrategy); + userStrategy = parsedData?.userStrategy; + selectedTicker = parsedData?.ticker; + } + } catch (e) { + console.log(e); } - } catch (e) { - console.log(e); } await getStockData();