
ZL_ZOOM_MIN=1; ZL_ZOOM_MAX=2.4; ZL_ZOOM_DEFAULT=1; //1024.0/800.0;
ZL_ZOOM_VALS=new Array(0.9,1,1.1,1.2,1.3,1.4,1.6,1.7,1.8,1.9,2.0,2.2,2.4);
ZL_ZOOM_CNAME="zl_zoom_tmp2"; ZL_ZOOM_CPATH="/"; ZL_ZOOM_CEXP=1;
ZL_ZOOM_TARGETS=new Array(
	".xlist",85,".xlistsmall",70,".xmain",85,".xbread",85,
	".maintitle",100,".tabley td",75,"td.maplink",85
	);
ZL_ZOOM_CVAL=ZL_ZOOM_DEFAULT;
ZL_ZOOM_SETUP_DONE=0;
ZL_ZOOM_RELOAD=0;

function zl_zoom_addrule(e,sel,val,mode){
	var is_op=(window.opera)
	var is_sf=(!document.all && navigator.userAgent.indexOf("Safari")>=0 && navigator.userAgent.indexOf("Mac")>=0);
	if(is_op || is_sf){
		if(mode!="setup"){
			if(is_op){
				var t=navigator.userAgent.split("Opera ");
				if(t.length>=2){
					t=parseFloat(t[1]);
					if(typeof(t)==typeof(1.1) && !isNaN(t) && t<7.5)
						ZL_ZOOM_RELOAD=1;
				}
			}
			if(is_sf){
				ZL_ZOOM_RELOAD=1;
			}
		}
		var s="<style type=text/css>"+sel+"{"+val+"}</style>";
		if(document.body && document.body.insertAdjacentHTML)
			document.body.insertAdjacentHTML("BeforeEnd",s);
		else if(mode=="setup"){
			document.write(s);
		}
	}else{
		if(e.addRule){
			e.addRule(sel,val);
		}else if(e.insertRule && e.cssRules){
			e.insertRule(sel+"{"+val+"}",e.cssRules.length);
		}
	}
}
function zl_zoom_set(r,mode){
	r =(r<ZL_ZOOM_MIN ? ZL_ZOOM_MIN : (r>ZL_ZOOM_MAX ? ZL_ZOOM_MAX : r));
	var r0=zl_zoom_get();
	var es=document.styleSheets;
	if(!es && document.getElementsByTagName)
		es=document.getElementsByTagName("style");
	if(r0!=r && es){
		var e=es[es.length-1];
//alert(e); alert(e.add);
		for(var i=0;i<ZL_ZOOM_TARGETS.length;i+=2){
			var name=ZL_ZOOM_TARGETS[i  ];
			var dval=ZL_ZOOM_TARGETS[i+1];
			zl_zoom_addrule(e,name,"font-size:"+dval*r+"%",mode);
//alert(name+":"+dval*r+"%");
		}
	}
	ZL_ZOOM_CVAL=r;
	if(mode!="setup") zl_zoom_cset(r);

	if(ZL_ZOOM_RELOAD){ location.reload(); }
}
function zl_zoom_get(){
	return ZL_ZOOM_CVAL;
}
function zl_zoom_inc(n){
	var r=zl_zoom_get();
	var rr=-1;
	if(n>0){
		for(var i=0;i<ZL_ZOOM_VALS.length;i++)
			if(ZL_ZOOM_VALS[i]>r+0.01){ rr=ZL_ZOOM_VALS[i]; break;}
	}else{
		for(var i=ZL_ZOOM_VALS.length-2;i>=0;i--)
			if(ZL_ZOOM_VALS[i]<r-0.01){ rr=ZL_ZOOM_VALS[i]; break;}
	}
	if(rr>0){
		zl_zoom_set(rr,"inc");
	}
	window.status="{F"+(rr>0 ? rr : r);
}
function zl_zoom_uget(){
	var u=location.href;
	var t=u.split("?zl_zoom=");
	if(t.length<=1) return "";
	return t[1];
}
function zl_zoom_cget(){
	var v=document.cookie; var key=ZL_ZOOM_CNAME;
	var ns=v.indexOf(key+"="); if(ns<0) return ""; ns=ns+key.length+1;
	var ne=v.indexOf(";",ns ); if(ne<0) ne=v.length;
	return v.substring(ns,ne);
}
function zl_zoom_cset(val){
	var key=ZL_ZOOM_CNAME; var path="/";
	var exp="Tue, 31-Dec-2030 23:00:00 GMT";
	var cs=key+"="+val+";";
	if(path.length) cs+=" path="   +path+";";
	document.cookie=cs;
}
function zl_zoom_setup(){
	var zc=zl_zoom_cget();
	var zu=zl_zoom_uget();
	var zz=(zu.length ? zu : zc);
	if(zz.length){
		zz=parseFloat(zz);
		if(typeof(zz)==typeof(1.1) && !isNaN(zz) && zz!=ZL_ZOOM_DEFAULT)
			zl_zoom_set(zz,"setup");
	}
	ZL_ZOOM_SETUP_DONE=1;
}
zl_zoom_setup();
