var nn4 = (document.layers) ? true : false;
var ie4 = (document.all) ? true : false;
var dom = (document.createTextNode)? true : false;
var emailFilter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;

function runOnloadFunc()
{
	return true;
}

function padDeleteConfirmation()
{
	if (confirm('Сайт будет перемещен во вкладку "Удаленные". Подтверждаете удаление сайта из статистики?'))
		return true;
	return false;
}

function switchCustomDateFields(oSelect)
{
	if (oSelect.value == 'custom')
	{
		$('startInput').style.display = '';
		$('finishInput').style.display = '';
	}
	else
	{
		$('startInput').style.display = 'none';
		$('finishInput').style.display = 'none';
	}
}

function popupWindow(fileUrl, winN, winWidth, winHeight, scrollB) {
	var winName = (winN)? winN : 'popupWin'
	var scrollBars = (scrollB)? scrollB : 'auto'
	if (nn4 || ie4 || dom) {
		if (screen.width < winWidth + 50) { winWidth = screen.width - 50; scrollbars = 'yes' }
		if (screen.height < winHeight + 100) { winHeight = screen.height - 100; scrollbars = 'yes' }
		posX = Math.round((screen.width - winWidth) / 2);
		posY = Math.round((screen.height - winHeight) / 2);
		posCode = (nn4)? "screenX="+posX+",screenY="+posY : "left="+posX+",top="+posY;
	} else {
		posCode = "";
	}
	var popupWin = window.open(fileUrl, winName,"menubar=no,toolbar=no,scrollbars="+scrollB+",status=yes,resizable=no,width=" + winWidth + ", height=" + winHeight + " ," + posCode);
	if (popupWin) popupWin.focus();
}

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

	}

function Get_Cookie( check_name ) {
	// first we'll split this cookie up into name/value pairs
	// note: document.cookie only returns name=value, not the other components
	var a_all_cookies = document.cookie.split( ';' );
	var a_temp_cookie = '';
	var cookie_name = '';
	var cookie_value = '';
	var b_cookie_found = false; // set boolean t/f default f

	for ( i = 0; i < a_all_cookies.length; i++ )
	{
		// now we'll split apart each name=value pair
		a_temp_cookie = a_all_cookies[i].split( '=' );


		// and trim left/right whitespace while we're at it
		cookie_name = a_temp_cookie[0].replace(/^\s+|\s+$/g, '');

		// if the extracted name matches passed check_name
		if ( cookie_name == check_name )
		{
			b_cookie_found = true;
			// we need to handle case where cookie has no value but exists (no = sign, that is):
			if ( a_temp_cookie.length > 1 )
			{
				cookie_value = unescape( a_temp_cookie[1].replace(/^\s+|\s+$/g, '') );
			}
			// note that in cases where cookie is initialized but no value, null is returned
			return cookie_value;
			break;
		}
		a_temp_cookie = null;
		cookie_name = '';
	}
	if ( !b_cookie_found )
	{
		return null;
	}
}


function gOfs(obj){
    var x=0,y=0;
    if(window.opera)
    {
        if(obj.style.position=='absolute')
        {
            x=obj.style.posLeft;
            y=obj.style.posTop;
        }else{
            while (obj.offsetParent)
            {
                x+=obj.offsetLeft;
                y+=obj.offsetTop;
                obj=obj.offsetParent;
            }
        }
    }else if(obj.offsetParent)
    {
        while (obj.offsetParent)
        {
            x+=obj.offsetLeft;
            y+=obj.offsetTop;
            obj=obj.offsetParent;
        }
    }else if (obj.x)
    {
        x += obj.x;
        y += obj.y;

    }
    //alert(x+' '+y);
    return {x: x, y: y}
}
//var ofs = gOfs(document.getElementById('img_id'));
//alert(ofs.x+' '+ofs.y);

function getElementsByClassName(strClass, strTag, objContElm)
	{
	strTag = strTag || "*";
	objContElm = objContElm || document;
	var objColl = objContElm.getElementsByTagName(strTag);
	if (!objColl.length && strTag == "*" && objContElm.all) objColl = objContElm.all;
	var arr = new Array();
	var delim = strClass.indexOf('|') != -1 ? '|' : ' ';
	var arrClass = strClass.split(delim);
	for (var i = 0, j = objColl.length; i < j; i++)
		{
		var arrObjClass = objColl[i].className.split(' ');
		if (delim == ' ' && arrClass.length > arrObjClass.length) continue;
		var c = 0;
		comparisonLoop:
		for (var k = 0, l = arrObjClass.length; k < l; k++)
			{
			for (var m = 0, n = arrClass.length; m < n; m++)
				{
				if (arrClass[m] == arrObjClass[k]) c++;
				if (( delim == '|' && c == 1) || (delim == ' ' && c == arrClass.length))
					{
					arr.push(objColl[i]);
					break comparisonLoop;
					}
				}
			}
		}
	return arr;
	}

function customPeriod(selectValue)
	{
	if(selectValue.value == "custom") $('customPeriodTr').style.display = "";
	else $('customPeriodTr').style.display = "none";
	selectValue.blur();
	return false;
	}

function setCalendar(elemId)
    {
    $(elemId).onfocus = function()
        {
        alert('ok');
        }
    $(elemId).style.cursor = 'pointer';
    return false;
    }

function switchLR(tab)
    {
    if(tab == 'register')
        {
        $('registerLink').className = 'selectedTab';
        $('loginLink').className = '';
        $('forgetPass').style.display = 'none';
        $('loginRegisterSubmit').value = 'Çàðåãèñòðèðîâàòüñÿ';
        $('remeberMeNote').style.textIndent = '-2000px';
        $('regLoginForm').action = 'register.php';
        }
    else if(tab == 'login')
        {
        $('registerLink').className = '';
        $('loginLink').className = 'selectedTab';
        $('forgetPass').style.display = '';
        $('loginRegisterSubmit').value = 'Âîéòè';
        $('remeberMeNote').style.textIndent = '';
        $('regLoginForm').action = 'login.php';
        }
    }

function showHidePanel(mode, cook)
	{
	if(mode)
		{
		$('expandedMainBar').style.display = "";
		$('reducedMainBar').style.display = "none";
		}
	else
		{
		$('expandedMainBar').style.display = "none";
		$('reducedMainBar').style.display = "";
		}

	if(cook) setCustomCookie('topBar', !mode, 0, '/');
	return false;
	}

function addExtraSites()
{
	if ($('extraSites').style.display == '')
	{
		$('extraSites').style.display = "none";
		$('addSites').style.display = "";
	}
	else
	{
		$('extraSites').style.display = "";
		$('addSites').style.display = "none";
	}
}

function checkLoginForm()
	{
	var loginInp = document.getElementById('loginInp').value;
	var passwordInp = document.getElementById('passwordInp').value;
	var loginForm = document.getElementById('loginForm');
	var loginFormSubmit = document.getElementById('submitLoginBtn');

	if(emailFilter.test(loginInp) && passwordInp.length > 2)
		{
		loginFormSubmit.disabled = "";
		loginForm.onsubmit = function() { return true;}
		}
	else
		{
		loginFormSubmit.disabled = "disabled";
		loginForm.onsubmit = function() { return false;}
		}
	}

function checkRegForm()
	{
	var loginInp = document.getElementById('loginInp').value;
	var passwordInp = document.getElementById('passwordInp').value;
	var passwordConfInp = document.getElementById('passwordConfInp').value;
	var regForm = document.getElementById('registrationForm');
	var regFormSubmit = document.getElementById('registrationFormSubmit');

	if(emailFilter.test(loginInp) && passwordInp.length > 2 && passwordInp == passwordConfInp)
		{
		regFormSubmit.disabled = "";
		regForm.onsubmit = function() { return true;}
		}
	else
		{
		regFormSubmit.disabled = "disabled";
		regForm.onsubmit = function() { return false;}
		}
	}

function checkEmail()
	{
	var loginInp = document.getElementById('loginInp').value;
	if(!emailFilter.test(loginInp) && loginInp != "") document.getElementById('incorrectEmail').style.display = "";
	else document.getElementById('incorrectEmail').style.display = "none";
	}

function checkPass()
{
	var passwordInp = document.getElementById('passwordInp').value;
	var passwordConfInp = document.getElementById('passwordConfInp').value;
	if (passwordInp.length < 3)
		document.getElementById('tooShortPass').style.display = "";
	else
		document.getElementById('tooShortPass').style.display = "none";
	if (passwordConfInp.length > 0 && passwordInp != passwordConfInp)
		document.getElementById('wrongPassConf').style.display = "";
	else
		document.getElementById('wrongPassConf').style.display = "none";
}

function showhide(e)
{
	el = document.getElementById(e);
	el.style.display = el.style.display == "block" ? "none" : "block";
}

//function statFilter() {
//	if($('from') && $('to')) {
//		var quickPeriod = $$('.filter-subcontrols a.dashed');
//	
//		$each(quickPeriod, function(item) {
//			item.addEvent('click', function(e) {
//				e = new Event(e); e.stop();
//				if($$('.filter-subcontrols a.dashed.current').length > 0) $$('.filter-subcontrols a.dashed.current')[0].removeClass('current');
//				e.target.addClass('current');
//				$('filter_form').from.set('value', timeLine[quickPeriod.indexOf(e.target)].split(':')[0]);
//				$('from').set('text', timeLine[quickPeriod.indexOf(e.target)].split(':')[0]);
//				$('filter_form').to.set('value', timeLine[quickPeriod.indexOf(e.target)].split(':')[1]);
//				$('to').set('text', timeLine[quickPeriod.indexOf(e.target)].split(':')[1]);
//				$('filter_form').preset_filter.set('value', e.target.href.split('#')[1]);
//			});
//		});
//		
//		$('from').addEvent('click', function() {
//			if($$('.filter-subcontrols a.dashed.current').length > 0) $$('.filter-subcontrols a.dashed.current')[0].removeClass('current');
//			$('filter_form').preset_filter.set('value', '');
//		});
//		$('to').addEvent('click', function() {
//			if($$('.filter-subcontrols a.dashed.current').length > 0) $$('.filter-subcontrols a.dashed.current')[0].removeClass('current');
//			$('filter_form').preset_filter.set('value', '');
//		});
//	}
//}

function statFilter()
{
	if($('from') && $('to'))
	{
		var quickPeriod = $$('.filter-subcontrols a.dashed');

		$each(quickPeriod, function(item) {
			item.addEvent('click', function(e) {
				e = new Event(e); e.stop();
				//alert('ok');
				if ($$('.filter-subcontrols a.dashed.current').length > 0)
					$$('.filter-subcontrols a.dashed.current')[0].removeClass('current');
				e.target.addClass('current');
				$$('#filter_form input[name=from]').set('value', timeLine[quickPeriod.indexOf(e.target)].split(':')[0]);
				$('from').set('text', timeLine[quickPeriod.indexOf(e.target)].split(':')[0]);
				$$('#filter_form input[name=to]').set('value', timeLine[quickPeriod.indexOf(e.target)].split(':')[1]);
				$('to').set('text', timeLine[quickPeriod.indexOf(e.target)].split(':')[1]);
				$('preset_filter').set('value', e.target.href.split('#')[1]);
			});
		});

		$('from').addEvent('click', function() {
			if($$('.filter-subcontrols a.dashed.current').length > 0)
				$$('.filter-subcontrols a.dashed.current')[0].removeClass('current');
			$('preset_filter').set('value', 'custom');
		});
		$('to').addEvent('click', function() {
			if($$('.filter-subcontrols a.dashed.current').length > 0)
				$$('.filter-subcontrols a.dashed.current')[0].removeClass('current');
			$('preset_filter').set('value', 'custom');
		});
	}
}

function setDropDownPads() {
	if($('pad-text')) {
		$('pad-text').addEvent('click', function(e) {
			e = new Event(e); e.stop();
			$('pads-drop-down').set('style', 'top: ' + ($('pad-text').getPosition().y + 20) + 'px; left: ' + $('pad-text').getPosition().x + 'px');
			$('pads-drop-down').toggleClass('no-display');
		});
		document.addEvent('click', function(e) {
			e = new Event(e);
			if(e.target.id != 'pad-text' && e.target.id != 'pads-drop-down') $('pads-drop-down').addClass('no-display');
		});
		$each($$('#pads-drop-down ul li a'), function(item) {
			item.addEvent('click', function(e) {
				e = new Event(e); e.stop();
				$('pad-text').set('text', e.target.get('text'));
				$('pad_id').set('value', e.target.href.split('#')[1]);
				$('pads-drop-down').addClass('no-display');
			});
		});
	}
}

window.addEvent('domready', function() {
	statFilter();
	
	setDropDownPads();
});

function ExpandHelp(razdel)
{
	if($('help_content').style.display == '')
	{
		new Request.JSON(
	      {
	        method:'get',
	        url: '/pad/expandHelp/?razdel='+razdel+'&close=1',
	        onSuccess: function(transport)
	        {
	            
	        },
	        onFailure: function(){ alert('Something went wrong…') }
	      }).send();
		$('help_content').style.display = 'none';
		$('help_collapse').style.display = '';
	}
	else
	{
		new Request.JSON(
	      {
	        method:'get',
	        url: '/pad/expandHelp/?razdel='+razdel,
	        onSuccess: function(transport)
	        {
	            
	        },
	        onFailure: function(){ alert('Something went wrong…') }
	      }).send();
		$('help_content').style.display = '';
		$('help_collapse').style.display = 'none';
	}
}
