var AppConstant = {
}
/** デバッグ出力を有効にするかどうか */
AppConstant.DUBUG_MODE = true;

var AppGlobal = {};
AppGlobal.isIE = $.browser.msie;
AppGlobal.isIE6 = $.browser.msie && $.browser.version == "6.0";
AppGlobal.isIE7 = $.browser.msie && $.browser.version == "7.0";
AppGlobal.isIE8 = $.browser.msie && $.browser.version == "8.0";
AppGlobal.isIE9 = $.browser.msie && $.browser.version == "9.0";
AppGlobal.isIE6to8 = $.browser.msie && ($.browser.version == "6.0" || $.browser.version == "7.0" || $.browser.version == "8.0");

AppGlobal.isMac = navigator.userAgent.toLowerCase().indexOf("Mac") != -1;
AppGlobal.isIPad = navigator.userAgent.toLowerCase().indexOf("ipad") != -1;
AppGlobal.isIPhone = navigator.userAgent.toLowerCase().indexOf("iphone") != -1;
AppGlobal.isIOS = AppGlobal.isIPad || AppGlobal.isIPhone;

/** コマンド */
AppGlobal.command;

/** DOMAIN */
var href = $("#path").attr("href");
var strNum = href.indexOf("common/css/",0);
AppGlobal.DOMAIN = href.substring(0,strNum);

/* iPhoneの時にリダイレクト */
if(AppGlobal.isIPhone){
	location.href = AppGlobal.DOMAIN + "i/";
}

/* カテゴリ */
AppGlobal.cateArr = ["film", "press", "outdoor", "cyber", "promo", "integrated"];

function trace() {

	if(!AppConstant.DUBUG_MODE) return;

	try {
		if (arguments.length > 1) {
			var str = "";
			for (var i = 0; i < arguments.length; i++) {
				if (i > 0) str += ", ";
				str += arguments[i];
			}

			if (console) console.log(str);
		}
		else {
			if (console) console.log(arguments[0]);
		}
	} catch(e) {

	}
}


/**
 * プリローダークラス
 */
function Preloader() {

}
Preloader.prototype = {

	_percent : 0,
	_easePercent : 0,
	_intervalId : 0,
	onComplete : null,
	setup : function() {
		this._intervalId = setInterval($.proxy(this._enterFrameHandler, this), 33);
	},

	setPercent : function(percent) {
		this._percent = percent;
	},

	_enterFrameHandler : function() {
		this._easePercent += (this._percent - this._easePercent) * 0.3;

		$("#loading").text("loading " + Math.round(this._easePercent) + "%");

		if (Math.round(this._easePercent) == 100) {
			this._finish();
		}
	},

	_finish : function() {
		clearInterval(this._intervalId);

		if (typeof this.onComplete == "function") {
			this.onComplete();
		}
	}
};

/**
 * 
 */
function getDisplayRect() {
	var html = document.getElementsByTagName("html")[0];
	var body = document.getElementsByTagName('body')[0];
	var delem = document.documentElement;
	var point = {};
	point.x = body.scrollLeft > html.scrollLeft ? body.scrollLeft :  html.scrollLeft;
	point.y = body.scrollTop > html.scrollTop ? body.scrollTop :  html.scrollTop;
	var dW = delem.clientWidth;
	var dH = delem.clientHeight;
	var bW = body.clientWidth;
	var bH = body.clientHeight;
	point.width = 0==dW ? bW : (dW<bW ? dW : bW);
	point.height = 0==dH ? bH : (dH<bH ? dH : bH);
	return point;
}

/**
 * 
 */
function getWindowSize(withscroll) {
	var point = {};
	var body = document.getElementsByTagName('body')[0];
	var delem = document.documentElement;
	var isNN = (0==delem.clientWidth && 0==delem.clientHeight);
	var scrollbar = withscroll ? (isNN ? 15 : 17) : 0;
	var display = isNN ? body : delem;
	var wid = display.clientWidth + (display.clientWidth == display.scrollWidth ? 0 : scrollbar);
	var hei = display.clientHeight + (display.clientHeight == display.scrollHeight ? 0 : scrollbar);
	point.width  = window.innerWidth ? window.innerWidth : wid;
	point.height = window.innerHeight ? window.innerHeight : hei;
	return point;
}


function getBrowserWidth() {
	return window.innerWidth || self.innerWidth || (document.documentElement&&document.documentElement.clientWidth) || document.body.clientWidth;
}

function getBrowserHeight() {
	return window.innerHeight || self.innerHeight || (document.documentElement&&document.documentElement.clientHeight) || document.body.clientHeight;
}

