/* vim: set foldmethod=marker filetype=javascript: */

// {{{ InitCAPTCHA()
function InitCAPTCHA(){
  var c_img = $('captchaimgph');
  var c_txt = $('captchatxtph');

  if(c_img) {
    var img = $('captchaimg');
    if(img && img.parentNode !== c_img) {
      c_img.appendChild(Element.remove(img));
      img.show();
    }

    var reload = $('captchareload');
    if(reload) {
      reload.observe('click', ReloadCAPTCHA)
            .setAttribute('href', '#reloadcaptcha');

      if(c_txt && reload.parentNode !== c_txt) {
        c_txt.appendChild(Element.remove(reload));
      }

      reload.show();
    }
  }
} // }}}

// {{{ ReloadCAPTCHA(ev)
function ReloadCAPTCHA(ev){
  ev.stop();
  var img = document.getElementById('captchaimg');

  if(!img){
    for(var i = 0; i < document.images.length; i++){
      if(document.images[i].alt
      && document.images[i].alt.indexOf('CAPTCHA') != -1){
        img = document.images[i];
        break;
      }
    }

    if(!img){
      alert('Your browser needs modern Javascript to use this function.');
      return;
    }
  }

  var t = img.src;
      t.replace(new RegExp(/\/r=[0-9]+/), '');
      t += '/r=' + Math.floor(Math.random()*1000);

  img.src = t;
  return;
} // }}}

