function parse_url (str, component) {
	// *	 example 1: parse_url('http://username:password@hostname/path?arg=value#anchor');
	// *	 returns 1: {scheme: 'http', host: 'hostname', user: 'username', pass: 'password', path: '/path', query: 'arg=value', fragment: 'anchor'}

	var  o   = {
		strictMode: false,
		key: ["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],
		q:   {
			name:   "queryKey",
			parser: /(?:^|&)([^&=]*)=?([^&]*)/g
		},
		parser: {
			strict: /^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,
			loose:  /^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/\/?)?((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/ // Added one optional slash to post-protocol to catch file:/// (should restrict this)
		}
	};
	
	var m   = o.parser[o.strictMode ? "strict" : "loose"].exec(str),
	uri = {},
	i   = 14;
	while (i--) {uri[o.key[i]] = m[i] || "";}

	switch (component) {
		case 'PHP_URL_SCHEME':
			return uri.protocol;
		case 'PHP_URL_HOST':
			return uri.host;
		case 'PHP_URL_PORT':
			return uri.port;
		case 'PHP_URL_USER':
			return uri.user;
		case 'PHP_URL_PASS':
			return uri.password;
		case 'PHP_URL_PATH':
			return uri.path;
		case 'PHP_URL_QUERY':
			return uri.query;
		case 'PHP_URL_FRAGMENT':
			return uri.anchor;
		default:
			var retArr = {};
			if (uri.protocol !== '') {retArr.scheme=uri.protocol;}
			if (uri.host !== '') {retArr.host=uri.host;}
			if (uri.port !== '') {retArr.port=uri.port;}
			if (uri.user !== '') {retArr.user=uri.user;}
			if (uri.password !== '') {retArr.pass=uri.password;}
			if (uri.path !== '') {retArr.path=uri.path;}
			if (uri.query !== '') {retArr.query=uri.query;}
			if (uri.anchor !== '') {retArr.fragment=uri.anchor;}
			return retArr;
	}
}

function alert_refresh(mess,url)
{
	if (confirm(mess)) {
		document.location.href = url;
		return false;
	}
}

function change (num)
{
	var obj_d = document.getElementById('num_'+num).checked;
	var coun = g_types.length
	
	for(i=0;i<coun;i++)
	{
		var n = g_types[i]
		if (n == 2000)
			continue;
		
		obj = document.getElementById('num_'+n)
		
		if (n < num && obj_d)
		{
			obj.checked = true;
		}
		else if (n > num)
		{
			obj.checked = false;
		}
	}
}

function showAdd()
{
	$('#addSite').css("display","block");
}

function submitPre(o)
{
	var amount = $(o).find('#amount').val();
	var num = $(o).find('#paymentNo').val();
	
	if (amount < 1) {
		alert("Введите сумму!");
		return false;
	}
	
	$.ajax({
		type: "GET",
		url: "/ajax/pay",
		data: "add_pays="+num+"&amount="+amount,
		async: false,
		success: function(msg){
			if (msg=="OK") {
				$('#payform').submit();
				return false;
			}
			else {
				alert('Ошибка при добавлении счета в базу! Попробуйте позже.');
			}
		},
		
		error: function (data, status, e) {
			alert('Ошибка при добавлении счета в базу! Попробуйте позже.');
		}
	
	});
	
	return false;
}

function checkSite()
{
	var hash = document.getElementById('hash').value;
	if (hash=='' || hash=='undefined')
	{
		alert('Введите полученый код!');
		return;
	}
	
	else if (hash.length !== 8) {
		alert('Вы указали неверный код!');
		return;
	}
	
	getSiteData(hash);
}

function changeVklad(type)
{
	if (type > 1) {
		$('#unregMaindiv').html(gProverka);
	}
	else {
		$('#unregMaindiv').html(gDobavit);
	}
}

function submitSite(form)
{
	var host = $('#sHost').val();
	var email = $('#sEmail').val();
	if (host == 'http://' || host.length < 11)
	{
		alert('Введите корректный адрес сайта!')
		return;
	}
	$('#unregMaindiv').html('<div style="width:100%;text-align:center;"><img src="/template/images/wait.gif"></div>');
	$.post("/ajax/unreg", { host: host, email: email, type: 1 }, function(data){
		$('#unregMaindiv').html(data);
	});
}

var lastUpdate = 0;
function getSiteData(hash)
{
	if (hash.length!==8) {
		$('#unregMaindiv').html(gProverka);
		return;
	}
	
	var now = Math.round((new Date()).getTime()/1000);
	var raznica = now - lastUpdate;
	
	if (raznica < 60 && lastUpdate!==0)
	{
		alert('Вы можете обновлять данные не чаще раза в минуту! \nОсталось: '+(60-raznica)+'сек');
		return;
	}
	
	lastUpdate = now;
	
	$('#unregMaindiv').html('<div style="width:100%;text-align:center;"><img src="/template/images/wait.gif"></div>');
	
	$.post("/ajax/unreg", { hash: hash, type: 2 }, function(data){
		$('#unregMaindiv').html(data);
	});
	
}

function onlyVip()
{
	alert('Доступно только для VIP!')
	return false;	
}


