﻿
function getInnerSize()
{
	var obj = self;
	if(window.opera || document.layers){	//n4 o6用
		var w = obj.innerWidth;
		var h = obj.innerHeight;
		var sl = pageXOffset;
		var st = pageYOffset;

	} else if(document.all){		//ie用
		if(is.ie7){
			var w = document.documentElement.clientWidth;
			var h = document.documentElement.clientHeight;
	      		var sl = document.documentElement.scrollLeft;
	      		var st = document.documentElement.scrollTop;
		}else{
			var w = obj.document.body.clientWidth;
			var h = obj.document.body.clientHeight;
	      		var sl = document.body.scrollLeft;
	      		var st = document.body.scrollTop;
		}

	}else if(document.getElementById){	//n6,n7,m1用
		var w = obj.innerWidth;
		var h = obj.innerHeight;
		var sl = pageXOffset;
		var st = pageYOffset;

	}
	return [w,h,sl,st];
}

function getClinetSize()
{
	var cw, hw;

	if(is.ie7){
		cw = document.documentElement.scrollWidth;
		if(document.documentElement.offsetWidth > cw){
			cw = document.documentElement.offsetWidth;
		}
		ch = document.documentElement.scrollHeight;
		if(document.documentElement.offsetHeight > ch){
			ch = document.documentElement.offsetHeight;
		}

	}else if(is.ie){
		cw = document.body.scrollWidth;
		if(document.body.clientWidth > cw){
			cw = document.body.clientWidth;
		}
		ch = document.body.scrollHeight;
		if(document.body.clientHeight > ch){
			ch = document.body.clientHeight;
		}

	}else if(is.safari || is.opera){
		cw = document.body.scrollWidth;
		ch = document.body.scrollHeight;

	}else if(is.firefox || is.ns){
		cw = document.documentElement.scrollWidth;
		ch = document.documentElement.scrollHeight;

	}
	return [cw,ch];
}

function dynamicLayer(id)
{
	if(id == ""){
		return;
	}
	this.elm = document.getElementById(id);
	this.css = this.elm.style;
	this.doc = document;
	this.x = parseInt(this.elm.offsetLeft);
	this.y = parseInt(this.elm.offsetTop);
	this.w = this.sw = parseInt(this.elm.offsetWidth);
	this.h = this.sh = parseInt(this.elm.offsetHeight);
	this.id = id;
}


function dynamicLayerInit()
{
	var p=0;
	while(document.getElementsByTagName("DIV").item(p) != null){
		var divname = document.getElementsByTagName("DIV").item(p).id;
		var index = divname.indexOf("_dyn");
		if(index > 0){
			eval(divname.substr(0,index)+' = new dynamicLayer("'+divname+'")');
		}
/*
		if(divname == "img_content" || divname == "shadow" || divname == "base" || divname == "indicator" || divname == "photo"){
			eval(divname+'_dyn = new dynamicLayer("'+divname+'")');
		}
*/
		p++;
	}
}

function dynamicLayerShow()
{
	this.css.visibility = "visible";
}

function dynamicLayerHide()
{
	this.css.visibility = "hidden";
}

function dynamicLayerGetVisibility()
{
	return (this.css.visibility=="visible");
}

function dynamicLayerMoveTo(x,y)
{
	if(x!=null && !isNaN(x)){
		this.x = x;
		(is.ie) ? this.css.pixelLeft = x : this.css.left = x+"px";
	}
	if(y!=null && !isNaN(y)){
		this.y = y;
		(is.ie) ? this.css.pixelTop = y : this.css.top = y+"px";
	}
}

function dynamicLayerMoveBy(x,y)
{
	var dx = this.x;
	var dy = this.y;
	if(x!=null && !isNaN(x))
		dx += x;
	if(y!=null && !isNaN(y))
		dy += y;
	this.moveTo(dx,dy);
}

function dynamicLayerResizeTo(w,h)
{
	if(w != null && !isNaN(w)){
		this.w = this.sw = w;
		this.css.width = w+"px";
	}
	if(h != null && !isNaN(h)){
		this.h = this.sh = h;
		this.css.height = h+"px";
	}
}

function dynamicLayerClipInit(clipTop, clipRight, clipBottom, clipLeft)
{
	this.clipTo(clipTop, clipRight, clipBottom, clipLeft);
}

function dynamicLayerClipTo(tp, rt, bt, lt)
{
	if(tp==null) tp = this.clipValues('tp');
	if(rt==null) rt = this.clipValues('rt');
	if(bt==null) bt = this.clipValues('bt');
	if(lt==null) lt = this.clipValues('lt');

	this.css.clip = "rect("+tp+"px "+rt+"px "+bt+"px "+lt+"px)";
}

function dynamicLayerClipValues(which)
{
	var clipv;

	clipv = this.css.clip.split("rect(")[1].split(")")[0].split("px");

	if(which=="tp") return Number(clipv[0]);
	if(which=="rt") return Number(clipv[1]);
	if(which=="bt") return Number(clipv[2]);
	if(which=="lt") return Number(clipv[3]);
}

function dynamicLayerBackgroundImage(imgpath)
{
	if(imgpath == "none"){
		this.css.backgroundImage = "none";
	}else{
		this.css.backgroundImage = 'url("'+imgpath+'")';
	}
}

function dynamicLayerAlphaSet(a)
{
	if(is.ie){
		if(this.css.filter=="")
			this.css.filter = "alpha(opacity="+a+")";
		else	this.elm.filters.alpha.opacity = a;

	}else if(is.safari){
		this.css.opacity = parseFloat(0.01*a);

	}else if(is.ns || is.firefox){
		this.css.MozOpacity = parseFloat(0.01*a);

	}else if(is.opera){
		this.css.opacity = parseFloat(0.01*a);

	}
}

// the prototype is declared.
dynamicLayer.prototype.moveTo = dynamicLayerMoveTo;
dynamicLayer.prototype.moveBy = dynamicLayerMoveBy;
dynamicLayer.prototype.show = dynamicLayerShow;
dynamicLayer.prototype.hide = dynamicLayerHide;
dynamicLayer.prototype.getVisibility = dynamicLayerGetVisibility;
dynamicLayer.prototype.resizeTo = dynamicLayerResizeTo;
dynamicLayer.prototype.clipInit = dynamicLayerClipInit;
dynamicLayer.prototype.clipTo = dynamicLayerClipTo;
dynamicLayer.prototype.clipValues = dynamicLayerClipValues;
dynamicLayer.prototype.backImg = dynamicLayerBackgroundImage;
dynamicLayer.prototype.alphaSet = dynamicLayerAlphaSet;


