A simple (hopefully coding not too complex) approach to solve the problems outlined in the above discussion, bringing ideas they suggested together (with a bit of variation) in order to keep everything within the existing Joomla ACL parameters used by the EasySocial Profiles but allow the functions requested to be achieved in a controlled environment.
1. Allow sub categories
2. Add a Restricted Yes/No option within the Category and Sub Category administration set up in the existing Access tab, adding a text box below it.
How does it work?
Option 1 - If you allow sub categories it gives the flexibility required by Antonio and AppWeb but also allows more freedom for viewing access if option 2 is also added.
Option 2 - The Restricted Yes/No option only allows (if yes is selected) viewing access for the category or sub category to be restricted to the profiles allowed to create them, no other choice is available as there is enough flexibility within the existing parameters for Joomla User Groups, Viewing Access Levels and EasySocial Profiles to cover all combinations of ES Category access.
The default for the Restricted option is NO, leaving everything as it is now. If you want viewing access matching the profiles allowed to create, change the option to YES.
Groups - The only change in the Groups is the Group Type description for (Public) 'Open Group'. if YES is selected in the Restricted option, the (public) 'Open Group' description changes to "Anyone in this sector can join the group and it does not require approval. These groups will appear in search results for this sector only.
Note - The words 'this sector' are made variable by adding a text box below the Registered Yes/No option and whatever text is entered there would replace 'this sector' in the Group Type description.
Note 2 - The content of sub categories do not inherit anything from the main category, they are independent and only controlling where groups will be located within the overall structure, giving control to the site owner/manager(s).
We can look at how it would affect the 3 examples mentioned in the above posts:
Example 1
Category = Administration with Staff Profile type for Creation and Viewing Access and Restricted set to YES, so staff members can have complete freedom setting up Groups. If you wanted to have (say) an area for Senior Staff, or Form Teachers, or Heads of Department, create sub categories with a narrower profile access, keeping the main administration category open to all Staff.
Everything is contained but flexible and any number of groups can be created within sub categories and/or the main administration category with the desired access.
Example 2
Category = NFL and sub categories = 32 teams, with the required EasySocial profiles added to all 33 cat/sub cat for creation and viewing access.
The Restricted Yes/No option can be set to YES for all sub categories, (for example) allowing groups set up for each team only to have Public/Open Group access to people allowed to see the team or perhaps set create/view access for each team for anyone who has viewing access for the NFL sector and set the main NFL category to Restricted Access NO allowing any groups created in the main NFL category to be viewed by anyone in their Public/Open Group if it is selected.
Example 3
Category = Football and sub categories = Youth, Flag and Collegiate with a similar create/viewing access set up as example 2.
The above 3 examples are only that, examples, you can create any combination you want in a controlled environment with the 2 administration changes suggested at the start of the post. It also has the benefit of not creating a new viewing/ACL structure but relying on the existing set up and keeping (I believe) adjustments to existing code to a minimum by making a few changes to category set up compared to making major changes to the Groups themselves.
Anyway, food for thought to solve the problem, hopefully it helps.