import React from 'react' import {Button, ButtonGroup, ButtonToolbar, Glyphicon} from 'react-bootstrap' import App from 'app' import Account from 'models/account' export default class AccountList extends React.Component { static get defaultProps() {return{ account: null, accounts: [], onAdd: null, onRemove: null, onSelect: null }} constructor(props) { super(props) this.state = { mode: 'expanded' } // prebind: this.select = this.select.bind(this) this.add = this.add.bind(this) this.remove = this.remove.bind(this) this.expand = this.expand.bind(this) this.collapse = this.collapse.bind(this) } select(e) { let account = this.props.accounts.find( account => account.id == e.currentTarget.dataset.id ) if (this.props.onSelect) { this.props.onSelect(account) } } add() { App.show('wizard') } remove() { } expand() { this.setState({mode: 'expanded'}) } collapse() { this.setState({mode: 'collapsed'}) } render() { let style = {} let expandButton = null let plusminusButtons = null if (this.state.mode == 'expanded') { expandButton = ( ) plusminusButtons = ( ) } else { style.width = '60px' expandButton = ( ) } let items = this.props.accounts.map((account, i) => { let className = account == this.props.account ? 'active' : 'inactive' return (
  • {account.userpart} {account.domain}
  • ) }) return (
    {plusminusButtons} {expandButton}
    ) } }