﻿function DynLayer(id,nestref,frame) {
	if (!DynLayer.set && !frame) DynLayerInit()
	this.frame = frame || self
	if (is.ns) {
		if (is.ns4) {
			if (!frame) {
				if (!nestref) var nestref = DynLayer.nestRefArray[id]
				if (!DynLayerTest(id,nestref)) return
				this.css = (nestref)? eval("document."+nestref+".document."+id) : document.layers[id]
			}
			else this.css = (nestref)? eval("frame.document."+nestref+".document."+id) : frame.document.layers[id]
			this.elm = this.event = this.css
			this.doc = this.css.document
		}
		if (is.ns5) {
			this.elm = document.getElementById(id)
			this.css = this.elm.style
			this.doc = document
		}
		this.x = this.css.left
		this.y = this.css.top
		this.w = this.css.clip.width
		this.h = this.css.clip.height
	}
	else if (is.ie) {
		this.elm = this.event = this.frame.document.all[id]
		this.css = this.frame.document.all[id].style
		this.doc = document
		this.x = this.elm.offsetLeft
		this.y = this.elm.offsetTop
		this.w = (is.ie4)? this.css.pixelWidth : this.elm.offsetWidth
		this.h = (is.ie4)? this.css.pixelHeight : this.elm.offsetHeight
	}
	this.id = id
	this.nestref = nestref
	this.obj = id + "DynLayer"
	eval(this.obj + "=this")
}

function DynLayerSetWidth(w) {
	this.css.width = w>0?w:0+"px"
}

function DynLayerSetHeight(h) {
	this.css.height = h>0?h:0+"px"
}

function DynLayerMoveTo(x,y) {
	if (x!=null) {
		this.x = x
		if (is.ns) this.css.left = this.x
		else this.css.pixelLeft = this.x
	}
	if (y!=null) {
		this.y = y
		if (is.ns) this.css.top = this.y
		else this.css.pixelTop = this.y
	}
}
function DynLayerMoveX(x) {
	if (x!=null) {
		this.x = x
		this.css.left = this.x
	}
}
function DynLayerMoveY(y) {
	if (y!=null) {
		this.y = y
		this.css.top = this.y
	}
}
function DynLayerMoveBy(x,y) {
	this.moveTo(this.x+x,this.y+y)
}
function DynLayerShow() {
	this.css.visibility = (is.ns)? "show" : "visible"
}
function DynLayerHide() {
	this.css.visibility = (is.ns)? "hide" : "hidden"
}
DynLayer.prototype.moveTo = DynLayerMoveTo
DynLayer.prototype.moveX = DynLayerMoveX
DynLayer.prototype.moveY = DynLayerMoveY
DynLayer.prototype.moveBy = DynLayerMoveBy
DynLayer.prototype.show = DynLayerShow
DynLayer.prototype.hide = DynLayerHide
DynLayer.prototype.setWidth = DynLayerSetWidth
DynLayer.prototype.setHeight = DynLayerSetHeight

DynLayerTest = new Function('return true')

function DynLayerInit(nestref) {
	if (!DynLayer.set) DynLayer.set = true
	if (is.ns) {
		if (nestref) ref = eval('document.'+nestref+'.document')
		else {nestref = ''; ref = document;}
		for (var i=0; i<ref.layers.length; i++) {
			var divname = ref.layers[i].name
			DynLayer.nestRefArray[divname] = nestref
			var index = divname.indexOf("Div")
			if (index > 0) {
				eval(divname.substr(0,index)+' = new DynLayer("'+divname+'","'+nestref+'")')
			}
			if (ref.layers[i].document.layers.length > 0) {
				DynLayer.refArray[DynLayer.refArray.length] = (nestref=='')? ref.layers[i].name : nestref+'.document.'+ref.layers[i].name
			}
		}
		if (DynLayer.refArray.i < DynLayer.refArray.length) {
			DynLayerInit(DynLayer.refArray[DynLayer.refArray.i++])
		}
	}
	else if (is.ie) {
		for (var i=0; i<document.all.tags("DIV").length; i++) {
			var divname = document.all.tags("DIV")[i].id
			var index = divname.indexOf("Div")
			if (index > 0) {
				eval(divname.substr(0,index)+' = new DynLayer("'+divname+'")')
			}
		}
	}
	return true
}
DynLayer.nestRefArray = new Array()
DynLayer.refArray = new Array()
DynLayer.refArray.i = 0
DynLayer.set = false

function DynLayerSlideTo(endx,endy,inc,speed,fn) {
	if (endx==null) endx = this.x
	if (endy==null) endy = this.y
	var distx = endx-this.x
	var disty = endy-this.y
	this.slideStart(endx,endy,distx,disty,inc,speed,fn)
}
function DynLayerSlideBy(distx,disty,inc,speed,fn) {
	var endx = this.x + distx
	var endy = this.y + disty
	this.slideStart(endx,endy,distx,disty,inc,speed,fn)
}
function DynLayerSlideStart(endx,endy,distx,disty,inc,speed,fn) {
	if (this.slideActive) return
	if (!inc) inc = 10
	if (!speed) speed = 5
	var num = Math.sqrt(Math.pow(distx,2) + Math.pow(disty,2))/inc
	if (num==0) return
	var dx = distx/num
	var dy = disty/num
	if (!fn) fn = null
	this.slideActive = true
	this.slide(dx,dy,endx,endy,num,1,speed,fn)
}
function DynLayerSlide(dx,dy,endx,endy,num,i,speed,fn) {
	if (!this.slideActive) return
	if (i++ < num) {
		this.moveBy(dx,dy)
		this.onSlide()
		if (this.slideActive) setTimeout(this.obj+".slide("+dx+","+dy+","+endx+","+endy+","+num+","+i+","+speed+",\""+fn+"\")",speed)
		else this.onSlideEnd()
	}
	else {
		this.slideActive = false
		this.moveTo(endx,endy)
		this.onSlide()
		this.onSlideEnd()
		eval(fn)
	}
}
DynLayerSlideInit = new Function()
DynLayer.prototype.slideInit = new Function()
DynLayer.prototype.slideTo = DynLayerSlideTo
DynLayer.prototype.slideBy = DynLayerSlideBy
DynLayer.prototype.slideStart = DynLayerSlideStart
DynLayer.prototype.slide = DynLayerSlide
DynLayer.prototype.onSlide = new Function()
DynLayer.prototype.onSlideEnd = new Function()

function DynLayerClipInit(clipTop,clipRight,clipBottom,clipLeft) {
	if (is.ie) {
		if (arguments.length==4) this.clipTo(clipTop,clipRight,clipBottom,clipLeft)
		else if (is.ie4) this.clipTo(0,this.css.pixelWidth,this.css.pixelHeight,0)
	}
}
function DynLayerClipTo(t,r,b,l) {
	if (t==null) t = this.clipValues('t')
	if (r==null) r = this.clipValues('r')
	if (b==null) b = this.clipValues('b')
	if (l==null) l = this.clipValues('l')
	if (is.ns) {
		this.css.clip.top = t
		this.css.clip.right = r
		this.css.clip.bottom = b
		this.css.clip.left = l
	}
	else if (is.ie) this.css.clip = "rect("+t+"px "+r+"px "+b+"px "+l+"px)"
}
function DynLayerClipBy(t,r,b,l) {
	this.clipTo(this.clipValues('t')+t,this.clipValues('r')+r,this.clipValues('b')+b,this.clipValues('l')+l)
}
function DynLayerClipValues(which) {
	if (is.ie) var clipv = this.css.clip.split("rect(")[1].split(")")[0].split("px")
	if (which=="t") return (is.ns)? this.css.clip.top : Number(clipv[0])
	if (which=="r") return (is.ns)? this.css.clip.right : Number(clipv[1])
	if (which=="b") return (is.ns)? this.css.clip.bottom : Number(clipv[2])
	if (which=="l") return (is.ns)? this.css.clip.left : Number(clipv[3])
}
DynLayer.prototype.clipInit = DynLayerClipInit
DynLayer.prototype.clipTo = DynLayerClipTo
DynLayer.prototype.clipBy = DynLayerClipBy
DynLayer.prototype.clipValues = DynLayerClipValues

function DynLayerWrite(html) {
	if (is.ns) {
		this.doc.open()
		this.doc.write(html)
		this.doc.close()
	}
	else if (is.ie) {
		this.event.innerHTML = html
	}
}
DynLayer.prototype.write = DynLayerWrite


function BrowserCheck() {
	var b = navigator.appName
	if (b=="Netscape") this.b = "ns"
	else if (b=="Microsoft Internet Explorer") this.b = "ie"
	else this.b = b
	this.version = navigator.appVersion
	this.v = parseInt(this.version)
	this.ns = (this.b=="ns" && this.v>=4)
	this.ns4 = (this.b=="ns" && this.v==4)
	this.ns5 = (this.b=="ns" && this.v==5)
	this.ie = (this.b=="ie" && this.v>=4)
	this.ie4 = (this.version.indexOf('MSIE 4')>0)
	this.ie5 = (this.version.indexOf('MSIE 5')>0)
	this.min = (this.ns||this.ie)
}
is = new BrowserCheck()

function css(id,left,top,width,height,color,vis,z,other) {
	if (id=="START") return '<STYLE TYPE="text/css">\n'
	else if (id=="END") return '</STYLE>'
	var str = (left!=null && top!=null)? '#'+id+' {position:absolute; left:'+left+'px; top:'+top+'px;' : '#'+id+' {position:relative;'
	if (arguments.length>=4 && width!=null) str += ' width:'+width+'px;'
	if (arguments.length>=5 && height!=null) {
		str += ' height:'+height+'px;'
		if (arguments.length<9 || other.indexOf('clip')==-1) str += ' clip:rect(0px '+width+'px '+height+'px 0px);'
	}
	if (arguments.length>=6 && color!=null) str += (is.ns)? ' layer-background-color:'+color+';' : ' background-color:'+color+';'
	if (arguments.length>=7 && vis!=null) str += ' visibility:'+vis+';'
	if (arguments.length>=8 && z!=null) str += ' z-index:'+z+';'
	if (arguments.length==9 && other!=null) str += ' '+other
	str += '}\n'
	return str
}
function writeCSS(str,showAlert) {
	str = css('START')+str+css('END')
	document.write(str)
	if (showAlert) alert(str)
}

var checkobj=null;
var checkbar=null;
var menubarheight = 0;
var menubarsum = 0;
var menuspeed = 10;
var menuinc = 100;
var scrollspeed = 100;
var scrollinc = 60;
var menuchoose = 0;
var iconX = new Array(menubarsum);
var menuIconWidth = new Array(menubarsum);
var menuIconHeight = new Array(menubarsum);
var menuscroll = 0;
var iconareaheight = 0;
var iconrightpos = 0;
var maxscroll = 0;
var scrolling = false;
var scrollTimerID = 0;



function init(mnum, mheight) {
	menubarheight = mnum
	menubarsum = mheight
	menulayer = new Array(menubarsum)
	iconlayer = new Array(menubarsum)
	barlayer = new Array(menubarsum)
	uplayer = new Array(menubarsum)
	downlayer = new Array(menubarsum)
	for (var i=0; i<menubarsum; i++) {

		menulayer[i] = new DynLayer("menulayer" + i + "Div")
		menulayer[i].slideInit()
		iconlayer[i] = new DynLayer("iconlayer" + i + "Div", "menulayer" + i + "Div")
		iconlayer[i].slideInit()

		if (menuIconWidth[i] > document.body.clientWidth) {
			iconlayer[i].setWidth(menuIconWidth[i])
			iconX[i] = (document.body.clientWidth-menuIconWidth[i])/2

		} else {
			iconlayer[i].setWidth(document.body.clientWidth)
			iconX[i] = 0

		}

		iconlayer[i].moveTo(iconX[i], menubarheight)
		barlayer[i] = new DynLayer("barlayer" + i + "Div", "menulayer" + i + "Div")
		barlayer[i].slideInit()
		uplayer[i] = new DynLayer("uplayer" + i + "Div", "menulayer" + i + "Div")
		uplayer[i].slideInit()
		downlayer[i] = new DynLayer("downlayer" + i + "Div", "menulayer" + i + "Div")
		downlayer[i].slideInit()
	}

	menureload()

	var obj=document.getElementById("barlayer0Div");
	if (checkbar!=null)
	{
		var mycheckbar=document.getElementById("barlayer"+checkbar+"Div");
		mycheckbar.className="mnu_bar";
	}
	checkbar=0
	obj.className="mnu_bar_on";
}



function menubarpush(num) {

	if (num != menuchoose && num >= 0 && num < menubarsum) {
		iconlayer[menuchoose].moveTo(iconX[menuchoose],menubarheight)
		menuscroll = 0
		scrolling = false
		for (var i=0; i <=num; i++) {
			menulayer[i].slideTo(0, i*menubarheight, menuinc, menuspeed)
		}
		nAdCornerOriginY = document.body.clientHeight;
		nAdCornerOriginY += document.body.scrollTop;
		for (var i=menubarsum-1; i>num; i--) {
			nAdCornerOriginY -= menubarheight
			menulayer[i].slideTo(0,nAdCornerOriginY, menuinc, menuspeed)
		}
		menuchoose = num
		menuscrollbar()

		var obj=document.getElementById("barlayer"+num+"Div");
		if (checkbar!=null)
		{
			var mycheckbar=document.getElementById("barlayer"+checkbar+"Div");
			mycheckbar.className="mnu_bar";
		}
		checkbar=num
		obj.className="mnu_bar_on";

	}
}


function menureload() {
	nAdCornerOriginY = document.body.clientHeight;
	nAdCornerOriginY += document.body.scrollTop;
	for (var i=menubarsum-1; i>menuchoose; i--) {
		nAdCornerOriginY -= menubarheight
		menulayer[i].moveTo(0, nAdCornerOriginY)
	}
	for (var i=0; i<menubarsum; i++) {
		if (menuIconWidth[i] > document.body.clientWidth) {
			iconlayer[i].setWidth(menuIconWidth[i])
			iconX[i] = (document.body.clientWidth-menuIconWidth[i])/2
		} else {
			iconlayer[i].setWidth(document.body.clientWidth)
			iconX[i] = 0
		}
		iconlayer[i].moveX(iconX[i], menubarheight)
	}
	menuscrollbar()
}


function menuscrollbar() {
	iconareaheight = document.body.clientHeight-menubarheight*(menubarsum);
	iconrightpos = document.body.clientWidth-16-4;
	maxscroll = menuIconHeight[menuchoose] - iconareaheight
	if (maxscroll > 0) {
		if (menuscroll > 0) {
			uplayer[menuchoose].moveTo(iconrightpos, menubarheight+4) 
		} else {
			uplayer[menuchoose].moveTo(-20, 0)
		}
		if (menuscroll < maxscroll) {
			downlayer[menuchoose].moveTo(iconrightpos, iconareaheight+2)
		} else {
			downlayer[menuchoose].moveTo(-20, 0)
		}
	} else {
		if (menuscroll <= 0) 
			uplayer[menuchoose].moveTo(-20, 0)
		downlayer[menuchoose].moveTo(-20, 0)
	}
}
function menuscrollup() {
	if (menuscroll > 0) {
		scrolling = true
		menuscroll -= scrollinc
		iconlayer[menuchoose].moveTo(iconX[menuchoose], menubarheight-menuscroll)
		
		scrollTimerID = setTimeout("menuscrollup()", scrollspeed)
	} else {
		menuscrollstop()	
	}
	menuscrollbar()
	
}

function menuscrolldown() {
	if (menuscroll < maxscroll) {
		scrolling = true
		menuscroll += scrollinc
		if (menuscroll < maxscroll) {
			iconlayer[menuchoose].moveTo(iconX[menuchoose], menubarheight-menuscroll)
		} else {
			iconlayer[menuchoose].moveTo(iconX[menuchoose], menubarheight-maxscroll)
		}
		
		scrollTimerID = setTimeout("menuscrolldown()", scrollspeed)
	} else {
		menuscrollstop()	
	}

	menuscrollbar()
	
}

function menuscrollstop() {
	scrolling = false
	if (scrollTimerID) {
		clearTimeout(scrollTimerID)
		scrollTimerID = 0;
	}
	
}

function check(id){
	var obj=document.getElementById(id);
	
	if (checkobj!=null)
	{
		var mycheckobj=document.getElementById(checkobj);
		mycheckobj.className="td_normal";
	}
	checkobj=id
	obj.className="td_check";
}

function checkbar(num){
	alert (num)
	var obj=document.getElementById("barlayer"+num+"Div");
	if (checkbar!=null)
	{
		var mycheckbar=document.getElementById("barlayer"+checkbar+"Div");
		mycheckbar.className="mnu_bar";
	}
	checkbar=num
	obj.className="mnu_bar_on";
}
function window_onresize() {
	menureload()
}


/*
remark:初始化select对象的内容
sample:selectLayer($("selectCity"), arr, this.value);
*/
function selectLayer(obj, arr, id) {
    obj.length = 0;
    obj.options.add(new Option("--请选择--", ""));
    var option = null;
    for (var i = 0; i < arr.length; i++) {
        if (arr[i][1] == id) {
            option = new Option(arr[i][2], arr[i][0]);
            obj.options.add(option);
        }
    }
}
/*
remark:设置select对象的内容至tag对象上
sample:setSelectLayer(this, "regionId,regionName");
*/
function setSelectLayer(obj, tag) {
    var listtag = tag.split(",");
    if (listtag == null || listtag == undefined || listtag == "") {
        return;
    }
    var option = obj.options[obj.selectedIndex];
    var tag1 = $(listtag[0]);
    var tag2 = $(listtag[1]);
    if (option.value == "") {
        if (tag1 != undefined && tag1 != null) {
            tag1.value = "";
        }
        if (tag2 != undefined && tag2 != null) {
            tag2.value = "";
        }
    }
    else {
        if (tag1 != undefined && tag1 != null) {
            tag1.value = option.value;
        }
        if (tag2 != undefined && tag2 != null) {
            tag2.value = option.text;
        }
    }
}
//
//
var reqAd;
var pDivId;
var div;
function advertiseAdd(pAdZDId, pDivId) {
    var s = "adId=" + pAdZDId;
    var u = WEBROOT + "public_list/public_advertise_handler.ashx?act=load&" + s;
    reqAd = Spry.Utils.loadURL("POST", u, true, doAdCheckCallback, { headers: { "Content-Type": "application/x-www-form-urlencoded; charset=UTF-8" }, errorCallback: doAdCheckError });
    div = pDivId;
}
//
//
//
function doAdCheckCallback(reqAd) {
    if (reqAd.xhRequest.responseText) {
        var obj = new Spry.Data.JSONDataSet();
        var tag = obj.parseJSON(reqAd.xhRequest.responseText);
        pDivId = div;
        pAdType = tag.basedata.AdTypeId;
        if (tag == null || tag == undefined)
            return;
        if ((tag.basedata.HireId != undefined && tag.basedata.HandleResult == "01" && tag.basedata.IsValid == "0") && (tag.basedata.StateId == "0" || tag.basedata.StateId == "3")) {
            switch (pAdType) {
                case "WRIT_AD":
                    tmpAd = "<div align='center' style='width:" + tag.basedata.AdWidth + "px; height:" + tag.basedata.AdHeight + "px;'><a href='" + tag.basedata.AdLink + "' style='vertical-align:middle;' target='_blank'>" + tag.basedata.AdContent + "</a></div>";
                    document.getElementById(pDivId).innerHTML = tmpAd;
                    break;
                case "IMG_AD":
                    tmpAd = "<div align='center' title='" + tag.basedata.AdName + "' ><a href='" + tag.basedata.AdLink + "' target='" + tag.basedata.AdOpenMode + "'><img src='" + WEBROOT + "Upload/ad/" + tag.basedata.AdUrl + "' style='width:" + tag.basedata.AdWidth + "px; height:" + tag.basedata.AdHeight + "px;' /></a></div>";
                    document.getElementById(pDivId).innerHTML = tmpAd;
                    break;
                case "VIDEO_AD":
                    break;
                case "FLASH_AD":
                    break;
            }
        }
        else {
            switch (pAdType) {
                case "WRIT_AD":
                    tmpAd = "<div align='center' style='width:" + tag.basedata.AdWidth + "px; height:" + tag.basedata.AdHeight + "px;'><a href='" + tag.basedata.AdDefaultLink + "' style='vertical-align:middle;' target='_blank'>" + tag.basedata.AdName + "</a></div>";
                    document.getElementById(pDivId).innerHTML = tmpAd;
                    break;
                case "IMG_AD":
                    tmpAd = "<div align='center' title='" + tag.basedata.AdName + "'><a href='" + tag.basedata.AdDefaultLink + "' targt='" + tag.basedata.AdOpenMode + "'><img src='" + WEBROOT + "images/noimage.gif'  style='width:" + tag.basedata.AdWidth + "px; height:" + tag.basedata.AdHeight + "px;' /></a></div>";
                    document.getElementById(pDivId).innerHTML = tmpAd;
                    break;
                case "VIDEO_AD":
                    break;
                case "FLASH_AD":
                    break;
            }
        }
    }
}
//
//
//
function doAdCheckError(reqAd) {
    if (reqAd.xhRequest.responseText) {
        alert("读取数据错误：" + reqAd.xhRequest.responseText);
    }
}

function generateAdversie() {
    var adId = document.getElementById("ctl00_Contentplaceholder2_adId").value; //广告位编码
    var copy = document.getElementById("copy");
    copy.value = "advertiseAdd('" + adId + "','divId')";
}

//
//
//
var reqa006;
function onloadA006() {
    var url = WEBROOT + "cms/news_handler.ashx?act=load&id=A006";
    var req = Spry.Utils.loadURL("POST", url, true, doNews006Id, { headers: { "Content-Type": "application/x-www-form-urlencoded; charset=UTF-8" }, errorCallback: doNews006Error });
}
function doNews006Id(reqa006) {
    if (reqa006.xhRequest.responseText) {
        var obj = new Spry.Data.JSONDataSet();
        var tag = null;

        try {
            tag = obj.parseJSON(reqa006.xhRequest.responseText);
        }
        catch (ex) {
            alert(ex);
        }

        if (tag == null || tag == undefined)
            return;

        if (tag != null && tag != undefined && tag != "") {
            //alert(tag[0].NewsId);
            document.location.href = WEBROOT + "cms/contentPage.aspx?categoryId=A006&contentId=" + tag[0].NewsId;
        }
    }
}
function doNews006Error(reqa006) {
    if (reqa006.xhRequest.responseText) {
        alert("读取数据错误：" + reqa006.xhRequest.responseText);
    }
}


//
//
//
var reqa007;
function onloadA007() {
    
    var url = WEBROOT + "cms/news_handler.ashx?act=load&id=A007";
    var req = Spry.Utils.loadURL("POST", url, true, doNews007Id, { headers: { "Content-Type": "application/x-www-form-urlencoded; charset=UTF-8" }, errorCallback: doNews007Error });
}
function doNews007Id(reqa007) {
     
    if (reqa007.xhRequest.responseText) {
        var obj = new Spry.Data.JSONDataSet();
        var tag = null;

        try {
            tag = obj.parseJSON(reqa007.xhRequest.responseText);
        }
        catch (ex) {
            alert(ex);
        }
         
        if (tag == null || tag == undefined)
            return;

        if (tag != null && tag != undefined && tag != "") {
            
            //alert(tag[0].NewsId);
            document.location.href = WEBROOT + "cms/contentPage.aspx?categoryId=A007&contentId=" + tag[0].NewsId;
        }
    }
}
function doNews007Error(reqa007) {
    if (reqa007.xhRequest.responseText) {
        alert("读取数据错误：" + reqa007.xhRequest.responseText);
    }
}