What do you think? There must be a better way, right?

This is my idea, how would you do it? I’m sure there must be a better way.
This is the thing.
Of a community of 1000 members, 100 are paying members
This week a band tour of 20 gigs will be announced.
Everyday there are 3 free spots on the guest list for the paying members.
What’s the best way to to this? This is my way.

  1. Check if a member is a paying member
  2. If the member is a paying member show 3 buttons for a free ticket each
  3. If a member pushes a button, fill the column with the corresponding mailadress
  4. If one ticket has been reserved, so if the column is not empty anymore, hide that button, when 3 tickets have been reserved, hide all buttons.
  5. If all tickets have been reserved show hint component that there is no ticket left.
    How would you do it?

I imagine there must be a race to claim those tickets so you don’t want the person who comes second to overwrite the first.

I would let them have only one button, create new rows in a new sheet and timestamp each of them, use a rollup to count the total submissions for each event, before you announce who are the first 3 show a hint text to them telling “We are checking the submissions” or something along those lines.

Then show an inline list, sorted by earliest submission firsts, show only 3 items and use CSS to hide the “see-all” button (or keep it if you want people to know how close they were).

Thanks! I’ll look into this!

@ThinhDinh is right that you need to do this through GS (but you could add rows in GT). Adding rows will always give you uniqueness - and fairness as it will have them in order that the back-end system received the request.

Thanks Mark!

One extra thing.
What is going well:

  • Adding rows with the gig info when people click on the button.
  • Counting the amount of people bij relation> lookup > rollup
  • Only view the button when the count is 2 or less.

There is one thing I don’t succeed in. I only want the button to be visible when the user hasn’t clicked on the button / didnt claim the spot on the guestlist.

But how do I do that? I have a relation between user <> gig and gig <> user and lookup the mail adresses. But in the button visibility I can’t say ‘only view this button when the relation column doesn’t contain the users mail adress’.

Do you have a suggestion?

After clicking the button for a gig, I want that button not to be visible anymore.

I think you can add a “claimed” user-specific boolean column for each event, add a set column in your combo action and set the claimed boolean to true. Hide the button when claimed is true.

Thanks!

To add to this there are two ways to approach:

  • Create a template column joining the signed-in user’s email and the event ID. In the “Claims” sheet you do the same template format, make a relation from the Events sheet to the Claims sheet. If the relation is not empty it means the signed-in user has claimed.

  • Create a relation from the Events sheet to the Claims sheet using the event ID, return a joined list column of emails that have registered. Hide button when signed-in user’s email is included in that list.

Thanks a lot, I’ve got it up and running!

OK so I have a sheet with gigs.
With the button ‘put me on the guestlist’ I add a row in the sheet ‘guestlist’
But say people change their mind they should be able to delete that same row.
When I add a button on the page of the gig I can choose ‘delete row’ but I think that deletes the whole gig?
Is there a way to delete a row on another sheet? Or a way to get this done?
Sorry to keep on asking, if I take up too much of your time, please ignore!

You can add a column to your row (something like toggle/ is cancelled?). Then you just set columns in an action and filter items based on the column.

Thanks, doable!

You can create a relation with the user email - gig ID the same way I discussed above, then delete the row from that relation.

Thanks a lot!

Everything works smooth now!