
Object.extend = function(destination, source) {
  for (var property in source) {
    destination[property] = source[property];
  }
  return destination;
};

function G(element) {
  if (arguments.length > 1 ) {
    for (var i = 0, elements = [], length = arguments.length; i < length; i++) {
		elements.push(G(arguments[i]));
	}
    return elements;
  }
  if (typeof element == 'string')
    element = document.getElementById(element);
  if (element != null) {
  	return Element.extend(element);
  }else{
  	alert('找不到元素！');
  }
}


if (!window.Element) var Element = {};
Element.extend = function(element,fnName) {
	if (!fnName) {
		Object.extend(element, Element.methods);
	} else {
		for (var i = 1; i < arguments.length; i++) {
			if (!Element.methods[arguments[i]]) {
				alert('错误的参数!');
			}
			else {
				element[arguments[i]] = Element.methods[arguments[i]];
			}
		}
	}
	return element;
};

Element.methods = {

	tagWith: function(tag){
		var result = [];
		var elements =  this.getElementsByTagName(tag);
		for(var i = 0; i < elements.length; i ++) {
			result.push(Element.extend(elements[i]));
		}
		return result;
	},

	hasClass: function(className){
		var n = this.className;
		if(n.length == 0) return false;
		if(n == className || n.match(new RegExp('(^|\\s)' + className + '(\\s|$)'))){
			return true;
		}
		return false;
	},


	removeClass: function(className) {
		if(this.className != '' &&this.className.indexOf(className) != -1) {
			var reg = new RegExp('(^| )' + className + '( |$)');
			this.className = this.className.replace(reg,'');
		}
		return this;
	},

	addClass: function(className) {
		if(this.className.indexOf(className) == -1){
			this.className += (this.className ? ' ':'') + className;
		}
		return this;
	}

};

Object.extend(Array.prototype,{
	indexOf: function(object) {
	    for (var i = 0, length = this.length; i < length; i++)
	      if (this[i] == object) return i;
	    return -1;
  	},

	each: function(callback) {
		for(var i=0,len = this.length; i < len; i++) {
			callback(this[i]);
		}
	}
});

if(!window.Event) {
	var Event = new Object();
}

Object.extend(Event,{
	stop: function(event) {
		if(event.preventDefault) {
			event.preventDefault();
			event.stopPropagation();
		} else {
			event.returnValue = false;
			event.cancelBubble = true;
		}
	},

	observe: function(element, name, observer, useCapture) {
		if(!element.extended) Object.extend(element,Element.methods);

	    useCapture = useCapture || false;

	    if (name == 'keypress' && element.attachEvent)
	      name = 'keydown';

	    if(element.attachEvent){
			element.attachEvent('on' + name,observer);
		}else if(element.addEventListener) {
			element.addEventListener(name,observer,useCapture);
		}
	}

});

function scrollTab(start,end,target){
	var delt = end - start;
	var fraction = 3;
	if(!window.attachEvent){
		fraction = 6;
	}
	var step = Math.floor(delt / fraction);
	var nextPos = start + step;

	var timer = window.setInterval(function(){
		var ml = nextPos;
		target.style.marginLeft = '-' + ml + 'px';

		if(delt > 0){
			step = (end - nextPos) / fraction;
			nextPos += step;
		}else if(delt < 0){
			step = (nextPos - end) / fraction;
			nextPos -= step;
		}

		if (step < 0.5)
		{
			target.style.marginLeft = '-' + end + 'px';
			window.clearInterval(timer);
		}

	},10);

}
function registTabEvent(tabmod,evType){
	tabmod.each(function(mod){
		mod[0].each(function(tab){
			Event.observe(tab,evType,function(event){
				var index = mod[0].indexOf(tab);
					mod[1].each(function(mod){
						mod.style.display = 'none';
					});
					mod[1][index].style.display = '';
					mod[0].actor.removeClass('cur');
					mod[0].actor = tab;
					tab.addClass('cur');

					Event.stop(event);
			});
		});
	});
}

function setCookie(name, value, expires, path, domain, secure) {
    document.cookie= name + "=" + escape(value) +
        ((expires) ? "; expires=" + expires.toGMTString() : "") +
        ((path) ? "; path=" + path : "") +
        ((domain) ? "; domain=" + domain : "") +
        ((secure) ? "; secure" : "");
}

function getCookie(name) {
    var dc = document.cookie;
    var prefix = name + "=";
    var begin = dc.indexOf("; " + prefix);
    if (begin == -1) {
        begin = dc.indexOf(prefix);
        if (begin != 0) return null;
    } else {
        begin += 2;
    }
    var end = document.cookie.indexOf(";", begin);
    if (end == -1) {
        end = dc.length;
    }
    return unescape(dc.substring(begin + prefix.length, end));
}
function deleteCookie(name, path, domain) {
    if (getCookie(name)) {
        document.cookie = name + "=" +
            ((path) ? "; path=" + path : "") +
            ((domain) ? "; domain=" + domain : "") +
            "; expires=Thu, 01-Jan-70 00:00:01 GMT";
    }
}
function CreateFlash(idad, swfurl, wad, had, vs){
var str = "<object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" codebase=\"http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0\" width=\"" + wad + "\" height=\"" + had + "\" id=\"" + idad + "\" align=\"middle\">";
str += "<param name=\"allowScriptAccess\" value=\"always\">";
str += "<param name=\"quality\" value=\"high\">";
str += "<param name=\"wmode\" value=\"transparent\">";
str += "<param name=\"movie\" value=\"" + swfurl + "\">";
str += "<param name=\"flashvars\" value=\"" + vs + "\">";
str += "<embed src=\"" + swfurl + "\" flashvars=\"" + vs + "\" quality=\"high\" width=\"" + wad + "\" height=\"" + had + "\" name=\"" + idad + "\" align=\"middle\" allowScriptAccess=\"always\" type=\"application/x-shockwave-flash\" pluginspage=\"http://www.macromedia.com/go/getflashplayer\">";
str += "</object>";
document.write(str);
}

function ShowVideo(wad,had,idad,vid,divId){
			G(divId).innerHTML="";
			var hArr = [];
			hArr.push('<object width="'+wad+'" height="'+had+'" align="middle" id="'+idad+'" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000">');
			hArr.push('<param value="always" name="allowScriptAccess"/>');
			hArr.push('<param value="high" name="quality"/>');
			hArr.push('<param value="http://i.baidu.com/r/flash/2008-02-22/82bc691604f6dc1b600772640c88a60f.swf" name="movie"/>');
			hArr.push('<param value="vid='+vid+'" name="flashvars"/>');
			hArr.push('<embed width="'+wad+'" height="'+had+'" align="middle" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" allowscriptaccess="always" name="video1" quality="high" flashvars="vid='+vid+'" src="http://i.baidu.com/r/flash/2008-02-22/82bc691604f6dc1b600772640c88a60f.swf"/></object>');
			G(divId).innerHTML=hArr.join("");
		}

function setH(obj,url){
if(document.all)
{obj.style.behavior='url(#default#homepage)';obj.setHomePage(url);}
}
function setF(){
if(document.all){
window.external.addFavorite(window.location.href,window.document.title)}
}