diff --git a/src/skins/vector/img/50e2c2.png b/src/skins/vector/img/50e2c2.png new file mode 100644 index 0000000000..ee0f855895 Binary files /dev/null and b/src/skins/vector/img/50e2c2.png differ diff --git a/src/skins/vector/img/80cef4.png b/src/skins/vector/img/80cef4.png new file mode 100644 index 0000000000..637d03f63c Binary files /dev/null and b/src/skins/vector/img/80cef4.png differ diff --git a/src/skins/vector/img/f4c371.png b/src/skins/vector/img/f4c371.png new file mode 100644 index 0000000000..ad3b8f1616 Binary files /dev/null and b/src/skins/vector/img/f4c371.png differ diff --git a/src/skins/vector/views/atoms/RoomAvatar.js b/src/skins/vector/views/atoms/RoomAvatar.js index ec2bf5ec21..39b995a7a5 100644 --- a/src/skins/vector/views/atoms/RoomAvatar.js +++ b/src/skins/vector/views/atoms/RoomAvatar.js @@ -17,6 +17,7 @@ limitations under the License. 'use strict'; var React = require('react'); +var MatrixClientPeg = require('matrix-react-sdk/lib/MatrixClientPeg'); var RoomAvatarController = require('matrix-react-sdk/lib/controllers/atoms/RoomAvatar') @@ -24,6 +25,23 @@ module.exports = React.createClass({ displayName: 'RoomAvatar', mixins: [RoomAvatarController], + getUrlList: function() { + return [ + this.roomAvatarUrl(), + this.getOneToOneAvatar(), + this.getFallbackAvatar() + ]; + }, + + getFallbackAvatar: function() { + var images = [ '80cef4', '50e2c2', 'f4c371' ]; + var total = 0; + for (var i = 0; i < this.props.room.roomId.length; ++i) { + total += this.props.room.roomId.charCodeAt(i); + } + return 'img/' + images[total % images.length] + '.png'; + }, + render: function() { return (