import React from 'react'; import ConsignForm from './ascribe_forms/form_consign'; import TransferForm from './ascribe_forms/form_transfer'; import LoanForm from './ascribe_forms/form_loan'; import ShareForm from './ascribe_forms/form_share_email'; import ModalWrapper from './ascribe_modal/modal_wrapper'; import AppConstants from '../constants/application_constants'; let AclButton = React.createClass({ propTypes: { action: React.PropTypes.oneOf(AppConstants.aclList).isRequired, availableAcls: React.PropTypes.array.isRequired, editions: React.PropTypes.array.isRequired, currentUser: React.PropTypes.object, handleSuccess: React.PropTypes.func.isRequired }, actionProperties(){ if (this.props.action == 'consign'){ return { title: "Consign artwork", tooltip: "Have someone else sell the artwork", form: } } else if (this.props.action == 'transfer') { return { title: "Transfer artwork", tooltip: "Transfer the ownership of the artwork", form: } } else if (this.props.action == 'loan'){ return { title: "Loan artwork", tooltip: "Loan your artwork for a limited period of time", form: } } else if (this.props.action == 'share'){ return { title: "Share artwork", tooltip: "Share the artwork", form: } } }, render() { let shouldDisplay = this.props.availableAcls.indexOf(this.props.action) > -1; let aclProps = this.actionProperties(); return ( {this.props.action.toUpperCase()} } currentUser={ this.props.currentUser } editions={ this.props.editions } handleSuccess={ this.props.handleSuccess } title={ aclProps.title } tooltip={ aclProps.tooltip }> { aclProps.form } ); } }); export default AclButton;