var OP=(navigator.userAgent.indexOf('Opera')!=-1);
var IE=(navigator.userAgent.indexOf('MSIE')!=-1 && !OP);
var MZ=(navigator.userAgent.indexOf('Gecko')!=-1);

// начать анимацию кружка
function circlingStart(id) {
    if (!OP) { $('Circle'+id).src='/f/i/circle-a.gif'; }
}
// закончить анимацию кружка
function circlingStop(id) {
    if (!OP) { $('Circle'+id).src='/f/i/circle-s.gif'; }
}


var selectedCloud='';
var step=10; var timeout=5;
if (OP) { var step=16; var timeout=5; }
if (IE) { var step=10; var timeout=5; }
if (MZ) { var step=24; var timeout=8; }
var side=0;
var locked=0;
// перемещение основной картинки по странице
function turnCloud(id,fromX,toX) {
    side=(fromX>toX)?-1:((fromX<toX)?1:0);
    if (side!=0) { 
        d=Math.abs(fromX-toX);
        fromX+=((d>step)?step:d)*side;
        $('MainArea').style.left=(fromX)+"px";
        locked=setTimeout("turnCloud('"+id+"',"+fromX+","+toX+")",timeout);
        clipImage();
    }
    else {
        locked=0;
        if (id!='') { openCloud(id); }
        else { closeCloud(); }
        return; 
    }
}
// показать облако для конкретного объекта
function openCloud(id) {
    if (id==selectedCloud || locked!=0) { return; }
    hideCloud('empty');
    if ($('MainArea').style.left!=(textData[id]['offset']+'px')) {
        turnCloud(id,$('MainArea').offsetLeft,textData[id]['offset'])
    }
    else {
        $('CloudTitle').innerHTML=textData[id]['cloud_title'];
        $('CloudText').innerHTML=textData[id]['cloud_text'];
        document.title=((textData[id]['title'] && textData[id]['open']!='main')?(textData[id]['title']+' | '):'')+defaultTitle;
        if ($('SCopyValue')) { $('SCopyValue').innerHTML=$('SCopyDates').innerHTML; }
        $('MainArea').className='img '+id;
        document.forms['FeedbackForm']['open'].value=textData[id]['open'];
        if (textData[id]['link']!='') {
            if (textData[id]['link'].substr(0,7)!='http://') {
                $('CloudLink').href='/'+textData[id]['link']+'/';
            }
            else {
                $('CloudLink').href=textData[id]['link']
            }
            $('Details').style.display="";
        } else {
            $('Details').style.display="none";
        }
        if (textData[id]['siteurl']!='') {
            $('SiteLink').href=textData[id]['siteurl'];
            $('SiteLink').innerHTML=textData[id]['sitetitle'];
            
            $('GoToSite').style.display="";
        } else {
            $('GoToSite').style.display="none";
        }

        langs=$('DLangs').getElementsByTagName('span');
        for (i=0;i<langs.length;i++) {
            if (langs[i].firstChild.nodeName.toLowerCase()=='a') {
                langs[i].firstChild.href='/'+langs[i].id+'/'+textData[id]['path']+'/';
            }
        }
        selectedCloud=id;
        if (showFeedback) { feedbackShow(); }
    }
}
// скрыть облако и перевести в начальное положение
function closeCloud() {
    hideCloud('empty');
    document.title=defaultTitle;
    if ($('MainArea').style.left!=(defaultOffset+'px')) {
        turnCloud('',$('MainArea').offsetLeft,defaultOffset)
    }
    else {
        hideCloud('default');
    }
}
// прячет облако определенным образом
function hideCloud(style) {
    feedbackHide(false);
    $('MainArea').className='img '+style;
    langs=$('DLangs').getElementsByTagName('span');
    for (i=0;i<langs.length;i++) {
        if (langs[i].firstChild.nodeName.toLowerCase()=='a') {
            langs[i].firstChild.href='/'+langs[i].id+'/'+((basePath!='')?(basePath+'/'):'');
        }
    }
    selectedCloud='';
}

function helpShow() {
    if ($('SHelpOn').className=='sel') { return false; }
    $('SHelpOn').className='sel';
    $('SHelpOff').className='';
    $('DBody').className='body';
    Now = new Date();
    cookieDate = new Date(Now.getFullYear()+1, Now.getMonth(), Now.getDate());
    document.cookie = "TDGHelp=1; path=/; expires="+cookieDate+" ";

}

function helpHide() {
    if ($('SHelpOff').className=='sel') { return false; }
    $('SHelpOff').className='sel';
    $('SHelpOn').className='';
    $('DBody').className='body nohelp';
    Now = new Date();
    cookieDate = new Date(Now.getFullYear()-1, Now.getMonth(), Now.getDate());
    document.cookie = "TDGHelp=0; path=/; expires="+cookieDate+" ";
}

function feedbackShow() {
    $('DText').style.display='none';
    $('DLinks').style.display='none';
    $('DFeedback').style.display='';
}
function feedbackHide(nf) {
    if (withResult && nf!=false) { feedbackHideResult(); }
    $('DFeedback').style.display='none';
    $('DText').style.display='';
    $('DLinks').style.display='';
    if (nf!=false) { showFeedback=false; }
}
function feedbackHideResult() {
    if ($('DFeedbackSent')) { $('DFeedbackSent').style.display='none'; }
    if ($('DFeedbackErr')) { $('DFeedbackErr').style.display='none'; }
    $('DFeedbackForm').style.display='';
    withResult=false;
}

// фиксы
function onResize() {
    winWidth=document.documentElement.clientWidth;
    w=(winWidth<900)?900:winWidth;
    $('DTop').style.width=w+'px';
    $('DLogo').parentNode.style.paddingLeft=(0)+'px';
    $('DLogo').style.left=(w*0.09)+'px';
    $('DFooter').style.width=w+'px';
    $('DBody').style.width=w+'px';
    $('DPromo').style.width=w+'px';
    clipImage();
}
function onResize404() {
    winWidth=document.documentElement.clientWidth;
    w=(winWidth<900)?900:winWidth;
    $('DTop').style.width=w+'px';
    $('DLogo').parentNode.style.paddingLeft='0px';
    $('DLogo').style.left=(w*0.09)+'px';
    $('DLangs').style.right=(w*0.08)+'px';
    $('DFooter').style.width=w+'px';
    
}
function clipImage() {
    if (!MZ) {
        wMap=$('DMap').offsetWidth;
        lArea=$('MainArea').offsetLeft;
        lMain=$('DMain').offsetLeft;
        wBody=$('DBody').offsetWidth;
        if (wMap+lArea+lMain > wBody) {
            $('DImage').style.width=$('DMap').style.width=(wBody-lArea-lMain)+'px';
        }
        else {
            if (wBody-lArea-lMain < imageWidth) {
                $('DImage').style.width=$('DMap').style.width=(wBody-lArea-lMain)+'px';
            }
            else {
                $('DImage').style.width=$('DMap').style.width=imageWidth+'px';
            }
        }
    }
}

