
// Functions to popup go big
var slideDist = 450;

var slideDebug;

//======================================
function pdfSizeChart(dept) {
//======================================

    var xMax;
    var yMax;

    if (document.all) {
        xMax=screen.width;
        yMax=screen.height;
        }
    else {
        if (document.layers) {
            xMax=window.outerWidth;
            yMax=window.outerHeight;
            }
        else {
            xMax=640;
            yMax=480;
            }
        }

    var xOffset=(xMax-200)/2;
    var yOffset = (yMax-200)/2;


    var url="/kswiss/pdf/KSwiss_ShoeFitGuide_Men.pdf";
    if (dept.indexOf('wom')!=-1) {
        url="/kswiss/pdf/KSwiss_ShoeFitGuide_Women.pdf";
        }
    else if (dept.indexOf('kids')!=-1) {
        url="/kswiss/pdf/KSwiss_ShoeFitGuide_Kids.pdf";
        }

    var childWindow=open(url,"popUpWindow","toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=0,width=600,height=800");
    childWindow.focus();
    if (childWindow.opener==null) {
        childWindow.opener=self;
        }
}


//======================================
function goSizeChart() {
//======================================

  var xy = getPosXY('positioner_gobig');
  var chartdiv = document.getElementById('size_chart');
  chartdiv._initial_y = xy.y - slideDist;
  chartdiv._final_y = xy.y;

  if (chartdiv._animState != "sliding") {
    chartdiv.style.left = xy.x-1;
    chartdiv.style.top = chartdiv._initial_y;
    chartdiv.style.clip = 'rect('+slideDist+'px auto auto auto)';
    chartdiv.style.visibility = 'visible';
    chartdiv._animState = 'sliding';
    chartdiv._slideStarted = new Date().getTime();

    msie6formfix('hidden');
    if (typeof hideVideo != 'undefined') { hideVideo(); }

    animPP('size_chart');
  }
}

function goBigWindow(imgurl) {

  // load the image if necessary
  var bigimg = document.images['go_big_stub'];
  if (bigimg.src != imgurl) {
    bigimg.src = imgurl;
  }

  var xy = getPosXY('positioner_gobig'); // getPosXY is defined in navbar.js
  var bigdiv = document.getElementById('go_big');
  // params for animation
  bigdiv._initial_y = xy.y - slideDist;
  bigdiv._final_y = xy.y;

  if (bigdiv._animState != "sliding") {
    bigdiv.style.left = xy.x - 1;
    bigdiv.style.top = bigdiv._initial_y;
    bigdiv.style.clip = 'rect('+slideDist+'px auto auto auto)';
    bigdiv.style.visibility = 'visible';
    bigdiv._animState = "sliding";
    bigdiv._slideStarted = new Date().getTime();

    msie6formfix("hidden");

    animPP('go_big');
  }


}

// Function to show 360 inside the page
function load360(url,width,height){
  var rotatediv = document.getElementById('rotater');
  var rotatediv2 = document.getElementById('rotater_buttons');
  var staticdiv = document.getElementById('static_pic');
  var staticdiv2 = document.getElementById('static_pic_buttons');
  staticdiv.style.display = 'none';
  staticdiv2.style.display = 'none';
  rotatediv.style.display = 'block';
  rotatediv2.style.display = 'block';

  // load the iframe if necessary
  if (rotatediv.innerHTML.indexOf('<iframe') < 0) {
    rotatediv.innerHTML = '<iframe src="'+url+'" width="'+width+'" height="'+height+'" frameborder="0" scrolling="no"></iframe>';
  }
}

function hide360() {
  var rotatediv = document.getElementById('rotater');
  var rotatediv2 = document.getElementById('rotater_buttons');
  var staticdiv = document.getElementById('static_pic');
  var staticdiv2 = document.getElementById('static_pic_buttons');
  staticdiv.style.display = 'block';
  staticdiv2.style.display = 'block';
  rotatediv.style.display = 'none';
  rotatediv2.style.display = 'none';
}

function zoom360(url) {
  hide360();
  var width = 793;
  var height = 459;
  var rotatebigdiv = document.getElementById('rotate_zoom');
  var xy = getPosXY('positioner_gobig'); // getPosXY is defined in navbar.js

  rotatebigdiv.style.left = xy.x;
  rotatebigdiv.style.top = xy.y;
  rotatebigdiv.style.display = 'block';

  var primary_div = document.getElementById('product_details');
  primary_div.style.display = 'none';

  if (rotatebigdiv.innerHTML.indexOf('<iframe') < 0) {
    rotatebigdiv.innerHTML = '<iframe src="'+url+'" width="'+width+'" height="'+height+'" frameborder="0" scrolling="no"></iframe>';
  }
}

// temporary for old holdover 360s
function popZoom360(url) {
  hide360();
  var w = 600;
  var h = 485
  var myWin; if(!myWin || myWin.closed){myWin = window.open(url,'popzoom','width='+w+',height='+h+',toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=0,top='+((screen.height/2)-(h/2))+',left='+((screen.width/2)-(w/2))+'')}else{myWin.focus();};void(0);
}

function hideBig360() {
  var rotatebigdiv = document.getElementById('rotate_zoom');
  var primary_div = document.getElementById('product_details');
  primary_div.style.display = 'block';
  rotatebigdiv.style.display = 'none';
}

function sendToFriend(url) {

  // load the iframe if necessary
  // (how to check?)
  var sharediv = document.getElementById('send_to_friend');
  sharediv.innerHTML = '<iframe src="'+url+'" width="793" height="510" frameborder="0" scrolling="no"></iframe>';

  var xy = getPosXY('positioner_gobig'); // getPosXY is defined in navbar.js

  if (sharediv._animState != "sliding") {
    sharediv.style.left = xy.x;
    sharediv.style.top = xy.y;
    sharediv.style.display = 'block';

    var primary_div = document.getElementById('product_details');
    primary_div.style.display = 'none';

    msie6formfix("hidden");
    if (typeof hideVideo != 'undefined') { hideVideo(); }
  }


}


function msie6formfix(hideOrShow) {
  if (document.all) {
    // on IE6, hide the form inputs
    var verString = navigator.appVersion;
    var MSIEpos = verString.indexOf("MSIE ");
    var majorV = verString.charAt(MSIEpos+5);
    if (majorV < '7') {
      qtydiv = document.getElementById("input_qty");
      qtydiv.style.visibility = hideOrShow;
      sizediv = document.getElementById("input_size");
      sizediv.style.visibility = hideOrShow;
    }
  }
}

function animPP(animWhat) {
  var timeNow = new Date().getTime();
  var loadTimeout = 1000; // wait at most 1000ms for pic to load
  var bigdiv = document.getElementById(animWhat);
  var elapsed = timeNow - bigdiv._slideStarted;

  if (animWhat == 'go_big' && elapsed < loadTimeout) {
    // check if image has loaded...
    var bigimg = document.images['go_big_stub'];
    if (typeof bigimg.naturalWidth != "undefined" && bigimg.naturalWidth < 10) {
      // image not loaded, try again later
      setTimeout("animPP('"+animWhat+"')",50);
      return;
    }
  }
  // got here? image is loaded (or timed out waiting)
  if (parseInt(bigdiv.style.top) == bigdiv._initial_y) {
    // first time here -- start the animation clock at zero (well, almost zero - 50ms)
    bigdiv._slideStarted = timeNow - 50;
    elapsed = 50;
  }

  var pct = elapsed / 400.0; // take 400ms to reach destination
  if (pct > 1.0) {
    // jump to final pos
    bigdiv.style.top = bigdiv._final_y;
    bigdiv._animState = "target_acquired";
    bigdiv.style.clip = "rect(auto auto auto auto)";
  } else {
    var totalDist = bigdiv._final_y - bigdiv._initial_y;
    var movedBy = parseInt(pct * totalDist);
    var whereNow = bigdiv._initial_y + movedBy;
    bigdiv.style.top = whereNow;
    bigdiv.style.clip = "rect(" + (slideDist - movedBy) + "px auto auto auto)";
    // update again in 50 ms
    setTimeout("animPP('"+animWhat+"')",50);
  }
}

function restoreVideo() {
  if (typeof permitVideo != 'undefined') { permitVideo(); }
}

function hideSizeChart() {
  var chartdiv = document.getElementById('size_chart');
  chartdiv.style.visibility = 'hidden';
  msie6formfix("visible");
  // also to fix msie...
  restoreVideo();
}

function hideGiantImage() {
  var bigdiv = document.getElementById('go_big');
  bigdiv.style.visibility = 'hidden';
  msie6formfix("visible");
  // also to fix msie...
  restoreVideo();
}

function hideFriend() {
  var sharediv = document.getElementById('send_to_friend');
  var primary_div = document.getElementById('product_details');
  primary_div.style.display = 'block';
  sharediv.style.display = 'none';
  msie6formfix("visible");
  // also to fix msie...
  restoreVideo();
}

