//Egy DOM elem létrehozása
//sType:    az elem típusa (pl. "div")
//aAttribs: a tulajdonságai érték-pár módon megadva (pl. ["id","ez","title","az"])
//Ha nincs aAttribs megadva, akkor is léterhozza.
function setElement(sType,aAttribs){
  var newElement=document.createElement(sType);
  if(aAttribs){ setAttribs(newElement,aAttribs);}
  
  return newElement;
}

//-------------Speciális DOM (Form) elemek----------------------
function setButton(aAttribs,sOnClick){
  var newButton=setElement("input",["type","button"]);
  if(aAttribs){setAttribs(newButton,aAttribs);}
  setOnClick(newButton,sOnClick);

  return newButton;
}

function setInputText(aAttribs){
  var newInput=setElement("input",["type","text"]);
  if(aAttribs){setAttribs(newInput,aAttribs);}
  
  return newInput;
}

function setTextArea(aAttribs){
  var newInput=setElement("textarea");
  if(aAttribs){setAttribs(newInput,aAttribs);}
  
  return newInput;
}
//-------------Speciális DOM (Form) elemek vége-----------------

function setAttribs(targetElement,aAttribs){
  for(var i=0;i<aAttribs.length;i+=2){
    targetElement.setAttribute(aAttribs[i],aAttribs[i+1]);
  }
}

//Egy DOM elem törlése.
function unSetElement(oElement){
  var tElement=typeOfElement(oElement);
  var pElement=tElement.parentNode;

  pElement.removeChild(tElement);
}

//Egy DOM elem objektumként való visszaadása.
//Vagy magát az objektumot adjuk meg, vagy az id-ját stringben.
function typeOfElement(oElement){
  if(typeof(oElement)=="string"){
    var tmp=document.getElementById(oElement);
    return tmp;
  }
  else if(typeof(oElement)=="object"){return oElement;}
}

//Egy elem onclick tulajdonságának beállítása.
//oElement:  maga az elem,
//sFunction: a fv, paraméterekkel, ahogy meg akarjuk hívni.
function setOnClick(oElement,sFunction){
  var tElement=typeOfElement(oElement);
  if(tElement.addEventListener){
    tElement.setAttribute("onclick","javascript: "+sFunction);
  }
  else if(tElement.attachEvent){
    tElemenet.attachEvent('onclick',sFunction);
  }
}

//Egy unordered list alapú, egyszintű menű létrehozása, DOM-mal.
//aMenuElements: egy két dimenziós tömb, az első dimenziója a feliratot,
//               a második az onclick eseményt tartalmazza.
function setMenu(aMenuElements){
  var newUl=setElement("ul");

  for(var i=0;i<aMenuElements[0].length;i++){
    var newText=document.createTextNode(aMenuElements[0][i]);
    var newAnchor=setElement("a",["href","javascript: void(0);","title",aMenuElements[0][i]]);
    var newLi=setElement("li");
    newAnchor.appendChild(newText);
    newLi.appendChild(newAnchor);
    newUl.appendChild(newLi);
    setOnClick(newAnchor,aMenuElements[1][i]);
  }
  
  return newUl;
}
