diff options
Diffstat (limited to 'frontend/common/header.component.js')
| -rw-r--r-- | frontend/common/header.component.js | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/frontend/common/header.component.js b/frontend/common/header.component.js new file mode 100644 index 0000000..a4777dc --- /dev/null +++ b/frontend/common/header.component.js @@ -0,0 +1,42 @@ +import React from 'react'; +import { bindActionCreators } from 'redux'; +import { connect } from 'react-redux'; +import { Link } from 'react-router-dom' +import { session } from '../session' + +function Header(props) { + return ( + <header> + <div> + <Link to="/" className="logo"><b>swimmer</b></Link> + </div> + <div> + <Link to="/collection/">Collections</Link> + <Link to="/dashboard/">Dashboard</Link> + <span className='username' onClick={() => changeUsername()}> + {' → '}{props.username} + </span> + </div> + </header> + ) +} + +const changeUsername = () => { + const username = prompt("Please enter your username:", session('username')) + if (username && username.length) { + session.set('username', username) + document.querySelector('Header div span').innerText = ' → ' + username // very naughty + } +} + + +const mapStateToProps = (state) => ({ + auth: state.auth, + username: session.get('username'), + isAuthenticated: state.auth.isAuthenticated, +}); + +const mapDispatchToProps = (dispatch) => ({ +}); + +export default connect(mapStateToProps, mapDispatchToProps)(Header); |
