var oldval, currentobj, addform, ma, mo, tar, onecli, fs1, ini=true, mainini=true, list, filterval, fworking=false, bstyle, ex1, ex2, blist
var agent = navigator.userAgent.toLowerCase();
if (agent.indexOf("msie") > -1 && agent.indexOf("opera") == -1) agent=2;
else agent=1;

function initlistvar(){
 try {
  onecli=parent.main.document.getElementById("onecli")
  addform=parent.main.document.getElementById("addform")
  ma=addform.elements['mark']
  mo=addform.elements['model']
  tar=addform.elements['name']
  ini=true
 }
 catch (ex) {
  ini=false
//  alert(ex.message)
 }
}
function initlist(){
 ex1 = document.getElementById("ex1")
 ex2 = ex1.cloneNode(true)
 ex2.setAttribute("id", "ex2")
 document.body.appendChild(ex2)
 ex2.style.display="none"
 blist = ex2.childNodes
 if (1==agent) {
  document.onmouseover=listover
  document.onmouseout=listout
 }
 else {
  document.body.onmouseover=listoverie
  document.body.onmouseout=listoutie
 }
 if (document.location.href.indexOf("listname")>-1)
  if (1==agent) {
   document.onclick=insname
  }
  else {
   document.body.onclick=insnameie
  }
 else if (document.location.href.indexOf("listmark")>-1)
  if (1==agent)
   document.onclick=insmark
  else
   document.body.onclick=insmarkie
}

/*обработка нажатия клавиш для Gecko*/

function insname(e){
 initlistvar()
 var target=e.target, first
 if (1==target.nodeType && "B"==target.tagName) {
  first=target.firstChild
  tar.value=first.nodeValue
  if (true==onecli.checked){
   addform.method="get"
   addform.action=""
   addform.submit()
  }
 }
}
function insmark(e){
 initlistvar()
 var target=e.target, first
 if (1==target.nodeType && "B"==target.tagName) {
 first=target.firstChild
 var mark, model=""
 if ("mark"==target.className)
  mark=first.nodeValue
 else {
  model=first.nodeValue
  mark=target.parentNode.title
 }
 ma.value=mark
 mo.value=model
 if (true==onecli.checked){
  addform.method="get"
  addform.action=""
  addform.submit()
 }
 }
}

function listover(e){
 var target=e.target
 if (1==target.nodeType && "B"==target.tagName) {
 target.style.textDecoration="underline"
}}

function listout(e){
 var target=e.target
 if (1==target.nodeType && "B"==target.tagName) {
 target.style.textDecoration="none"
}}

function elistover(e){
 var target=e.target
 if (1==target.nodeType && "B"==target.tagName) {
 target.style.backgroundColor="#ffc"
}}

function elistout(e){
 var target=e.target
 if (1==target.nodeType && "B"==target.tagName) {
 target.style.backgroundColor="#fff"
}}

/*конец кода для Gecko*/

//начало кода для ИЕ
function listoverie(){
 var target=event.srcElement
 if (1==target.nodeType && "B"==target.tagName) {
 target.style.textDecoration="underline"
}}

function listoutie(){
 var target=event.srcElement
 if (1==target.nodeType && "B"==target.tagName) {
 target.style.textDecoration="none"
}}

function elistoverie(){
 var target=event.srcElement
 if (1==target.nodeType && "B"==target.tagName) {
 target.style.backgroundColor="#ffc"
}}

function elistoutie(){
 var target=event.srcElement
 if (1==target.nodeType && "B"==target.tagName) {
 target.style.backgroundColor="#fff"
}}

function insnameie(){
 initlistvar()
 var target=event.srcElement, first
 if (1==target.nodeType && "B"==target.tagName) {
  first=target.firstChild
  tar.value=first.nodeValue
  if (true==onecli.checked){
   addform.method="get"
   addform.action=""
   addform.submit()
  }
 }
}
function insmarkie(){
 initlistvar()
 var target=event.srcElement, first
 if (1==target.nodeType && "B"==target.tagName) {
 first=target.firstChild
 var mark, model=""
 if ("mark"==target.className)
  mark=first.nodeValue
 else {
  model=first.nodeValue
  mark=target.parentNode.title
 }
 ma.value=mark
 mo.value=model
 if (true==onecli.checked){
  addform.method="get"
  addform.action=""
  addform.submit()
 }
 }
}
//конец кода для ИЕ

function markch (){
// alert(obj.value)
 currentobj=this
 var mark, model, fld
 if ("mark"==this.parentNode.className) {
  mark=this.value
  fld="mark"
  val=mark
 }
 else {
  model=this.value
  fld="model"
  mark=this.parentNode.parentNode.title
  val=model
 }
 val=val.replace(/\&/,"%26")
 val=val.replace(/\?/,"%3f")
 val=val.replace(/\#/,"%23")
 var el=document.createElement("SCRIPT")
 document.body.appendChild(el);
 var src="chmark.php?val="+val+"&old="+oldval+"&fld="+fld+"&mark="+mark
 el.src=src
 oldval=""
}

function inputfo (){
 oldval=this.value
}

function editlist (e){
 var target=e.target, first
 if (1==target.nodeType && "B"==target.tagName) {
  first=target.firstChild
  oldval=first.nodeValue
  var el=document.createElement("INPUT")
  el.setAttribute("value",first.nodeValue);
  target.appendChild(el)
  target.removeChild(first)
  el.focus()
  target.firstChild.onfocus=inputfo
  if ("listname"==list)
   target.firstChild.onchange=namech
  else if ("listmark"==list)
   target.firstChild.onchange=markch
 }
}

function editlistie (){
 var target=event.srcElement, first
 if (1==target.nodeType && "B"==target.tagName) {
  first=target.firstChild
  oldval=first.nodeValue
  var el=document.createElement("INPUT")
  el.setAttribute("value",first.nodeValue);
  target.appendChild(el)
  target.removeChild(first)
  el.focus()
  target.firstChild.onfocus=inputfo
  if ("listname"==list)
   target.firstChild.onchange=namech
  else if ("listmark"==list)
   target.firstChild.onchange=markch
 }
}

function namech (){
 currentobj=this
 var val=this.value
 var el=document.createElement("SCRIPT")
 val=val.replace(/\&/,"%26")
 val=val.replace(/\?/,"%3f")
 val=val.replace(/\#/,"%23")
 document.body.appendChild(el);
 el.src="chname.php?val="+val+"&old="+oldval
 oldval=""
// alert(currentobj.value)
}

function togglemode(obj) {
 fs1=parent.document.getElementById('fs1')
 var msg=document.getElementById('msg')
 if ("редактировать"==obj.value) {
  initlistedit()
  obj.value="завершить редактирование"
  msg.firstChild.nodeValue="редактирование"
 }
 else {
  fs1.cols="15%,70%,15%";
  var el=document.createElement("SCRIPT")
  document.body.appendChild(el);
  el.src="updlist.php?list="+list
//  document.location.reload(true)
 }
}

function initlistedit(){
 if (1==agent) {
  document.onmouseover=elistover
  document.onmouseout=elistout
 }
 else {
  document.body.onmouseover=elistoverie
  document.body.onmouseout=elistoutie
 }
 if (1==agent) {
  document.onclick=editlist
 }
 else {
  document.body.onclick=editlistie
 }
 if (document.location.href.indexOf("listname")>-1) {
  list="listname"
  fs1.cols="30%,60%,10%";
 }
 else if (document.location.href.indexOf("listmark")>-1) {
  list="listmark"
  fs1.cols="20%,55%,25%";
 }
}

function pickup(obj) {
 if (filterval==obj.value) return
 else filterval=obj.value
 if (fworking) return
 var fflag=false, i=0, str="", val, q, qrx
 if (obj.value.length>1) {
  fworking=true
  ex1.style.display="none"
  q=obj.value.toLocaleLowerCase()
  qr=q.substr(1)
  qrx="/^"+qr+"/"
  for (var s in blist) {
   if (1==blist[s].nodeType && "B"==blist[s].tagName){
    val=blist[s].firstChild.nodeValue.toLocaleLowerCase()
    if (0==q.indexOf(" ")) {
     if (val.indexOf(qr)>-1) {
      blist[s].style.display="block"
      fflag=true
     }
     else blist[s].style.display="none"
    }
    else {
     if (0==val.indexOf(q)) {
      blist[s].style.display="block"
      fflag=true
     }
     else blist[s].style.display="none"
    }
   }
  }
  if (!fflag) {
   obj.style.color="#c00"
   ex1.style.display="block"
   ex2.style.display="none"
  }
  else {
   obj.style.color="#000"
   ex2.style.display="block"
   ex1.style.display="none"
  }
 }
 else {
  obj.style.color="#000"
  ex1.style.display="block"
  ex2.style.display="none"
 }
 fworking=false
}

function pickupm(obj) {
 if (filterval==obj.value) return
 else filterval=obj.value
 if (fworking) return
 var fflag=false, i=0, str="", val, q, qrx
 if (obj.value.length>1) {
  fworking=true
  ex1.style.display="none"
  q=obj.value.toLocaleLowerCase()
  qr=q.substr(1)
  qrx="/^"+qr+"/"
  for (var d in blist) {
   if (1==blist[d].nodeType && "DIV"==blist[d].tagName){
   var dlist=blist[d].childNodes
   for (var s in dlist) {
   if (1==dlist[s].nodeType && "B"==dlist[s].tagName){
    val=dlist[s].firstChild.nodeValue.toLocaleLowerCase()
    if (0==q.indexOf(" ")) {
     if (val.indexOf(qr)>-1) {
      dlist[s].style.display="block"
      fflag=true
     }
     else {
      dlist[s].style.display="none"
//      dlist[s].parentNode.firstChild.style.display="none"
     }
    }
    else {
     if (0==val.indexOf(q)) {
      dlist[s].style.display="block"
      fflag=true
     }
     else {
      dlist[s].style.display="none"
//      dlist[s].parentNode.firstChild.style.display="none"
     }
    }
   }
   }
   }
  }
  if (!fflag) {
   obj.style.color="#c00"
   ex1.style.display="block"
   ex2.style.display="none"
  }
  else {
   obj.style.color="#000"
   ex2.style.display="block"
   ex1.style.display="none"
  }
 }
 else {
  obj.style.color="#000"
  ex1.style.display="block"
  ex2.style.display="none"
 }
 fworking=false
}

