So, my problem is two-fold:

  1. I want to have a beta version of my website that I'll make available only to some friends, but I also want to give those friends the option of inviting other friends through some kind of invitation system (e.g. like Gmail did it back in 2004 when it first started).
  2. I need to deny access to all content of my website if someone does not have an account.

So, ideally, I want to have a front page with a simple logo and a login form along with some text that allows the guest to enter an email address and be notified about the site going live (or get in some kind of queue). Of course, I also want to keep track of these requests/subscriptions.

So, is there a solution for this kind of functionality in Drupal? I guess I could write custom code and/or use extensive theming to achieve all these goals but I was wondering if there is a ready-made combination of modules that I can use and I'm obviously missing.

1 Answer 1

  1. See, the Request Invitation module will likely do your job

  2. For this one, first create a new user role @ admin/people/permissions/roles (something like "Premium Users" or "Special Group" or "Only Friends" or something that makes sense). Then use the Content Access module to only allow people from the above mentioned user role to see particular contents.

Then copy the contents of page.tpl.php into a new file named page--front.tpl.php and start editing. This will theme for the front page only, where you can now add a form for the requests and so on.

  • Thanks a lot for your reply! I will definitely give your suggestions a try today. However, if I use the page--front.tpl.php to create the various forms, when the user logs in, will he not still see the specific page as front? For the lock-down mechanism I was looking for something like the maintenance mode but only for anonymous users (since it's more centralized). Do you happen to know if there is something like this available?
    – user4979
    Commented Mar 3, 2012 at 9:02
  • @LimArctan The LoginToboggan module provides a login form on Access Denied pages for non-logged-in users...you could use that and just remove the permission to "Access Content" from anonymous users, I think that'll get the effect you want
    – Clive
    Commented Mar 3, 2012 at 14:36
  • @Lim, Oh I see what you are saying. Then you can do one simple thing. As I mentioned above to add a new user role. Once you do that, go to "admin/people/permissions" and add "Use the site in maintenance mode" to that newly created user role. Then ask all your friends to go to "yourwebsite.com/user"
    – Minty
    Commented Mar 3, 2012 at 15:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.