summaryrefslogtreecommitdiff
path: root/frontend/common/header.component.js
diff options
context:
space:
mode:
Diffstat (limited to 'frontend/common/header.component.js')
-rw-r--r--frontend/common/header.component.js42
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);