u_code = new Array
(
  "%u0410", "%u0411", "%u0412", "%u0413", "%u0414", "%u0415", "%u0416", "%u0417", "%u0418",
  "%u0419", "%u041A", "%u041B", "%u041C", "%u041D", "%u041E", "%u041F", "%u0420", "%u0421",
  "%u0422", "%u0423", "%u0424", "%u0425", "%u0426", "%u0427", "%u0428", "%u0429", "%u042A",
  "%u042B", "%u042C", "%u042D", "%u042E", "%u042F", "%u0430", "%u0431", "%u0432", "%u0433",
  "%u0434", "%u0435", "%u0436", "%u0437", "%u0438", "%u0439", "%u043A", "%u043B", "%u043C",
  "%u043D", "%u043E", "%u043F", "%u0440", "%u0441", "%u0442", "%u0443", "%u0444", "%u0445",
  "%u0446", "%u0447", "%u0448", "%u0449", "%u044A", "%u044B", "%u044C", "%u044D", "%u044E",
  "%u044F", "%u0451", "%u0401", "%u2116"
);
letters = new Array
(
  "À", "Á", "Â", "Ã", "Ä", "Å", "Æ", "Ç", "È",
  "É", "Ê", "Ë", "Ì", "Í", "Î", "Ï", "Ð", "Ñ",
  "Ò", "Ó", "Ô", "Õ", "Ö", "×", "Ø", "Ù", "Ú",
  "Û", "Ü", "Ý", "Þ", "ß", "à", "á", "â", "ã",
  "ä", "å", "æ", "ç", "è", "é", "ê", "ë", "ì",
  "í", "î", "ï", "ð", "ñ", "ò", "ó", "ô", "õ",
  "ö", "÷", "ø", "ù", "ú", "û", "ü", "ý", "þ",
  "ÿ", "¸", "¨", "¹"
);
cyr_code = new Array
(
  "%C0", "%C1", "%C2", "%C3", "%C4", "%C5", "%C6", "%C7", "%C8",
  "%C9", "%CA", "%CB", "%CC", "%CD", "%CE", "%CF", "%D0", "%D1",
  "%D2", "%D3", "%D4", "%D5", "%D6", "%D7", "%D8", "%D9", "%DA",
  "%DB", "%DC", "%DD", "%DE", "%DF", "%E0", "%E1", "%E2", "%E3",
  "%E4", "%E5", "%E6", "%E7", "%E8", "%E9", "%EA", "%EB", "%EC",
  "%ED", "%EE", "%EF", "%F0", "%F1", "%F2", "%F3", "%F4", "%F5",
  "%F6", "%F7", "%F8", "%F9", "%FA", "%FB", "%FC", "%FD", "%FE",
  "%FF", "B8", "A8", "B9"
);

function get_object(name)
{
	if (document.all)
    return eval("document.all['" + name + "']");
	else if (document.getElementById)
    return eval("document.getElementById('" + name + "')");
}

function get_absolute_position(element)
{
	var r = { x: element.offsetLeft, y: element.offsetTop };
	if (element.offsetParent)
  {
		var tmp = get_absolute_position(element.offsetParent);
		r.x += tmp.x;
		r.y += tmp.y;
	}
	return r;
}

function refresh_page()
{
  location.href = location.href;
}

function open_window(url, width, height)
{
  self.window.open(url, "", "scrollbars, resizable, width=" + width + ", height=" + height );
}

function get_url_text(text)
{
  text_result = escape(text);
  text_result_len = text_result.length / 6;
  for (var i = 0; i < text_result_len; i++)
    for (var j = 0; j < u_code.length; j++)
      text_result = text_result.replace(u_code[j], cyr_code[j]);
  return text_result;
}

function get_text_from_escape(text)
{
  text_result = text;
  for (var i = 0; i < text_result.length; i++)
    for (var j = 0; j < cyr_code.length; j++)
      text_result = text_result.replace(cyr_code[j], letters[j]);
  return text_result;
}

function set_url_param(param_name, param_value)
{
  return "&" + param_name + "=" + param_value;
}

function image_swap(img_name, new_src)
{
  image = document.images[img_name];
  image.src = new_src;
}

function cookie_create(name)
{
  document.cookie = name + "=;";
}
function cookie_delete(name)
{
  expireDate = new Date;
  expireDate.setDate(expireDate.getDate() - 1);
  document.cookie = name + "=;expires=" + expireDate.toGMTString();
}
function cookie_set_value(name, value)
{
  document.cookie = name + "=" + value;
}
function cookie_set_value_by_index(name, index, value)
{
  all_value = cookie_get_value(name);
  if (all_value == null)
    return;
  all_value_mas = all_value.split('|');
  all_value_mas[index] = value;
  new_all_value = "";
  for (var i = 0; i < all_value_mas.length; i++)
    new_all_value += "|" + all_value_mas[i];
  new_all_value = new_all_value.substr(1, new_all_value.length - 1);
  cookie_set_value(name, new_all_value);
}
function cookie_get_value(name)
{
  var cookie = " " + document.cookie;
  var search = " " + name + "=";
  var value = null;
  var offset = 0;
  var end = 0;
  if (cookie.length > 0)
  {
    offset = cookie.indexOf(search);
    if (offset != -1)
    {
      offset += search.length;
      end = cookie.indexOf(";", offset)
      if (end == -1)
        end = cookie.length;
      value = unescape(cookie.substring(offset, end));
    }
  }
  return value;
}
function cookie_get_value_by_index(name, index)
{
  all_value = cookie_get_value(name);
  all_value_mas = all_value.split('|');
  return all_value_mas[index];
}
function cookie_delete_value_by_index(name, index)
{
  all_value = cookie_get_value(name);
  if (all_value == null)
    return;
  all_value_mas = all_value.split('|');
  new_all_value = "";
  for (var i = 0; i < all_value_mas.length; i++)
    if (i != index)
      new_all_value += "|" + all_value_mas[i];
  new_all_value = new_all_value.substr(1, new_all_value.length - 1);
  cookie_set_value(name, new_all_value);
}
function cookie_delete_value_by_name(name, value_name)
{
  all_value = cookie_get_value(name);
  if (all_value == null)
    return;
  all_value_mas = all_value.split('|');
  new_all_value = "";
  for (var i = 0; i < all_value_mas.length; i++)
    if (all_value_mas[i] != value_name)
      new_all_value += "|" + all_value_mas[i];
  new_all_value = new_all_value.substr(1, new_all_value.length - 1);
  cookie_set_value(name, new_all_value);
}
function cookie_get_count(name)
{
  all_value = cookie_get_value(name);
  all_value_mas = all_value.split('|');
  return all_value_mas.length;
}
function cookie_add_value(name, value, check_uniq)
{
  old_value = cookie_get_value(name);
  if (old_value == null)
    cookie_set_value(name, value);
  else
  {
    if (old_value.indexOf(value) != -1 && check_uniq)
      return;
    cookie_set_value(name, old_value + "|" + value);
  }
}
function copy_to_clipboard(text)
{
  window.clipboardData.setData("Text", text);
}
function delete_record(url, name, lang)
{
  var msg = '';
  if (lang == 'en')
    msg = 'Do you really want to delete the record';
  else
    msg = 'Äåéñòâèòåëüíî óäàëèòü çàïèñü';
  if (name != '')
    msg = msg + ' (' + name + ')';
  msg = msg + ' ?';
  if (confirm(msg))
	  location.href = url;
}
function insert_quote(obj_name, text)
{
  if (document.selection)
  {
    obj = get_object(obj_name);
    obj.focus();
    obj.document.selection.createRange().text = "[quote]"+text+"[/quote]\n";
  }
}
function get_selection()
{
  if (document.getSelection)
  {
		selection = document.getSelection();
		selection = selection.replace(/\r\n\r\n/gi, "_doublecaret_");
    while (selection.indexOf("  ") !=-1)
      selection = selection.replace(/  /gi, "");
		selection = selection.replace(/_doublecaret_/gi, "\r\n\r\n");
  }
  else
    selection = document.selection.createRange().text;
}