mirror of
				https://github.com/aclindsa/moneygo.git
				synced 2025-11-04 02:23:26 -05:00 
			
		
		
		
	
		
			
				
	
	
		
			92 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			92 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
var React = require('react');
 | 
						|
 | 
						|
var ReactBootstrap = require('react-bootstrap');
 | 
						|
var Jumbotron = ReactBootstrap.Jumbotron;
 | 
						|
var Tabs = ReactBootstrap.Tabs;
 | 
						|
var Tab = ReactBootstrap.Tab;
 | 
						|
var Modal = ReactBootstrap.Modal;
 | 
						|
 | 
						|
var TopBarContainer = require('../containers/TopBarContainer');
 | 
						|
var NewUserModalContainer = require('../containers/NewUserModalContainer');
 | 
						|
var AccountSettingsModalContainer = require('../containers/AccountSettingsModalContainer');
 | 
						|
var AccountsTabContainer = require('../containers/AccountsTabContainer');
 | 
						|
var SecuritiesTabContainer = require('../containers/SecuritiesTabContainer');
 | 
						|
var ReportsTabContainer = require('../containers/ReportsTabContainer');
 | 
						|
 | 
						|
module.exports = React.createClass({
 | 
						|
	displayName: "MoneyGoApp",
 | 
						|
	getInitialState: function() {
 | 
						|
		return {
 | 
						|
			showNewUserModal: false,
 | 
						|
			showAccountSettingsModal: false
 | 
						|
		};
 | 
						|
	},
 | 
						|
	componentDidMount: function() {
 | 
						|
		this.props.tryResumingSession();
 | 
						|
	},
 | 
						|
	handleAccountSettings: function() {
 | 
						|
		this.setState({showAccountSettingsModal: true});
 | 
						|
	},
 | 
						|
	handleSettingsSubmitted: function(user) {
 | 
						|
		this.setState({showAccountSettingsModal: false});
 | 
						|
	},
 | 
						|
	handleSettingsCanceled: function() {
 | 
						|
		this.setState({showAccountSettingsModal: false});
 | 
						|
	},
 | 
						|
	handleCreateNewUser: function() {
 | 
						|
		this.setState({showNewUserModal: true});
 | 
						|
	},
 | 
						|
	handleNewUserCreated: function() {
 | 
						|
		this.setState({showNewUserModal: false});
 | 
						|
	},
 | 
						|
	handleNewUserCanceled: function() {
 | 
						|
		this.setState({showNewUserModal: false});
 | 
						|
	},
 | 
						|
	render: function() {
 | 
						|
		var mainContent;
 | 
						|
		if (this.props.user.isUser())
 | 
						|
			mainContent = (
 | 
						|
				<Tabs defaultActiveKey={1} id='mainNavigationTabs'>
 | 
						|
					<Tab title="Accounts" eventKey={1} >
 | 
						|
					<AccountsTabContainer
 | 
						|
						className="fullheight" />
 | 
						|
					</Tab>
 | 
						|
					<Tab title="Securities" eventKey={2} >
 | 
						|
					<SecuritiesTabContainer
 | 
						|
						className="fullheight" />
 | 
						|
					</Tab>
 | 
						|
					<Tab title="Scheduled Transactions" eventKey={3} >Scheduled transactions go here...</Tab>
 | 
						|
					<Tab title="Budgets" eventKey={4} >Budgets go here...</Tab>
 | 
						|
					<Tab title="Reports" eventKey={5} >
 | 
						|
					<ReportsTabContainer
 | 
						|
						className="fullheight" />
 | 
						|
					</Tab>
 | 
						|
				</Tabs>);
 | 
						|
		else
 | 
						|
			mainContent = (
 | 
						|
				<Jumbotron>
 | 
						|
					<center>
 | 
						|
						<h1>Money<i>Go</i></h1>
 | 
						|
						<p><i>Go</i> manage your money.</p>
 | 
						|
					</center>
 | 
						|
				</Jumbotron>);
 | 
						|
 | 
						|
		return (
 | 
						|
			<div className="fullheight ui">
 | 
						|
				<TopBarContainer
 | 
						|
					onCreateNewUser={this.handleCreateNewUser}
 | 
						|
					onAccountSettings={this.handleAccountSettings} />
 | 
						|
				{mainContent}
 | 
						|
				<NewUserModalContainer
 | 
						|
					show={this.state.showNewUserModal}
 | 
						|
					onSubmit={this.handleNewUserCreated}
 | 
						|
					onCancel={this.handleNewUserCanceled}/>
 | 
						|
				<AccountSettingsModalContainer
 | 
						|
					show={this.state.showAccountSettingsModal}
 | 
						|
					onSubmit={this.handleSettingsSubmitted}
 | 
						|
					onCancel={this.handleSettingsCanceled}/>
 | 
						|
			</div>
 | 
						|
		);
 | 
						|
	}
 | 
						|
});
 |