Do you need Geolocation or simply modify the published file that you supply to select clients. We used a widget once to set an expiry date for a course. The only issue with these were that the system clock could be changed, which unlocked the module.
So just be careful how you lock down the module