There is a job in PaletteMaster that checks if any users have been adds as temporary users on a role. 

The job is usually scheduled to run once a day, but it can be set to run more often.  

If the from date on the temporary user has occurred, User added will be set to Yes when the job runs.

If the from date is in the future, the user won't be added to the role until the date occurs.