Why creating a custom room type in OpenMeetings
If you want to create your own styled room the best thing to do in order to be "update-save" is to create your own custom room type. There is an empty configuration by default shipped with every release of OpenMeetings, the room type "custom" (ID = 5).
You can use that and extend it, or you can add more room types to fit your use case.
Create your own room type class (User Interface)
Lets start by creating your custom room type class.
- Additional room type need to be added to
https://github.com/apache/openmeetings/blob/master/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
classType
enum - (Optional)
https://github.com/apache/openmeetings/blob/master/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
java class need to be extended and customized - (Alternatively) room sub-components can be extended and customized as it currently done for
https://github.com/apache/openmeetings/blob/master/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/InterviewWbPanel.java
Step 2) above is marked (Optional) since in most cases in might be enough to customize CSS rules for newly created room type
i.e. each room type can be customized by specifying CSS rules for this room type only. to do it:
- create CSS rule starting
.room-block .container.custom
wherecustom
is the room type
for ex..room-block .container.presentation .menu { background-color: red; }
background-color
for room menu in all rooms of typepresentation
- continue styling :)))
Thats it. You can add/edit/delete your room with the new room type in the Administration > Rooms interface of OpenMeetings like any other room.