This is an enrollment plugin that allows you to specify enrollment eligibility criteria using values stored in a user's profile (including custom user profile fields). The plugin also inlcudes the ability to set priority enrollment periods for users who meet the priority enrollment criteria (which also use user profile fields). A user who meets the priority criteria is allowed to enroll in the course prior to the beginning of the set enrollment period. This priority period setting allows for a sort of "Early registration" setup. You can also control the size of a class via the use of a maximum allowed students setting.
This plugin was developed by MoodleRooms via Grant funding from Nihon University. As the initial plugin concept designer and grant recipient, I will be maintaining the plugin to the best of my ability but since I'm not a programmer, I may not be able to address development requests and bug issues as quickly as desired. Bear with me, I'll get to things as I can.