Browse Source

Show rooms which we are members of.

pull/1/head
Titouan Rigoudy 9 years ago
parent
commit
228f0db215
3 changed files with 26 additions and 14 deletions
  1. +11
    -7
      src/components/Room.js
  2. +6
    -2
      src/components/RoomList.js
  3. +9
    -5
      src/styles/styles.scss

+ 11
- 7
src/components/Room.js View File

@ -1,14 +1,15 @@
import React, { PropTypes } from "react"; import React, { PropTypes } from "react";
const Room = ({ isSelected, name, onClick }) => {
let className;
const Room = ({ isSelected, name, onClick, room }) => {
const classes = ["room"];
if (isSelected) { if (isSelected) {
className = "room room-selected";
} else {
className = "room";
classes.push("room-selected");
}
if (room.membership == "Member") {
classes.push("room-joined");
} }
return ( return (
<a className={className} onClick={onClick} href="#">
<a className={classes.join(" ")} onClick={onClick} href="#">
{name} {name}
</a> </a>
); );
@ -17,7 +18,10 @@ const Room = ({ isSelected, name, onClick }) => {
Room.propTypes = { Room.propTypes = {
isSelected: PropTypes.bool.isRequired, isSelected: PropTypes.bool.isRequired,
name: PropTypes.string.isRequired, name: PropTypes.string.isRequired,
onClick: PropTypes.func.isRequired
onClick: PropTypes.func.isRequired,
room: PropTypes.shape({
membership: PropTypes.string.isRequired
})
}; };
export default Room; export default Room;

+ 6
- 2
src/components/RoomList.js View File

@ -24,8 +24,12 @@ class RoomList extends React.Component {
children.push( children.push(
<li key={room_name}> <li key={room_name}>
<Room onClick={onClick} name={room_name} {...room_data}
isSelected={selected == room_name} />
<Room
onClick={onClick}
name={room_name}
room={room_data}
isSelected={selected == room_name}
/>
</li> </li>
); );
} }


+ 9
- 5
src/styles/styles.scss View File

@ -164,7 +164,7 @@ main {
overflow-y: auto; overflow-y: auto;
} }
a.room {
.room {
display: flex; display: flex;
color: inherit; color: inherit;
text-decoration: inherit; text-decoration: inherit;
@ -172,16 +172,20 @@ a.room {
border: solid grey 0.1em; border: solid grey 0.1em;
} }
a.room:hover {
.room:hover {
background: lightgrey; background: lightgrey;
} }
a.room:active {
.room:active {
background: grey; background: grey;
} }
a.room-selected {
background: orange;
.room-joined {
background: lightgreen;
}
.room-selected {
background: lightblue;
} }
#login-status-pane, #socket-status-pane { #login-status-pane, #socket-status-pane {


Loading…
Cancel
Save