Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add room groups #334

Open
phiter opened this issue Jun 10, 2020 · 1 comment
Open

Add room groups #334

phiter opened this issue Jun 10, 2020 · 1 comment

Comments

@phiter
Copy link
Collaborator

phiter commented Jun 10, 2020

Feature Description

Add a feature enabling the admin to group rooms and separate them visually.

Problem

If you have too many rooms, matrix will end up having many unorganized rooms in the office page, and this can get too crowded very fast. So grouping these rooms could be a great feature since it can help organize the office.

Solution

In order to add this feature and not mess with the current json structure for the ROOMS_DATA variable, my suggestion is to simply add a group property to the json and use that to group the rooms. Rooms without this option will show up at the top of the office page without a group label.

I suppose room groups could also have an option to be expanded/closed, and this could be persisted in the localstorage, because I as a developer for example would rarely need to see who is in the "Marketing" group rooms.

At first this could be just a way to organize things visually but it could be enhanced to allow only people of certain departments to enter rooms in certain groups.

I started developing this feature, this is basically what I would have in mind:

image

JSON structure:

[
  {
    "id": "4d5ee6b0-be40-4201-897a-e3a903df6b95",
    "name": "Time A",
    "group": "Tecnologia da informação"
  },
  {
    "id": "00aa1849-6aa3-4a60-b635-8e1507c00196",
    "name": "Time B",
    "group": "Tecnologia da informação"
  },
  {
    "id": "06485e3f-90e6-4dd2-ac8c-0a750d683fbc",
    "name": "Time C",
    "group": "Tecnologia da informação"
  },
  {
    "id": "70860161-3b44-4c16-9420-bc8eaeedd531",
    "name": "Time D",
    "group": "Tecnologia da informação"
  },
  {
    "id": "f190f1cb-e23c-4169-b08b-55e390906e11",
    "name": "Café"
  },
  {
    "id": "0d655666-5dba-433a-843e-d6eebafe6b3f",
    "name": "Time E",
    "group": "Tecnologia da informação"
  },
  {
    "id": "377ae09b-e943-4d01-af6f-ddd967a19d60",
    "name": "Almoço"
  },
  {
    "id": "f190f1cb-e23c-4169-b08b-55e3909e11",
    "name": "Reunião externa"
  },
  {
    "id": "0d655666-5dba-433a-843e-d6ebafe6b3f",
    "name": "Time F",
    "group": "Tecnologia da informação"
  },
  {
    "id": "377ae09b-e943-4d01-af6f-ddd9679d60",
    "name": "Atendimento A",
    "group": "Atendimento"
  },
  {
    "id": "6548860c-4909-42a0-a2de-7eee235c51",
    "name": "Atendimento B",
    "group": "Atendimento"
  },
  {
    "id": "377ae09b-e943-4d01-af6f-ddd9679d60",
    "name": "Atendimento C",
    "group": "Atendimento"
  }
]
@phiter
Copy link
Collaborator Author

phiter commented Jun 10, 2020

Just noticed this is a duplicate of #208 . I can work on this by referencing that issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant