var xPos = 0;
var yPos = 0;

	var isIE = (navigator.appName == "Microsoft Internet Explorer");
	var isFF = (!isIE && !(navigator.appVersion.indexOf("MSIE")>-1));
	var isOPR = (navigator.userAgent.indexOf("Opera")!=-1);
	var isIE6 = navigator.userAgent.indexOf("MSIE 6.0") >= 0;
	var isIE7 = navigator.userAgent.indexOf("MSIE 7.0") >= 0;
	var isIE8 = navigator.userAgent.indexOf("MSIE 8.0") >= 0;
	if (isOPR) { isIE = false; }

function fixPNG(element)
{
  //Если браузер IE версии 5.5-6
  if (/MSIE (5\.5|6).+Win/.test(navigator.userAgent))
  {
    var src;

    if (element.tagName=='IMG' || element.tagName=='INPUT') //Если текущий элемент картинка (тэг IMG)
    {
      if (/\.png$/.test(element.src)) //Если файл картинки имеет расширение PNG
      {
      	h = element.offsetHeight;
      	w = element.offsetWidth;
      	if (!h)
      		h = parseInt(element.style.height);
		if (!w)
      		w = parseInt(element.style.width);
      		
        src = element.src;
        element.src = "/images/pixel.gif"; //заменяем изображение прозрачным gif-ом
      }
    }
    else //иначе, если это не картинка а другой элемент
    {
	  //если у элемента задана фоновая картинка, то присваеваем значение свойства background-шmage переменной src
      src = element.currentStyle.backgroundImage.match(/url\("(.+\.png)"\)/i);
      if (src)
      {
        src = src[1]; //берем из значения свойства background-шmage только адрес картинки
        element.runtimeStyle.backgroundImage="none"; //убираем фоновое изображение
      }
    }
    //если, src не пуст, то нужно загрузить изображение с помощью фильтра AlphaImageLoader
    if (src) {element.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "',sizingMethod='scale')"; element.style.height = h +'px'; element.style.width = w +'px';}
    
  }

}

window.onload = function() { if (isIE6) DD_belatedPNG.fix('img'); }

function getHTTP(){
	var xmlhttp;
	if (!xmlhttp && typeof XMLHttpRequest != 'undefined'){
		try{
			xmlhttp = new XMLHttpRequest();
		}catch (e){
			xmlhttp = false;
		}
	}
	return xmlhttp;
}

function checkRegForm(form,needsubmit){
	top.document.getElementById('regFormSubmitButton').disabled=true;
	needsubmit=typeof needsubmit=='undefined'?false:needsubmit;
	jQuery("span[id^='error-']").html('');
	jQuery("input.input_error,select.input_error,textarea.input_error").removeClass("input_error");
	var rtrn=true;
	if(needsubmit && rtrn){form.submit();}
	else{return rtrn;}
}

function login(sbmt){
	sbmt=typeof sbmt=='undefined'?false:sbmt;
	if(sbmt){
		var data={name:jQuery("#auth-name").val(),password:jQuery("#auth-password").val()}
		if(data.name==''||data.name=='Ваш e-mail'){alert('Вы не указали Ваш e-mail!');return;}
		if(data.password==''){alert('Вы не указали Ваш пароль!');return;}
		jQuery.ajax({
			type:"POST",
			url:"/work/login.php",
			data:data,
			success:function(html){
				jQuery('#login_form').remove();
				jQuery('#auth_block').append(html);
			}
		});
	}else{
		if(document.getElementById('login_error')){document.getElementById('login_error').parentNode.removeChild(document.getElementById('login_error'));}
		if(document.getElementById('login_link')){document.getElementById('login_link').parentNode.removeChild(document.getElementById('login_link'));}
		var a=document.createElement('div');
		a.id="login_form";
		a.style.marginTop="5px";
		a.innerHTML='<p><input type="text" id="auth-name" onblur="if(this.value==\'\'){this.value=\'Ваш e-mail\';}" onfocus="if(this.value==\'Ваш e-mail\'){this.value=\'\';}" value="Ваш e-mail" /></p>';
		a.innerHTML+='<p style="position:relative;"><label style="position:absolute;left:7px;top:4px;font-size:11px;color:#000;font-style:normal;" id="pass_label" for="pass">Пароль</label><input onfocus="document.getElementById(\'pass_label\').style.display=\'none\'" onblur="if(this.value.length<1){document.getElementById(\'pass_label\').style.display=\'block\';}" id="auth-password" type="password" value="" /></p>';
		a.innerHTML+='<p><input style="border:0;padding:0;" type="image" src="/images/login_button.gif" onclick="login(true)" alt="войти" /> <a href="/recovery">забыли пароль?</a></p>';
		a.innerHTML+='<p><a href="/registration" id="reg_link">зарегистрироваться</a></p>';
		document.getElementById('auth_block').appendChild(a);
	}
}

function logout(){
	jQuery.ajax({
		type:"POST",
		url:"/work/logout.php",
		data:'',
		success:function(html){
			jQuery('#login_info').remove();
			jQuery('#auth_block').append(html);
		}
	});
}

function step(el,id){
	//el.disabled=true;
	document.getElementById('sb_step_'+id).className=el.checked?'prg_sl':'prg_nsl';
	jQuery.ajax({
		type:"POST",
		url:"/work/step.done.php",
		data:{id:id,done:el.checked?'Y':'N'},
		success:function(html){
			// let's have a rest
		}
	});
}

function checkStep(el,id){
	//el.disabled=true;
	document.getElementById('sb_step_'+id).className=el.checked?'prg_sl':'prg_nsl';
	el.parentNode.className=el.checked?'checked':'';
	jQuery.ajax({
		type:"POST",
		url:"/work/step.done.php",
		data:{id:id,done:el.checked?'Y':'N'},
		success:function(html){
			// let's have a rest
		}
	});
}


function search(where,what){
	what.blur();
	var a=what.value;
	var b=document.createAttribute('readonly');
	what.setAttributeNode(b);
	if(what.value.length<3){
		what.style.color='#ff0000';
		what.style.textAlign='center';
		what.value='Слишком короткая строка!';
		top.window.setTimeout(function(){
			what.style.color='#000000';
			what.style.textAlign='left';
			what.removeAttributeNode(b);
			what.value=a;
			what.focus();
		},1234);
		return;
	}
	data={where:where,what:what.value};
	what.value='Идёт поиск...';
	jQuery.ajax({
		type:"POST",
		url:"/work/search.php",
		data:data,
		success:function(html){
			if(html=='[no-results]'){
				what.style.color='#ff0000';
				what.style.textAlign='center';
				what.value='Ничего не найдено!';
				top.window.setTimeout(function(){
					what.style.color='#000000';
					what.style.textAlign='left';
					what.removeAttributeNode(b);
					what.value=a;
					what.focus();
				},1234);
			}else{
				if(document.getElementById('search_results_title')){document.getElementById('search_results_title').innerHTML='Результаты поиска';}
				$("div."+where+"-block","#center").remove();
				$("#paging-div","#center").remove();
				$("#search_content").append(html);
				what.removeAttributeNode(b);
				what.value=a;
				if(!document.getElementById('search-reset-link')){
					b=document.createElement('a');
					b.id="search-reset-link";
					b.href=window.location.href;
					b.style.fontSize="10px";
					b.innerHTML='сбросить результаты поиска';
					what.parentNode.appendChild(b);
				}
			}
		}
	});
}

function comment(form,object,object_id){
	needsubmit=typeof needsubmit=='undefined'?false:needsubmit;
	jQuery("#error-comment-text").html('');
	if(!document.getElementById('comment-text').value.length){
		jQuery("#error-comment-text").html('Вы не написали свой комментарий!');
		return false;
	}
	var data={object:object,object_id:object_id,parent_id:jQuery("#comment-parent_id").val(),text:jQuery("#comment-text").val()};
	jQuery.ajax({
		type:"POST",
		url:"/work/comment.php",
		data:data,
		success:function(html){
			if(html=='[not-logged]'){alert('Гости не могут оставлять комментарии!');}
			else{
				jQuery("#comment-parent_id,#comment-text").val('');
				if(Number(data.parent_id)>Number(0)){
					jQuery("#comment-"+data.parent_id).append(html);
				}else{
					jQuery("#comments").append(html);
				}
				if(html.indexOf('id="comment-')>1&&html.indexOf('"><p class="whome">')>1){
					var newid=html.substring(html.indexOf('id="comment-')+12,html.indexOf('"><p class="whome">'));
					top.window.location.href="#comment-"+newid;
				}
			}
		}
	});
	return true;
}

function comment_delete(id){
	var data={del:id};
	jQuery.ajax({
		type:"POST",
		url:"/work/comment.php",
		data:data,
		success:function(html){
			html=html.split(',');
			for(var i=0;i<html.length;i++){
				jQuery("#comment-"+html[i]).remove();
			}
		}
	});
	return true;
}

function cloneAttach(el){
	if(el.value.length){
		if($('input.uplattach',el.parentNode).length>20){return;}
		$(el).clone().appendTo(el.parentNode);
		$('input.uplattach',el.parentNode).last().val('');
	}
}

function hint(el,id){
	if(!document.getElementById('hint')){
		var a=document.createElement('div');
		a.id='hint';
		document.getElementsByTagName('BODY')[0].appendChild(a);
	}
	if(typeof id=='undefined'){
		jQuery('#hint').hide().html('');
		jQuery(el).unbind("mousemove");
	}else{
		id=document.getElementById(id);
		jQuery(el).bind("mousemove",function(e){
			//jQuery('#hint').html(id.innerHTML).css({left:e.pageX+10,top:e.pageY+10,maxWidth:(jQuery(window).width()-e.pageX+10)*0.95}).show();
			jQuery('#hint').html(id.innerHTML);
			if(eval(jQuery('#hint').height()+e.pageY+40)>jQuery(window).height()){
				jQuery('#hint').css({left:e.pageX+10,top:e.pageY-jQuery('#hint').height()-20,maxWidth:jQuery(window).width()-e.pageX-50}).show();
			}else{
				jQuery('#hint').css({left:e.pageX+10,top:e.pageY+10,maxWidth:jQuery(window).width()-e.pageX-50}).show();
			}
		});
	}
}

function law(id,e){
	if(document.getElementById(id.replace('title','text'))){
		var title=document.getElementById(id);
		var text=document.getElementById(id.replace('title','text'));
		var a=document.createElement('div');
		a.style.position="absolute";
		a.top=-999999999;
		a.left=-999999999;
		document.getElementsByTagName('BODY')[0].appendChild(a);
		jQuery(a).html('<div class="window-close" onclick="jQuery(this.parentNode).hide().html(\'\');"></div>'+text.innerHTML);
		jQuery('#law').html(a.innerHTML);
		if(jQuery(a).width()>e.pageX*0.9){jQuery('#law').width(e.pageX*0.9);}
		else{jQuery('#law').width(jQuery(a).width());}
		jQuery('#law').css({right:jQuery(window).width()-e.pageX-10,top:e.pageY+10}).show();
		$(a).remove();
	}
}

function partners(where){
	if(typeof where=='undefined'){where=false;}
	var partners=document.getElementById('partners-table');
	var width=Number(jQuery(partners).attr('imageswidth'));

	var a=jQuery('#partners-table img');
	var b=new Array();
	var c=Number(jQuery(a[0].parentNode.parentNode).css("paddingRight").replace('px',''));

	for(var i=0;i<a.length;i++){
		width+=c;
		b[b.length]=i>0?eval(a[i].width+c+b[i-1]):eval(a[i].width+c);
	}

	var margins={left:new Array(),right:new Array()};
	margins.right[0]=-b[0];
	for(i=0;i<b.length;i++){
		margins.right[b[i]]=b[eval(i+1)]?-b[eval(i+1)]:-b[i];
	}
	for(i=b.length-1;i>-1;i--){
		margins.left[b[i]]=b[eval(i-1)]?-b[eval(i-1)]:0;
	}

	switch(where){
		case 'left':
			var margin=Number(jQuery(partners).css("marginLeft").replace('px',''));
			if(false!==(margin=margins.left[Math.abs(margin)])){
				if(Math.abs(margin)==Number(0)){jQuery('#partners-arrow-left').css({visibility:'hidden'});}
				if(Math.abs(margin)<(width-jQuery('div.par_tab').width())){jQuery('#partners-arrow-right').css({visibility:'visible'});}
				jQuery(partners).animate({marginLeft:margin},"fast","linear");
			}
		break;
		case 'right':
			var margin=Number(jQuery(partners).css("marginLeft").replace('px',''));
			if(false!==(margin=margins.right[Math.abs(margin)])){
				if(margin<0){jQuery('#partners-arrow-left').css({visibility:'visible'});}
				if(Math.abs(margin)>(width-jQuery('div.par_tab').width())){jQuery('#partners-arrow-right').css({visibility:'hidden'});}
				jQuery(partners).animate({marginLeft:margin},"fast","linear");
			}
		break;
		default:
			var offset=jQuery(partners).offset();
			if(width+offset.left*2>jQuery(window).width()){
				var div_partner_offset=jQuery('div.partner').offset();
				jQuery('div.partner').width(jQuery(window).width()-div_partner_offset.left*2);
				jQuery('#partners-arrow-right').css({visibility:'visible'});
			}
		break;
	}
}

// ---

jQuery(document).ready(function(){
	jQuery('a[rel="bigimg"]').fancybox({
		"titleShow":true,
		"titlePosition":"inside",
		"transitionIn":"elastic",
		"hideOnContentClick":true
	});
	jQuery('a.law-title').click(function(e){
		law(this.id,e);
	});
//	partners();
});

partners = {
		
		init: function(obj, leftHandler, rightHandler) {
			leftHandler.t = 0;
			rightHandler.t = 0;
			leftHandler.stop = false;
			rightHandler.stop = false;
			leftHandler.style.cursor = 'pointer';
			rightHandler.style.cursor = 'pointer';
			
			this.obj = obj;
			this.leftHandler = leftHandler;
			this.rightHandler = rightHandler;
			
			if (!obj.style.left) obj.style.left = 0;
			
			if (obj.offsetParent.offsetWidth >= obj.offsetWidth)
				{
				leftHandler.style.display = 'none';
				rightHandler.style.display = 'none';
				}
//			else
//				{
//				activeImg = getElementsByClass('active',obj,'a');
//				activeImg = activeImg[0];
//			
//				partners.obj.style.left = -activeImg.parentNode.offsetLeft + parseInt(partners.obj.parentNode.offsetWidth/2 - 26) + 'px';
//				}
			
			leftHandler.onmousedown = function () { this.stop = false; if (partners.obj.working) return; partners.obj.sl = parseInt(obj.style.left); this.timer = setInterval('partners.move(partners.obj, partners.leftHandler, partners.rightHandler, \'backward\')', 10);  return false; }
			leftHandler.onmouseup = function () { this.stop = true }
			rightHandler.onmousedown = function () { this.stop = false;; if (partners.obj.working) return; partners.obj.sl = parseInt(obj.style.left); this.timer = setInterval('partners.move(partners.obj, partners.leftHandler, partners.rightHandler, \'forward\')', 10); return false; }
			rightHandler.onmouseup = function () { this.stop = true }
				
			window.onresize = function () { partners.resizable(obj, leftHandler, rightHandler) }
			window.onload = function() { window.onresize(); }
			},
		
		move: function(scrolledObj, leftHandler, rightHandler, direction) {
			
			scrolledObj.working = true;
			
			if (direction == 'forward')
				obj = rightHandler;
			else
				obj = leftHandler;
			
			obj.t++;
			if (direction == 'forward')
				scrolledObj.style.left = Math.round(Linear(obj.t, scrolledObj.sl, -54, 8)) + 'px';
			else
				scrolledObj.style.left = Math.round(Linear(obj.t, scrolledObj.sl, 54, 8)) + 'px';
			
			if (parseInt(scrolledObj.style.left) >= 0)
				{
				leftHandler.style.display = 'none';
				scrolledObj.style.left = 0;
				leftHandler.onmouseup();
				leftEdge = true;
				}
			else
				{
				leftHandler.style.display = 'inline';
				leftEdge = false;
				}
			
			if (parseInt(scrolledObj.style.left) <= -(scrolledObj.offsetWidth-scrolledObj.offsetParent.offsetWidth))
				{
				rightHandler.style.display = 'none';
				scrolledObj.style.left = -(scrolledObj.offsetWidth-scrolledObj.offsetParent.offsetWidth) + 'px';
				rightHandler.onmouseup();
				rightEdge = true;
				}
			else
				{
				rightHandler.style.display = 'inline';
				rightEdge = false;
				}

			if (obj.t == 8)
				{
				clearInterval(obj.timer);
				obj.t = 0;
				
				scrolledObj.working = false;
				
				if ((!rightEdge && !leftEdge) && !obj.stop)
					obj.onmousedown()
				
				obj.stop = false;
				}
			},
			
		resizable: function(scrolledObj, leftHandler, rightHandler) {
				if (scrolledObj.offsetParent.offsetWidth >= scrolledObj.offsetWidth)
					{
					rightHandler.style.display = 'none';
					leftHandler.style.display = 'none';
					}
				else
					{
					rightHandler.style.display = 'inline';
					leftHandler.style.display = 'inline';
					}
				
				if (parseInt(scrolledObj.style.left) > 0)
					scrolledObj.style.left = 0;
				
				if (scrolledObj.offsetWidth-scrolledObj.offsetParent.offsetWidth > 0)
					{
					if (parseInt(scrolledObj.style.left) <= -(scrolledObj.offsetWidth-scrolledObj.offsetParent.offsetWidth))
						{
						scrolledObj.style.left = -(scrolledObj.offsetWidth-scrolledObj.offsetParent.offsetWidth) + 'px';
						rightHandler.style.display = 'none'
						}
					}
					
				if (parseInt(scrolledObj.style.left) >= 0)
					leftHandler.style.display = 'none';
				
			}
	}
		
	Linear = function (t, b, c, d) {
			return c*t/d + b;
	}