// ****** PosterProduct *******************************************************************************

var current_col = "init_current_col";
//var current_size = "init_current_size";
//var old_image = "init_old_image";
var allSizes = new Array();
var slideshow = 'false';
var slidelink = '';
var slideview = '';
var decoded_slidelink = '';
var slideshow_timer = '';
var size_millimeter = '';
var size_millimeter_a2 = '';
var size_millimeter_a3 = '';
var size_millimeter_a4 = '';
var slideURL = '';

function changeColorDisplay(col_name,col){
  document.getElementById("colour").innerHTML = col;
  document.getElementById(col_name).style.visibility = "visible";
  if(current_col != col_name)
    document.getElementById(current_col).style.visibility = "hidden";
  current_col = col_name;
}
function readChoice(id,value){
  document.getElementById(id).value = value;
}
function show(col_name){
  document.getElementById(col_name).style.visibility = "visible";
}
function hide(col_name){
  if(current_col != col_name)
    document.getElementById(col_name).style.visibility = "hidden";
}
function showSize(size_name){
  document.getElementById(size_name+"_on").style.borderColor="#808080";
  document.getElementById(size_name+"_on").style.color="#808080";
  document.getElementById(size_name+"_on_innerborder").style.borderColor="#808080";
}
function hideSize(size_name) {
  if(current_size != size_name){
    document.getElementById(size_name+"_on").style.borderColor="#b3b3b3";
    document.getElementById(size_name+"_on").style.color="#b3b3b3";
    document.getElementById(size_name+"_on_innerborder").style.borderColor="#FFFFFF";
  }
}
function showLargeImage(imageUrl){
  old_image = document.getElementById("large_image").src;
  document.getElementById("large_image").src = imageUrl;
}
function restoreLargeImage(){
  document.getElementById("large_image").src = old_image;
}

/***************/
//var testersen = "";

function closePosterAjaxLayer(){
  if(slideshow_timer != '')
    clearTimeout(slideshow_timer);
  closeAjaxLayer()
}

function div2javascript() {
  //while(document.ttt == null);
  //current_col = document.getElementById("current_col_html").innerHTML;

  // current_col aus dem jsp befüllen
  if(document.getElementById("current_col_via_div")!=null) current_col = document.getElementById("current_col_via_div").innerHTML;

  // allSizes aus dem jsp befüllen
  for (var i = 1; document.getElementById("allSizes_Size")!=null && i <= document.getElementById("allSizes_Size").innerHTML; i++){
    var tmp = 'allSizes_via_div_'+i;
    allSizes.push(document.getElementById(tmp).innerHTML);
  }
  
  if(document.getElementById("current_col_via_div")!=null)
    current_size = document.getElementById("current_col_via_div").innerHTML;

    /***************/
  //   testersen = document.getElementById("colName_via_div_1").innerHTML;


  // Arrays aus dem jsp befüllen
  // colors
  for (var i = 1; i <= document.getElementById("col_Size").innerHTML; i++){
    var tmp = 'colName_via_div_'+i;
    var value = document.getElementById(tmp).innerHTML;
    pItemId[value] = new Object();
    pListPreis[value] = new Object();
    pListPreisAmount[value] = new Object();
    pStandardPreis[value] = new Object();
    pStandardPreisAmount[value] = new Object();
    pImage[value] = new Object();
    pBestand[value] = new Object();
    pLieferbar[value] = new Object();
    pMemberPreis[value] = new Object();
    pMemberPreisAmount[value] = new Object();
    pIsMemberPreis[value] = new Object();

    
    /***************/
  
    // sizes  
    for (var j = 1; j <= document.getElementById("size_Size").innerHTML; j++){
      var tmp2 = 'sizeName_via_div_'+j;
      value2 = document.getElementById(tmp2).innerHTML;
      pItemId[value] [value2]= "0";
      pListPreis[value] [value2]= "0";
      pListPreisAmount[value] [value2]= "0";
      pStandardPreis[value] [value2]= "0";
      pStandardPreisAmount[value] [value2]= "0";
      pImage[value] [value2]= "0";
      pMemberPreis[value] [value2]= "0";
      pMemberPreisAmount[value] [value2]= "0";
      pIsMemberPreis[value] [value2]= "false";


      /***************/
    }
  } 
    /***************/

  for (var j = 1; j <= document.getElementById("item_Size").innerHTML; j++){
    var tmp = 'itemColorName_via_div_'+j;
    value = document.getElementById(tmp).innerHTML;
    var tmp2 = 'itemSizeName_via_div_'+j;
    value2 = document.getElementById(tmp2).innerHTML;
    var tmp3 = 'itemItemID_via_div_'+j;
    value3 = document.getElementById(tmp3).innerHTML;
    var tmp4 = 'itemListPrice_via_div_'+j;
    value4 = document.getElementById(tmp4).innerHTML;
    var tmp5 = 'itemCalculatedContractPrice_via_div_'+j;
    value5 = document.getElementById(tmp5).innerHTML;
    var tmp6 = 'itemDescriptionFullImage_via_div_'+j;
    value6 = document.getElementById(tmp6).innerHTML;
    var tmp7 = 'itemMemberPrice_via_div_'+j;
    value7 = document.getElementById(tmp7).innerHTML;
    var tmp8 = 'itemIsMemberPrice_via_div_'+j;
    value8 = document.getElementById(tmp8).innerHTML;
    var tmp9 = 'itemMemberPriceAmount_via_div_'+j;
    value9 = document.getElementById(tmp9).innerHTML;
    var tmp10 = 'itemListPriceAmount_via_div_'+j;
    value10 = document.getElementById(tmp10).innerHTML;
    var tmp11 = 'itemCalculatedContractPriceAmount_via_div_'+j;
    value11 = document.getElementById(tmp11).innerHTML;
    
    
    /***************/
    pItemId[value] [value2]= value3;
    pListPreis[value] [value2]= value4;
    pListPreisAmount[value] [value2]= value10;
    pStandardPreis[value] [value2]= value5;
    pStandardPreisAmount[value] [value2]= value11;
    pImage[value] [value2]= value6;
    pMemberPreis[value] [value2]= value7;
    pMemberPreisAmount[value] [value2]= value9;
    pIsMemberPreis[value] [value2]= value8;
  }

  //testausgabe, nur zu testzwecken
  // imageprefix setzen
  imagePrefix = document.getElementById("imagePrefix").innerHTML;
  
  // size in millimeter
  size_millimeter_a2 = document.getElementById("size_in_millimeter_a2").innerHTML;
  size_millimeter_a3 = document.getElementById("size_in_millimeter_a3").innerHTML;
  size_millimeter_a4 = document.getElementById("size_in_millimeter_a4").innerHTML;
  
  /* init */
  selectItembyColor(document.getElementById("init_colour").innerHTML);

  // sliden?
  slideshow = document.getElementById("slideshowStatus").innerHTML;
  if(slideshow == 'true'){
    slideURL = document.getElementById('slideURL').innerHTML;
    slideshow_timer = window.setTimeout("showPoster(slideURL,checkAjaxResponsePoster,'')",2000);
  }
  else{
    if(slideshow_timer != '')
      clearTimeout(slideshow_timer);
  }
}

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

// <script language="javascript">
  var pItemId=new Array();
  var pListPreis = new Array();
  var pListPreisAmount = new Array();
  var pStandardPreis = new Array();
  var pStandardPreisAmount = new Array();
  var pImage=new Array();
  var pBestand = new Array();
  var pLieferbar = new Array();
  var pMemberPreis = new Array();
  var pMemberPreisAmount = new Array();
  var pIsMemberPreis = new Array();

/* initialize array */

function initArrays(){
}

var imagePrefix = "";
var busy = false;
var oneSize=0;
var oneColor=0;

/*Functons for images */
function selectItembyColor(color){
  var size=getSizes(color);
  if(size[0]){
/*    updateImage(color,size[0]);
    updateListPreis(color,size[0]);
    updateStandardPreis(color,size[0]);*/
    updateCatenentry(color,size[0]);
/*    updateColorBox(color,size[0]);*/
  }
  updateSizeBox(color,size[0]);
}
function selectItembyColorSize(color,size){
  if(size){
    updateCatenentry(color,size);
    updateSizeBox(color,size);
  }else{
    alert('keine Artikel gefunden');
  }
}
function getImage(color,size) {
   return imagePrefix+pImage[color][size];
}
function updateImage(color,size) {
/*    document.getElementById("itemimage").src=getImage(color,size); */
}

/*Funct ons for listprices */
function getListPreisAmount(color,size) {
  if(pListPreisAmount[color][size]!=null && pListPreisAmount[color][size]!="undefined") {
    return pListPreisAmount[color][size];
  } else {
    return "";
  }
}
function getListPreis(color,size) {
  if(pListPreis[color][size]!=null && pListPreis[color][size]!="undefined") {
    return pListPreis[color][size];
  } else {
    return "";
  }
}
function updateListPreis(color,size) {
/*  document.getElementById("itemlistprice").innerHTML=getListPreis(color,size); */
/*  document.getElementById("itemlistprice_hidden").value=getListPreis(color,size); */
}

/*Functions for memberprices */
function getMemberPreisAmount(color,size) {
  if(pMemberPreisAmount[color][size]!=null && pMemberPreisAmount[color][size]!="undefined") {
    return pMemberPreisAmount[color][size];
  } else {
    return "";
  }
}
function getMemberPreis(color,size) {
  if(pMemberPreis[color][size]!=null && pMemberPreis[color][size]!="undefined") {
    return pMemberPreis[color][size];
  } else {
    return "";
  }
}
function isMemberPreis(color,size) {
  if(pIsMemberPreis[color][size]!=null && pIsMemberPreis[color][size]!="undefined") {
    return pMemberPreis[color][size];
  } else {
    return "";
  }
}
/*Functons for standardprices */
function getStandardPreisAmount(color,size) {
  if(pStandardPreisAmount[color][size]!=null && pStandardPreisAmount[color][size]!="undefined") {
    return pStandardPreisAmount[color][size];
  } else {
    return "";
  }
}
function getStandardPreis(color,size) {
  if(pStandardPreis[color][size]!=null && pStandardPreis[color][size]!="undefined") {
    return pStandardPreis[color][size];
  } else {
    return "";
  }
}
function updateStandardPreis(color,size) {
/*  document.getElementById("itemstandardprice").innerHTML=getStandardPreis(color,size); */
/*  document.getElementById("itemstandardprice_hidden").value=getStandardPreis(color,size); */
}
/*Functsons for itemid */
function getCatentryId(color,size) {
  return pItemId[color][size];
}
function updateCatenentry(color,size) {
/*  document.getElementById("catEntryId").value=getCatentryId(color,size); */
document.getElementById("WC_CachedProductOnlyDisplay_FormInput_catEntryId_In_OrderItemAddForm_1").value=getCatentryId(color,size);
}
/*Functons for colors */
function getColors(size) {
  var pColors=new Array();
  var i=0;
  for(var Color in pListPreis) {
    for(var Size in pListPreis[Color]) {
      if(Size==size) {
        pColors[i]=Color;
        i++;
      }
    }
  }
  return pColors;
}

function updateColorBox(color,size) {
    /*var selectedColor=color;
    var colors=getColors(size);
    var colorElement=document.getElementById("itemcolor");
    if(colorElement!=null) {
      for(var i=0;i<colorElement.length;i++) {
        colorElement.options[i]=null;
      }
    }
    if(colors!=null && colorElement!=null) {
      var selected=false;
      var idx=0;
      for(var i=0;i<colors.length;i++) {
        if(pListPreis[colors[i]][size]!=null || pListPreis[colors[i]][size]!="undefined") {
          if(selectedColor==colors[i]) { idx=i; }
        }
      }

      for(var i=0;i<colors.length;i++) {
        if(pListPreis[colors[i]][size]!=null || pListPreis[colors[i]][size]!="undefined") {
          if(i==idx) {
            selected=true;
            selectedColor=colors[i];
          } else {
            selected=false;
          }
          colorElement.options[i]=new Option(colors[i],colors[i],false,selected);
        }
      }
    }
    return selectedColor;*/
}

function updateColor(color) {
  /*
  var sizeElement=document.getElementById("itemsize");
  var size=getSizes(color);
  var selected=false;
  k = document.OrderItemAddForm.itemsize.options.length;
  for(var l=0; l < k ; l++){
     document.OrderItemAddForm.itemsize.options[0] = null
  }
  for(var i=0;i<size.length;i++) {
  sizeElement.options[i]=new Option(size[i],size[i],false,selected);
  }
  updateImage(color, document.OrderItemAddForm.itemsize.options[document.OrderItemAddForm.itemsize.selectedIndex].value);
  updateListPreis(color,document.OrderItemAddForm.itemsize.options[document.OrderItemAddForm.itemsize.selectedIndex].value);
  updateStandardPreis(color,document.OrderItemAddForm.itemsize.options[document.OrderItemAddForm.itemsize.selectedIndex].value);
  updateCatenentry(color,document.OrderItemAddForm.itemsize.options[document.OrderItemAddForm.itemsize.selectedIndex].value);
  */
}

function updateSize(color,size) {
  updateImage(color, size);
  updateListPreis(color,size);
  updateStandardPreis(color,size);
  updateCatenentry(color,size);
}
/*function for size*/
function getSizes(color) {
  var pSizes=new Array();
  var i=0;
  for(var Size in pListPreis[color]) {
    if(pListPreis[color][Size]!='0'){
      pSizes[i]=Size;
      i++;
    }
  }
  return pSizes;
}

function updateSizeBox(color,size) {
    var selectedSize=size;
    var sizes=getSizes(color);
  /*  var sizeElement=document.getElementById(size);
    if(sizeElement!=null) {
      for(var i=0;i<sizeElement.length;i++) {
        sizeElement.options[i]=null;
      }
    } */
    if(sizes!=null) {
      var selected=false;
      var idx=0;
      for(var i=0;i<sizes.length;i++) {
        if(pListPreis[color][sizes[i]]!=null || pListPreis[color][sizes[i]]!="undefined") {
          if(selectedSize==sizes[i]) {idx=i;}
        }
      }
      /* zunnchst alle sizes ausgrauen */
      for(var i=0;i<allSizes.length;i++) {
        if(document.getElementById(allSizes[i]+"_on") != null){
          document.getElementById(allSizes[i]+"_on").style.visibility="hidden";
          document.getElementById(allSizes[i]+"_on").style.display="none";
        }
        if(document.getElementById(allSizes[i]+"_off") != null){
          document.getElementById(allSizes[i]+"_off").style.visibility="visible";
          document.getElementById(allSizes[i]+"_off").style.display="block";
        }
      }
      /* jetzt diejenigen wieder zeigen, die available sind */
      for(var i=0;i<sizes.length;i++) {
        if(pListPreis[color][sizes[i]]!=null || pListPreis[color][sizes[i]]!="undefined") {
/*          if(i==idx) {
            selected=true;
            selectedSize=sizes[i];
          } else {
            selected=false;
          }
*/
          if(document.getElementById(sizes[i]+"_on") != null){
            document.getElementById(sizes[i]+"_on").style.visibility="visible";
            document.getElementById(sizes[i]+"_on").style.display="block";
            document.getElementById(sizes[i]+"_on_innerborder").style.borderColor="#FFFFFF";
            document.getElementById('size').innerHTML = "-";
          }
          if(document.getElementById(sizes[i]+"_off") != null){
            document.getElementById(sizes[i]+"_off").style.visibility="hidden";
            document.getElementById(sizes[i]+"_off").style.display="none";
          }
        }
      }
    }

    /* selected size anzeigen */
    if(selectedSize == null){
      document.getElementById("size").innerHTML = "-";
    }
    else{
      if(selectedSize == 'A2')
        size_millimeter = size_millimeter_a2;
      if(selectedSize == 'A3')
        size_millimeter = size_millimeter_a3;  
      if(selectedSize == 'A4')
        size_millimeter = size_millimeter_a4;
      var clickedSizeBoxValue = selectedSize + "_on_innerborder";
      document.getElementById("size").innerHTML = document.getElementById(clickedSizeBoxValue).innerHTML + ' ' + size_millimeter;
    }
    if(document.getElementById(selectedSize+"_on") != null){
      current_size = selectedSize;
      document.getElementById(selectedSize+"_on").style.borderColor="#808080";
      document.getElementById(selectedSize+"_on").style.color="#808080";
      document.getElementById(selectedSize+"_on").style.cursor="auto";
      document.getElementById(selectedSize+"_on_innerborder").style.borderColor="#808080";
    }
    /* fr den fall, dass size null ist, also wenn kein item available, dann sind jetzt alle sizes ausgegraut, nun messen auch die button abgeschaltet werden und fr den fall, dass sie vorher aus waren, wieder an. */
    if(size){
      document.getElementById("wishlist_button").style.visibility="visible";
      document.getElementById("basket_button").style.visibility="visible";
    }
    else{
      document.getElementById("wishlist_button").style.visibility="hidden";
      document.getElementById("basket_button").style.visibility="hidden";
    }
    if(document.getElementById('canceled_price') != null){
      document.getElementById('canceled_price').innerHTML = getListPreis(color,size);
    }
    if(document.getElementById('normal_price') != null){
      document.getElementById('normal_price').innerHTML = getStandardPreis(color,size);
    }
    if(document.getElementById('member_price') != null){
      document.getElementById('member_price').innerHTML = getMemberPreis(color,size);
    }

    tmpListPrice = getListPreisAmount(color,size);
    tmpStandardPrice = getStandardPreisAmount(color,size);
    tmpMemberPriceAmount = getMemberPreisAmount(color,size);
/*    tmpListPrice = tmpListPrice.substring(tmpListPrice.lastIndexOf(";")+1);
    tmpStandardPrice = tmpStandardPrice.substring(tmpStandardPrice.lastIndexOf(";")+1);
    tmpMemberPrice = tmpMemberPrice.substring(tmpMemberPrice.lastIndexOf(";")+1); */

    if(parseFloat(tmpMemberPriceAmount) < parseFloat(tmpStandardPrice)){
      document.getElementById("member_price_block").style.display = "block";
    }
    else{
      document.getElementById("member_price_block").style.display = "none";
    }
    if(parseFloat(tmpListPrice) > parseFloat(tmpStandardPrice)){
      document.getElementById('canceled_price').style.display = "inline";
      document.getElementById('canceled_price_now').style.display = "inline";
    }
    else{
      document.getElementById('canceled_price').style.display = "none";
      document.getElementById('canceled_price_now').style.display = "none";
    }
    return selectedSize;
}
function getItemId(color,size) {
  return pImageId[color][size];
}

// </script>

