lukeraymonddowning / honey

A spam prevention package for Laravel, providing honeypot techniques, ip blocking and beautifully simple Recaptcha integration. Stop spam. Use Honey.
MIT License
408 stars 23 forks source link

Stopped working after updating both livewire 3 and honey #72

Open Nevh1100 opened 5 months ago

Nevh1100 commented 5 months ago

Hi there! I've been using the captcha for some time along with the honeypot and it worked with some adjustments (#71 ) but now, after updating Livewire and Honey to the latest version, it stopped working Component: if(!$this->honeyPasses()){ $this->storeToastData('error', "Wrong Captcha, try refreshing the page."); return $this->redirect($this->previous, true); } Blade (inside the form): <x-honey recaptcha="login"/> Using honeyPasses() consistently returns false, so I tried recaptchaPasses(). I noticed it works the first time, as the recaptcha token loads correctly. However, after navigating with wire:navigate, the token is deleted, and only this remains: <input wire:model="honeyInputs.honey_recaptcha_token" action="login" type="hidden" data-purpose="honey-rc" data-action="login" name="honey_recaptcha_token" value=""> Also after 2 minutes the recaptcha is refreshed properly (I think automatically because I modified token_refresh_interval to 30 seconds and it didn't refresh it)

Does anyone have a clue what could be causing my problem?

Thank you!

cbaconnier commented 4 months ago

wire:navigate cause a lot of headache when you work with libraries that changes the DOM. I suppose, one possible way would be to intercept the livewire:navigating event to clear the timeouts and inputs. It would probably require a PR.

Dave2084 commented 2 months ago

wire:navigate cause a lot of headache when you work with libraries that changes the DOM. I suppose, one possible way would be to intercept the livewire:navigating event to clear the timeouts and inputs. It would probably require a PR.

I'm hitting the wire:navigate issue as well, is there any way I can fix this without waiting for a PR?