function myGetObject(sId) {
  if( document.all ) return document.all[sId];
  else return document.getElementById(sId);
}

function Show(sID) {
  myGetObject(sID).style.display='';
}

// ********************************************************************************
function ShowHide(sIDShow, sID, sTitle) {
  var objShow=myGetObject(sIDShow);
  var objTag=myGetObject(sID);
  
  if(objTag.style.display!='none') { 
    objTag.style.display='none';
    objShow.title="Показать "+sTitle;
    objShow.innerHTML="«";
  }
  else {
    objTag.style.display='';
    objShow.title="Скрыть "+sTitle;
    objShow.innerHTML="»";
  }  
}
//**********************************************

var arMenu=new Array();
var arAjaxMenu=new Array();

function OpenClose(objSign, sId, bAjax) {

  if( bAjax==null ) bAjax=0;

  if(objSign.alt=="+") {
    //objSign.title="Подождите секунду, чтобы открыть подменю";
    arMenu[sId]=[objSign, window.setTimeout("OpenClose2('"+sId+"')", 1000), bAjax ];
  }
  else {
    //objSign.title="Подождите секунду, чтобы скрыть подменю";
    arMenu[sId]=[objSign, window.setTimeout("OpenClose2('"+sId+"')", 1000), bAjax];
  }

}

function ResetTimer(sId) {

  if( arMenu[sId]!=null ) {
    window.clearTimeout( arMenu[sId][1] );
    //arMenu[sId][0].title="";
    arMenu[sId]=null;
  }

}

function OpenClose2(sId) {

  if( arMenu[sId]!=null ) objSign=arMenu[sId][0]; else return;

  if( arMenu[sId][2] && arAjaxMenu[sId]==null ) {
    objSign.title="Производится загрузка подменю...";
    LoadScript("js/"+sId+".js");
    return;
  }

  //objSign.title="";
  arMenu[sId]=null;

  if(objSign.alt=="+") {
    objSign.src="img/minus.gif";
    objSign.alt="-";
    myGetObject(sId).style.display="";
  }
  else {
    objSign.src="img/plus.gif";
    objSign.alt="+";
    myGetObject(sId).style.display="none";
  }

}

function OpenCloseAjax(sId) {

  if( arMenu[sId]!=null && arAjaxMenu[sId]!=null ) {
    objSign=arMenu[sId][0];
    objSign.title="";
    arMenu[sId]=null;
  }
  else return;

  if(objSign.alt=="+") {
    objSign.src="img/minus.gif";
    objSign.alt="-";

    myGetObject(sId).innerHTML=arAjaxMenu[sId];
    arAjaxMenu[sId]="";
    myGetObject(sId).style.display="";
  }

}

//**********************************************

function process_form(the_form)
{
  var element_names = new Object()
  element_names["req_username"] = "Имя"
  element_names["req_password1"] = "Пароль"
  element_names["req_password2"] = "Подтвердите пароль"
  element_names["req_email"] = "E-mail"
  element_names["req_result"] = "Результат операции"
  element_names["req_message"] = "Сообщение"
  element_names["req_theme"] = "Тема комментария"

  if (document.all || document.getElementById)
  {
    for (i = 0; i < the_form.length; ++i)
    {
      var elem = the_form.elements[i]
      if (elem.name && elem.name.substring(0, 4) == "req_")
      {
        if (elem.type && (elem.type=="text" || elem.type=="textarea" || elem.type=="password" || elem.type=="file") && elem.value=='')
        {
          alert("\"" + element_names[elem.name] + "\" это поле обязательно для заполнения в этой форме.")
          elem.focus()
          return false
        }
      }
    }
  }

  return true
}
//**********************************************
function GoDel(sNum) {
  return confirm("Вы действительно хотите удалить сообщение "+sNum+"?");
  //window.event.returnValue = confirm("Вы действительно хотите удалить сообщение "+sNum+"?");
}
//**********************************************
//AJAX
function LoadScript(sFileName) {
  var o = document.createElement("SCRIPT");
  o.type = "text/javascript";
  o.language = 'JavaScript';
  o.src = sFileName;
  document.body.appendChild(o);
}
//**********************************************
// realmusic.ru
function play(url) {
 newwindow=window.open(url,'player','height=220,width=340');
}

//********************************************************************************
// Вставка тегов в редактор
function insert_text(open, close)
{
	//msgfield = (document.all) ? document.all.req_message : ((document.getElementById('afocus') != null) ? (document.getElementById('afocus').req_message) : (document.getElementsByName('req_message')[0]));
  msgfield = myGetObject("xBBEditor"); //req_message

	// IE support
	if (document.selection && document.selection.createRange)
	{
		msgfield.focus();
		sel = document.selection.createRange();
		sel.text = open + sel.text + close;
		msgfield.focus();
	}

	// Moz support
	else if (msgfield.selectionStart || msgfield.selectionStart == '0')
	{
		var startPos = msgfield.selectionStart;
		var endPos = msgfield.selectionEnd;

		msgfield.value = msgfield.value.substring(0, startPos) + open + msgfield.value.substring(startPos, endPos) + close + msgfield.value.substring(endPos, msgfield.value.length);
		msgfield.selectionStart = msgfield.selectionEnd = endPos + open.length + close.length;
		msgfield.focus();
	}

	// Fallback support for other browsers
	else
	{
		msgfield.value += open + close;
		msgfield.focus();
	}

	return;
}

function insert_text_smart(sFlag, open, close) {
  if(sFlag=="") return;
  
  var sBuf;
  if(open.indexOf("font")>=0) sBuf=open.replace(sFlag, '"'+sFlag+'"'); else sBuf=open; 
  insert_text(sBuf, close);
}
 