Limit user to a certain amount of clicks of a button per day

I’ve been trying to figure this out for a few days now and been reading through the forum to no avail.

I have a few lists of movies which are picked from collection of movies divided by category. Each category has their own list and collection of movies.
image

If you click on the Thriller movie for example, it will link you to another page wich will show you the movie details.

Clicking the button in this page takes you back to the first page and displays a new Thriller movie for you to watch.
image

What I’m trying to achieve is basically limit the user to maximum 3 movies per day per category. Once you have seen your 3 Thriller movies, then the Thriller category list should be hidden.

image

When a new day starts you should be able to get 3 new thriller movies again.

I just can’t figure out how to get it to work and don’t know how to configure it. I’ve been playing around with adding current date/time, adding a count every time you click the button and visibility rules but don’t know how to use the date and time and do a “reset” every new day.

Or maybe, if it’s easier, somehow set up the limit so that the list will only show x amount of items every day and not being dependent on the user clicking on the “OK, I’ve seen it. Give me a new one.” button…

Any help would be greatly appreciated!

Hi @Bobzifer ,
Would the user count be triggered by clicking “Ok, I have seen it” or by just entering the details page? Because if he enters the details page and not click the video, would that still count as 1 view?

I would see this with a Collection of “Views”, where you would add a timestamp, category and count of views. Whenever user would click button or enter details it would add record to that collection. also when entering screen before the other action, it would compare for that day using “todays date” if there would be a timestamps for that category where the count would be = 3.

Thanks @JL_LJ for your reply.

That’s a good question. I was thinking that you need to actually click on the “i’ve seen it” button in order to get a new movie. In case you change your mind and want to go back to the other main movie categories list, you might not want the first movie to disappear.

The first part I understand with creating a new “Views” collection with the properties in it.
Not sure about the second part though:

“also when entering screen before the other action, it would compare for that day using “todays date” if there would be a timestamps for that category where the count would be = 3.”

Do you mean before going back to the main movie list with all the categories (named Watch list in the picture)?
Where would you then do the comparison, in the button click action?

So in this case the button is the trigger to add the count.

To check the limit, you could use during the moment of going from the list to the details using a Action of:
image

And then link to a modal page “Oops you have reached your daily limit” and then another action linking back to the main screen.

Feeling really stupid because I still can’t figure this out.

I assume that when pressing the button, the Click Action should be to Create a record in the “Views” Collection with the current date/time and the category. Not sure what you meant with “and count of views”. Do you mean adding a Property in the “Views” Collection named “Count” and then add a number of “1” each time the button is pressed?

What I don’t get is how to count the records in the Views collection and show/hide the list based on this.
Also, using the suggested action to present a modal screen will not hide the list that has reached the daily limit, will it?

Hi @Bobzifer ,
I will try to make a video tomorrow, send me a reminder.

1 Like

Many thanks, really appreciate it!

Hi @Bobzifer ,
One more question I forgot, when user has clicked the button, you also want the movie to disappear from the list? As it will show as “Seen already”?

What happens the next day, these trailers are still left out, or they can be watched again?

Yes exactly, when you click the button the movie should be “checked of the list” as seen and then be “not visible”.

As for what happens the next day, the movies that have been checked as “seen” should continue to be marked as seen.

I’m thinking that I will just use a list of movies where each movie has a number (ID). The user is able to watch maximum two movies per day (per category). The next day it should just continue to show the next movie in the list.

For example:

Day 1 - the following movies are visible
ID1 - Tinker Tailor Soldier Spy
ID2 - Euphoria

Given that you watch both allowed movies during day 1 (clicking the button), the following movies should be visible the next day.

Day2 -
ID3 - Gone with the wind
ID4 - Romeo & Juliet

However, If the user will only watch 1 movie (ID1) during the first day, then the following movies should be visible during day 2:

Day2
ID2 - Euphoria
ID3 - Gone with the wind

Makes sense? :slight_smile:

OH uau, you like to turn tables with complexity :smiley: . So you not only want 3x per day limit per category but also with Drip content sorted per order lol.

so if you have day2 with ID2 and ID3 available, are you not letting the user watch ID4? This removes the freedom of choice, you can always leave up to them and just sort by order like “Next In line”.

Exactly. I will only let them watch maximum 2-3 movies per day. Then they will have to wait until the next day for the next movie(s) in the list to become available. No freedom of choice here :smiley:

The thought is that they will have a limited choice and only be able watch what I’m giving the user and not just scroll through the list of all movies. It would be no fun if the user could potentially scroll through the whole list of movies on day 1.
Then you can just use Netflix instead :stuck_out_tongue:

Hi,
Thanks for the explanation, just another thing, if we have:

Movies:
ID1
ID2
ID3

Can they watch ID1 and ID3, or really has to be by order? Thanks

Wondering what kind of Netflix you are doing :smiley: .

My idea was to just present the movies in order to keep it simple.
How I solved it is that each time a user has clicked the “OK, I’ve seen it…” button it will add the ID of that movie to a property of that user called “SeenMovies”.

image

image

I then added a Custom filter for the list which is suggesting the movies and I’ve limited the maximum amount of items to 1. This filter will then show movie with ID 3.
image

There’s probably a lot of better ways of solving this but it does work at least :smiley:
So now I think it’s just the time limit/reset thing i need to solve.

I actually wasn’t building any particular service or app in the beginning. I was just trying to learn the tool and had to come up with some sort of use case and thought about a movie library of some sort.

The idea with limiting the movies came up a few days ago when I spent over an hour browsing Netflix and HBO for a movie to watch. There’s just too much to choose from so I thought it would be nice to not be given so many options but just have about 5-6 movies to choose from.

The next step will be to try and make better and more tailored/accurate suggestions suited to the user instead, based on som sort of logic or preferences. But need to solve the time thingy first :smiley:

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.