From d2ca6b23c727a234603a2f5e97c9c6a1023a1958 Mon Sep 17 00:00:00 2001 From: SleepWalker Date: Tue, 28 Jun 2016 13:07:28 +0300 Subject: [PATCH] #138: fix a bug with hash applied to url after clicking on link on rules page --- src/pages/rules/RulesPage.jsx | 7 ++++++- src/services/authFlow/RegisterState.js | 6 +++--- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/pages/rules/RulesPage.jsx b/src/pages/rules/RulesPage.jsx index a5e85c3..56d4c11 100644 --- a/src/pages/rules/RulesPage.jsx +++ b/src/pages/rules/RulesPage.jsx @@ -25,7 +25,7 @@ const rules = [ , , https://account.ely.by/register) + link: (https://account.ely.by/register) }} /> ] }, @@ -130,6 +130,11 @@ export default class RulesPage extends Component { } onRuleClick(event) { + if (event.defaultPrevented || event.target.tagName.toLowerCase() === 'a') { + // some-one have already processed this event or it is a link + return; + } + const {id} = event.currentTarget; const {router} = this.context; const newLocation = router.createLocation({...location, hash: `#${id}`}); diff --git a/src/services/authFlow/RegisterState.js b/src/services/authFlow/RegisterState.js index b360368..91025d8 100644 --- a/src/services/authFlow/RegisterState.js +++ b/src/services/authFlow/RegisterState.js @@ -6,10 +6,10 @@ export default class RegisterState extends AbstractState { enter(context) { const {user} = context.getState(); - if (!user.isGuest) { - context.setState(new CompleteState()); - } else { + if (user.isGuest) { context.navigate('/register'); + } else { + context.setState(new CompleteState()); } }