diff options
author | Dessalines <tyhou13@gmx.com> | 2019-04-25 22:50:42 -0700 |
---|---|---|
committer | Dessalines <tyhou13@gmx.com> | 2019-04-25 22:50:42 -0700 |
commit | fba4d372fcc175f1da53b72980c97e09fdb77d9c (patch) | |
tree | 00677a68fec9eb8e2488d6653706fa9ef53c5a1e /ui/src/components/login.tsx | |
parent | 9374aefa56a707cafce8740cd45a0d254ea2184f (diff) |
Spamtimer
Diffstat (limited to 'ui/src/components/login.tsx')
-rw-r--r-- | ui/src/components/login.tsx | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/ui/src/components/login.tsx b/ui/src/components/login.tsx index 2a9f8d7d..e6dec2d2 100644 --- a/ui/src/components/login.tsx +++ b/ui/src/components/login.tsx @@ -10,6 +10,7 @@ interface State { registerForm: RegisterForm; loginLoading: boolean; registerLoading: boolean; + spamTimer: number; } @@ -28,7 +29,8 @@ export class Login extends Component<any, State> { admin: false, }, loginLoading: false, - registerLoading: false + registerLoading: false, + spamTimer: new Date().getTime() } constructor(props: any, context: any) { @@ -124,6 +126,7 @@ export class Login extends Component<any, State> { <input type="password" value={this.state.registerForm.password_verify} onInput={linkEvent(this, this.handleRegisterPasswordVerifyChange)} class="form-control" required /> </div> </div> + <input type="hidden" value={this.state.spamTimer} /> <div class="form-group row"> <div class="col-sm-10"> <button type="submit" class="btn btn-secondary">{this.state.registerLoading ? @@ -157,9 +160,14 @@ export class Login extends Component<any, State> { i.state.registerLoading = true; i.setState(i.state); event.preventDefault(); - setTimeout(function(){ + + let endTimer = new Date().getTime(); + let elapsed = endTimer - i.state.spamTimer; + if (elapsed > 4500) { WebSocketService.Instance.register(i.state.registerForm); - }, 10000); + } else { + location.reload(true); + } } handleRegisterUsernameChange(i: Login, event: any) { |