1. I need to let users select their user group.
The best way to do what you're looking for is to create a socialprofile plugin. Basic information on how to do so is in the documentation below:
www.sourcecoast.com/jfbconnect/docs/gene...ing-a-profile-plugin
Mainly, you'd want to:
* Implement the protected function getRegistrationForm($profileData) function - This just returns HTML you want to display on the registration page and would be your select list of different countries
* Implement the protected function createUser($profileData) function - This would simply check the value the user selected and use the Joomla assignGroup method to put them in the right group.
For a long example, see the JomSocial profile plugin. That does a ton more than what you're looking for, but it shows those two functions, which should be all you need. Of course, you'd need to make sure that Automatic Registration is disabled so the user is brought to the registration form.
2. Users created with Facebook don't work well with ACL
Something sounds very wrong here. The user should absolutely be assigned to the default Joomla user group for your site. I'm not sure why that wouldn't be happening. My honest guess is that you have a database issue as the permissions system can be finnicky when many groups are created and removed.
If you don't have your code implemented to add a user to a group they select, are they properly added to the default joomla group on registration?
Thanks,
Alex