var key = "", time = "", is_mediaplan;
var submit_flag = false;

function AdvqLite(checkbox, header, txt, geo )
{
var w = 800, h = 600;
var is_cb = '';
if(checkbox) is_cb = 1;
var shw = '';
if(header) shw = 1;
if( !txt ) txt='';
if (document.all || document.layers) {
    w = screen.availWidth;
    h = screen.availHeight;
}

var popW = 700, popH = 600;
var leftPos = (w-popW)/2, topPos = (h-popH)/2;
WordsWin2 = window.open("http://direct.yandex.ru/stat/wordsstat.pl?checkboxes=" + is_cb + "&rpt=ppc&shw="+shw+"&text=" + txt + "&key="+key+"&tm="+time+(geo?'&geo='+geo:''), "Words", 'width=' + popW + ',height=' + popH + ',top=' + topPos + ',left=' + leftPos + ',resizable=yes,scrollbars=yes,status=0');
if (navigator.appName=='Netscape') { WordsWin2.focus(); }

}

function AdvqLite_media( checkbox, header, nameinput, phrase, geo, text_geo )
{
    var w = 800, h = 600;
    var is_cb = '';
    if(checkbox) is_cb = 1;
    var shw = '';
    if(header) shw = 1;

    if (document.all || document.layers) {
        w = screen.availWidth;
        h = screen.availHeight;
    }
    phrase = escape(mass[nameinput][0]);
    var popW =500, popH = 600;
    var leftPos = (w-popW)/2, topPos = (h-popH)/2;
    var llink = "/registered/main.pl?cmd=wordstat_minus&name=" + nameinput + "&text=" + phrase + "&geo=" + geo + "&text_geo=" + text_geo;
    WordsWin = window.open( llink, "Words", 'width=' + popW + ',height=' + popH + ',top=' + topPos + ',left=' + leftPos + ',resizable=yes,scrollbars=yes,status=0');
    if (navigator.appName=='Netscape') { 
        WordsWin.focus(); 
    }

}

function winContactInfo( bid, db )
{
    var llink = "";
    if (document.forms["ad"])
        exfrm = document.forms["ad"];
    else if (document.forms["saveBanner"])
        exfrm = document.forms["saveBanner"];
    else if (document.forms["banners"])
        exfrm = document.forms["banners"];

    if( !bid && !db ) {
        var worktime_link = "&worktime=" + escape(exfrm.worktime.value);
        var cid = exfrm.cid.value;
        var title = exfrm.title.value;
        var body = exfrm.body.value;
        var href = exfrm.href.value;
        var domain = exfrm.domain.value;
        var city = exfrm.city.value;
        var phone = exfrm.phone.value;
        var name = exfrm.name.value;

        var address_mass = new Array();
        if( exfrm.street.value )
            address_mass[address_mass.length] = exfrm.street.value;
        if( exfrm.house.value )
            address_mass[address_mass.length] = " д. " + exfrm.house.value;
        if( exfrm.build.value )
            address_mass[address_mass.length] = " корп. " + exfrm.build.value;
        if( exfrm.apart.value )
            address_mass[address_mass.length] = " офис " + exfrm.apart.value;
        var address = address_mass.join(", ");

        var country = exfrm.country.value;
        var country_code = escape( exfrm.country_code.value );
        var city_code = exfrm.city_code.value;
        var ext = exfrm.ext.value;
        var contactperson = exfrm.contactperson.value;

        if( !exfrm.country_code )
            country_code = "";
        if( !exfrm.city_code )
            city_code = "";
        if( !exfrm.phone )
             phone = "";
        if( !exfrm.ext )
             ext = "";
        llink = "/registered/main.pl?cmd=showContactInfo&from=edit&cid=" + cid + "&title="+escape(title)+"&body="+escape(body)+"&href="+escape(href)+"&domain="+escape(domain)+"&country="+escape(country)+"&city="+escape(city)+"&city_code="+escape(city_code)+"&country_code="+escape(country_code)+"&phone="+escape(phone)+"&ext="+escape(ext)+"&name="+escape(name)+"&contactperson="+escape(contactperson)+"&address="+escape(address)+ worktime_link;
        
    } else if( bid && db ) {
        var media = '';
        if( is_mediaplan )
            media = "&media=" + is_mediaplan;
        llink = "/registered/main.pl?cmd=showContactInfo&bid=" + bid + media;
        
    } else if ( bid && !db) {
        // для мультиредактирования
    
        var cid = exfrm['cid'].value;
        var title = exfrm['title-' + bid ].value;
        var body = exfrm['body-'+bid].value;
        var href = exfrm['href-'+bid].value;
        var domain = exfrm['domain-'+bid].value;
        var country = exfrm['country-'+bid].value;
        var city = exfrm['city-'+bid].value;
        var country_code = exfrm['country_code-'+bid].value;
        var city_code = exfrm['city_code-'+bid].value;
        var phone = exfrm['phone-'+bid].value;
        var ext = exfrm['ext-'+bid].value;
        var name = exfrm['name-'+bid].value;
        var contactperson = exfrm['contactperson-'+bid].value;

        var address_mass = new Array();
        if( exfrm['street-'+bid] && exfrm['street-'+bid].value != '' )
            address_mass[ address_mass.length ] = exfrm['street-'+bid].value;
        if( exfrm['house-'+bid] && exfrm['house-'+bid].value != '' )
            address_mass[ address_mass.length ] = " д. " + exfrm['house-'+bid].value;
        if( exfrm['build-'+bid] && exfrm['build-'+bid].value != '' )
            address_mass[ address_mass.length ] = " корп. " + exfrm['build-'+bid].value;
        if( exfrm['apart-'+bid] && exfrm['apart-'+bid].value != '' )
            address_mass[ address_mass.length ] = " офис " + exfrm['apart-'+bid].value;
        var address = address_mass.join(", ");
        

        var worktime_link = "&worktime=" + escape( exfrm['worktime-' + bid].value );
        llink = "/registered/main.pl?cmd=showContactInfo&from=edit&cid=" + cid + "&title=" + escape(title) + "&body=" + escape(body) + "&href=" + escape(href) + "&domain=" + escape(domain) + "&country=" + escape(country) + "&city=" + escape(city) + "&city_code=" + escape(city_code) + "&country_code=" + escape(country_code) + "&phone=" + escape(phone) + "&ext=" + escape(ext) + "&name=" + escape(name) + "&contactperson=" + escape(contactperson) + "&address=" + escape(address) + worktime_link;
    }

    var w = 800, h = 600;
    if (document.all || document.layers) {
        w = screen.availWidth;
        h = screen.availHeight;
    }
    var popW =600, popH = 500;
    var leftPos = (w-popW)/2, topPos = (h-popH)/2;
    Win = window.open( llink, "_blank", 'width=' + popW + ',height=' + popH + ',top=' + topPos + ',left=' + leftPos + ',resizable=yes,scrollbars=yes,status=0');
}

function CheckAll(Element,Name)
{
  thisCheckBoxes = Element.parentNode.parentNode.parentNode.getElementsByTagName('input');
  for (i = 1; i < thisCheckBoxes.length; i++){
    if (thisCheckBoxes[i].name.substring(0, Name.length) == Name){
      thisCheckBoxes[i].checked = Element.checked;
    }
  }
}

function OpenWindow(uri, width, height, name){
  window.open(uri,name,'width='+width+',height='+height+',status=yes,menubar=no,resizable=yes,scrollbars=1')
  return false;
}

function save(f) {
regions='';
regions_id='';
  for(i=0; i<f.length; i++) {
    if(f[i].type == 'checkbox' && f[i].checked ) {
      regions+=f[i].value+"\n";
      regions_id+=f[i].name+",";
    }
  }
  alert(regions_id);
  alert(regions);
  opener.window.document.forms.geo.geo.value=regions_id;
  opener.window.document.forms.ad.geo.value=regions;
}



function check_regions(inp, start) 
{
  var j;
  if( !start ) start = 0;
  for( j = start; j < f.length; j++ )
    if(f[j].type == 'checkbox' && f[j].name != inp.name )
      if(Regions[f[j].name].arrayOfids[0] == inp.name || Regions[f[j].name].arrayOfids[1] == inp.name) {
          f[j].disabled=inp.checked;
          if(start>0) alert(f[j].disabled+" - "+f[j].value);
          if(f[j].checked && Regions[f[j].name].arrayOfids.length>0 ) {alert(f[j].value); check_regions(f[j],j+1); }
      }
}



function region(id) 
{
    this.id = id;
    this.arrayOfids = id.split('_');
}


function RegionsCollection() {
  Regions = new Array();
  for( i = 0; i < f.length; i++ ) {
      if(f[i].type == 'checkbox') {
        Regions[f[i].name]= new region(f[i].id);

      }
  }
  for(i=0; i<f.length; i++) {
      if(f[i].type == 'checkbox') {
        check_regions(f[i]);
      }
  }
  alert(Regions.length);
}

function WinAdvq(url)
{
    var w = 640, h = 480;
    if ( document.all || document.layers ) {
        w = screen.availWidth;
        h = screen.availHeight;
    }
    var popW = 580, popH = 480;
    var leftPos = (w-popW)/2, topPos = (h-popH)/2;
    WordsWin = window.open(url, "Words", 'width=' + popW + ',height=' + popH + ',top=' + topPos + ',left=' + leftPos + ',resizable=yes,scrollbars=yes,status=0');
    if (navigator.appName=='Netscape')
        WordsWin.focus();
}

function ClearGeo() {

  document.forms['ad'].text_geo.value = 'Все';
  document.forms['ad'].geo.value = "0";
  document.forms['geo'].geo.value="0";
  show_cleargeo();
}

function show_cleargeo() {
  if(document.getElementById) {
    if(document.forms['geo'].geo.value == '0')
        document.getElementById('cleargeo').style.visibility = 'hidden';
    else
        document.getElementById('cleargeo').style.visibility = 'visible';
    if (document.getElementById('geo_warning')) 
        document.getElementById('geo_warning').style.display = document.forms['geo'].geo.value != '0' ? 'none' : 'block';
  }
}

function autobrok( current_form ) {
  var status = current_form.autobroker.checked;
  for(var count = 0; count < current_form.length; count++  ) {
    if( current_form.elements[ count ].type == "text" && current_form.elements[ count ].name != "bannerprice" ){
      current_form.elements[ count ].disabled = status;
    } else if( current_form.elements[ count ].type == "text" && current_form.elements[ count ].name == "bannerprice" ) {
      current_form.elements[ count ].disabled = !status;
    }
  }
}

function settime()
{
        document.forms['login'].timestamp.value = new Date().getTime();
}

// Выбор рубрик
function rubrics_choose( bid ) {
    var suffix = bid ? '-'+bid : '';
    var f = document.ad ? document.ad : document.banners;
    document.cc.ChoosedCategories.value = f['ChoosedCategories'+suffix].value;
    document.cc.UncheckedCategories.value = f['UncheckedCategories'+suffix].value;
    if ( bid ) {
        document.cc.bid.value = bid;
    }
    var phr = new Array();
    if ( f['phrases'] && f['phrases'].value ) {
        phr[phr.length] = f['phrases'].value;
    }
    if ( f['new_phrases'+suffix] && f['new_phrases'+suffix].value ) {
        phr[phr.length] = f['new_phrases'+suffix].value;
    }
    var els = f.elements;
    var re = new RegExp( '^ph'+suffix+'_\\d+$' );
    for( var i = 0; i < els.length; i++ ) {
        if ( els[i].name.match( re ) ) {
            phr[phr.length] = els[i].value;
        }
    }
    document.cc.phrases.value = phr.join(', ');
    OpenWindow('/registered/main.pl?cmd=showRubrics&rubrics='+document.cc.ChoosedCategories.value, 700, 600,'catalog_choose');
    document.cc.submit();
}
function rubrics_clear(bid) {
    var suffix = bid ? '-'+bid : '';
    var f = document.ad ? document.ad : document.banners;
    f['UncheckedCategories'+suffix].value = f['UncheckedCategories'+suffix].value
                ? f['UncheckedCategories'+suffix].value+','+f['ChoosedCategories'+suffix].value
                : f['ChoosedCategories'+suffix].value;
    f['ChoosedCategories'+suffix].value = '';
    f['text_rubrics'+suffix].value = '';
    document.getElementById('rubrics_clear_div'+suffix).style.display = 'none';
}

function autobudgetPriority( inpname, num ) {
    var span = document.getElementById(inpname+'_text');
    if ( span == null ) return;
    if ( num == 1 ) {
        span.innerHTML = '<span style="color: red">низкий</span>';
    } else if ( num == 5 ) {
        span.innerHTML = '<span style="color: green">высокий</span>';
    } else {
        span.innerHTML = '<span>средний</span>';
    }
}

// склонение слов по числу
// get_number_word(number, 'час', 'часа', 'часов') # '1 час', '2 часа', '5 часов'
function get_number_word(num, w1, w2, w3)
{
    num = num + '';
    var last_char = num.charAt(num.length - 1);
    var w_res = w3;

    if (num >= 11 && num <= 14) {
        w_res = w3;
    } else if (last_char == 1) {
        w_res = w1;
    } else if (last_char >= 2 && last_char <= 4) {
        w_res = w2;
    }

    return num + '&nbsp' + w_res;
}

// cache for getElementById
var elements_cache = new Object();

// functions for getElementById
function getElement(Id)
{
    if (! elements_cache[Id]) {
        elements_cache[Id] = document.getElementById(Id);
    }

    return elements_cache[Id];
}

function getValue(Id)
{
    return getElement(Id).value;
}

function setValue(Id, Value)
{
    getElement(Id).value = Value;
}

function getStyle(Id)
{
    return getElement(Id).style;
}

function get_xml_value( xml, name ) {
    return xml.getElementsByTagName(name)[0].firstChild.data;
}

// Получить по url домен последнего редиректа
// проалертить ошибку или вставить результат в elem
function get_url_domain(url, bid) {

    var f = bid ? document.banners : document.ad;
    var suf = bid ? '-'+bid : '';

    if ( url.match(/^\s*$/) ) {
        f['domain'+suf].value = '';
        return;
    }
    var ajax = new AjaxObject();
    ajax.onreadystatechange = function(){
        if (this.readyState != 4){
            return;
        }
        var xml = this.ajax.responseXML;
        if ( get_xml_value(xml,'code') == 1 ) {
            var d = get_xml_value(xml,'domain');
            f['domain_strict'+suf].value = f['domain'+suf].value = document.getElementById('ad-url'+suf).innerHTML = d;
            f['domain_sign'+suf].value = get_xml_value(xml,'domain_sign');
            url_domain_warning(bid);
        } else {
            f['domain_strict'+suf].value = f['domain'+suf].value = document.getElementById('ad-url'+suf).innerHTML = f['href'+suf].value.replace(/http:\/\//, '').replace(/^([^\/]+).*/, '$1');
            url_domain_warning(bid);

            if (! submit_yes)
                alert( get_xml_value(xml,'text') );

            f['href'+suf].focus();
        }
    }
    ajax.open('GET', '/registered/main.pl?cmd=ajaxGetUrlDomain&url='+escape(url.replace(/\+/g, '%20')));
    ajax.send();
}

// показать варнинг, если нужно
function url_domain_warning(bid) {
    var f = bid ? document.banners : document.ad;
    var suf = bid ? '-'+bid : '';
    document.getElementById('domain_warning'+suf).style.display = 
            f['domain_calc'+suf].value == f['domain'+suf].value ? 'none' : 'block';
}

function change_strict_domain_status(bid) {
    var f = bid ? document.banners : document.ad;
    var suf = bid ? '-'+bid : '';
    var tr = document.getElementById('tr_domain_strict'+suf);
    var flag = tr.style.display == 'none';
    tr.style.display = flag ? '' : 'none';
    var a = document.getElementById('a_domain_strict'+suf);
    a.innerHTML = flag ? '&ndash;' : '+';
    a.blur();
}

function getElementPosition(elemPtr)
{
    var posX = elemPtr.offsetLeft;
    var posY = elemPtr.offsetTop;
    while (elemPtr.offsetParent != null) {
        elemPtr = elemPtr.offsetParent;
        posX += elemPtr.offsetLeft;
        posY += elemPtr.offsetTop;
    }
    this.x = posX;
    this.y = posY;
    return this;
}

function changeDisplayCI( link, bid )
{
    if( bid )
        bid_fix = '-' + bid;
    else 
        bid_fix = '';
    var tb = document.getElementById("TB"+bid_fix);

    if( tb.style.display == 'none' ) {
        tb.style.display = '';
        if( bid )
            link.innerHTML = 'скрыть адрес и телефон';
    } else {
        tb.style.display = 'none';
        if( bid )
            link.innerHTML = 'показать адрес и телефон';
    }
}

function yasetCookie (name, value, expires, path, domain, secure) {
    document.cookie = name + "=" + escape(value) +
    ((expires) ? "; expires=" + expires : "") +
    ((path) ? "; path=" + path : "") +
    ((domain) ? "; domain=" + domain : "") +
    ((secure) ? "; secure" : "");
}

function yahide() {
    var name = 'directya';
    var value = 1;
    var expires = new Date();
    expires.setYear(1900+expires.getYear() + 1);    // Change the date to next year
    var domain = 'direct.yandex.ru';
    yasetCookie(name,value,expires,null,domain);
    document.location.reload();
}

function yashow() {
    var name = 'directya';
    var value = 0;
    var expires = new Date(0);
    var domain = 'direct.yandex.ru';
    yasetCookie(name,value,expires,null,domain);
    document.location.reload();
}

function yagetCookie(name) {
    var cook = document.cookie.split(';');
    for (var i=0; i<cook.length; i++) {
        var par = cook[i].split('=');
        if (par[0]==name) return par[1];
    }
}