//==== Generieke functies ===
function onCountryChange(countrySelect) {
  var country = countrySelect.options[countrySelect.selectedIndex].value;
//  alert("country = " + country);

      YAHOO.util.Connect.asyncRequest("GET", "/eventure/getPrefix.do?country=" + country, {
        failure: function(response) {
                   alert(response.responseText);
                 },

        success: function(response) {
                   var prefix = response.responseText;
                   updatePhoneFields(prefix);
                 }
      });
}

function updatePhoneFields(prefix) {
	var phoneFields = YAHOO.util.Dom.getElementsByClassName('phone-prefix', 'span');

	for (var i =0; i < phoneFields.length; i++) {
		var span = phoneFields[i];
    while (span.firstChild) {
			span.removeChild(span.firstChild);
		}
    span.innerHTML = ('' + prefix);
  }
}

function removeAdditionalFile(abstractId) {
//  alert("abstractId = " + abstractId.toString());

  YAHOO.util.Connect.asyncRequest("GET", "/eventure/removeAdditionalFile.do?abstract=" + abstractId, {

    failure: function(response) {
               alert(response.responseText);
             },

    success: function(response) {
               var prefix = response.responseText;
             }
  });
}

function removeImage(imageName, securityCode) {
//  alert("imageName = " + imageName.toString() + " securityCode:" + securityCode);

  YAHOO.util.Connect.asyncRequest("GET", "/eventure/removeImage.do?imageName=" + imageName + "&securityCode=" + securityCode, {

    failure: function(response) {
               alert(response.responseText);
             },

    success: function(response) {
               var prefix = response.responseText;
             }
  });
}

function removeParticipantImage(imageName) {
//  alert("imageName = " + imageName.toString());

  YAHOO.util.Connect.asyncRequest("GET", "/eventure/removeParticipantImage.do?imageName=" + imageName, {

    failure: function(response) {
               alert(response.responseText);
             },

    success: function(response) {
               var prefix = response.responseText;
             }
  });
}

function removeParticipantFile(fileName) {
//  alert("fileName = " + fileName.toString());

  YAHOO.util.Connect.asyncRequest("GET", "/eventure/removeParticipantFile.do?fileName=" + fileName, {

    failure: function(response) {
               alert(response.responseText);
             },

    success: function(response) {
               var prefix = response.responseText;
             }
  });
}

function removeAccompanyingPersonFile(fileName) {
//  alert("fileName = " + fileName.toString());

  YAHOO.util.Connect.asyncRequest("GET", "/eventure/removeAccompanyingPersonFile.do?fileName=" + fileName, {

    failure: function(response) {
               alert(response.responseText);
             },

    success: function(response) {
               var prefix = response.responseText;
             }
  });
}

function ajaxSubmitParticipantEvents(eventArr, personId) {
  var postData = "personId=" + personId;
  for (var i = 0; i < eventArr.length; i++) {
    if (eventArr[i].checked) {
      postData += "&" + eventArr[i].value + "=on";
    } else if (eventArr[i].selectedIndex > 0) {
      postData += "&" + eventArr[i].value + "=" + eventArr[i].selectedIndex;
    }
  }

  YAHOO.util.Connect.asyncRequest('POST', "/eventure/submitParticipantEvents.do", {

      failure: function(response) {
                 alert(response.responseText);
               },

      success: function(response) {
                 var prefix = response.responseText;
               }

    }, postData);
}

//function iframePagePreferences(congressId, moduleId, formId) {
//  if (isIE() == -1) {
//    return "<iframe name='content' width='1200px' height='226px' scrolling='no' src='pagePrefForm.do?action=iframeEdit&congressId=" + congressId + "&moduleId=" + moduleId + "&formId=" + formId + "'>Your browser doesn't support iframes</iframe>";
//  } else {
//    return "<iframe name='content' width='100%' height='100%' scrolling='no' src='pagePrefForm.do?action=iframeEdit&congressId=" + congressId + "&moduleId=" + moduleId + "&formId=" + formId + "'>Your browser doesn't support iframes</iframe>";
//  }
//}

function ajaxPagePreferences(congressId, moduleId, formId) {
  var d = new Date();
  var url = "pagePrefForm.do?action=ajaxEdit&congressId=" + congressId + "&formId=" + formId + "&moduleId=" + moduleId + "&" + d.getTime();
//  var url = "formForm.do?action=iframeContentList&ffaId=" + formfieldAppId + "&language=" + language + "&congressId=" + congressId + "&pcoId=" + pcoId + "&formId=" + formId + "&" + d.getTime();
  var ajaxReq = getAjaxRequest();
  if (ajaxReq) {
    var procesAjaxRequest2 = procesAjaxRequest(ajaxReq, url);
//    alert("HIER req:" + procesAjaxRequest2);
    return procesAjaxRequest2;
  } else {
    return false;
  }
}


function iframeListContent(congressId, ffaId) {
  var d = new Date();
  var url = "formForm.do?action=iframeContentList&congressId=" + congressId + "&ffaId=" + ffaId + "&" + d.getTime();
//  var url = "formForm.do?action=iframeContentList&ffaId=" + formfieldAppId + "&language=" + language + "&congressId=" + congressId + "&pcoId=" + pcoId + "&formId=" + formId + "&" + d.getTime();
  var ajaxReq = getAjaxRequest();
  if (ajaxReq) {
    return procesAjaxRequest(ajaxReq, url);
  } else {
    return false;
  }
}

function ajaxListContent() {
  var formfieldAppId = activeItem[currentBox].getAttribute("id");
  var congressId = document.forms[0].congressId.value;
  var pcoId = document.forms[0].pcoId.value;
  var formId = document.forms[0].formId.value;
  var language = document.forms[0].language.value;

  var d = new Date();
  var url = "formForm.do?action=iframeContentList&ffaId=" + formfieldAppId + "&language=" + language + "&congressId=" + congressId + "&pcoId=" + pcoId + "&formId=" + formId + "&" + d.getTime();
  var ajaxReq = getAjaxRequest();
  if (ajaxReq) {
    return procesAjaxRequest(ajaxReq, url);
  } else {
    return false;
  }
}

function ajaxEditText(theItem) {
  currentItem = theItem;
  var congressId = document.forms[0].congressId.value;
  var pcoId = document.forms[0].pcoId.value;
  var formId = document.forms[0].formId.value;
  var language = document.forms[0].language.value;
  var content = '';
  var formfieldAppId = activeItem[currentBox].getAttribute("id");
  var inputType = '';
  inputType = document.getElementById('ipt' + formfieldAppId).innerHTML;

  if (theItem == 'title') {
    content = document.getElementById('tit' + formfieldAppId).innerHTML;
  } else if (theItem == 'upper') {
    content = document.getElementById('upp' + formfieldAppId).innerHTML;
  } else if (theItem == 'lower') {
    content = document.getElementById('lwr' + formfieldAppId).innerHTML;
  } else if (theItem == 'button') {
    content = document.getElementById('but' + formfieldAppId).innerHTML;
  }
  var d = new Date();
  // Bij mailforms het email adres en de subject line als lijn behandelen
  if (activeItem[currentBox].getAttribute('inputType') == 'textOnly') theItem = 'lineOnly';
  var url = "editContentForm.do?action=ajaxEditContent&contentType=" + theItem + "&inputType=" + inputType + "&congressId=" + congressId + "&pcoId=" + pcoId + "&formId=" + formId + "&language=" + language + "&fieldId=" + formfieldAppId + "&" + d.getTime();
  var ajaxReq = getAjaxRequest();
  if (ajaxReq) {
    return procesAjaxRequest(ajaxReq, url);
  } else {
    return false;
  }
}

function ajaxCongressSettings(congressId, pcoId, language, formId) {
  var d = new Date();
  var url = "congressForm.do?action=create&subAction=slideIn&id=" + congressId + "&pco=" + pcoId + "&form=" + formId + "&language=" + language + "&" + d.getTime();
  var ajaxReq = getAjaxRequest();
  if (ajaxReq) {
    return procesAjaxRequest(ajaxReq, url);
  } else {
    return false;
  }
}

function ajaxEditText2(theItem, congressId, pcoId, language, formId, formfieldAppId) {
  var inputType = '';
  inputType='title'; //todo
  var d = new Date();
  // Bij mailforms het email adres en de subject line als lijn behandelen
//  if (activeItem[currentBox].getAttribute('inputType') == 'textOnly') theItem = 'lineOnly';  //todo alternatief hiervoor zoeken
  var url = "editContentForm.do?action=ajaxEditContent&contentType=" + theItem + "&inputType=" + inputType + "&congressId=" + congressId + "&pcoId=" + pcoId + "&formId=" + formId + "&language=" + language + "&fieldId=" + formfieldAppId + "&" + d.getTime();
  var ajaxReq = getAjaxRequest();
  if (ajaxReq) {
    return procesAjaxRequest(ajaxReq, url);
  } else {
    return false;
  }
}

function ajaxEditTextarea() {
  var id = activeItem[currentBox].getAttribute("id");
  var congressId = document.forms[0].congressId.value;
  var formId = document.forms[0].formId.value;
  var pcoId = document.forms[0].pcoId.value;
  var language = document.forms[0].language.value;
  var d = new Date();
  var url;
  var inputType = activeItem[currentBox].getAttribute("inputTypeLayout");
  var inputTypeGroup = activeItem[currentBox].getAttribute("inputType");

  var height = 260;
  var width = 310;
//    alert("!!inputType:" + inputType);
  if (inputType == "category" | inputType == "category_or_code") {
    url = "categoryExtras.do?action=editExtras&congressId=" + congressId + "&pcoId=" + pcoId + "&formId=" + formId + "&id=" + id + "&language=" + language + "&" + d.getTime();
  } else if (inputType.indexOf("textOrPulldown") != -1) {
    url = "selectKeywordType.do?action=editExtras&congressId=" + congressId + "&pcoId=" + pcoId + "&formId=" + formId + "&id=" + id + "&language=" + language + "&" + d.getTime();
  } else if (inputType == "searchItems") {
    url = "searchItemsExtras.do?action=editExtras&congressId=" + congressId + "&pcoId=" + pcoId + "&formId=" + formId + "&id=" + id + "&language=" + language + "&" + d.getTime();
  } else if (inputType == "text" || inputType == "pulldown") {
    height = 350;
    width = 780;
    url = "textExtras.do?action=ajaxEdit&congressId=" + congressId + "&pcoId=" + pcoId + "&formId=" + formId + "&id=" + id + "&language=" + language + "&" + d.getTime();
  } else if (inputTypeGroup == "selection-price-table") {
    height = 412;
    width = 502;
    url = "filledRegistrationPriceTable.do?action=edit&congressId=" + congressId + "&pcoId=" + pcoId + "&formId=" + formId + "&id=" + id + "&language=" + language + "&" + d.getTime();
  } else if (inputType == "checkbox-payment-index") {
    height = 412;
    width = 502;
    url = "wayOfPaymentCheckbox.do?action=edit&congressId=" + congressId + "&pcoId=" + pcoId + "&formId=" + formId + "&id=" + id + "&language=" + language + "&" + d.getTime();
  } else if (inputType == "link-category-conditionally" || inputType == 'registration-link-conditionally-plus-category') {
    height = 412;
    width = 502;
    url = "linkCategorieConditionally.do?action=editExtras&congressId=" + congressId + "&formId=" + formId + "&id=" + id + "&" + d.getTime();
  } else {
    url = "textareaExtras.do?action=editExtras&congressId=" + congressId + "&pcoId=" + pcoId + "&formId=" + formId + "&id=" + id + "&language=" + language + "&" + d.getTime();
  }
  var ajaxReq = getAjaxRequest();
  if (ajaxReq) {
    return procesAjaxRequest(ajaxReq, url);
  } else {
    return false;
  }
}

function ajaxEditTextareaNewEdit(theItem, formfieldAppId, showHidden, inputType, inputTypeGroup) {
  var congressId = parent.BOselectframe.document.forms[0].congressId.value;
  var pcoId = parent.BOselectframe.document.forms[0].pcoId.value;
  var language = parent.BOselectframe.document.forms[0].language.value;
  var formId = parent.BOselectframe.document.forms[0].formId.value;

  var d = new Date();
  var url;
//  var inputType = activeItem[currentBox].getAttribute("inputTypeLayout");
//  var inputType = theItem;
//  var inputTypeGroup = activeItem[currentBox].getAttribute("inputType");
  var height = 260;
  var width = 310;
//    alert("!!inputType:" + inputType);
  if (inputType == "category" | inputType == "category_or_code") {
    url = "categoryExtras.do?action=editExtras&congressId=" + congressId + "&pcoId=" + pcoId + "&formId=" + formId + "&id=" + formfieldAppId + "&language=" + language + "&" + d.getTime();
  } else if (inputType.indexOf("textOrPulldown") != -1) {
    url = "selectKeywordType.do?action=editExtras&congressId=" + congressId + "&pcoId=" + pcoId + "&formId=" + formId + "&id=" + formfieldAppId + "&language=" + language + "&" + d.getTime();
  } else if (inputType == "searchItems") {
    url = "searchItemsExtras.do?action=editExtras&congressId=" + congressId + "&pcoId=" + pcoId + "&formId=" + formId + "&id=" + formfieldAppId + "&language=" + language + "&" + d.getTime();
  } else if (inputType == "text" || inputType == "pulldown") {
    height = 350;
    width = 780;
    url = "textExtras.do?action=ajaxEdit&congressId=" + congressId + "&pcoId=" + pcoId + "&formId=" + formId + "&id=" + formfieldAppId + "&language=" + language + "&" + d.getTime();
  } else if (inputTypeGroup == "selection-price-table") {
    height = 412;
    width = 502;
    url = "filledRegistrationPriceTable.do?action=edit&congressId=" + congressId + "&pcoId=" + pcoId + "&formId=" + formId + "&id=" + formfieldAppId + "&language=" + language + "&" + d.getTime();
  } else if (inputType == "checkbox-payment-index") {
    height = 412;
    width = 502;
    url = "wayOfPaymentCheckbox.do?action=edit&congressId=" + congressId + "&pcoId=" + pcoId + "&formId=" + formId + "&id=" + formfieldAppId + "&language=" + language + "&" + d.getTime();
  } else if (inputType == "link-category-conditionally" || inputType == 'registration-link-conditionally-plus-category') {
    height = 412;
    width = 502;
    url = "linkCategorieConditionally.do?action=editExtras&congressId=" + congressId + "&formId=" + formId + "&id=" + formfieldAppId + "&" + d.getTime();
  } else {
    url = "textareaExtras.do?action=editExtras&congressId=" + congressId + "&pcoId=" + pcoId + "&formId=" + formId + "&id=" + formfieldAppId + "&language=" + language + "&" + d.getTime();
  }

  if (showHidden == 'true') {
    url += '&showHidden=true';
  }

  var ajaxReq = getAjaxRequest();
  if (ajaxReq) {
    return procesAjaxRequest(ajaxReq, url);
  } else {
    return false;
  }
}

function ajaxEditEventText(theItem) {
    currentItem = theItem;
    var formfieldAppId = activeItem[currentBox].getAttribute("id");

    var d = new Date();
    var url = "formForm.do?action=ajaxEditEventText&contentItem=" + formfieldAppId + "&layoutValue=" + theItem + "&" + d.getTime();

    var ajaxReq = getAjaxRequest();
    if (ajaxReq) {
      return procesAjaxRequest(ajaxReq, url);
    } else {
      return false;
    }
}

function ajaxEditEventTextNewEdit(theItem, formfieldAppId, showHidden) {
//  currentItem = theItem;
  var congressId = parent.BOselectframe.document.forms[0].congressId.value;
  var pcoId = parent.BOselectframe.document.forms[0].pcoId.value;
  var language = parent.BOselectframe.document.forms[0].language.value;
  var formId = parent.BOselectframe.document.forms[0].formId.value;

  var d = new Date();
  var url = "editContentForm.do?action=ajaxEditContent&contentType=" + theItem +  "&congressId=" + congressId + "&pcoId=" + pcoId + "&formId=" + formId + "&language=" + language + "&fieldId=" + formfieldAppId + "&newEdit=true" + "&" + d.getTime();
  if (showHidden == 'true') {
    url += '&showHidden=true';
  }

  var ajaxReq = getAjaxRequest();
  if (ajaxReq) {
    return procesAjaxRequest(ajaxReq, url);
  } else {
    return false;
  }
}

function ajaxHideFormfield(id, value) {
//  alert("HIER hide field:" + id);
  var congressId = parent.BOselectframe.document.forms[0].congressId.value;
  var pcoId = parent.BOselectframe.document.forms[0].pcoId.value;
  var language = parent.BOselectframe.document.forms[0].language.value;

//AjaxServlet
  url = "/eventure/ajaxServlet?action=hideFFA&id=" + id + "&congressId=" + congressId + "&pcoId=" + pcoId + "&language=" + language + "&value=" + value;
  var ajaxReq = getAjaxRequest();
  if (ajaxReq) {
    return procesAjaxRequest(ajaxReq, url);
  } else {
    return false;
  }
}

function ajaxToggleFormfield(id) {
//  alert("HIER toggle field:" + id);
  var congressId = parent.BOselectframe.document.forms[0].congressId.value;
  var pcoId = parent.BOselectframe.document.forms[0].pcoId.value;
  var formId = parent.BOselectframe.document.forms[0].formId.value;
  var language = parent.BOselectframe.document.forms[0].language.value;

  url = "formForm.do?action=toggleVisibility&lffaId=" + id + "&congressId=" + congressId + "&pcoId=" + pcoId + "&lang=" + language + "&formId=" + formId;
  var ajaxReq = getAjaxRequest();
  if (ajaxReq) {
    return procesAjaxRequest(ajaxReq, url);
  } else {
    return false;
  }
}

function ajaxFFOrderChange(result) {
  var congressId = parent.BOselectframe.document.forms[0].congressId.value;
  var pcoId = parent.BOselectframe.document.forms[0].pcoId.value;
  var formId = parent.BOselectframe.document.forms[0].formId.value;
  var language = parent.BOselectframe.document.forms[0].language.value;

  url = "formForm.do?action=ajaxFFChangeOrder&congressId=" + congressId + "&pcoId=" + pcoId + "&formId=" + formId + "&language=" + language + "&content=" + result;
  var ajaxReq = getAjaxRequest();
  if (ajaxReq) {
    return procesAjaxPOSTRequest(ajaxReq, url);
  } else {
    return false;
  }

}



/*
function ajaxOrderChanged() {
  var oTable = document.getElementById('formTable');
  var trs = oTable.tBodies[0].getElementsByTagName("tr");
  var ids ='';
  var first = true;
  for (i=0; i < trs.length; i++) {
    var tr = trs[i];
    var id = tr.id;
    var type = id.substring(2,3);
    if (type != 'l' && type != 'u' && type != '' && type != 'p') {
      if (first) {
        first = false;
        ids+=id.substring(2);
      } else {
        ids+=',';
        ids+=id.substring(2);
      }
    }
  }
  var congressId = parent.BOselectframe.document.forms[0].congressId.value;
  var pcoId = parent.BOselectframe.document.forms[0].pcoId.value;
  var formId = parent.BOselectframe.document.forms[0].formId.value;
  var language = parent.BOselectframe.document.forms[0].language.value;

  url = "formForm.do?action=changeOrder&congressId=" + congressId + "&pcoId=" + pcoId + "&formId=" + formId + "&language=" + language + "&content=" + ids;
  console.log("url:" + url);
  var ajaxReq = getAjaxRequest();
  document.getElementById("orderChanged").style.display="none";
  if (ajaxReq) {
    return procesAjaxRequest(ajaxReq, url);
  } else {
    return false;
  }
}
*/

//local methods

function getAjaxRequest() {
    if (window.XMLHttpRequest) {
        return ajaxReq = new XMLHttpRequest();
    } else {
        return ajaxReq = new ActiveXObject("Microsoft.XMLHTTP");
    }
}

function procesAjaxRequest(ajaxReq, url) {
    ajaxReq.open("GET", url, false);
    ajaxReq.send(null);
//     alert("ajax req:" + ajaxReq.responseText);
    return ajaxReq.responseText;
}

function procesAjaxPOSTRequest(ajaxReq, url) {
    ajaxReq.open("POST", url, false);
    ajaxReq.send(null);
//     alert("ajax req:" + ajaxReq.responseText);
    return ajaxReq.responseText;
}

function isIE()
// Returns the version of Windows Internet Explorer or a -1
// (indicating the use of another browser).
{
   var rv = -1; // Return value assumes failure.
   if (navigator.appName == 'Microsoft Internet Explorer')
   {
      var ua = navigator.userAgent;
      var re  = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
      if (re.exec(ua) != null)
         rv = parseFloat( RegExp.$1 );
   }
   return rv;
}

  function give_alert() {
    go = confirm('Use default CSS?');
    if (go) {
      useDefault();
    }
  }

