﻿function $(sId)
{
  var d = document;
  var oObj = d.getElementById?d.getElementById(sId):d.all?d.all[sId]:d.divs[sId];
  return oObj;
}

/**自定义多重类对象
 * @param {Object} namespace 自定义类名
 */
Namespace = new Object();
Namespace.register = function(namespace){
	var nsArray = namespace.split('.');
	var sEval = "";
    var sNS = "";
	for (var i = 0; i < nsArray.length; i++){
        if (i != 0) sNS += ".";
        sNS += nsArray[i];
        sEval += "if (typeof(" + sNS + ") == 'undefined') " + sNS + " = new Object();"
    }
    if (sEval != "") eval(sEval);
}

/**
 * 对数组Array对象扩展unite方法；
 * @method unite 类似concat，但FF不支持concat；
 * @param (arg) arg是需要增加的数组对象；
 */
Array.prototype.unite = function(arg){
	var temparg = new Array();
	var len1 = this.length;
	var len2 = arg.length;
	for(var i=0;i<(len1+len2);i++){
		if(i<len1) this[i] = this[i];
		else this[i] = arg[i-len1];
	}
	return this;
}

/**
 * 给数组扩展add方法.
 * @method add 类似push,需要增加的元素同元数组进行比较，如果没有相同值则追加，如果有则不追加;
 * @param {Object} obj 需要add的对象.
 */
Array.prototype.add = function(obj){
	var add_flag = true;
	for(var i=0;i<this.length;i++){
		if(this[i]==obj){
			add_flag = false;
			break;
		}
	}
	if(add_flag==true){
		this[this.length] = obj;
	}
}

// Author: Dakular
// Useage: HCmarquee(滚动对象id, 可见范围宽度, 可见范围高度, 滚动条数, 可见条数, 滚动速度, 停留时间, 方向); 方向有left和up两种
function HCmarquee(id,mw,mh,mr,sr,ms,pause){
	
	var obj=document.getElementById(id);
	obj.ss=false; //stop tag
	obj.mr=mr; //marquee rows
	obj.sr=sr; //marquee display rows
	obj.mw=mw; //marquee width
	obj.mh=mh; //marquee height
	obj.ms=ms; //marquee speed
	obj.pause=pause; //pause time
	obj.pt=0; //pre top
	obj.st=0; //stop time
	obj.mul=1;
	obj.con="";
	with(obj){
		style.width=mw+"px";
		style.height=mh+"px";
		noWrap=false;
		onmouseover=stopm;
		onmouseout=startm;
		scrollTop=0+"px";
		scrollLeft=0+"px";
	}

	if(obj.mr!=1){
				obj.tt=mh*mr/sr;
				obj.ct=mh; //current top
				obj.innerHTML+=obj.innerHTML;
				setInterval(scrollUp,obj.ms);
	}
	function scrollUp(){
		if(obj.ss==true) return;
		obj.ct+=1;
		if(obj.ct==obj.mh+1){
			obj.st+=1; obj.ct-=1;
			if(obj.st==(obj.pause*obj.mul)){
				obj.ct=0; obj.st=0;
				if(obj.mul==1) obj.mul = 1;
				else obj.mul = 1;
			}
		}else {
			obj.pt=(++obj.scrollTop);
			if(obj.pt==obj.tt){obj.scrollTop=0;}
		}
	}

	function stopm(){obj.ss=true;}
	function startm(){obj.ss=false;}
	
}
//]]>

function gradient(id) {
    var oId = document.getElementById(id);
    var tmp = 0;
    var autoGra = setInterval(function() { tmp += 10; oId.style.opacity = tmp * .01; oId.style.filter = 'alpha(opacity=' + tmp + ')'; if (tmp >= 100) clearInterval(autoGra) }, 10)
}
function gradientHd(id) {
    var oId = document.getElementById(id)
    oId.style.opacity = 0;
    oId.style.filter = 'alpha(opacity=0)';
}
/*
Name:				ball changeTab
*/
function ballTab(ctrl, cntpre, cwrap, isAuto, timeout) {
    var exhIndex = 0;
    var autoBall = setInterval(changeTab, 7000);
    if (timeout) {
        clearInterval(autoBall);
        setTimeout(function() { autoBall = setInterval(changeTab, 7000) }, 2300)
    }
    var exhCtrls = document.getElementById(ctrl).getElementsByTagName('span');
    for (var i = 0; i < exhCtrls.length; i++) {
        exhCtrls[i].onmouseover = function(i) {
            return function() {
                if (i == exhIndex) return;
                exhCtrls[i].className = 'on';
                exhCtrls[exhIndex].className = '';
                document.getElementById(cntpre + i).style.visibility = 'visible';
                gradient(cntpre + i);
                document.getElementById(cntpre + exhIndex).style.visibility = 'hidden';
                gradientHd(cntpre + exhIndex);
                exhIndex = i;
            }
        } (i)
    }
    document.getElementById(ctrl).onmouseover = document.getElementById(cwrap).onmouseover = function() {
        clearInterval(autoBall);
    }
    document.getElementById(ctrl).onmouseout = document.getElementById(cwrap).onmouseout = function() {
        autoBall = setInterval(changeTab, 7000);
    }
	var ballNum = exhCtrls.length;
    function changeTab() {
		if (exhIndex >= ballNum-1 && !isAuto)
		{
			clearInterval(autoBall);
		    document.getElementById(ctrl).onmouseover = document.getElementById(cwrap).onmouseover = document.getElementById(ctrl).onmouseout = document.getElementById(cwrap).onmouseout = null;
		}
        exhCtrls[exhIndex].className = '';
        exhCtrls[(exhIndex + 1) % ballNum].className = 'on';
        document.getElementById(cntpre + exhIndex).style.visibility = 'hidden';
        gradientHd(cntpre + exhIndex);
        document.getElementById(cntpre + (exhIndex + 1) % ballNum).style.visibility = 'visible';
        gradient(cntpre + (exhIndex + 1) % ballNum);
        exhIndex++;
        exhIndex %= ballNum;
    }
}


function ShowLogin()
{
	var sUser;
	sUser = Hc.widget.cookie.getValue("B2bMemberCode");
	if (null != sUser)
	{
		$("spnLogin").style.display = "none";
		$("spnLogout").style.display = "block";
		$("spnUser").innerHTML = " 欢迎您, <font color='red'>" + sUser + "</font> ";
	}
}
