| 123456789101112131415161718192021222324 |
- define [
- "base"
- ], (App) ->
- App.factory "validateCaptcha", () ->
- _recaptchaCallbacks = []
- onRecaptchaSubmit = (token) ->
- for cb in _recaptchaCallbacks
- cb(token)
- _recaptchaCallbacks = []
- recaptchaId = null
- validateCaptcha = (callback = (response) ->) =>
- if !grecaptcha?
- return callback()
- reset = () ->
- grecaptcha.reset()
- _recaptchaCallbacks.push callback
- _recaptchaCallbacks.push reset
- if !recaptchaId?
- el = $('#recaptcha')[0]
- recaptchaId = grecaptcha.render(el, {callback: onRecaptchaSubmit})
- grecaptcha.execute(recaptchaId)
- return validateCaptcha
|