/**
* @author ehandelsbureauet
* this script is copyrighted and is not allowed to be used in any way without permission.
*
**/
image_url = new Array();
preLoadImgPrMenu();


function init() {
  fixPrMenuSpanTagMenu();
  performImgScript();
  categoryPictureList();
  systemCategories();
  insertPrMenuHead();
}



function systemCategories() {
  if (window.location.pathname.match(new RegExp('^/shop/news'))) {
    document.getElementById('prListHeader').innerHTML = "<h1>Nyheder</h1>";
  }
  if (window.location.pathname.match(new RegExp('^/shop/specialoffer'))) {
    document.getElementById('prListHeader').innerHTML = "<h1>Tilbud</h1>";
  }
  if (window.location.pathname.match(new RegExp('^/shop/search'))) {
    document.getElementById('prListHeader').innerHTML = "<h1>Søgeresultat</h1>";
  }
}

function insertPrMenuHead() {
  if (document.getElementById('ProductMenu_Table')) {
    var findDivs = document.getElementById('ProductMenu_Table').getElementsByTagName('DIV');
    var findDivslength = findDivs.length;
    for (var i = 0; i < findDivslength; i++) {
      if (findDivs[i].className == "prHead") {
        findDivs[i].className = "blank"
        findDivs[i].parentNode.parentNode.innerHTML = findDivs[i].parentNode.innerHTML

      }
    }

  }
}


function preLoadImgPrMenu() { //PRELOAD MENU
  if (document.images) {
    preload_image_object = new Image();
    // set image url        
    image_url.push = "/images/design/construction/prmenu_niv1.gif";
    image_url.push = "/images/design/construction/prmenu_niv1_h.gif";
    var i = 0;
    for (i = 0; i <= image_url.length; i++)
      preload_image_object.src = image_url[i];
  }
}





function performImgScript() {
  eventImgArray = document.getElementsByTagName('A');
  for (var i = 0; i < eventImgArray.length; i++) {
    if (eventImgArray[i].className == 'eventClass') {
      addEvent(eventImgArray[i], "mouseover", processOver, false);
      addEvent(eventImgArray[i], "mouseout", processOut, false);
    }
  }

  //CLEANMEM
  eventImgArray = "";
}


function fixPrMenuSpanTagMenu() {
  var tempSpan = document.getElementsByTagName('SPAN');
  var tempSpanlength = tempSpan.length;
  for (var i = 0; i < tempSpanlength; i++) {
    if (tempSpan[i].className == "ProductMenu_MenuItemBold") {
      tempSpan[i].parentNode.innerHTML += tempSpan[i].innerHTML;
      tempSpan[i].style.display = "none";
      tempSpan[i].innerHTML = "";
    }
  };
}

function addEvent(elem, evtType, func, capture) {
  capture = (capture) ? capture : false;
  if (elem.addEventListener) {
    elem.addEventListener(evtType, func, capture);
  }
  else
    if (elem.attachEvent) {
      elem.attachEvent("on" + evtType, func);
    }
    else {
      elem["on" + evtType] = func;
    }
}

function processOver(evt) {
  evt = (evt) ? evt : window.event;
  var elem = (evt.target) ? evt.target : evt.srcElement;
  elem.src = elem.src.replace(/.gif/, "_h.gif")
}

function processOut(evt) {
  evt = (evt) ? evt : window.event;
  var elem = (evt.target) ? evt.target : evt.srcElement;
  elem.src = elem.src.replace(/_h.gif/, ".gif")
}



function categoryPictureList() {

  var imgs = {}; // Map img tag from url to img object
  // Find all images in menu, swap their a hrefs title into the place of the image
  var productMenu = document.getElementById("ProductMenu_Table");

  var img = productMenu.getElementsByTagName("IMG");

  for (var i = 0; i < img.length; i++) {
    var parent = img[i].parentNode; // The a tag
    var title = (parent.tagName == "B" ? parent.parentNode.title : parent.title); // title of a tag, which becomes link text
    var href = (parent.tagName == "B" ? parent.parentNode.href : parent.href)

    if (title) {
      imgs[href] = img[i];
      parent.innerHTML += title;
    }

  }

  // Find product list and move the image into that position
  var a = document.getElementsByTagName("A");

  for (var i = 0; i < a.length; i++) {

    if ((a[i].className == "SubCats_Prodlink")) {

      var a = document.getElementsByTagName("A");
      for (var i = 0; i < a.length; i++) {
        if ((a[i].className == "SubCats_Prodlink")) {

          var img = imgs[a[i].href];
          if (img) {
            var innerHTML = a[i].innerHTML;
            a[i].appendChild(img);
          }
        }
      }
    }
  }

  a = "";
  imgs = "";

  //REDESIGN

  if (document.getElementById("category-picture-list")) {
    var findTags = document.getElementById("category-picture-list").getElementsByTagName("A");

    var findLink = [];
    var findImg = [];
    var findTxt = [];

    docCat = document.getElementById("category-picture-list")
    for (var i = 0; i < findTags.length; i++) {

      findImg.push(findTags[i].lastChild.src);
      findLink.push(findTags[i].href);
      findTxt.push(findTags[i].firstChild.nodeValue);
    }
    docCat.innerHTML = "";
    for (var i = 0; i < findImg.length; i++) {

      docCat.innerHTML += "<div class='catListBox'>" + "<h2>" +
		"<a href='" +
		findLink[i] +
		"'>" +
		findTxt[i] +
		"<img src='/images/design/source/seinfo.gif'></a></h2>" +
		"<div class='catListImgBox'>" +
		"<a href='" +
		findLink[i] +
		"'>" +
		"<img src='" +
		findImg[i] +
		"'>" +
		"</a></div>" +
		"<div class='catPageImg'><img src='/images/design/construction/catpagesdiv.gif'></div>";

      "</div>";
    }
  }




}



// ORDER VALIDATION FORMULAR
function validateOrderForm(source) {
  
  // PRINT WINDOW CHECK
  var printWindow = false; 
  if (source == "printWin") {
    printWindow = true;    
  }

  //var sourceRef = source.getAttribute("id");

  var formFields = ["fieldName", "fieldAddress", "fieldZipCity", "fieldPhone", "fieldEmail", "fieldSystemNo"];
  var errorFields = ["errorName", "errorAddress", "errorZipCity", "errorPhone", "errorEmail", "errorSystemNo"];
  var errorTxt = ["Navn ser ikke ud til at være udfyldt", "Adressen ser ikke ud til at være udfyldt", "Postnummer og By skal være udfyldt", "Telefon skal være minimum 8 cifre", "E-mail ser ikke ud til at være korrekt", "Systemnummer skal være udfyldt"];

  var errorFieldDelivery = "errorDelivery";
  var errorTxtDelivery = "Leveringsform skal vælges";

  document.getElementById(errorFieldDelivery).className = "popupErrorField";
  document.getElementById(errorFieldDelivery).style.display = "none";
  document.getElementById(errorFieldDelivery).innerHTML = errorTxtDelivery;


  var sendForm = true;

  for (var i = 0; i < errorFields.length; i++) {
    document.getElementById(errorFields[i]).className = "popupErrorField";
    document.getElementById(errorFields[i]).style.display = "none";
    document.getElementById(errorFields[i]).innerHTML = errorTxt[i];
  }

  for (var ii = 0; ii < formFields.length; ii++) {
    //RESET FORM FOR ERRORMSG
    document.getElementById(formFields[ii]).className = "textField1";

    if (document.getElementById(formFields[ii]).value == "") {
      document.getElementById(formFields[ii]).className = "formFieldError";
      document.getElementById(errorFields[ii]).style.display = "block";

      //EXCEPTION MOVE FIELD
      if (errorFields[ii] == "errorFieldBeskrivelse") {
        document.getElementById(errorFields[ii]).style.right = "20px";

      }
      sendForm = false;
    }
  }


  var radioChecked = false;
  var radioButtons = ["rb1", "rb2"];

  for (var i3 = radioButtons.length - 1; i3 > -1; i3--) {
    if (document.getElementById(radioButtons[i3]).checked) {
      radioChecked = true;
    }
  }

  if (!radioChecked) {
    document.getElementById(errorFieldDelivery).style.display = "block";
  }

  // IF NO PRINT SEND FORM IF VALID ELSE CONTINUE
  if (!printWindow) {
    return sendForm && radioChecked;
  }

  //IF PRINT THE PRINT FORM IF VALID AND RETURN FALSE
  if (printWindow && sendForm && radioChecked) {
    alert("Indholdet sendes nu til printeren");
    window.print();
    return false;
  }
}


    
