I am trying to build a website that has following features:
• An organization buys access to a specific service, e.g. certain quizzes, ability to schedule their staff, manuals etc.
• Access is time limited (1 month, 6 months etc.)
• The organization can add employees to their organization
• Managers/Organization can see different nodes than employees, and will have different permissions to different parts of the system (e.g. manager can add employee, employee can’t add anybody, managers create schedule, employees can see schedule – possibly only their own schedule)
• Admin is able to limit how many employees can be added by the organization (should be predefined by the package they buy).
• The ability to add new features to the existing services (e.g. the organization bought first quizzes, then wants to add calendar function, more quizzes, more employees etc.), which are then made available to the different parts of the organization, depending on permissions.
• Ability to lock the IP address of organization and employees. I want to ensure that the information can only be accessed from the initial setup IP address.
• Would it be possible to lock the IP address of the organization and the employees separately, or allow a 2nd IP address for employees?
What modules would be recommended?
Every time I think I got an idea of how to set it up, I find more modules that might do the trick and I get more confused.
I saw that the uc_node_access module might help with the integration of limited access to nodes.
Not sure if the content_permissions module would necessary, or if it would be easier to create a view for the schedule that should be viewed by the employees.
I would probably need to setup an organization role and an employee role to predefine who can do what. Should I create specific roles for specific packages, e.g. base package has permission 1, upgrade=1+ additional permissions?
I’m not sure about the organization part. Should I use OG, or what is the best way to set this up?
Also how can I ensure that the organization can only add employees to their own organization and how can I limit the amount of employees?
What is the best way to make new services (packages) available? Especially how would that work if the new package would include a role or permission changes?
How can I set it up, so the organization will automatically get the access to their package and the employees what belongs to them?
Would you recommend Ubercart 1 or 2 for this?
Thanks for the help.

