badges and broken avatars

This commit is contained in:
Matthew Hodgson 2015-07-14 02:13:00 +01:00
parent 341fe868e4
commit 6b0167375c
7 changed files with 39 additions and 6 deletions

View file

@ -18,6 +18,7 @@ limitations under the License.
var React = require('react');
var MatrixClientPeg = require("../../../../src/MatrixClientPeg");
var MemberTileController = require("../../../../src/controllers/molecules/MemberTile");
module.exports = React.createClass({
@ -26,7 +27,7 @@ module.exports = React.createClass({
render: function() {
return (
<div className="mx_MemberTile">
<div className="mx_MemberTile_avatar"><img src="img/placeholder.png" width="32" height="32" alt="()"/></div>
<div className="mx_MemberTile_avatar"><img src={ this.props.member ? MatrixClientPeg.get().getAvatarUrlForMember(this.props.member, 32, 32, "crop") : null } width="32" height="32"/></div>
<div className="mx_MemberTile_name">{this.props.member.name}</div>
</div>
);

View file

@ -20,6 +20,7 @@ var React = require('react');
var classNames = require("classnames");
var MatrixClientPeg = require("../../../../src/MatrixClientPeg");
var ComponentBroker = require('../../../../src/ComponentBroker');
var MessageTimestamp = ComponentBroker.get('atoms/MessageTimestamp');
@ -58,7 +59,7 @@ module.exports = React.createClass({
return (
<div className={classes}>
<div className="mx_MessageTile_avatar">
<img src="img/placeholder.png" width="32" height="32"/>
<img src={ this.props.mxEvent.sender ? MatrixClientPeg.get().getAvatarUrlForMember(this.props.mxEvent.sender, 32, 32, "crop") : null } width="32" height="32"/>
</div>
<MessageTimestamp ts={this.props.mxEvent.getTs()} />
<SenderProfile mxEvent={this.props.mxEvent} />

View file

@ -35,10 +35,18 @@ module.exports = React.createClass({
'mx_RoomTile_highlight': this.props.highlight,
'mx_RoomTile_invited': this.props.room.currentState.members[myUserId].membership == 'invite'
});
var name = this.props.room.name.replace(":", ":\u200b");
var badge;
if (this.props.highlight) {
badge = <div className="mx_RoomTile_badge">!</div>;
}
else if (this.props.unread) {
badge = <div className="mx_RoomTile_badge">1</div>;
}
return (
<div className={classes} onClick={this.onClick}>
<div className="mx_RoomTile_avatar"><img src="img/placeholder.png" width="32" height="32" alt="()"/></div>
<div className="mx_RoomTile_name">{this.props.room.name}</div>
<div className="mx_RoomTile_name">{name}{ badge }</div>
</div>
);
}