$(document).ready(function() {       
 $('a').focus(function() {
    this.blur();
  });
 $('object').focus(function() {
    this.blur();
  });

});

function validatePartenaires() {
  var isValid = true;
  $('#inscription_partenaires .ateliers dl').each(function() {
    if($('input[checked]', this).length == 0) {
      isValid = false;
    }
  });
  if(!isValid) {
    if(!$('#error_ateliers').length) {
      $('#inscription_partenaires .ateliers').prepend('<p id="error_ateliers" class="error_label">Vous devez sélectionner un thème par créneau horaire</p>');
    }
  } else {
    $('#error_ateliers').remove();
  }
  return isValid;
}

/*oldies*/
function resetVal(id, val) { if($(id) && $(id).value == val) $(id).value = ''; }
function validateGetValueOf(o) {
    var value="";
    if(typeof(o)=="object") {
        switch(o.type) {
            case "select":
                var i=o.options.SelectedIndex;
            value=(i!=-1) ? o.options[i].value : "";
            break;
            case "chackbox":
                case "radio":
                case "input":
                case "textarea":
                case "file":
            default:
                return o.value;
        }
    }
    return value;
}

function hasAttribute(attribute) {
    var has=this.getAttribute(attribute);
    return (has==null) ? false : true;
}

function validate(hidealert) {
    var argv = validate.arguments;
    var argc = argv.length; 
    var str = "";
    var min_reqs=max_reqs=null;
    if(!document.getElementsByTagName) {
        alert("Sorry! Your browser does not support the W3C HTML DOM!");
        return false;
    }
    var forms = document.getElementsByTagName('form');
    for(var f=0; f<forms.length;f++) {
        var e=forms[f].elements;
        for(var i = 0; i < e.length; i++) {
            if(!e[i].hasAttribute) e[i].hasAttribute=hasAttribute;
            if(!e[i].hasAttribute('pattern')) continue;
            var pattern = new RegExp(e[i].getAttribute('pattern'));
            var value = validateGetValueOf(e[i]);
            
            if(document.getElementById("error_"+e[i].id)){
              var elem = document.getElementById("error_"+e[i].id);
              var old = (elem.parentNode).removeChild(elem);
            }

            if (pattern != '/null/') {
                var offendingChar = value.match(pattern);
                if(offendingChar == null) {
                    str+= (e[i].hasAttribute('errorMsg')) ?
                        e[i].getAttribute('errorMsg') + "\n" :
                        "Parse error in form ! --"+e[i].name+"\n";
//                alert(forms[f].elements[i].id);
          
              /*     nouveauDiv = document.createElement("div");
                  nouveauDiv.innerHTML = e[i].getAttribute('errorMsg');
                  mon_div = document.getElementById('line_'+e[i].id);
                  document.body.insertBefore(nouveauDiv, mon_div);*/
                
                          
              var sp1 = document.createElement("div");
              sp1.setAttribute("class", "error_label");
              sp1.className = 'error_label';
              sp1.setAttribute("id", "error_"+e[i].id);
              
              sp1.innerHTML = '';
              var sp1_content = document.createTextNode(e[i].getAttribute('errorMsg'));
              sp1.appendChild(sp1_content);
              var sp2 = document.getElementById(e[i].id);
              var parentDiv = sp2.parentNode;
              parentDiv.insertBefore(sp1, sp2.nextSibling);



                    e[i].className='inputError';    
                    continue;
                }
                min_reqs= (e[i].hasAttribute('min')) ? e[i].getAttribute('min') : "";
                max_reqs= (e[i].hasAttribute('max')) ? e[i].getAttribute('max') : "";
                if(typeof(e[min_reqs])=="object")
                    min_reqs=validateGetValueOf(e[min_reqs]);
                if(typeof(e[max_reqs])=="object")
                    min_reqs=validateGetValueOf(e[max_reqs]);
                if(min_reqs!="") min_reqs=parseFloat(min_reqs);
                if(max_reqs!="") max_reqs=parseFloat(max_reqs);
                //str+="["+min_reqs+"]["+value+"]["+max_reqs+"]\n";
                if ((min_reqs!="" && value < min_reqs) || (max_reqs!="" && value > max_reqs)) {
                    str+= (e[i].hasAttribute('MinMaxerrorMsg')) ?
                        e[i].getAttribute('MinMaxerrorMsg') + "\n" :
                        "Parse error in form : "+e[i].name +": "+min_reqs+"<="+value+"<="+max_reqs+"\n";
                    e[i].className='inputError';
                } else{
                    if(e[i].getAttribute('type') != 'checkbox') e[i].className='inputValid';
                }
            }
        }
    }
    if (str != "" && str!=null) {
        if (hidealert == 1) {
            return false;
        } else {
            //alert(str);
//            document.getElementById('error-list').style.display
             
            return false;
        }
    } else {
        if(argc == 3 && argv[0].toLowerCase() == 'checkpass') {
            if(checkPass(argv[1], argv[2]) == false) {
                document.getElementById(argv[1]).className = 'inputError';
                document.getElementById(argv[2]).className = 'inputError';
                //alert((document.getElementById(argv[1]).hasAttribute('errorMsg')) ?  document.getElementById(argv[1]).getAttribute('errorMsg') : "Please enter the same passwords");
                alert("Please enter the same passwords");
                return false;
            }
        }
        return true;
    }
}

