I'm having real difficulty working out whether the following is possible on a multisite install. I've been going round in circles for hours and I just haven't come up with the answer.
1. We have domain.com with a series of 'clubs' set up as multisites underneath. So we'd have domain.com/club1 domain.com/club2
2. Content on each club is hidden to non-registered users except for an introductory home page. I can do this by just setting various page templates to check if user is logged in and/or checking user level.
3. Within each club a user can register. Upon registering they become a 'contributor' user level for that sub-site, but not for the whole network. They also can now view all the content for that site.
4. After they've submitted a post for approval on the multisite for which they registered, the admin for each multisite can decide whether to approve and upgrade them to author level so they can publish content without awaiting approval.
Now as far as I can tell this just isn't the default behaviour of the network capable WordPress.
By default if a user is at domain.com/club1 and they go to domain.com/club1/wp-register.php, it just redirects them to domain.com/wp-signup.php, which then signs them up as a [default user level] across the whole network. Whilst I'm happy for that new user to become a subscriber across the whole network, I want them to become a contributor for the network site to which they have specifically signed up for.
Does this sound doable without having to hand code a registration function that directly adds users to the db (which is no doubt going to be a world of pain)?
I'm quite close to telling them that they're better off just having a 'request an account' contact form on each network site which will mail the network site admin and they manually add a user to their own network site.