const React = require('react'); const createClass = require('create-react-class'); const _ = require('lodash'); const cx = require('classnames'); const moment = require('moment'); const UIPage = require('../basePages/uiPage/uiPage.jsx'); const Nav = require('naturalcrit/nav/nav.jsx'); const Navbar = require('../../navbar/navbar.jsx'); const RecentNavItem = require('../../navbar/recent.navitem.jsx').both; const Account = require('../../navbar/account.navitem.jsx'); const NewBrew = require('../../navbar/newbrew.navitem.jsx'); const HelpNavItem = require('../../navbar/help.navitem.jsx'); const NaturalCritIcon = require('naturalcrit/svg/naturalcrit.svg.jsx'); let SAVEKEY = ''; const AccountPage = createClass({ displayName : 'AccountPage', getDefaultProps : function() { return { brew : {}, uiItems : {} }; }, getInitialState : function() { return { uiItems : this.props.uiItems }; }, componentDidMount : function(){ if(!this.state.saveLocation && this.props.uiItems.username) { SAVEKEY = `HOMEBREWERY-DEFAULT-SAVE-LOCATION-${this.props.uiItems.username}`; let saveLocation = window.localStorage.getItem(SAVEKEY); saveLocation = saveLocation ?? (this.state.uiItems.googleId ? 'GOOGLE-DRIVE' : 'HOMEBREWERY'); this.makeActive(saveLocation); } }, makeActive : function(newSelection){ if(this.state.saveLocation == newSelection) return; window.localStorage.setItem(SAVEKEY, newSelection); this.setState({ saveLocation : newSelection }); }, renderButton : function(name, key, shouldRender=true){ if(!shouldRender) return; return ; }, renderNavItems : function() { return ; }, renderUiItems : function() { return <>

Account Information

Username: {this.props.uiItems.username || 'No user currently logged in'}

Last Login: {moment(this.props.uiItems.issued).format('dddd, MMMM Do YYYY, h:mm:ss a ZZ') || '-'}

Homebrewery Information

Brews on Homebrewery: {this.props.uiItems.mongoCount}

Google Information

Linked to Google: {this.props.uiItems.googleId ? 'YES' : 'NO'}

{this.props.uiItems.googleId &&

Brews on Google Drive: {this.props.uiItems.googleCount ?? <>Unable to retrieve files - follow these steps to renew your Google credentials.}

}

Default Save Location

{this.renderButton('Homebrewery', 'HOMEBREWERY')} {this.renderButton('Google Drive', 'GOOGLE-DRIVE', this.state.uiItems.googleId)}
; }, render : function(){ return {this.renderUiItems()} ; } }); module.exports = AccountPage;