var CH=(navigator.userAgent.indexOf('Chrome')!=-1);
var SF=(navigator.userAgent.indexOf('Safari')!=-1 && !CH);
var OP=(navigator.userAgent.indexOf('Opera')!=-1);
var IE=(navigator.userAgent.indexOf('MSIE')!=-1 && !OP);
var FF=(navigator.userAgent.indexOf('Firefox')!=-1);
var MZ=(navigator.userAgent.indexOf('Gecko')!=-1 && !SF && !CH);
var onloadExec=new Array();
function $(id) {
    return document.getElementById(id);
}

function selectPromo(id) {
    hrefs=$('Promo').getElementsByTagName('a');
    for (i=0; i<hrefs.length; i++) {
        if (hrefs[i].id==('Promo'+id)) { 
            hrefs[i].className='sel'; 
            $(hrefs[i].id+'Info').style.display='';
        }
        else { 
            hrefs[i].className=''; 
            $(hrefs[i].id+'Info').style.display='none';
        }
    }
}

function formCheckSearchBtn() {
    if ($('dZone').value=="") { $('dBtn').disabled=true; }
    else { $('dBtn').disabled=false; }
}

function formCheckLoginBtn() {
    if ($('ILogin').value=="") { $('ILoginSubmit').disabled=true; }
    else { $('ILoginSubmit').disabled=false; }
}

function selectPic()
{
    i=Math.round(100000*Math.random()) % pics.length;
    
    if (pics[i].type == 'flash')
    {
        objL=$('DPicSWF');
        objL.style.display=''
        objL.innerHTML = '<object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" codebase=\"'+document.location.protocol+'://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0\" WIDTH=\"285\" HEIGHT=\"182\"><param name=\"movie\" value=\"'+pics[i].image+'\"/><param NAME=\"quality\" VALUE=\"high\"/><embed src=\"'+pics[i].image+'\" quality=\"high\" WIDTH=\"285\" HEIGHT=\"182\" TYPE=\"application/x-shockwave-flash\" PLUGINSPAGE=\"'+document.location.protocol+'://www.macromedia.com/go/getflashplayer\"></embed></object>';

        $('DPicLinked').style.display='none';
        $('DPicSimple').style.display='none';        
    }
    else if (pics[i].type == 'pic')
    {
        if (pics[i].link != '')
        {
            $('DPicSWF').style.display='none';
            $('DPicLinked').style.display='';
            $('DPicSimple').style.display='none';
            
            objL=$('DPicLinked').getElementsByTagName('a').item(0);
            objL.href=pics[i].link;
            objL.target=(pics[i].newwin==1)?'_blank':'';
            
            objI=$('DPicLinked').getElementsByTagName('img').item(0);
            objI.src=pics[i].image;
            objI.alt=objI.title=pics[i].alt;
        }
        else
        {
            $('DPicSWF').style.display='none';
            $('DPicLinked').style.display='none';
            $('DPicSimple').style.display='';
            
            objI=$('DPicSimple').getElementsByTagName('img').item(0);
            objI.src=pics[i].image;
            objI.alt=objI.title=pics[i].alt;
        }
    }
    else
    {
        $('DPicSWF').style.display='none';
        $('DPicLinked').style.display='none';
        $('DPicSimple').style.display='none';
    }
}


function isDomainValid()
{
    var dom_name = "";
    var i=0;
    var domain_zone = "";
    domain_zones = domain_zones_all.substr(0,domain_zones_all.length-1);
    var arrayOfZones = domain_zones.split(",");
    var domain_zones_one_point = new Array();
    var domain_zones_no_point = new Array();
    var d1 = "", d2 = "";
    for (i=0; i<arrayOfZones.length; i++)
    {    
         if (arrayOfZones[i].search(/^[^\.]+\.[^\.]+/i) != -1)
         {
            domain_zones_one_point.push(arrayOfZones[i].replace(/\./, "\\.")); 
         }
         else
         {
            domain_zones_no_point.push(arrayOfZones[i]); 
         }
    }
    dom_name = $('dName').value;   
    dom_name = dom_name.replace(/^http\:\/\/(.*)/i, "$1");
    ask=false;
    
    if (dom_name.search(/\.+/i) != -1)
    {
        ask=true;        
        for (i=0; i<domain_zones_one_point.length; i++)
        {               
            if (dom_name.search(new RegExp("\\."+domain_zones_one_point[i]+"$", "i")) != -1) 
            {
                domain_zone = domain_zones_one_point[i];
                dom_name = dom_name.replace(new RegExp("\\."+domain_zones_one_point[i]+"$", "i"), "");
                break;
            }
        }
        if (domain_zone == "")
        {            
            for (i=0; i<domain_zones_no_point.length; i++)
            {
                if (dom_name.search(new RegExp("\\."+domain_zones_no_point[i]+"$", "i")) != -1) 
                {
                    domain_zone = domain_zones_no_point[i];
                    dom_name = dom_name.replace(new RegExp("\\."+domain_zones_no_point[i]+"$", "i"), "");
                    break;
                }
            }
        }
    }    
    
    if (domain_zone != "") 
    {
        domain_zone = domain_zone.replace(/\\/, "");
    }
    
    
    
    if (dom_name.indexOf('www.')==0) {
        ask=true;
        dom_name = dom_name.replace(/^www\./i, '');
    }
    if (dom_name.indexOf('.')==0) {
        ask=true;
        dom_name = dom_name.replace(/^(\.+)/i, '');
    }
    if (domain_zone!="") {
        if (dom_name.indexOf('.')!=-1) {
            // ,      
            ask=true;
            dom_name=dom_name.substr(dom_name.lastIndexOf('.')+1);
        }
    }
    else {
        if (dom_name.indexOf('.')!=-1) {
            // ,      
            ask=true;
            dom_name=dom_name.substr(0,dom_name.indexOf('.'));
        }
    }
    
    if (dom_name.length < 1)
    {
        alert(Lang.DomainNameShort);
        return false;
    }  
    if (dom_name.search("([A-Za-z0-9]|-){"+dom_name.length+"}")==-1 || dom_name.search("(^-|-$)")!=-1) {
        alert(Lang.DomainNameIncorrect);
        return false;
    }
    if (ask) {
        if (confirm(Lang.DomainNameChange.replace(/:dom_name/g,dom_name))) {
            $('dName').value=dom_name;
            if (domain_zone!="") {
                $('dZone').value=domain_zone;
            }
            return true;
        }
        return false;
    }
    
    return true;
}

/*    */
function submitCheckForm()
{
    if (!isDomainValid()) { return false; }
    if ($('dZone').value=="")
    {
        alert(Lang.ZoneNotSelect);
        return false;
    }
    //$('dBtn').disabled=false;
    if ($('dBtn').disabled)
    {
        return false;
    }
    lockSubmitBtn('dBtn');
    return true;
    
}

function lockSubmitBtn(btnId) {
    $(btnId).value=Lang.ButtonWait;
    $(btnId).disabled=true;
}

function getStyleObject(objectId)
{
    if(document.getElementById && document.getElementById(objectId))
    {
        return document.getElementById(objectId).style;
    }
    else if (document.all && document.all(objectId))
    {
	return document.all(objectId).style;
    }
    else if (document.layers && document.layers[objectId])
    {
	return document.layers[objectId];
    }
    else
    {
	return false;
    }
}

function changeObjectDisplay(objectId, newVisibility)
{
    var styleObject = getStyleObject(objectId);

    if(styleObject)
    {
        if (newVisibility)
        {
            styleObject.display = '';
        }
        else
        {
            styleObject.display = 'none';
        }
	return true;
    }
    else
    {
	return false;
    }
}

function createAjaxObj()
{
    /*
    var httprequest = false;

    if (window.XMLHttpRequest)
    { // if Mozilla, Safari etc
        httprequest = new XMLHttpRequest();

        if (httprequest.overrideMimeType)
        {
            httprequest.overrideMimeType('text/xml');
        }
    }
    else if (window.ActiveXObject)
    { // if IE
        try
        {
            httprequest = new ActiveXObject('Msxml2.XMLHTTP');
        } 
        catch (e)
        {
            try
            {
                httprequest = new ActiveXObject('Microsoft.XMLHTTP');
            }
            catch (e)
            {
            }
        }
    }

    return httprequest;
    */
    return window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest();
}

function setWaitCursor(flag)
{
    var style;

    if (flag)
    {
        style = 'wait';
    }
    else
    {
        style = 'auto';
    }

    document.body.style.cursor = style;

    obj = document.getElementsByTagName('A');
    for (var i=0;i < obj.length; i++)
    {
        obj[i].style.cursor=style;
    }

    obj = document.getElementsByTagName('INPUT');
    for (var i=0; i < obj.length; i++)
    {
        obj[i].style.cursor = style;
    }
}

function openFrameWindowInMiddle(url, width, height, leftpos, toppos, status, scrollbars, menubar, resizable)
{
    //to show window in middle of the screen
    leftpos = (screen.availWidth - width) / 2;
    toppos = (screen.availHeight - height) / 2;
    window.open(url, "viewdetails", "width=" + width + ",height=" + height + ",left=" + leftpos + ",top=" + toppos + ",status=" + status + ",scrollbars=" + scrollbars + ",resizable=" + resizable + ", menubar=" + menubar);
}


var paysOpened=false;
var paysTimer=0;
function paysShow() {
    $('PaysContainer').className='container full';
    paysOpened=true;
}
function paysProlong() {
    if (paysOpened) { clearTimeout(paysTimer); }
}
function paysHide() {
    if (paysOpened) { paysTimer=setTimeout('paysClose()',1.5*1000); }
}
function paysClose() {
    $('PaysContainer').className='container short';
    paysOpened=false;
}


function setClients() {
    var clientRow=$('ClientsContainer');
    var clientsCount=clients.length;
    if (clientsCount>4) {
        var sel=new Array();
        var num=0;
        for (i=0;i<4;i++) {
            var tst='_'+sel.join('_')+'_';
            do {
                num=Math.floor((10000*Math.random())%clientsCount);
            }while(tst.indexOf('_'+num+'_')!=-1);
            sel[i]=num;
        }
    }
    else {
        var sel=new Array(0,1,2,3);
    }
    for (i=0;i<4;i++) {
        clientRow.insertCell(i);
        clientRow.cells[i].className='clients';
        clientRow.cells[i].width='160px';
        clientRow.cells[i].innerHTML='<a href="/'+LangSel+'/about/clients.html" title="'+Lang.ClientsTitle+'"><img src="/i/logo/'+clients[sel[i]].img+'" alt="'+clients[sel[i]].title+'" title="'+clients[sel[i]].title+'" height="60px" width="125px"></a>';
        
    }
}

/* >>>>> для стилей */
var stylesheetId=0;
function stylesheet() {
    var f=true;
    if (!document.styleSheets[stylesheetId]) { f=false; }
    else if (document.styleSheets[stylesheetId].title!='dynamic') { f=false; }
    if (!f) {
        for (i=0;i<document.styleSheets.length;i++) {
            if (document.styleSheets[i].title=='dynamic') { stylesheetId=i; break; }
        }
    }
    return (IE) ? document.styleSheets[stylesheetId].rules : document.styleSheets[stylesheetId].cssRules;
}
/* <<<<< для стилей */

var tariffColorTimer=0;
var tariffColorTimeout=15;
var tariffColorStep=0.05;
var sheet=false;
var tariffCurrent='';
function ShowTarriffsPlan(sel) {
	if (sel!=undefined) {
		$('TarriffPlan').value=sel;
	}
	if ($('TarriffPlan').value==tariffCurrent) { return; }
	tariffCurrent=$('TarriffPlan').value;
	var spl=$('TariffsTable').className=$('TarriffPlan').value;
	
	//if (IE) { return; }
	if (sheet===false) { sheet=stylesheet(); }
	var spl=spl.substr(2);
	clearTimeout(tariffColorTimer);
	sheet[0].style.backgroundColor = sheet[spl].style.backgroundColor;
	if (!IE) { sheet[0].style.opacity=1; }
	else { 
		sheet[0].style.filter='alpha(opacity="100")'; 
	}
	tariffColorTimer=setTimeout('tariffColor('+spl+')',tariffColorTimeout*2);
}
function tariffColor(spl) {
	//var sheet=stylesheet();
	if (!IE) { var opac=Number(sheet[0].style.opacity)-tariffColorStep; }
	else { 
		var opac=sheet[0].style.filter; 
		var s=opac.indexOf('"');
		opac=Number(opac.substring(s+1, opac.indexOf('"',s+1)))-tariffColorStep*100 *2;

	}
	if (opac>0) {
		if (!IE) { sheet[0].style.opacity=opac; }
		else { 
			sheet[0].style.filter='alpha(opacity="'+opac+'")'; 
		}
		tariffColorTimer=setTimeout('tariffColor('+spl+')',tariffColorTimeout);	
	}
	else {
		if (!IE) { sheet[0].style.opacity=0; }
		else { 
			sheet[0].style.backgroundColor = ''; 
			sheet[0].style.filter='alpha(opacity="0")'; 
		}
	}
}

function tariffSetHover(obj) {
	var rel=obj.getAttribute('rel');
	var trs=$('TariffsTable').rows;
	for (i=0;i<trs.length;i++) {
		var trRel=trs[i].getAttribute('rel');
		if (trRel) {
			if (trRel==rel) { if (trs[i].className.indexOf('mark_red')!=-1) { trs[i].className+=' markhover'; } else { trs[i].className+=' hovered'; } }
			else { trs[i].className=trs[i].className.replace(/hovered|markhover/g,''); }
		}
	}
}
function tariffUnsetHover() {

	var trs=$('TariffsTable').rows;
	for (i=0;i<trs.length;i++) {
		var trRel=trs[i].getAttribute('rel');
		if (trRel) {
			trs[i].className=String(trs[i].className).replace(/hovered|markhover/g,'');
		}
	}
}

function ShowPaymentType(payname) {
    if ($('payment_'+payname)) {
        // просто развернули/свернули инфу
        if ($('payment_'+payname).className=='pinfo_short') {
            $('payment_'+payname).className='pinfo_full';
        }
        else {
            $('payment_'+payname).className='pinfo_short';
        }
        return true;
    }
    return false;
}
function GoToPaymentType(lnk) {
    if (lnk==undefined) { var s=window.location.href; }
    else { var s=lnk.href; }
    // вытянули название типа, а дальше уже варианты
    if (-1!=(_p=s.indexOf('#'))) {
        var payname=s.substring(_p+1);
        if (ShowPaymentType(payname)) { return false; }
    }
    return true;
}

function SalesGridSet(tariffId, tariffExp, tFull, tCur, dCur) {
    if ($('DS_'+tariffId).nextSibling==null) { $('DMarker').style.display='none'; return; }
    if ($('DS_'+tariffId).getElementsByTagName('span').item(1)) {
        var tFrom=Number($('DS_'+tariffId).getElementsByTagName('span').item(1).innerHTML.replace(/[^0-9]/i,''));
    }
    else { var tFrom=0; }
    var tTo=Number($('DS_'+tariffId).nextSibling.getElementsByTagName('span').item(1).innerHTML.replace(/[^0-9]/i,''));
    if (tFull < tFrom) { tFull+=tFrom; }
    if (isNaN(dCur)) { dCur=0; }
    
    var sW=$('DS_'+tariffId).offsetWidth;
    var baseLeft=$('DS_'+tariffId).offsetLeft;
    var curLeft=Math.floor(sW*(tFull-tFrom)/(tTo-tFrom));
    var dNext=Number($('DS_'+tariffId).nextSibling.getElementsByTagName('span').item(3).innerHTML);
    
    
    $('SNext').innerHTML=$('DS_'+tariffId).nextSibling.getElementsByTagName('span').item(0).innerHTML;
    $('STurn').innerHTML=Math.ceil(tTo-tFull);
    $('SDom').innerHTML=TextAfterNum(dNext-dCur,'DomainsPost',true);
    
    var d=tariffExp.split('-');
    var expDate=new Date(d[2], d[1]-1, d[0]);
    var curDate=new Date();
    var expDays=Math.ceil((expDate-curDate)/(24*3600*1000));
    if (expDays<=90) {
        var tCurMin=Number($('DS_'+tariffId).getElementsByTagName('span').item(2).innerHTML.replace(/[^0-9]/i,''));
        var dMin=Number($('DS_'+tariffId).getElementsByTagName('span').item(3).innerHTML);
        if (tCurMin>tCur && dMin>dCur) {
            // знач плохо
            $('SDays').innerHTML=TextAfterNum(expDays,'DaysPost',true);
            $('SSum').innerHTML=tCurMin-tCur;
            $('SMDom').innerHTML=TextAfterNum(dMin-dCur,'DomainsPost',true);
            $('DMarkerTextNorm').style.display='none';
            $('DMarkerTextBad').style.display='';
        }
    }
    
    var posL=baseLeft+curLeft-4;
    $('DMarkerArrow').style.left=posL+'px';
    if (posL+$('DMarkerText').offsetWidth > $('DMarker').offsetWidth-10) {
        posL=$('DMarker').offsetWidth-$('DMarkerText').offsetWidth-10;
    }
    $('DMarkerText').style.left=posL+'px';
    $('DMarker').style.visibility='visible';
}

// подставляет текстовую добавку к числу
function TextAfterNum(number,textConst,showZero) {
    if (showZero==undefined) { showZero=false; }
    var d1=number%10;
    var d2=number%100;
    if (d2>=12 && d2<=14) { textConst+=2; }
    else if (d1==1) { textConst+=1; }
    else if (d1>=2 && d1<=4) { textConst+=3; }
    else { textConst+=2; }
    eval('var text=Lang.'+textConst);
    
    return ((number>0 || showZero)?number:'')+' '+text;
}

function processOnload() {
    for (i=0;i<onloadExec.length;i++) {
        try { eval(onloadExec[i]); }
        catch(e){}
    }
}
