ih-portal
Version:
A project for connecting interaction hub services with catalyst-ui components
66 lines (53 loc) • 1.46 kB
JSX
import React, { Component, PropTypes } from 'react';
import Profile from 'ih-brandbar-profile';
const { func, object } = PropTypes;
export default class ProfileProv extends Component {
constructor() {
super(...arguments);
this.fetch = this.fetch.bind(this);
this.invalidate = this.invalidate.bind(this);
}
componentDidMount() {
this.fetch();
}
fetch() {
const pictureParams = {
url: __PICTURE_URL__,
auth: [__USERNAME__, __PASSWORD__],
};
const profileParams = {
url: __PROFILE_URL__,
auth: [__USERNAME__, __PASSWORD__],
};
this.props.fetchPicture(pictureParams);
this.props.fetchProfile(profileParams);
}
invalidate() {
const pictureParams = {
url: __PICTURE_URL__,
auth: [__USERNAME__, __PASSWORD__],
};
const profileParams = {
url: __PROFILE_URL__,
auth: [__USERNAME__, __PASSWORD__],
};
this.props.invalidatePicture(pictureParams);
this.props.invalidateProfile(profileParams);
}
render() {
return (
<div className="pull-right">
<Profile profile={this.props.profile} picture={this.props.picture} fetch={this.fetch} invalidate={this.invalidate} />
<br />
</div>
);
}
}
ProfileProv.propTypes = {
picture: object,
profile: object,
fetchPicture: func.isRequired,
fetchProfile: func.isRequired,
invalidatePicture: func.isRequired,
invalidateProfile: func.isRequired,
};