sync: full redux retrofit done

This commit is contained in:
41666 2017-12-11 18:06:25 -06:00
parent cfc623b228
commit f5220aa6dc
14 changed files with 206 additions and 122 deletions

View file

@ -8,7 +8,7 @@ class ServersNavigation extends Component {
static propTypes = {
user: ImmutablePropTypes.map.isRequired,
servers: ImmutablePropTypes.setOf(ImmutablePropTypes.map).isRequired,
servers: ImmutablePropTypes.setOf(ImmutablePropTypes.orderedMap).isRequired,
className: PropTypes.string
}
@ -17,7 +17,12 @@ class ServersNavigation extends Component {
return <Fragment>
<UserCard user={this.props.user} />
<div className={this.props.className}>
{ this.props.servers.map((s, i) => <ServerCard server={s} user={this.props.user} key={i} />) }
{
this.props.servers.reduce((acc, s, i) => {
acc.push(<ServerCard server={s} user={this.props.user} key={i} />)
return acc
}, [])
}
</div>
</Fragment>
}

View file

@ -15,28 +15,29 @@ class ServerCard extends Component {
let icon = ''
console.log(__filename, server)
const s = server.get('server')
const gm = server.get('gm')
const perms = server.get('perms')
if (perms.canManageRoles) {
if (perms.get('canManageRoles')) {
icon = <span title='Role Manager' uk-tooltip='' role='img' aria-label='Role Manager'>🔰</span>
}
if (perms.isAdmin) {
if (perms.get('isAdmin')) {
icon = <span title='Server Admin' uk-tooltip='' role='img' aria-label='Server Admin'>🔰</span>
}
return <NavLink className='server-list__item' activeClassName='active' to={`/s/${s.id}`}>
return <NavLink className='server-list__item' activeClassName='active' to={`/s/${s.get('id')}`}>
<div className='server-list__item__icon'>
<img src={`https://cdn.discordapp.com/icons/${s.id}/${s.icon}.png`} alt={s.name} />
<img src={`https://cdn.discordapp.com/icons/${s.get('id')}/${s.get('icon')}.png`} alt={s.name} />
</div>
<div className='server-list__item__info'>
<b>{s.name}</b><br />
<span style={{ color: gm.color }}>{ gm.nickname || user.get('username') }</span> { icon }
<b>{s.get('name')}</b><br />
<span style={{ color: gm.get('color') }}>{ gm.get('nickname') || user.get('username') }</span> { icon }
</div>
</NavLink>
}
}
export default Radium(ServerCard)
export default ServerCard

View file

@ -16,7 +16,7 @@ class UserCard extends Component {
const avatar = user.get('avatar')
if (avatar === '' || avatar == null) {
return `https://cdn.discordapp.com/embed/avatars/${Math.ceil(Math.random() * 9999) % 4}.png`
return `https://cdn.discordapp.com/embed/avatars/${Math.ceil(Math.random() * 9999) % 5}.png`
}
return `https://cdn.discordapp.com/avatars/${user.get('id')}/${avatar}.png`