'Admin user' to add user to workspace(s); user restricted to said workspace(s)

Hi all,

I am developing a project management tool and am struggling with a specific part at the moment. This is what I have so far:

  • User signs up via landing page and arrives at “workspaces” page. Here, they can click an “add workspace” button and add as many workspaces as they want in a repeating group (I’ve done this)
  • User can then click on whichever workspace they’d like to invite users to, enter their email and this user gets added (receives an email to reset password, etc.) (I’ve done this)
  • Invited users should be able to view all workspaces that they have access to (those assigned to them by the admin user who was the first to create the “team”) and (if given the right by admin) should be able to also create their own - but they can only be part of the one team with that account/email. (I haven’t figured this out yet and hence the question)

So, my problem is this: How do I set up the database and workflow, etc. to be able to associate that invited user to that specific ‘team’ and those specific ‘workspaces’ so that they can only see and access those? If they want to join a different ‘team’ they’ll need to create their own ‘admin account’ and/or get invited by some other team’s admin user and with a different email. (I’d also welcome thoughts on whether this is the most user friendly approach)

Thank you so much for your help, I’ve searched every post on this over the past week and can’t for the life of me figure it out!

Thank you for that video - that helps with showing different pages to different users, but how do I make sure that:

  • someone from one team can’t view the pages of someone from another team?
  • someone invited to one workspace can’t view other workspaces?
  • when admin invites new users, those ‘descriptors’ get added to that user in the database without input fields? e.g. "add same TeamID as admin & add workspace invited to to user’s ‘workspaces_joined’ in database?

@VKB

This is somewhat elaborate to explain. Consider getting expert coaching help to sort this out quicker.