var upload_number = 1;

function addFileInput(txt) {
    var d = document.createElement("div");
    d.setAttribute("id", "id_FILE_"+upload_number);
    var file = document.createElement("input");
    file.setAttribute("type", "file");
    file.setAttribute("class", "uploadfile");
    file.setAttribute("name", "FILE_"+upload_number);
    file.setAttribute("id", "FILE_"+upload_number);
    file.setAttribute("size", "70");
    file.setAttribute("onchange", "addFileInput(\'"+txt+"\')");
    d.appendChild(file);
    var a = document.createElement("a");
    a.setAttribute("href", "javascript:removeFileInput(\'id_FILE_"+upload_number+"\');");
    a.appendChild(document.createTextNode(txt));
    d.appendChild(a);
    document.getElementById("id_FILE_"+(upload_number-1)).parentNode.appendChild(d);
    upload_number++;
    enableClearAll();
    checkInputs();
}

function removeFileInput(i) {
    var elm = document.getElementById(i);
    document.getElementById(i).parentNode.removeChild(elm);
    upload_number--;
}

function disableUploadSubmit(){
  document.getElementById("id_submitbutton").disabled=true;
}

function enableUploadSubmit(){
  document.getElementById("id_submitbutton").disabled=false;
}

function disableClearAll(){
  document.getElementById("clearAll").disabled=true;
}

function enableClearAll(){
  document.getElementById("clearAll").disabled=false;
}

function disableAddInput(){
  document.getElementById("addInput").disabled=true;
}

function enableAddInput(){
  document.getElementById("addInput").disabled=false;
}


/*
 * check all the input file and enable or disable the next button
 */
function checkInputs(){
  //var uploadfiles = getElementsByClassName('uploadfile');
  var uploadfiles = $("input.uploadfile");
  checkRepeatedInputs();
  for (i = 0;i < uploadfiles.length; i++) {
  	if ( uploadfiles[i].value != ''){
      //Enable id_submit cuz any input file has something
      enableClearAll();
      enableAddInput();
      enableUploadSubmit();
      return;
    }
  }
  //All input files are void -> Disable all butons
  //disableAddInput();
  disableUploadSubmit();
}

/*
 * check all the input file and enable or disable the next button
 */
function checkRepeatedInputs(){
  var uploadfiles = $("input.uploadfile");
  var uploadfiles2 = $("input.uploadfile");
  var count, count2;
  for (count = 0; count < uploadfiles.length; count++) {
    for (count2 = count + 1; count2 < uploadfiles.length; count2++) {
      if ( (uploadfiles[count].value != '') && ( uploadfiles[count].value == uploadfiles [count2].value )){
      	alert('You have already selected this file, please select a diferente one');
      	uploadfiles [count2].value = '';
      	count2++;
      	removeFileInput('id_FILE_'+count2);
      	return;
      }
    }
  }

}

/*
 * Clear all the input file and all buttons
 */
function resetInputs(){
  document.getElementById('id_FILE_0').value = '';
  var uploadfiles = $("input.uploadfile");
  for (i = 1;i < uploadfiles.length; i++) {
	//Delete others
	removeFileInput('id_FILE_'+i);
  }
  //All input files are void -> Disable all butons
  disableClearAll();
  //disableAddInput();
  disableUploadSubmit();
}












