function setOpacity(value, vid)
{
	if(value==7) {
	//	show();
	}
	Obj=document.getElementById(vid);

	Obj.style.opacity = value/20;
	Obj.style.filter = 'alpha(opacity=' + value*5 + ')';
}


function showLogin(){
	document.getElementById('fader').style.display='block';
	for (var i=0;i<16;i++)	{
		setTimeout('setOpacity('+i+', \'fader\')',20*i);
	}
	setTimeout('document.getElementById(\'loginbox\').style.display=\'block\'',20*i);
}

function hideLogin(){
	document.getElementById('fader').style.display='none';	
	document.getElementById('loginbox').style.display='none';	
	setOpacity(0, 'fader');
}

function lightLogoOn(){
	
	setOpacity(0, 'logo');
	
	for (var i=0;i<21;i++)	{
		setTimeout('setOpacity('+i+', \'logo\')',50*i);
	}

	
}
//gals


function showgal(id)
{

	if (document.compatMode && document.compatMode != "BackCompat"){
	   theHeight = document.documentElement.scrollHeight;
	}
	else{
   	theHeight = document.body.scrollHeight;
	}
        
	if(document.getElementById('gallay').style.display=='block'){
		
//		document.getElementById('fotoitem').style.display='none';
		
		document.getElementById('imggall2').innerHTML='';
		obj=document.getElementById('imggall');
		obj.style.height=0+'px';
		obj.style.width=0+'px';		
		
		show(id);
	}
	else{
		document.getElementById('gallay').style.display='block';
		document.getElementById('gallay').style.height=theHeight+'px';
		
  	// document.getElementById('fader').style.display='block';
 		
		for (var i=0;i<=12;i++)	{
			if(i!=8){
				setTimeout('setOpacity('+i+',\'gallay\')',100*i);
			}
			else{
				setTimeout('show('+id+');',100*i);
			}
		}
	}
}

function show(id){
	dtop=document.documentElement.scrollTop;	
	htop=document.documentElement.clientHeight;
	prc=0;
	if(htop>0){
		prc=parseInt(dtop/htop*100)+50;
	}
	document.getElementById('galbg').style.top=prc+'%';
	document.getElementById('galbg').style.display='block';
	
	var str="";
//	document.getElementById('fotoitem').innerHTML=str;
	document.getElementById("bulb").style.display="none";

	document.getElementById("bulb"+current).src=im1;
	document.getElementById("bulb"+id).src=im2;
	current=id;
					                                                  
	resizer('galbg',warr[id]+32,harr[id]+72,iarr[id]);


}

function resizer(a,w,h,imgt){
	ws=w;
	if(a=='galbg'){if(w<320) w=320;}
	
	obj=document.getElementById(a);
	w0=obj.clientWidth;
	h0=obj.clientHeight;
	dw=w-w0;
	dh=h-h0;
	//alert(a);
	m=Math.abs(dw);
	if(Math.abs(dw)<Math.abs(dh)){
		m=Math.abs(dh);
	}
	step=parseInt(m/10);
	
	
	for (var i=0;i<=step;i++)	{
		if(i<step){
			if (step!=1) setTimeout('document.getElementById("'+a+'").style.marginLeft="-'+((w0+(dw/(step-1))*i)/2)+'px"; document.getElementById("'+a+'").style.width="'+(w0+(dw/(step-1))*i)+'px";document.getElementById("'+a+'").style.height="'+(h0-16+(dh/(step-1))*i)+'px";document.getElementById("'+a+'").style.marginTop="-'+((h0+(dh/(step-1))*i)/2)+'px";',50*i);
		}
		else{
			if(a=='galbg'){
				
				setTimeout('galimg("'+imgt+'","'+(ws-32)+'","'+(h-72)+'");',(50*i+200));
			}
			else{
				setTimeout('preparecroper("'+a+'","'+imgt+'","'+(w-32)+'","'+(h-80)+'")',(50*i+200));
			}
		}
	}
}



function galimg(imgt,w,h){
	
	
	//alert(parseInrt);
	
	obj=document.getElementById('imggall')
	obj.style.height=h+'px';
	obj.style.width=w+'px';
	document.getElementById('imggall'+2).innerHTML='<img src="'+imgt+'">';
	
	document.getElementById('namegal').style.display='block';

	
	document.getElementById("bulb").style.display="block";
	
}

function hidegal(){
	document.getElementById('fader').style.display='none';

//	document.getElementById('fotoitem').style.display='none';
	document.getElementById('namegal').style.display='none';

	document.getElementById('imggall2').innerHTML='';
	
	obj=document.getElementById('imggall');
	obj.style.height=0+'px';
	obj.style.width=0+'px';
	document.getElementById('gallay').style.display='none';
	
	obj=document.getElementById('galbg');
	obj.style.width='300px';
	obj.style.height='300px';
	obj.style.marginTop='-150px';
	obj.style.marginLeft='-150px';

	obj.style.display='none';
	
	Obj=document.getElementById('gallay');
	Obj.style.opacity = 0;
	Obj.style.filter = 'alpha(opacity=0)';
}


//towns

function checkb(a,c){
	b=document.getElementById(c).value;
	if(b==0)	{
		a.className="checksel";
		document.getElementById(c).value=1;
	}
	else {
		a.className="check";
		document.getElementById(c).value=0;
	}
}

function selsex(a){
	document.getElementById('man').src='/res/gfx/sex_man.gif';
	document.getElementById('wman').src='/res/gfx/sex_wman.gif';
	document.getElementById('wmant').className='';
	document.getElementById('mant').className='';		

	document.getElementById('sex').value=a;
	document.getElementById(a).src='/res/gfx/sex_'+a+'_sel.gif';
	document.getElementById(a+'t').className='sel';
}

///////////--------///////////
function showbg(lay,bgcont){
	if (document.compatMode && document.compatMode != "BackCompat"){
	   theHeight = document.documentElement.scrollHeight;
	}
	else{
   	theHeight = document.body.scrollHeight;
	}
	document.getElementById(lay).style.display='block';
	document.getElementById(lay).style.height=theHeight+'px';
	for (var i=0;i<=8;i++)	{
		if(i!=8){
			setTimeout('setOpacity('+i+',"'+lay+'")',100*i);
		}
		else{
			setTimeout("document.getElementById('"+bgcont+"').style.display='block';",100*i);
		}
	}
}


var req;

function loadXMLDoc(url)
{
    if (window.XMLHttpRequest) {
        req = new XMLHttpRequest();
        req.onreadystatechange = processReqChange;
        req.open("GET", url, true);
        req.send(null);
    } else if (window.ActiveXObject) {
        req = new ActiveXObject("Microsoft.XMLHTTP");
        if (req) {
            req.onreadystatechange = processReqChange;
            req.open("GET", url, true);
            req.send();
        }
    }
}


function hid(a){
	setTimeout('hidf("'+a+'")',500);
}

function hidf(a){
	document.getElementById(a).style.display='none';
}

function chtown(){
	if(document.getElementById('town').value!=''){
		url=window.location.href;
		url=url.split('/');
		url = 'http://'+url[2]+'/ajax.php?checktown=1&txt='+document.getElementById('town').value+'&l='+document.getElementById('town').value.length; 
		loadXMLDoc(url);
	}
	else{
		document.getElementById('notown').style.display='none';
	}
}

function getTown(a){	
	setTimeout('getTownf("'+a+'")',100);
}

var lasturl='';
var lastch='';

function getTownf(a){	
	t=document.getElementById(a).value;
	c=t.charCodeAt(t.length-1);
	if((c>=65 && c<=97) || (c>=90 && c<=122)){
		document.getElementById(a).value=document.getElementById(a).value.substr(0,(t.length-1));
		setTimeout("document.getElementById('noeng').style.display='block';",100);
		hidf('townlist');
	}
	else{
		setTimeout("document.getElementById('noeng').style.display='none'",50);
		if(t.length>0){
			url=window.location.href;
			url=url.split('/');
			url = 'http://'+url[2]+'/ajax.php?txt='+t+'&l='+t.length;
			//hidf('townlist');
			if(url!=lasturl){
				loadXMLDoc(url);
				lasturl=url;
			}
		}
		else{
			lasturl='';
			hidf('townlist');
		}
	}
}


function addtown(){
	document.getElementById('townnew').value=1;
	document.getElementById('notown').innerHTML='Город "'+document.getElementById('town').value+'" будет добавлен.';
}

function processReqChange()
{
	if (req.readyState == 4){
		if (req.status == 200){
			var a=req.responseText;
			//alert(a);
			if(a=='ok'){;}
			else if(a.substr(0,9)=='checktown'){
				if(a!=''){
					istown=a.substr(10,11);
					if(istown==0){
						document.getElementById('notown').style.display='block';
						document.getElementById('notown').innerHTML='Города "'+document.getElementById('town').value+'" нет в нашей базе. <span class="addtown" onclick="addtown()">Добавить</span>?';
						document.getElementById('townnew').value=0;
					}
					else{
						document.getElementById('notown').style.display='none';
					}
				}
			}
			else if(document.getElementById('townlist')){
				document.getElementById('townlist').style.display='block';
				document.getElementById('towncont').innerHTML=a;
				len=a.length;
				if(len==0){
					document.getElementById('townlist').style.display='none';
				}				
			}
			else{
				//alert(a);
				if (window.ActiveXObject) {
					xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
					xmlDoc.async=false;
			    xmlDoc.loadXML(a); 
				} 
				else if (document.implementation && document.implementation.createDocument) {
					var parser = new DOMParser();
					var xmlDoc = parser.parseFromString(a, "text/xml");
				} 
				else {
					alert('Your browser cannot handle this script');
				}
				var root = xmlDoc.documentElement;
				type=root.getAttribute("type");
				
				if(type=='gal')	{
/*					var viewuser=root.getElementsByTagName("viewuser");
					document.getElementById('islogin').value=viewuser[0].getAttribute("islogin");
					document.getElementById('ratinggal').innerHTML=viewuser[0].getAttribute("givenball");
					document.getElementById('givenball').value=viewuser[0].getAttribute("givenball");
					document.getElementById('freeball').value=viewuser[0].getAttribute("freeball");
					document.getElementById('issex').value=viewuser[0].getAttribute("issex");
					
					document.getElementById('allball').value=Math.abs(viewuser[0].getAttribute("givenball"))+Math.abs(viewuser[0].getAttribute("freeball"));
					
					var user=root.getElementsByTagName("user");
					document.getElementById('reader_id').value=user[0].getAttribute("reader_id");
					document.getElementById('namegal').innerHTML=user[0].getAttribute("name");
					document.getElementById('ballgal').innerHTML=user[0].getAttribute("rating");
					
					var items=root.getElementsByTagName("item");
					str='';
					for(i=1;i<=6;i++){
						
						if(items[(i-1)].getAttribute("type")==2){
							//alert(i);
							document.getElementById('balltask').value=i;
							str+='<div class="tek"><img src="/res/gfx/galact.gif" width="12" height="12" alt="" /></div>';
						}
						else if(items[(i-1)].getAttribute("type")==1){
							str+='<div class="ok"><img onclick="showgal('+items[(i-1)].getAttribute("reader_id")+','+items[(i-1)].getAttribute("task")+')" src="/res/gfx/galact.gif" width="12" height="12" alt="" /></div>';
						}
						else{
							str+='<div><img src="/res/gfx/galno.gif" width="12" height="12" alt="" /></div>';
						}
					}
					document.getElementById('fotoitem').innerHTML=str;
					
					var img=root.getElementsByTagName("img");
					
					resizer('galbg',parseInt(img[0].getAttribute("width"))+32,parseInt(img[0].getAttribute("height"))+72,img[0].getAttribute("src"));
	*/			
			////xml///
							
				}
			}
		} 
		else {
    	alert("There was a problem retrieving the XML data:\n" + req.statusText);
    }
  }
}

function selTown(o,a,b){
	document.getElementById(b).value=o.firstChild.nodeValue;
}

var colorsel="#4e4b6b";
var colorok='#2f2d44';

function odiv(a){
	for(count=0;document.getElementById('towncont').childNodes[count];count++){
		document.getElementById('towncont').childNodes[count].style.backgroundColor=colorok;
	}	
	a.style.backgroundColor=colorsel;
	a.style.zindex='51';
}

function outdiv(a){
	a.style.backgroundColor=colorok;
	a.style.zindex='50';
}

var sel=-1;
function ctrlcheck(e){
	var code;
	if (!e) var e = window.event;
	if (e.keyCode) code = e.keyCode;
	else if (e.which) code = e.which;
		if(document.getElementById('townlist').style.display=='block'){

		if (code == 13) {
			for(count=0;document.getElementById('towncont').childNodes[count];count++){;}
			sel=-1;
			for(i=0;i<count;i++){
				if(document.getElementById('towncont').childNodes[i].style.zIndex=='51'){
					sel=i;
				}
			}
			if(sel!=-1){
				document.getElementById('town').value=document.getElementById('towncont').childNodes[sel].firstChild.nodeValue;
			}
			hid('townlist');
		}
		
			if(code==38||code==40){
				for(count=0;document.getElementById('towncont').childNodes[count];count++){
				}
				sel=-1;
				for(i=0;i<count;i++){
					if(document.getElementById('towncont').childNodes[i].style.zIndex=='51'){
						sel=i;
						document.getElementById('towncont').childNodes[i].style.zIndex='50';
						document.getElementById('towncont').childNodes[i].style.backgroundColor=colorok;
					}
				}
			if (code == 38) {
				sel--;
				if(sel<0){
					sel=count-1;
				}
			}
			if (code == 40) {
				sel++;
				if(sel>=count){
					sel=0;
				}
			}
			if(count>0){
				document.getElementById('towncont').childNodes[sel].style.backgroundColor=colorsel;
				document.getElementById('towncont').childNodes[sel].style.zIndex='51';
			}
		}
	}
}

function testp(a){
	if(document.getElementById(a).style.display=='block'){
		return false;
	}
}

//upload

var cont_h=0;
var cont_w=0;
var isdrag=false;
var isresize=false;

var drag_h=160;
var drag_w=120;
var drag_x=0;
var drag_y=0;

var start_x=0;
var start_y=0;
var ss_x=0;
var ss_y=0;

function preparecroper(a,imgt,w,h){
	document.getElementById('close').style.display='block';
	document.getElementById(a+'_c').style.width=w+'px';
	document.getElementById(a+'_c').style.height=h+'px';
	document.getElementById(a+'_c').style.backgroundImage='url('+imgt+')';
	document.getElementById('butsave').style.display='block';
	document.getElementById('sel').style.display='block';
	

	if (h>w) {
		drag_w=w-20;
		drag_x=10;
		drag_h=w-20;
		drag_y=10;

	} else {
		drag_h=h-20;
		drag_y=10;
		drag_w=h-20;
		drag_x=10;
	}
	
	drag_draw();
	cont_h=h;
	cont_w=w;
}
function drag_draw(){
	obj=document.getElementById('sel');
	obj.style.height=drag_h+'px';
	obj.style.width=drag_w+'px';
	obj.style.left=drag_x+'px';
	obj.style.top=drag_y+'px';
	
	document.getElementById('crop_x').value=drag_x;
	document.getElementById('crop_y').value=drag_y;
	document.getElementById('crop_h').value=drag_h;
	document.getElementById('crop_w').value=drag_w;
}

function startsel(e){
	if(!isresize){
		isdrag=true;
		start_x = (window.Event) ? e.pageX : event.clientX;
		start_y = (window.Event) ? e.pageY : event.clientY;
		ss_x=drag_x;
		ss_y=drag_y;
	}
}

function endsel(){
	isdrag=false;
	isresize=false;
}

function movesel(e){
	if(isdrag && !isresize){
		cx = (window.Event) ? e.pageX : event.clientX;
		cy = (window.Event) ? e.pageY : event.clientY;
		drag_x=ss_x+cx-start_x;
		drag_y=ss_y+cy-start_y;
		if(drag_x<0) drag_x=0;
		if(drag_y<0) drag_y=0;
		if((drag_x+drag_w)>cont_w){
			drag_x=cont_w-drag_w-2;
		}
		if((drag_y+drag_h)>cont_h){
			drag_y=cont_h-drag_h-2;
		}
		drag_draw();
	}
	else if(isresize){
		resizesel(e);
	}
}

function startresize(e){
	isdrag=false;
	isresize=true;
	start_x = (window.Event) ? e.pageX : event.clientX;
	start_y = (window.Event) ? e.pageY : event.clientY;
	ss_x=drag_w;
	ss_y=drag_h;
}

function endresize(){
	isresize=false;
}

function resizesel(e){
	if(isresize){
		cx = (window.Event) ? e.pageX : event.clientX;
		cy = (window.Event) ? e.pageY : event.clientY;
		drag_w=cx-start_x+ss_x;
		drag_h=cy-start_y+ss_y;
		
		
		if((drag_w)>(drag_h)){
			drag_h=drag_w;
		}
		else{
			drag_w=drag_h;
		}
		
		if(drag_w<80){
			drag_w=80;
		}
		if(drag_h<80){
			drag_h=80;
		}
		if((drag_w+drag_x)>cont_w){
			drag_w=cont_w-drag_x-2;
		}
		if((drag_h+drag_y)>cont_h){
			drag_h=cont_h-drag_y-2;
		}
		
		if((drag_w)>(drag_h)){
			drag_w=drag_h;
		}
		else{
			drag_h=drag_w;
		}
		drag_draw();
	}
}

/////////////////////end drag

function getAbsolutePos(el){
  var SL=0
  var ST=0;
  if(el.tagName.toLowerCase()=='div') {
    if(el.scrollLeft) SL=el.scrollLeft;
    if(el.scrollTop) ST=el.scrollTop;
  }
  var r={ x: el.offsetLeft - SL, y: el.offsetTop - ST };
  if(el.offsetParent) {
    var tmp=this.getAbsolutePos(el.offsetParent);
    r.x+=tmp.x;
    r.y+=tmp.y;
  }
  return r;
}

function closew(){
	document.getElementById('sel').style.display='none';
	Obj=document.getElementById('bgcropcont_c');
	Obj.style.width="0";
	Obj.style.height="0";
	Obj=document.getElementById('bgcropcont');
	Obj.style.width="300px";
	Obj.style.height="300px";
	Obj.style.marginLeft="-150px";
	Obj.style.marginTop="-150px";
	Obj.style.display="none";
	Obj=document.getElementById('bgcrop');
	Obj.style.display="none";
	Obj.style.opacity = '0';
	Obj.style.filter = 'alpha(opacity=0)';
	document.getElementById('butsave').style.display='none';
	document.getElementById('close').style.display='none';
	document.getElementById('bgcropcont_c').style.backgroundImage='none';
}

function testsize(){
	obj=document.getElementById('bgcropcont');
	r=getAbsolutePos(obj);
	if(r.x<0){
		obj.style.left=0;
		obj.style.marginLeft=0;
	}
	if(r.y<0){
		obj.style.top=0;
		obj.style.marginTop=0;
	}
}
function resize() {
	if (document.compatMode && document.compatMode != "BackCompat"){
	   Height = document.documentElement.clientHeight;
	}
	else{
   	Height = document.body.clientHeight;
	}
	dh=document.getElementById('galbg').clientHeight;
	
	if(dh>Height){
		dh=Height;
	}
	document.getElementById('galbg').style.marginTop=(dh/2*-1)+'px';
	return false;
}
function funfoto(e){
	document.getElementById('foto').style.display='block';
	x = (window.Event) ? e.pageX : event.clientX;
	y = (window.Event) ? e.pageY : event.clientY;

	d=0;
	if (navigator.appName=="Microsoft Internet Explorer")
	{
		d=document.documentElement.scrollTop;
	}
	y=y+d;
	document.getElementById('foto').style.cursor='pointer';
	r=getAbsolutePos(document.getElementById('brovise'));
	if(r.x>x){
		document.getElementById('foto').style.display='none';
	}
	
	if(r.y>y){
		document.getElementById('foto').style.display='none';
	}

	if((r.x+document.getElementById('ffnam').clientWidth)<x){
		document.getElementById('foto').style.display='none';
	}

	if((r.y+document.getElementById('ffnam').clientHeight)<y){
		document.getElementById('foto').style.display='none';
	}
	
	document.getElementById('foto').style.left=x-r.x-36+'px';
	document.getElementById('foto').style.top=y-r.y-3+'px';
}
function cropimgshow(a){
	showbg('bgcrop','bgcropcont');
	setTimeout('document.f1.submit()',900);
}


function handleResponse(imgt,w,h) {
	if(w>=80 || h>=80){
  	resizer('bgcropcont',w+32,h+80,imgt);
  	document.getElementById('formaterror1').style.display='none';
  	document.getElementById('crop_task_id').value=1;
  	document.getElementById('crop_img').value=imgt;
  	
	}
	else{
		if(w==0 && h==0){
			txt='Неверный формат загруженого файла.';
		}
		else{
			txt='Изображение долно быть больше чем 80х80.';
		}
		document.getElementById('formaterror1').style.display='block';
		document.getElementById('formaterror').innerHTML=txt;
		closew();
	}
}
