var iframesrc = "feedbackiframe.aspx"; //this is the iframe that we are opening for feedback
var loadingimg = "images/loading.gif"; //this is the image that we use for loading in progress
var bgimg = "images/feedbackbeigegradient.png"; //this is the background image for the main div
var closeimg = "images/redclose.png"; //this is the close button img
var cornerimg = "images/corner.gif"; //this is the corner img
var iframewidth = 543; //this is in pixels
var iframeheight = 384; //this is in pixels
var adddivheight = 0; //this is in pixels
var adddivwidth = 0; //this is in pixels
var cornerimgheight = 85; //this is in pixels
var cornerimgwidth = 100; //this is in pixels

var divheight = iframeheight + adddivheight;
var divwidth = iframewidth + adddivwidth;

var closeimgposfromright = 20; //this is in pixels
var closeimgposfromtop = 20; //this is in pixels

//preloading string
var loadingstr = "<img id=\"loadingimg\" src=\"" + loadingimg + "\" style=\"display: none; width: " + iframewidth + "px; height: " + iframeheight + "px;\">";

//var closestr = "<span class=\"input1\" style=\"cursor: pointer; text-decoration: underline; color: blue;\" onclick=\"hideiframe()\">Close</span>";
var closestr = "<img id=\"closeimg\" src=\"" + closeimg + "\" style=\"display: none; cursor: pointer; position: absolute; top: " + closeimgposfromtop + "px; right: " + closeimgposfromright + "px;\" onclick=\"hideiframe()\" alt=\"Close\">";
var iframestr = "<div id=\"fixme2\" style=\"text-align: center; border: 0px; margin: 0px 0px 0px 0px; display: none; position: absolute; z-index: 1; left: 0px; top: 0px; width: " + divwidth + "px; height: " + divheight + "px;\">" + closestr + loadingstr + "<iframe id=\"fixediframe\" allowtransparency=\"true\" frameborder=\"0\" onload=\"hideLoadPic();\" scrolling=\"no\" src=\"\" style=\"display: none; width: " + iframewidth + "px; height: " + iframeheight + "px;\"></iframe></div>\n";

var fixedstr = "<div id=\"fixme\">\n";
//fixedstr += "<span style=\"cursor: pointer; text-decoration: underline; color: blue;\" onclick=\"showiframe();\">Leave Us A Message</span>";
fixedstr += "<img src=\"" + cornerimg + "\" style=\"cursor: pointer;\" border=\"0\" onclick=\"showiframe();\" width=\"" + cornerimgwidth + "\" height=\"" + cornerimgheight + "\" alt=\"Leave Us A Message\">";
fixedstr += "</div>";

function hideLoadPic() {
  if (document.getElementById("loadingimg")) {
    document.getElementById("loadingimg").style.display = "none";
  }
  if (document.getElementById("fixediframe")) {
    document.getElementById("fixediframe").style.display = "";
  }
  if (document.getElementById("closeimg")) {
    document.getElementById("closeimg").style.display = "";
  }
}

function showLoadPic() {
  if (document.getElementById("loadingimg")) {
    document.getElementById("loadingimg").style.display = "";
  }
  if (document.getElementById("fixediframe")) {
    document.getElementById("fixediframe").style.display = "none";
  }
  if (document.getElementById("closeimg")) {
    document.getElementById("closeimg").style.display = "none";
  }
}

function getViewportDimensions() {
  var intH = 0, intW = 0;
    
  if (self.innerHeight) {
    intH = window.innerHeight;
    intW = window.innerWidth;
  } 
  else {
     if (document.documentElement && document.documentElement.clientHeight) {
       intH = document.documentElement.clientHeight;
       intW = document.documentElement.clientWidth;
     }
     else {
       if (document.body) {
         intH = document.body.clientHeight;
         intW = document.body.clientWidth;
       }
     }
  }

  return {
    height: parseInt(intH, 10),
    width: parseInt(intW, 10)
  };
}

function centerElement(elem) {
  var viewport = getViewportDimensions();
  //var offsetWidth = (elem.clientWidth) ? elem.clientWidth : elem.offsetWidth;
  //var offsetHeight = (elem.clientHeight) ? elem.clientHeight : elem.offsetHeight;
  var offsetWidth = iframewidth;
  var offsetHeight = iframeheight;

  var left = (viewport.width == 0) ? 50 : parseInt((viewport.width - offsetWidth) / 2, 10);
  var top = (viewport.height == 0) ? 50 : parseInt((viewport.height - offsetHeight) / 2, 10);

  var iebody = (document.compatMode && document.compatMode != "BackCompat") ? document.documentElement : document.body

  var dsocleft = document.all ? iebody.scrollLeft : pageXOffset
  var dsoctop = document.all ? iebody.scrollTop : pageYOffset
  
  //alert(viewport.width);
  //alert(viewport.height);
  //alert(offsetWidth);
  //alert(offsetHeight);
  //alert(left);
  //alert(top);

  left += dsocleft;
  top += dsoctop;

  elem.style.left = left + 'px';
  elem.style.top = top + 'px';

  viewport = offsetWidth = offsetHeight = left = top = elem = null;    
}

function showiframe() {
  showLoadPic();

  var modalElem = document.getElementById('fixme2');

  if (modalElem != null) {
    centerElement(modalElem);
    modalElem.style.display = 'block';
    window.onresize = function() {
        centerElement(document.getElementById('fixme2'));
    }
    window.onscroll = function() {
        centerElement(document.getElementById('fixme2'));
    }
  }
  document.getElementById("fixediframe").src = iframesrc;
}

function hideiframe() {
  var modalElem = document.getElementById('fixme2');

  if (modalElem != null) {
    modalElem.style.display = 'none';
    window.onresize = null;
  }
  document.getElementById("fixediframe").src = "";
}

document.writeln(iframestr);
document.writeln(fixedstr);
