I've created a data variable, "getAccount," that connects to my users account. I've tried using that in my expression to show/hide the logout button. In the attached images, you can see the logout button changes but this isn't reflected on the front-end when I log in.
@Oleg Isonen, just to confirm—your snippet is mainly for swapping the button text dynamically, right? If I wanted to show/hide a section on the page based on authentication (like an authenticated-only section), I’d need to use JS to remove it manually, rather than relying on the “Show” toggle with an expression?
Also, this method wouldn’t work for restricting access to an entire page for unauthenticated users, correct? I’d need another approach for that.
Hi, Oleg. I'm missing part of the puzzle. Can you correct me if I'm thinking of this wrong?
I wrote a Appwrite function to
I was able to send/receive JWT using my backend function, but I'm not exactly sure what you mean with "token passed to resource via url query param". Should I be using a Webstudio form element and then the {system.params} from it?
I got far after your suggestion yesterday but maxed out my AI prompting skills and kept getting into AI loops.
I saved a state where I could login/out (when published) and it would record my session in the backend and return the tokens. I'll go back to that state and try again with this extra info that you've given, thanks.
I've been using 3. Claude, GPT and a combo within Windsurf.
I find my best results come when I create a repo with document files and rules it can reference. It's also helpful to save versions of the code changes so I can go back if needed.
gpt for advanced planing questions, claude for specific code if gpt doesn't do well
Add a reply
Sign up and join the conversation on Discord
","upvoteCount":0,"dateCreated":"2025-02-11T02:27:18.477Z","datePublished":"2025-02-11T02:27:18.477Z","dateModified":"2025-02-11T02:27:18.477Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#9b847c60-1f82-438e-bc50-a2c38f72499c","author":{"@type":"Person","url":"https://help.webstudio.is/members/cdd3ed87-53a0-414a-885a-56b7939e412a","name":"Oleg Isonen","identifier":"cdd3ed87-53a0-414a-885a-56b7939e412a","image":"https://cdn.discordapp.com/avatars/469405813048606720/8b66a5882214c63ee6148fcce3ef8e93.webp?size=256"}},{"@type":"Answer","text":"@Oleg Isonen, just to confirm—your snippet is mainly for swapping the button text dynamically, right? If I wanted to show/hide a section on the page based on authentication (like an authenticated-only section), I’d need to use JS to remove it manually, rather than relying on the “Show” toggle with an expression?Also, this method wouldn’t work for restricting access to an entire page for unauthenticated users, correct? I’d need another approach for that.","upvoteCount":0,"dateCreated":"2025-02-11T16:21:48.331Z","datePublished":"2025-02-11T16:21:48.331Z","dateModified":"2025-02-11T16:21:48.331Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#8425e69d-3976-4757-b37c-da0a5756c7c8","author":{"@type":"Person","url":"https://help.webstudio.is/members/6c66325d-fff8-43a2-b97e-549275813461","name":"Jeremy","identifier":"6c66325d-fff8-43a2-b97e-549275813461","image":"https://cdn.discordapp.com/avatars/383871071566430208/6de448190b31c7a9af49e5fbd4f5d047.webp?size=256"}},{"@type":"Answer","text":"yes, because toggle show works with expressions and expressions can't access local storage","upvoteCount":0,"dateCreated":"2025-02-11T16:22:56.730Z","datePublished":"2025-02-11T16:22:56.730Z","dateModified":"2025-02-11T16:22:56.730Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#f618778e-e42b-4ae0-9cc9-1eefcc189d80","author":{"@type":"Person","url":"https://help.webstudio.is/members/cdd3ed87-53a0-414a-885a-56b7939e412a","name":"Oleg Isonen","identifier":"cdd3ed87-53a0-414a-885a-56b7939e412a","image":"https://cdn.discordapp.com/avatars/469405813048606720/8b66a5882214c63ee6148fcce3ef8e93.webp?size=256"}},{"@type":"Answer","text":"if your content is fetched using Resource - then it would technically still fetch it if user disables javascript, so its not fully secure.problem is that you authenticate on the client but resource knows nothing about itWe need to work on this very soon.For now there are only options:Pseudo-secure, using js to disallow accessing restricted area. Ok for not sensitive dataSecure but 100% client-side: auth and data fetching. Rendering is tricky that way, more like a hack, but not impossible","upvoteCount":0,"dateCreated":"2025-02-11T16:24:58.839Z","datePublished":"2025-02-11T16:24:58.839Z","dateModified":"2025-02-11T16:24:58.839Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#70a6e90a-0e5a-437e-ae66-bd54a831e65a","author":{"@type":"Person","url":"https://help.webstudio.is/members/cdd3ed87-53a0-414a-885a-56b7939e412a","name":"Oleg Isonen","identifier":"cdd3ed87-53a0-414a-885a-56b7939e412a","image":"https://cdn.discordapp.com/avatars/469405813048606720/8b66a5882214c63ee6148fcce3ef8e93.webp?size=256"}},{"@type":"Answer","text":"Actually there is a secure method right now, but that would require a backend:client-side authtoken passed to resource via url query parambackend validates the token and provides a response","upvoteCount":0,"dateCreated":"2025-02-11T16:28:49.128Z","datePublished":"2025-02-11T16:28:49.128Z","dateModified":"2025-02-11T16:28:49.128Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#2294e144-813f-48e0-8057-9274defb54a5","author":{"@type":"Person","url":"https://help.webstudio.is/members/cdd3ed87-53a0-414a-885a-56b7939e412a","name":"Oleg Isonen","identifier":"cdd3ed87-53a0-414a-885a-56b7939e412a","image":"https://cdn.discordapp.com/avatars/469405813048606720/8b66a5882214c63ee6148fcce3ef8e93.webp?size=256"}},{"@type":"Answer","text":"Search for \"webtoken\"","upvoteCount":0,"dateCreated":"2025-02-11T16:29:25.431Z","datePublished":"2025-02-11T16:29:25.431Z","dateModified":"2025-02-11T16:29:25.431Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#d0e700ec-7c01-4397-bce9-52c153da9446","author":{"@type":"Person","url":"https://help.webstudio.is/members/cdd3ed87-53a0-414a-885a-56b7939e412a","name":"Oleg Isonen","identifier":"cdd3ed87-53a0-414a-885a-56b7939e412a","image":"https://cdn.discordapp.com/avatars/469405813048606720/8b66a5882214c63ee6148fcce3ef8e93.webp?size=256"}},{"@type":"Answer","text":"Thank you @Oleg Isonen! I can write an appwrite function to handle client-side auth. I will try this out and post any progress in this discussion. Your couple of replies has got me further than hours of me using AI.","upvoteCount":0,"dateCreated":"2025-02-11T16:35:26.329Z","datePublished":"2025-02-11T16:35:26.329Z","dateModified":"2025-02-11T16:35:26.329Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#6a9ecbd4-1be9-4666-a8b7-26ace443a766","author":{"@type":"Person","url":"https://help.webstudio.is/members/6c66325d-fff8-43a2-b97e-549275813461","name":"Jeremy","identifier":"6c66325d-fff8-43a2-b97e-549275813461","image":"https://cdn.discordapp.com/avatars/383871071566430208/6de448190b31c7a9af49e5fbd4f5d047.webp?size=256"}},{"@type":"Answer","text":"Hi, Oleg. I'm missing part of the puzzle. Can you correct me if I'm thinking of this wrong?I wrote a Appwrite function toI was able to send/receive JWT using my backend function, but I'm not exactly sure what you mean with \"token passed to resource via url query param\". Should I be using a Webstudio form element and then the {system.params} from it?","upvoteCount":0,"dateCreated":"2025-02-13T21:19:51.811Z","datePublished":"2025-02-13T21:19:51.811Z","dateModified":"2025-02-13T21:19:51.811Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#a1fb5b91-fe52-4d30-af4f-cea6c34d4e43","author":{"@type":"Person","url":"https://help.webstudio.is/members/6c66325d-fff8-43a2-b97e-549275813461","name":"Jeremy","identifier":"6c66325d-fff8-43a2-b97e-549275813461","image":"https://cdn.discordapp.com/avatars/383871071566430208/6de448190b31c7a9af49e5fbd4f5d047.webp?size=256"}},{"@type":"Answer","text":"well your resourece needs to pass the token from the client to your backend","upvoteCount":0,"dateCreated":"2025-02-13T21:20:56.444Z","datePublished":"2025-02-13T21:20:56.444Z","dateModified":"2025-02-13T21:20:56.444Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#0008e3f9-b082-42de-9fdb-eba12a0b4bc2","author":{"@type":"Person","url":"https://help.webstudio.is/members/cdd3ed87-53a0-414a-885a-56b7939e412a","name":"Oleg Isonen","identifier":"cdd3ed87-53a0-414a-885a-56b7939e412a","image":"https://cdn.discordapp.com/avatars/469405813048606720/8b66a5882214c63ee6148fcce3ef8e93.webp?size=256"}},{"@type":"Answer","text":"the easierst way would be to use query parameter and add it in your request","upvoteCount":0,"dateCreated":"2025-02-13T21:21:12.564Z","datePublished":"2025-02-13T21:21:12.564Z","dateModified":"2025-02-13T21:21:12.564Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#3fc004eb-8cc3-4ef8-9159-5829d58c4074","author":{"@type":"Person","url":"https://help.webstudio.is/members/cdd3ed87-53a0-414a-885a-56b7939e412a","name":"Oleg Isonen","identifier":"cdd3ed87-53a0-414a-885a-56b7939e412a","image":"https://cdn.discordapp.com/avatars/469405813048606720/8b66a5882214c63ee6148fcce3ef8e93.webp?size=256"}},{"@type":"Answer","text":"how it gets into query param is potentially multiple ways","upvoteCount":0,"dateCreated":"2025-02-13T21:21:43.829Z","datePublished":"2025-02-13T21:21:43.829Z","dateModified":"2025-02-13T21:21:43.829Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#fcaebd84-af1a-4b88-a055-538015eba587","author":{"@type":"Person","url":"https://help.webstudio.is/members/cdd3ed87-53a0-414a-885a-56b7939e412a","name":"Oleg Isonen","identifier":"cdd3ed87-53a0-414a-885a-56b7939e412a","image":"https://cdn.discordapp.com/avatars/469405813048606720/8b66a5882214c63ee6148fcce3ef8e93.webp?size=256"}},{"@type":"Answer","text":"you could use a form with a hidden input or you could just set it with js","upvoteCount":0,"dateCreated":"2025-02-13T21:21:58.364Z","datePublished":"2025-02-13T21:21:58.364Z","dateModified":"2025-02-13T21:21:58.364Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#c18b1f61-81a7-4bde-b8e0-4a886a7c102c","author":{"@type":"Person","url":"https://help.webstudio.is/members/cdd3ed87-53a0-414a-885a-56b7939e412a","name":"Oleg Isonen","identifier":"cdd3ed87-53a0-414a-885a-56b7939e412a","image":"https://cdn.discordapp.com/avatars/469405813048606720/8b66a5882214c63ee6148fcce3ef8e93.webp?size=256"}},{"@type":"Answer","text":"\"how it gets into query param is potentially multiple ways\" - is there a \"best practices\" or recommended preference?","upvoteCount":0,"dateCreated":"2025-02-13T21:22:50.447Z","datePublished":"2025-02-13T21:22:50.447Z","dateModified":"2025-02-13T21:22:50.447Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#4f577a8b-4650-4903-b854-51ea73db129c","author":{"@type":"Person","url":"https://help.webstudio.is/members/6c66325d-fff8-43a2-b97e-549275813461","name":"Jeremy","identifier":"6c66325d-fff8-43a2-b97e-549275813461","image":"https://cdn.discordapp.com/avatars/383871071566430208/6de448190b31c7a9af49e5fbd4f5d047.webp?size=256"}},{"@type":"Answer","text":"well if form works for you that would be probably ideal","upvoteCount":0,"dateCreated":"2025-02-13T21:23:38.830Z","datePublished":"2025-02-13T21:23:38.830Z","dateModified":"2025-02-13T21:23:38.830Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#78890174-565a-4b65-a976-13f03feed9fe","author":{"@type":"Person","url":"https://help.webstudio.is/members/cdd3ed87-53a0-414a-885a-56b7939e412a","name":"Oleg Isonen","identifier":"cdd3ed87-53a0-414a-885a-56b7939e412a","image":"https://cdn.discordapp.com/avatars/469405813048606720/8b66a5882214c63ee6148fcce3ef8e93.webp?size=256"}},{"@type":"Answer","text":"in the end you still need to set the input value with js","upvoteCount":0,"dateCreated":"2025-02-13T21:23:58.222Z","datePublished":"2025-02-13T21:23:58.222Z","dateModified":"2025-02-13T21:23:58.222Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#6646cfa3-d75c-47b4-89ac-cbd9406719ab","author":{"@type":"Person","url":"https://help.webstudio.is/members/cdd3ed87-53a0-414a-885a-56b7939e412a","name":"Oleg Isonen","identifier":"cdd3ed87-53a0-414a-885a-56b7939e412a","image":"https://cdn.discordapp.com/avatars/469405813048606720/8b66a5882214c63ee6148fcce3ef8e93.webp?size=256"}},{"@type":"Answer","text":"I am not sure when is the point where you are getting the token","upvoteCount":0,"dateCreated":"2025-02-13T21:24:20.516Z","datePublished":"2025-02-13T21:24:20.516Z","dateModified":"2025-02-13T21:24:20.516Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#b85e526c-4a33-4d6e-9cfe-9fac9339c5d7","author":{"@type":"Person","url":"https://help.webstudio.is/members/cdd3ed87-53a0-414a-885a-56b7939e412a","name":"Oleg Isonen","identifier":"cdd3ed87-53a0-414a-885a-56b7939e412a","image":"https://cdn.discordapp.com/avatars/469405813048606720/8b66a5882214c63ee6148fcce3ef8e93.webp?size=256"}},{"@type":"Answer","text":"its probably after you already submitted the form","upvoteCount":0,"dateCreated":"2025-02-13T21:24:32.854Z","datePublished":"2025-02-13T21:24:32.854Z","dateModified":"2025-02-13T21:24:32.854Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#d2fea969-3b0f-4da6-ab3b-4e95123390c5","author":{"@type":"Person","url":"https://help.webstudio.is/members/cdd3ed87-53a0-414a-885a-56b7939e412a","name":"Oleg Isonen","identifier":"cdd3ed87-53a0-414a-885a-56b7939e412a","image":"https://cdn.discordapp.com/avatars/469405813048606720/8b66a5882214c63ee6148fcce3ef8e93.webp?size=256"}},{"@type":"Answer","text":"so to set it with the form you need another form I guess, in that case form isn't practical","upvoteCount":0,"dateCreated":"2025-02-13T21:24:48.671Z","datePublished":"2025-02-13T21:24:48.671Z","dateModified":"2025-02-13T21:24:48.671Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#a2c325e1-5a2b-4986-98ef-b571e5ee4581","author":{"@type":"Person","url":"https://help.webstudio.is/members/cdd3ed87-53a0-414a-885a-56b7939e412a","name":"Oleg Isonen","identifier":"cdd3ed87-53a0-414a-885a-56b7939e412a","image":"https://cdn.discordapp.com/avatars/469405813048606720/8b66a5882214c63ee6148fcce3ef8e93.webp?size=256"}},{"@type":"Answer","text":"Yeah, it's after I've submit the intial form POST. Then on page refresh it maintains the fetched item.","upvoteCount":0,"dateCreated":"2025-02-13T21:25:21.609Z","datePublished":"2025-02-13T21:25:21.609Z","dateModified":"2025-02-13T21:25:21.609Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#91a2b075-5318-44ea-98c6-49582e1e27ef","author":{"@type":"Person","url":"https://help.webstudio.is/members/6c66325d-fff8-43a2-b97e-549275813461","name":"Jeremy","identifier":"6c66325d-fff8-43a2-b97e-549275813461","image":"https://cdn.discordapp.com/avatars/383871071566430208/6de448190b31c7a9af49e5fbd4f5d047.webp?size=256"}},{"@type":"Answer","text":"right so its all in js and you will need to check if the token is in the query and set it","upvoteCount":0,"dateCreated":"2025-02-13T21:26:27.212Z","datePublished":"2025-02-13T21:26:27.212Z","dateModified":"2025-02-13T21:26:30.130Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#554e46aa-97ae-40b0-acb7-77fc63295722","author":{"@type":"Person","url":"https://help.webstudio.is/members/cdd3ed87-53a0-414a-885a-56b7939e412a","name":"Oleg Isonen","identifier":"cdd3ed87-53a0-414a-885a-56b7939e412a","image":"https://cdn.discordapp.com/avatars/469405813048606720/8b66a5882214c63ee6148fcce3ef8e93.webp?size=256"}},{"@type":"Answer","text":"I think you will want to do this with js","upvoteCount":0,"dateCreated":"2025-02-13T21:26:35.426Z","datePublished":"2025-02-13T21:26:35.426Z","dateModified":"2025-02-13T21:26:35.426Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#026b3e4a-b956-414b-97c2-9705e5994bf3","author":{"@type":"Person","url":"https://help.webstudio.is/members/cdd3ed87-53a0-414a-885a-56b7939e412a","name":"Oleg Isonen","identifier":"cdd3ed87-53a0-414a-885a-56b7939e412a","image":"https://cdn.discordapp.com/avatars/469405813048606720/8b66a5882214c63ee6148fcce3ef8e93.webp?size=256"}},{"@type":"Answer","text":"but not sure","upvoteCount":0,"dateCreated":"2025-02-13T21:26:37.519Z","datePublished":"2025-02-13T21:26:37.519Z","dateModified":"2025-02-13T21:26:37.519Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#26a36a50-d346-4a5d-9fc7-e4188113a8e9","author":{"@type":"Person","url":"https://help.webstudio.is/members/cdd3ed87-53a0-414a-885a-56b7939e412a","name":"Oleg Isonen","identifier":"cdd3ed87-53a0-414a-885a-56b7939e412a","image":"https://cdn.discordapp.com/avatars/469405813048606720/8b66a5882214c63ee6148fcce3ef8e93.webp?size=256"}},{"@type":"Answer","text":"I got far after your suggestion yesterday but maxed out my AI prompting skills and kept getting into AI loops. I saved a state where I could login/out (when published) and it would record my session in the backend and return the tokens. I'll go back to that state and try again with this extra info that you've given, thanks.","upvoteCount":0,"dateCreated":"2025-02-13T21:30:13.607Z","datePublished":"2025-02-13T21:30:13.607Z","dateModified":"2025-02-13T21:30:13.607Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#b6b82132-3c94-414e-986b-36b17d03e743","author":{"@type":"Person","url":"https://help.webstudio.is/members/6c66325d-fff8-43a2-b97e-549275813461","name":"Jeremy","identifier":"6c66325d-fff8-43a2-b97e-549275813461","image":"https://cdn.discordapp.com/avatars/383871071566430208/6de448190b31c7a9af49e5fbd4f5d047.webp?size=256"}},{"@type":"Answer","text":"what are you using?","upvoteCount":0,"dateCreated":"2025-02-13T21:35:14.069Z","datePublished":"2025-02-13T21:35:14.069Z","dateModified":"2025-02-13T21:35:14.069Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#82c01a3c-642f-413f-ac6e-2e3d1b2b9bc4","author":{"@type":"Person","url":"https://help.webstudio.is/members/cdd3ed87-53a0-414a-885a-56b7939e412a","name":"Oleg Isonen","identifier":"cdd3ed87-53a0-414a-885a-56b7939e412a","image":"https://cdn.discordapp.com/avatars/469405813048606720/8b66a5882214c63ee6148fcce3ef8e93.webp?size=256"}},{"@type":"Answer","text":"which ai","upvoteCount":0,"dateCreated":"2025-02-13T21:35:16.124Z","datePublished":"2025-02-13T21:35:16.124Z","dateModified":"2025-02-13T21:35:16.124Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#618b91d7-71ef-4924-8c48-693fecc5d9d9","author":{"@type":"Person","url":"https://help.webstudio.is/members/cdd3ed87-53a0-414a-885a-56b7939e412a","name":"Oleg Isonen","identifier":"cdd3ed87-53a0-414a-885a-56b7939e412a","image":"https://cdn.discordapp.com/avatars/469405813048606720/8b66a5882214c63ee6148fcce3ef8e93.webp?size=256"}},{"@type":"Answer","text":"I've been using 3. Claude, GPT and a combo within Windsurf. I find my best results come when I create a repo with document files and rules it can reference. It's also helpful to save versions of the code changes so I can go back if needed.","upvoteCount":0,"dateCreated":"2025-02-13T21:58:17.159Z","datePublished":"2025-02-13T21:58:17.159Z","dateModified":"2025-02-13T21:58:17.159Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#bc914758-d6e2-4f37-adcc-3001462065ca","author":{"@type":"Person","url":"https://help.webstudio.is/members/6c66325d-fff8-43a2-b97e-549275813461","name":"Jeremy","identifier":"6c66325d-fff8-43a2-b97e-549275813461","image":"https://cdn.discordapp.com/avatars/383871071566430208/6de448190b31c7a9af49e5fbd4f5d047.webp?size=256"}},{"@type":"Answer","text":"this is good yes","upvoteCount":0,"dateCreated":"2025-02-13T22:13:30.599Z","datePublished":"2025-02-13T22:13:30.599Z","dateModified":"2025-02-13T22:13:30.599Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#c03818a5-6fa3-4be7-b730-16fe2588c048","author":{"@type":"Person","url":"https://help.webstudio.is/members/cdd3ed87-53a0-414a-885a-56b7939e412a","name":"Oleg Isonen","identifier":"cdd3ed87-53a0-414a-885a-56b7939e412a","image":"https://cdn.discordapp.com/avatars/469405813048606720/8b66a5882214c63ee6148fcce3ef8e93.webp?size=256"}},{"@type":"Answer","text":"gpt for advanced planing questions, claude for specific code if gpt doesn't do well","upvoteCount":0,"dateCreated":"2025-02-13T22:13:53.761Z","datePublished":"2025-02-13T22:13:53.761Z","dateModified":"2025-02-13T22:13:53.761Z","url":"https://help.webstudio.is/conditional-show-item-based-on-local-storage-XlRgW5KBjrsy#cf203086-55a9-4dc2-8af6-307d9af28146","author":{"@type":"Person","url":"https://help.webstudio.is/members/cdd3ed87-53a0-414a-885a-56b7939e412a","name":"Oleg Isonen","identifier":"cdd3ed87-53a0-414a-885a-56b7939e412a","image":"https://cdn.discordapp.com/avatars/469405813048606720/8b66a5882214c63ee6148fcce3ef8e93.webp?size=256"}}]}}