/*
Dit script is geschreven door Wouter Apers (TME) en ingezet voor de Toyotaoccasionzoeker
en de finance calculator. Dit script zorgt er voor dat het iFrame waar de occasonzoeker 
in geladen wordt, dynamisch met zijn content kan mee groeien.
  
Hiervoor dient men bij Toyota in het CMS wel het vinkje "resize" aan te zetten.
*/

chRef = chRef.replace("http://", "");
chRef = chRef.replace("https://", "");
chRef = chRef.substring(0, chRef.indexOf("/"));

chWnd = chWnd.replace("http://", "");
chWnd = chWnd.replace("https://", "");
chWnd = chWnd.substring(0, chWnd.indexOf("/"));



var BrowserDetect = {
  init: function() {
    this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
    this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
    this.OS = this.searchString(this.dataOS) || "an unknown OS";
  },
  searchString: function(data) {
    for (var i = 0; i < data.length; i++) {
      var dataString = data[i].string;
      var dataProp = data[i].prop;
      this.versionSearchString = data[i].versionSearch || data[i].identity;
      if (dataString) {
        if (dataString.indexOf(data[i].subString) != -1)
          return data[i].identity;
      }
      else if (dataProp)
        return data[i].identity;
    }
  },
  searchVersion: function(dataString) {
    var index = dataString.indexOf(this.versionSearchString);
    if (index == -1) return;
    return parseFloat(dataString.substring(index + this.versionSearchString.length + 1));
  },
  dataBrowser: [
		{
		  string: navigator.userAgent,
		  subString: "Chrome",
		  identity: "Chrome"
		},
		{ string: navigator.userAgent,
		  subString: "OmniWeb",
		  versionSearch: "OmniWeb/",
		  identity: "OmniWeb"
		},
		{
		  string: navigator.vendor,
		  subString: "Apple",
		  identity: "Safari",
		  versionSearch: "Version"
		},
		{
		  prop: window.opera,
		  identity: "Opera"
		},
		{
		  string: navigator.vendor,
		  subString: "iCab",
		  identity: "iCab"
		},
		{
		  string: navigator.vendor,
		  subString: "KDE",
		  identity: "Konqueror"
		},
		{
		  string: navigator.userAgent,
		  subString: "Firefox",
		  identity: "Firefox"
		},
		{
		  string: navigator.vendor,
		  subString: "Camino",
		  identity: "Camino"
		},
		{		// for newer Netscapes (6+)
		  string: navigator.userAgent,
		  subString: "Netscape",
		  identity: "Netscape"
		},
		{
		  string: navigator.userAgent,
		  subString: "MSIE",
		  identity: "Explorer",
		  versionSearch: "MSIE"
		},
		{
		  string: navigator.userAgent,
		  subString: "Gecko",
		  identity: "Mozilla",
		  versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
		  string: navigator.userAgent,
		  subString: "Mozilla",
		  identity: "Netscape",
		  versionSearch: "Mozilla"
		}
	],
  dataOS: [
		{
		  string: navigator.platform,
		  subString: "Win",
		  identity: "Windows"
		},
		{
		  string: navigator.platform,
		  subString: "Mac",
		  identity: "Mac"
		},
		{
		  string: navigator.userAgent,
		  subString: "iPhone",
		  identity: "iPhone/iPod"
		},
		{
		  string: navigator.platform,
		  subString: "Linux",
		  identity: "Linux"
		}
	]

};
BrowserDetect.init();


//alert(BrowserDetect.browser);
//alert(BrowserDetect.version);

if (BrowserDetect.browser == 'Explorer') {
  //alert('Explorer')
  if (BrowserDetect.version >= 7) {
    //alert('Explorer 7 of hoger')
    resize();
  }  
} else if (BrowserDetect.browser == 'Safari') {
  //alert('Safari')
} else {
  //alert('Other')
  resize();  
  }


function resize() {
  if (chRef != chWnd) {
    (function() {
      var L = function(a) { return a.length },
        W = window,
        G = { init: function() { for (var n in G) if (G[n].init) G[n].init() },
          set: function(a, b, c) { var o; for (o in b) a[o] = b[o]; for (o in c) a.style[o] = c[o]; return a },
          mid: function(o, a, b) { o = o.split(a); return (L(o) < 2) ? '' : o[1].split(b)[0] }
        }; G.set(W, { G: G, onload: G.init })
    })()

    G.resizeOuter = {
      prev: 0,
      init: function() { var m = this, v = m.top = G.mid(location.hash, '#outer=', '#'); if (v) window.setInterval(m.resize, 300) },
      resize: function() { var m = G.resizeOuter, h = m.getH(); if (h > m.prev) top.location = m.top + '#height=' + h; m.prev = h },
      getH: function() {
        var h = 0, sh, oh, d = document, b
        if (d.height) return d.height
        if (d.body) { b = d.body; if (b.scrollHeight) h = sh = b.scrollHeight; if (b.offsetHeight) h = oh = b.offsetHeight; if (sh && oh) h = Math.max(sh, oh) }; return h;
      }
    }
  }
}
