var UA = navigator.userAgent.toUpperCase();
var AN = navigator.appName.toUpperCase();
// OS
var isMac  = (UA.indexOf("MAC") != -1) ? true : false;
var isWin  = (UA.indexOf("WIN") != -1) ? true : false;
var isUnix = (UA.indexOf("X11") != -1) ? true : false;
// Browser
var isSafari = (UA.indexOf("SAFARI") != -1) ? true : false;
var isOpera  = (AN.indexOf("OPERA") != -1) ? true : false;
var isFF  = (UA.indexOf("FIREFOX") != -1) ? true : false;
var isNN  = (UA.indexOf("NETSCAPE") != -1) ? true : false;
var isIE  = (UA.indexOf("MSIE") != -1) ? true : false;

function clsMinutesMaid(embedID) {
  /*                                                           property
  -------------------------------------------------------------------*/
  var _oldPos = 0;
  var _embedID = embedID;
  var _swf = '';
  var _inHeight;
  var _borderMax = 695;
  var _borderMin = 530;

  /*                                                               init
  -------------------------------------------------------------------*/
  this.init = function () {
    _swf = getSWFObject();
    _inHeight = getInnerHieght();
    
    if (screen.height <= 770) {
      window.resizeTo( screen.availWidth , screen.availHeight );
    } else if (_borderMax<_inHeight) {
      window.resizeBy(0, _borderMax-_inHeight);
    } else if (_borderMin>_inHeight) {
      window.resizeBy(0, _borderMax-_inHeight);
    }
    _inHeight = getInnerHieght();
  };
  
  /*                                                           setEvent
  -------------------------------------------------------------------*/
  this.setEvent = function () {
    addEvent(window, 'scroll', onScroll, false);
    addEvent(window, 'resize', onWindowResize, false);
    _swf.onWindowResize( _inHeight );
  }
  
  /*                                                     onWindowResize
  -------------------------------------------------------------------*/
  var onWindowResize = function() {
    var H = getInnerHieght();
    //window.resizeBy(0, (_borderMax<H)?(_borderMax-H):0);
    if (screen.height <= 770) {
      window.resizeTo( screen.availWidth , screen.availHeight );
    } else if (_borderMax<H) {
      window.resizeBy(0, _borderMax-H);
    } else if (_borderMin>H) {
      window.resizeBy(0, _borderMax-H);
    }
    _inHeight = getInnerHieght();
    _swf.onWindowResize( _inHeight );
  };
  
  /*                                                           onScroll
  -------------------------------------------------------------------*/
  var onScroll = function() {
    var pos = getScrollY();
    _oldPos = pos;
    _swf.scrollY( pos , _inHeight );
  };
  
  /*                                                     getOuterHieght
  -------------------------------------------------------------------*/
  var getOuterHieght = function() {
    var H = 0;
    if (typeof window.outerHeight != 'undefined') {
      H = window.outerHeight;
    } else if (typeof document.body.clientHeight != 'undefined') {
      H = document.body.clientHeight;
    }
    return H;
  };
  
  /*                                                      getOuterWidth
  -------------------------------------------------------------------*/
  var getOuterWidth = function() {
    var W = 0;
    if (typeof window.outerWidth != 'undefined') {
      W = window.outerWidth;
    } else if (typeof document.body.clientWidth != 'undefined') {
      W = document.body.clientWidth;
    }
    return W;
  };
  
  /*                                                     getInnerHieght
  -------------------------------------------------------------------*/
  var getInnerHieght = function() {
    var H = 0;
    if (typeof window.innerHeight != 'undefined') {
      H = window.innerHeight;
    } else if (typeof document.documentElement.clientHeight != 'undefined') {
      H = document.documentElement.clientHeight;
    }
    return isSafari ? H+10 : H;
  };
  
  /*                                                      getScrollPosY
  -------------------------------------------------------------------*/
  var getScrollY = function() {
    if (typeof window.pageYOffset != 'undefined') {
        return window.pageYOffset;
    } else if (typeof document.documentElement.scrollTop != 'undefined'
      && document.documentElement.scrollTop > 0) {
        return document.documentElement.scrollTop;
    } else if (typeof document.body.scrollTop != 'undefined') {
        return document.body.scrollTop;
    }
    return 0;
  };
  
  /*                                                           addEvent
  -------------------------------------------------------------------*/
  var addEvent = function(elm, evtType, fnc, useCapture) {
    if (elm.addEventListener) {
      elm.addEventListener(evtType, fnc, useCapture);
      return true;
    } else if (elm.attachEvent) {
      var res = elm.attachEvent('on'+evtType, fnc);
      return res;
    } else {
      elm['on'+evtType] = fnc;
    }
  };
  
  /*                                                        removeEvent
  -------------------------------------------------------------------*/
  var removeEvent = function(elm, evtType, fnc, useCapture) {
    if (elm.addEventListener) {
      elm.removeEventListener(evtType, fnc, useCapture);
      return true;
    } else if (elm.attachEvent) {
      var res = elm.detachEvent('on'+evtType, fnc);
      return res;
    } else {
      elm['on'+evtType] = function(){};
    }
  };

  /*                                                       getSWFObject
  -------------------------------------------------------------------*/
  var getSWFObject = function () {
  	if (navigator.appName.indexOf('Microsoft') != -1) {
  		return window[_embedID];
  	} else {
  		return document[_embedID];
  	}
  };
}
