﻿/// <reference path="global.js" />
/// <reference path="list.js" />
/// <reference path="server.js" />			

function domain_keyUp(e)
{
	var e = e ? e : window.event;
	var code = e.keyCode ? e.keyCode : e.which;
	if(code == 13)
		$whois.Start();											    
}
function btnBackClick()
{
	var tabs = document.getElementById("tabList");
	var tab = $tabs.SelectedTab(tabs);
	var prev = $G.Previous(tab);
	if(prev)
		$tabs.Tab_Click($G.GET(prev, "a:0"));
}
function btnNextClick()
{
	var tabs = document.getElementById("tabList");
	var tab = $tabs.SelectedTab(tabs);
	var prev = $G.Next(tab);
	if(prev)
		$tabs.Tab_Click($G.GET(prev, "a:0"));
}
$whois = 
{
	Start:function(dname)
	{
		var domain = document.getElementById("domainname");
		var webSite = /^(http:\/\/|)(www\.)?([^\.]+)\.(\w{2}|(com|net|org|edu|info|ru|su))$/;
		var ip = /^(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])$/;
		
		var value = dname;
		if (!value)
		    value = domain.value;
		
        if (domain && (webSite.test(value) || ip.test(value)))
        {
        	var name = value;
			var tabs = document.getElementById("tabList");
			var panel = document.getElementById("InfoAreasContainer");
			if(!$tabs.ContainsTab(name))
			{
			    if (!dname)
			        domain.value = '';
			    
				var area = $G.Tag("div", "InfoPanel", $tabs.Const.PanelPrefix + name);
				panel.appendChild(area);
				
				var h1 = $G.Tag("h1", null, null, "Информация о <a href='http://" + name + "' target='_blank'>" + name + "</a>");
				area.appendChild(h1);
				
				$G.Display.Hide(area);
				
				var tab = $tabs.AddTab(tabs, name);
								
				var request = new Request();
				request.Preloader.Panel = $G.Tag("div");
				$tabs.AddPreloader(tab);
				request.Send("whoiser.ashx", function(req)
				{
//----------------> выполняется, если нет ошибок					
					var div = $G.Tag("div", "whoisInfo", null, req.responseText.replace("\n", "<br />"));
					area.appendChild(div);
					$tabs.RemovePreloader(tab);
                    $tabs.Tab_Click(tab.firstChild);
                    $G.Get.ById('counter').innerHTML = "<a href='http://www.liveinternet.ru/click' target=_blank><img src='http://counter.yadro.ru/hit?t25.1;r" + escape(document.referrer) + ((typeof(screen)=="undefined")?"":";s"+screen.width+"*"+screen.height+"*"+(screen.colorDepth?screen.colorDepth:screen.pixelDepth)) + ";u" + escape(document.URL) +";" + Math.random() + "' border=0 width=88 height=15 alt='' title='LiveInternet'><\/a>";
				}, function(req)
				{
//----------------> выполняется, если есть ошибки	
                    var div = $G.Tag("div", "whoisInfo", null, "Произошла ошибка при загрузке информации с сервера. <br/> Попробуйте закрыть эту вкладку и сделать запрос заново.");
					area.appendChild(div);
					$tabs.RemovePreloader(tab);
                    $tabs.Tab_Click(tab.firstChild);		
					//alert(req.responseText);
					$G.Get.ById('counter').innerHTML = "<a href='http://www.liveinternet.ru/click' target=_blank><img src='http://counter.yadro.ru/hit?t25.1;r" + escape(document.referrer) + ((typeof(screen)=="undefined")?"":";s"+screen.width+"*"+screen.height+"*"+(screen.colorDepth?screen.colorDepth:screen.pixelDepth)) + ";u" + escape(document.URL) +";" + Math.random() + "' border=0 width=88 height=15 alt='' title='LiveInternet'><\/a>";
				}, "DomainName=" + name);
			}
        }
	}
}