To allow for a friction-free trial period to demo an app, it is possible to have the user log in as a guest and just skip the registration process. The guest user account remains in the Users table so the user can come back at any other dates and times for additional unlimited sessions with the app, correct?
To limit the length of the trial period for an anonymous guest user, the app could determine the difference between the current datetime (now) value and the guest user record “created” datetime value to see if it exceeds a certain number or date, then deny use if that number or date is exceeded. What is the better approach for permission check – using a milliseconds (integer) difference between the dates or perhaps a date offset function (like created on date + one week)? If so, how is this done? Are there any other better ways to check if the guest user has exceeded the free trial period?
Finally, how can the app prevent the same user from potentially employing the guest login option to establish a new guest account each time the prior one expires if a limited time function is added?