//$Rev: 14594 $
if(!window.mmevents){
window.mmevents={
	timeout:3000,
	Tag:function(nodes,prerequest,transport,isbeforeuserhandler,event,isredir){
		var _t=this,_n=nodes,_tr=transport,_pr=prerequest,n,isb=isbeforeuserhandler,ev=event?event:'onclick';isredir=typeof isredir!='undefined'?isredir:true;
		if(!(ev=='onclick'||ev=='onmousedown'||ev=='onmouseup'))return 'invalid event';
		if(_n.tagName)_t._TagNode(_n,_pr,_tr,isb,ev,isredir);else if(_n.length)for(n=0;n<_n.length;n++)_t._TagNode(_n[n],_pr,_tr,isb,ev,isredir);
	},
	Request:function(node){
		var _t=this,_n=node;if(_t._tid)return;
		if(!_n.mmRedirect)_n.mmRedirect=function(){};
		if(_n.mmPreRequest)try{_n.mmPreRequest(_n);}catch(e){};
		_t._t0=(new Date()).getTime();_n.mmRequest();
		_t._tid=setInterval(function(){
			var isf=_n.mmIsFinished(),ist=((new Date()).getTime()-_t._t0)>=_t.timeout;if(ist&&!isf)_n.mmStop();
			if(isf||ist){clearInterval(_t._tid);_t._tid=null;var oldhr=true;
			if(_n.mmbefore&&_n.mmOldHandler)oldhr=_n.mmOldHandler(_n.mmevent);
			if(oldhr&&_n.mmisr)_n.mmRedirect();
			}
		},200);
	},
	//private
	_tid:null,_t0:null,
	_TagNode:function(n,pr,tr,isb,ev,isr){
		if(!n||!n.tagName)return;var _t=this;_t._CopyTransport(n,tr,pr);
		switch(n.tagName.toUpperCase()){
			case "FORM":_t._Tag_form(n,tr,isb);break;
			default:_t._Tag_a(n,tr,isb,ev,isr);break;
		}
	},
	_Tag_a:function(obj,tr,isbefore,ev,isr){
		if(!obj.mmev){obj.mmev=ev;obj.mmisr=isr;if(!obj.mmOldHandler)obj.mmOldHandler=obj[ev];obj[ev]=mm_a_onclick;obj.mmbefore=isbefore}
	},
	_Tag_form:function(obj,tr,isbefore){
		if(!obj.mmOldHandler){obj.mmOldHandler=obj.submit;obj.mmRedirect=function(){obj.mmOldHandler()};obj.mmisr=true;
		obj.submit=function(){var cont=true;try{if(obj.onsubmit)cont=obj.onsubmit()}catch(e){};if(cont){obj.onsubmit=null;mmevents.Request(this);}return false};obj.mmbefore=isbefore;var i,t,inp=obj.getElementsByTagName("input"),e;
		for (i=0;i<inp.length;i++){e=inp[i];t=e.type.toLowerCase();if((t=="submit")||(t=="image")){e.mmOldHandler=e.onclick;e.onclick=mm_submit_onclick;}}}
	},
	_CopyTransport:function(obj,tr,pr){
		var th=this,t=this._transport,opr=obj.mmPreRequest;if(!tr)tr=t;
		if(opr)obj.mmPreRequest=function(node){opr(node);pr(node);};else obj.mmPreRequest=pr;
		obj.mmtransport=obj.mmtransport?th._TransportBridge([obj.mmtransport,tr]):th._TransportBridge([tr,t]);
		obj.mmRequest=obj.mmtransport.Request;obj.mmIsFinished=obj.mmtransport.IsFinished;obj.mmStop=obj.mmtransport.StopRequest;
	},
	_TransportBridge:function(trs){
		var _t=this,_tr=_t._transport,
		__isf=function(){var r=true,i;for(i=0;i<trs.length;i++)r=r&&(trs[i].IsFinished||_tr.IsFinished)();return r}
		return {
			Request:function(callback){var i;for(i=0;i<trs.length;i++)(trs[i].Request||_t.Request)(callback)},
			IsFinished:function(){return __isf()},
			StopRequest:function(){var i;for(i=0;i<trs.length;i++)(trs[i].StopRequest||_tr.StopRequest)()}
		}
	},
	//default transport
	_transport:{Request:function(callback){},
				IsFinished:function(){return true},
				StopRequest:function(){}}
}
window.mm_a_onclick = function(e) {
	var p, t = this, h = t.href, ev = mmevents, _wl = window.location; t.mmevent = e;
	if (!t.mmbefore) try { if (t.mmOldHandler && t.mmOldHandler(e) === false) return false } catch (ex) { }
	if (h) {
		p = h.toLowerCase().indexOf("javascript:");
		if (p == -1) t.mmRedirect = function() {
		if (navigator.userAgent.indexOf("Chrome") != -1) {
			elem = document.createElement("a");elem.href = t.href;
				if (document.createEvent) {evt = document.createEvent('MouseEvents');}
				if (elem && elem.dispatchEvent && evt && evt.initMouseEvent) {
					evt.initMouseEvent('click', true, true, document.defaultView, 1, 0, 0, 0, 0, false, false, false, false, 0, null);
					elem.dispatchEvent(evt);
				}
			}
			_wl.assign(h);
		};
		else t.mmRedirect = eval("function(arg){" + h.substring(p + 11) + "}");
	}
	ev.Request(t); return false
}

	window.mm_submit_onclick=function(){
		var t=this;if(!t.mmbefore)try{if(t.mmOldHandler&&t.mmOldHandler()===false)return false
		}catch(e){};t.form.submit();return false
	}
}