var captchaTimers = document.getElementsByClassName('captchaTimer')

var reloading = false
function reloadCaptcha() {
  document.cookie = 'captchaid=; path=/;'
  var biElem = document.getElementById('boardIdentifier')
  var boardUri = ''
  if (biElem) {
    boardUri = biElem.value
  }
  // was #captchaImageRecover and #captchaImage
  // now .captchaImage
  var captchaImages = document.getElementsByClassName('captchaImage')
  var append = boardUri ? ('&boardUri=' + boardUri) : ''
  for (var i = 0; i < captchaImages.length; i++) {
    captchaImages[i].src = '/captcha.js?d=' + parseInt(Date.now() / 1000) + append
  }
  var captchaFields = document.getElementsByClassName('captchaField')
  for (var i = 0; i < captchaFields.length; i++) {
    captchaFields[i].value = ''
  }
}

var updateFunction = function updateElements() {
  var cookies = getCookies()
  if (!cookies.captchaexpiration) {
    //console.log('captcha.js::updateFunction - no cookie expiration')
    setTimeout(updateFunction, 1000)
    return
  }
  var captchaExpiration = new Date(cookies.captchaexpiration)
  var delta = captchaExpiration.getTime() - new Date().getTime()
  //console.log('captcha.js::updateFunction - delta', delta)
  var time = ''
  if (delta > 1000) {
    time = Math.floor(delta / 1000)
    reloading = false
  } else {
    time = 'Reloading'
    if (!reloading) {
      reloading = true
      reloadCaptcha()
    }
  }
  if (captchaTimers.length) {
    for (var i = 0; i < captchaTimers.length; i++) {
      captchaTimers[i].innerHTML = time
    }
    setTimeout(updateFunction, delta)
  } else {
    setTimeout(updateFunction, delta)
  }
}

if (!DISABLE_JS) {
  updateFunction()
}