function addBookmark(url, title)
{
  if (!url) url = location.href;
  if (!title) title = document.title;
  
  //Gecko
  if ((typeof window.sidebar == "object") && (typeof window.sidebar.addPanel == "function")) window.sidebar.addPanel (title, url, "");
  //IE4+
  else if (typeof window.external == "object") window.external.AddFavorite(url, title);
  //Opera7+
  else if (window.opera && document.createElement)
  {
    var a = document.createElement('A');
    if (!a) return false; //IF Opera 6
    a.setAttribute('rel','sidebar');
    a.setAttribute('href',url);
    a.setAttribute('title',title);
    a.click();
  }
  else return false;
  
  return true;
}



function doCnt(){
  document.ads_form.cnt.value=document.ads_form.ads_description.value.length;
}


  function getId(id)
  {var tmp = document.getElementById(id)
    return tmp;
  }


  function escapeRus(str)
  {
  	var trans = [];
    for(var i=0x410; i<=0x44F; i++)
    {trans[i] = i - 0x350;
    }
    trans[0x401] = 0xA8;
    trans[0x451] = 0xB8;

    var ret = [];

    for (var i=0; i<str.length; i++)
    {var n = str.charCodeAt(i);//2B
      if ((typeof trans[n] != 'undefined'))
      {
        n = trans[n];
      }
      if (n <= 0xFF)
      {
        ret[i] = escape(String.fromCharCode(n));
      }
      if (n==8470)
      {
        ret[i] = '%B9';
      }
      if (n==43)
      {
      	ret[i] = '%2B';
      }
    }
    return ret.join('');
  }


  function getParent(el, pTagName)
  {if (el == null) return null;
    else if (el.nodeType == 1 && el.tagName.toLowerCase() == pTagName.toLowerCase()) 
      return el;
    else
      return getParent(el.parentNode, pTagName);
  }


  function getForm(el)
  {var s = '';
    try
    {el = el.elements;
      var cnt = el.length;
      for(i=0; i<cnt; i++)
      {
        if(el[i].tagName=='INPUT' && el[i].name!='' && el[i].value!='' && el[i].disabled!=true)
        {
          if(el[i].type=='checkbox')
          {if(el[i].checked) s = s + '&' + el[i].name +'=' + escapeRus(el[i].value);

          }else if(el[i].type=='radio')
          {if(el[i].checked) s = s + '&' + el[i].name +'=' + escapeRus(el[i].value);

          }else
          {s = s + '&' + el[i].name +'=' + escapeRus(el[i].value);
          }
        }

        if(el[i].tagName=='SELECT' && el[i].name!='' && el[i].disabled!=true)
        {
          //s = s + '&' + el[i].name +'=' + escapeRus(el[i].options[el[i].selectedIndex].value);
          for (j=0; j <el[i].options.length; j++)
          {
            if (el[i].options[j].selected)
            {s = s + '&' + el[i].name +'=' + escapeRus(el[i].options[j].value);
            }
          }
        }

        if(el[i].tagName=='TEXTAREA' && el[i].name!='' && el[i].disabled!=true)
        {s = s + '&' + el[i].name +'=' + escapeRus(el[i].value);
        }
      }

    }catch (er) { }

    return s;
  }



function doPage(url,param,id)
{
	getId(id).innerHTML = '...';

	if (window.XMLHttpRequest)     req = new XMLHttpRequest();
	else if (window.ActiveXObject) req = new ActiveXObject("Microsoft.XMLHTTP");
	if (req)
	{req.onreadystatechange = function()

	  {if (req.readyState == 4)
		{if (req.status == 200)
		  {
			if(getId(id))
			{
			  getId(id).innerHTML = req.responseText;
			  //$('#moveDate').attachDatepicker({ dateFormat: 'yy-mm-dd' });
			}
		  }
		  else
		  {
			  var error_text='';
			  getId(id).innerHTML = '';
		  }
		}
	  }
	  param += '&html_id=' + id;

	  req.open('POST', url + ( (navigator.userAgent.indexOf('Opera 8')>=0 || navigator.userAgent.indexOf('Opera/8')>=0) ? '?'+param : ''), true);
	  try
	  {req.setRequestHeader('Accept-Charset', 'windows-1251');
		req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=windows-1251'); //win-1251?
	  }catch (er){}
	  req.send(param);
	}
}


// Функция для отображения результата геокодирования на карте
// Параметр value - адрес объекта для поиска
function showAddress (map, value) {
    var geoResult;
    // Запускает процесс геокодирования
    var geocoder = new YMaps.Geocoder(value, {results: 1, boundedBy: map.getBounds()});

    // Создает обработчик успешного завершения геокодирования
    YMaps.Events.observe(geocoder, geocoder.Events.Load, function () {
        // Если объект найден, добавляет его на карту
        // и устанавливает центр карты в центр области показа объекта
        if (this.length()) {
            geoResult = this.get(0);
            map.addOverlay(geoResult);
            map.setBounds(geoResult.getBounds());
        }else {
            alert("Ничего не найдено")
        }
    });

    // Процесс геокодирования завершен с ошибкой
    YMaps.Events.observe(geocoder, geocoder.Events.Fault, function (gc, error) {
        alert("Произошла ошибка: " + error);
    })
}


  function startTimer(id)
  {
    el = getId(id);
    if(el)
    { var val = Math.round(el.getAttribute('value')) + 1;

      el.setAttribute('value', val);

      var min = Math.floor(val/60);
      var sec = val%60;

      el.innerHTML = ((min > 9) ? min : '0' + min) + ':' + ((sec > 9) ? sec : '0' + sec);
			if (el.innerHTML=='01:00')
			{
				el2=getId(id+'Text');
				el2.innerHTML = 'Сервис временно не доступен. Нажмите F5.';
			}

      setTimeout("startTimer('"+id+"')", 1000);

    }
  }


