/**
 * Browser
 * 
 * @author     justen holter
 * @version    1.0
 * @thanks     very nice piece of code fto deal with 100%-by-100%-noscale swf movies
 * @usage      call js function from swf: getURL("javascript:BrowserHeight("+(sldgo._y+sldgo._height+100)+");");
               set browser dim via js func: function BrowserHeight(val) { agencynet.Browser.setHeight(val) };
 */
if(typeof agencynet == "undefined") var agencynet = new Object();

agencynet.Browser = {
  
  _flashDivId: 'content',
  _flashSWFId: 'content',
  _flashHeight: 0,
  _flashWidth: 0,
  
  getFlash: function(){
    return document.getElementById(this._flashDivId);

  },
  
  getHeight: function(){
    
    if (typeof(window.innerHeight) == "number")
      
      return Number(window.innerHeight);
      
    else if (document.documentElement && document.documentElement.clientHeight)
        
      return Number(document.documentElement.clientHeight);
      
    else if (document.body && document.body.clientHeight)
        
      return Number(document.body.clientHeight)
  },
  
  setHeight: function(value){
    this._flashHeight = value;
    this.getFlash().style.height = (this._flashHeight > agencynet.Browser.getHeight()) ? value + 'px' : '100%';
  },
  
  getWidth: function(){
    
    if(typeof(window.innerWidth) == "number")
      
      return Number(window.innerWidth)
      
    else if (document.documentElement && document.documentElement.clientWidth)
      
      return Number(document.documentElement.clientWidth)
      
    else if (document.body && document.body.clientWidth)
      
      return Number(document.body.clientWidth);
  },
  
  setWidth: function(value){
    this._flashWidth = value;
    this.getFlash().style.width = (this._flashWidth > agencynet.Browser.getWidth()) ? value + 'px' : '100%';
  },
  
  getScroll: function(){
    
    if (typeof(window.pageYOffset) == "number")
      
      return Number(window.pageYOffset);
      
    else if (document.documentElement && typeof(document.documentElement.scrollTop) == "number")
      
      return Number(document.documentElement.scrollTop);
      
    else if (document.body && typeof(document.body.scrollTop) == "number")
      
      return Number(document.body.scrollTop);
  },
  
  setScroll: function(value){
    
  },
  
  getTitle: function(){
    return String(document.title);
  },
  
  setTitle: function(value){
    document.title = value;
  },
  
  onResize: function() {
    //alert('am here and the browser is being resized: '+agencynet.Browser._flashHeight);
    agencynet.Browser.setHeight(agencynet.Browser._flashHeight);
    agencynet.Browser.setWidth(agencynet.Browser._flashWidth);
    
    var flashID = document.getElementById(agencynet.Browser._flashSWFId)
    if(flashID.onResize){
      flashID.onResize(agencynet.Browser._flashHeight);
    }
  },
  
  onScroll: function() {
    var flashID = document.getElementById(agencynet.Browser._flashSWFId);
    if(flashID.onScroll){
      flashID.onScroll(agencynet.Browser.documentY);
    }
  }
}

window.onresize = agencynet.Browser.onResize;
window.onscroll = agencynet.Browser.onScroll;
