'use strict'; import React from 'react'; import CollapsibleParagraph from '../ascribe_collapsible/collapsible_paragraph'; import CreateContractForm from '../ascribe_forms/form_create_contract'; import ContractListStore from '../../stores/contract_list_store'; import ContractListActions from '../../actions/contract_list_actions'; import ActionPanel from '../ascribe_panel/action_panel'; import { getLangText } from '../../utils/lang_utils'; import GlobalNotificationModel from '../../models/global_notification_model'; import GlobalNotificationActions from '../../actions/global_notification_actions'; let ContractSettings = React.createClass({ propTypes: { defaultExpanded: React.PropTypes.bool }, getInitialState(){ return ContractListStore.getState(); }, componentDidMount() { ContractListStore.listen(this.onChange); ContractListActions.fetchContractList(); }, componentWillUnmount() { ContractListStore.unlisten(this.onChange); }, onChange(state) { this.setState(state); }, makeContractPublic(contract){ console.log(contract); ContractListActions.makeContractPublic(contract) .then(( ) => ContractListActions.fetchContractList()) .catch((error)=>{console.log('Error ', error); let notification = new GlobalNotificationModel('Service is unavailable', 'danger', 10000); GlobalNotificationActions.appendGlobalNotification(notification); }); }, getPublicContracts(){ return this.state.contractList.filter((contract) => contract.public); }, getPrivateContracts(){ return this.state.contractList.filter((contract) => !contract.public); }, getblobEndName(contract){ return contract.blob.match(/.*\/(.*)/)[1]; }, render() { let publicContracts = this.getPublicContracts(); let privateContracts = this.getPrivateContracts(); console.log(this.state.contractList); return ( {/* this should be this.props.defaultExpanded */} {

Public Contracts

{(publicContracts.length > 0) ? publicContracts.map( (contract) => { return ( } />); } ) : null }
} {

Private Contracts

{(privateContracts.length > 0) ? privateContracts.map( (contract) => { return ( } />); } ) : null}
}
); } }); export default ContractSettings;