I’ve been trying to create an invite system that allows people to see private/secret items in the shop and order them but only if they’ve been invited.
The flow should be:
Private item is created. It does not show up for anyone in the “things” list.
Creator of the item shares invites with people he wants to buy his item. This is done through 3rd party services (email, whatsapp, text etc.)
Buyer receives invite and now the private item shows up in the things he can buy list.
Invite can be a short code like A42GX or it can be a URL or even a QR code. I’m open to ideas on how the invites should function. Any ideas?
This didn’t work:
I tried to implement it by adding an “invisible” boolean column to each item that is user specific. I’ve been trying to make it so when a user types in an invite code to a separate form they toggle that boolean. The list of things doesn’t show any item that has boolean set to true.
Unfortunately this implementation failed because I’m not able to convince glide to toggle that user specific boolean for buyers. On top of that if the buyer creates an item as invisible he won’t see it either . I’ve tried to make an action integrated into the creation form submit button to enable the owner of the object to see his own object but it’s proving difficult.
There could be several different ways to do this. Here is one way that should be fairly straight forward to implement:
Ensure that you have a text column in your Items table to hold the “secret code” for that Item
In your User Profiles table, create a text column to hold a list of entered “secret codes” for each user
This should be comma separated list of codes - each time a user enters a new code, it gets added to the list
Back in your Items table, create an if-then-else column:
– If secret code is empty, then true (if no secret code, then it’s visible to all)
– Else if secret code is included in Users->Secret Codes, then true
– Else empty
Now all you need to do is present an inline list of Items, and filter it where the if-then-else column is true
To ensure the Item is immediately visible to the User that creates it, the create action should add the item “secret code” to that users list of entered codes.
by a code stored in the apposite table.
you must create a relation from the screen field (user column field) to that table and set the ITEM visible if the field and the relation are not empty (that means as soon the code will be correctly introduced, the items will be visible to the visitor only).
Easy way
This is genius. It should go in the official documentation for how to append a list.
Now this works. It’s a little slow to update but they can live with it.
IFTHENELSE columns are userspecific by default? I don’t see the option to make them but they seem to work that way. I remember computed columns are calculated in the frontend but I thought that wasn’t the same thing as being user specific.
It’s impressive that it propagates all the way from the single invite code input column. That’s the only user specific column I used.
I’m probably going to have to flush the invite list every once in a while but it’s not a huge concern. Any idea what the character limit is on a simple text column?
I’ve seen it mentioned, but I can’t quote it off the top of my head. But it’s ridiculously high - maybe millions of characters. I have cells with thousands - possibly tens of thousands - of characters, and I’ve never had an issue.