Skip to content

Instantly share code, notes, and snippets.

@w33ble
Last active August 29, 2015 13:57
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save w33ble/9905264 to your computer and use it in GitHub Desktop.
Save w33ble/9905264 to your computer and use it in GitHub Desktop.
Gravitar Avatar React Component
define(function(require, exports, module){
var React = require('react');
var Avatar = require('avatar');
return React.renderComponent(Avatar({ email: 'hello@world.com' }), document.querySelector('body'));
});
define(function(require, exports, module){
var React = require('react');
var Gravitar = require('helpers/gravitar');
var md5 = require('md5');
return React.createClass({
getDefaultProps: function(){
return {
src: Gravitar.getUrl({email: '', size: 50})
};
},
render: function() {
var src;
if (this.props.url) {
src = this.props.url;
} else if (this.props.email) {
var hash = md5(this.props.email);
src = Gravatar.getUrl({email: hash, size: this.props.size});
} else {
src = this.props.src;
}
return (
React.DOM.div({
className: 'avatar'
}, [
React.DOM.img({src: src})
])
);
}
});
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment