- Edited
clarkwinkelmann The "terms updated at" value should be seen as "everybody who accepted prior to that date now has to accept again". Meaning, it has to be in the past or everybody will always be matched and nobody will be able to pass ?
First I understood your extension in a way that each update would have its own entry in the flagrow_terms_policies
table. I later understood that this is not the way your extension works and also that this approach wouldn't make a lot of sense either. The way you've organized the policies makes a lot more sense, but now you have to know which version of a given policy has been accepted and this can be achieved by comparing the date of the last version and the date of the last acceptance. A lean and simple approach with the only drawback of missing grace periods. But that's absolutely OK with me.
I wanted to implement some kind of versioning, but it's a bit more complex.
Thinking about versions of policies and grace periods, I realised too that this get's complicated soon. Let's for example look at the situation, where a user has accepted version 5, version 6 is due and version 7 is announced (grace period). Should we offer both versions 6 and 7 for acceptance? Should we offer version 7 first and in case of decline come up with version 6 which can't be declined? What about overlapping grace periods? This can easily become very confusing.
clarkwinkelmann Regarding the ability to close the modal while still being blocked I will try to implement it as soon as possible.
Great.
I have found one bug in my installation, but I'm not sure whether this is due to my difficulties during installation. If I check the Terms accept state
of a user, I can't see the accept date, it just shows:
- Policy 1: Accepted at ,[object Object]
- Policy 2: Not accepted
Policy 1 had been accepted before, policy 2 had not.
Edit: The date in the database looks unsuspicious to me:
policy_id user_id accepted_at
1 1 2018-05-11 09:37:06