aboutsummaryrefslogtreecommitdiff
path: root/src/client/react/components/container/WeekSelector.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/react/components/container/WeekSelector.js')
-rw-r--r--src/client/react/components/container/WeekSelector.js17
1 files changed, 10 insertions, 7 deletions
diff --git a/src/client/react/components/container/WeekSelector.js b/src/client/react/components/container/WeekSelector.js
index d5ba752..a7ffa3a 100644
--- a/src/client/react/components/container/WeekSelector.js
+++ b/src/client/react/components/container/WeekSelector.js
@@ -8,10 +8,13 @@ import ArrowBackIcon from 'react-icons/lib/md/arrow-back';
import ArrowForwardIcon from 'react-icons/lib/md/arrow-forward';
import purifyWeek from '../../lib/purifyWeek';
+import { weekFromLocation } from '../../lib/url';
+
+const WeekSelector = ({ location, history }) => {
+ const week = weekFromLocation(location);
-const WeekSelector = ({ urlWeek, location, history }) => {
const updateWeek = (change) => {
- const newWeek = purifyWeek(urlWeek + change);
+ const newWeek = purifyWeek(week + change);
const isCurrentWeek = moment().week() === newWeek;
const query = queryString.stringify({
@@ -23,19 +26,19 @@ const WeekSelector = ({ urlWeek, location, history }) => {
return (
<div className="week-selector">
<button onClick={() => updateWeek(-1)}><ArrowBackIcon /></button>
- <div className="text">Week {urlWeek}</div>
+ <div className="text">Week {week}</div>
<button onClick={() => updateWeek(+1)}><ArrowForwardIcon /></button>
</div>
);
};
WeekSelector.propTypes = {
- urlWeek: PropTypes.number.isRequired,
- history: PropTypes.shape({
- push: PropTypes.func.isRequired,
- }).isRequired,
location: PropTypes.shape({
pathname: PropTypes.string.isRequired,
+ search: PropTypes.string.isRequired,
+ }).isRequired,
+ history: PropTypes.shape({
+ push: PropTypes.func.isRequired,
}).isRequired,
};