Signing in Required to download

My client wants website users to be required to sign in in order to download or listen to recordings. Downloading is free. Signing in is free. And that by signing up there is a check box for users to agree to get emails from the shul.

What’s the best way to set this up?

Can a login box pop-up automatically after a certain amount of time?

I may be adding Gravity forms to this site - If so it looks like I can use their user registration add-on User Registration Add-On for your WordPress Forms | Gravity Forms. Never tried it out though.

But if not, how would I add this feature?