//fpv=16
function mw_dom_get_ElementsByTagName_node_firstChild_data(response,tagname){
	var node=mw_dom_get_ElementsByTagName_node_firstItem(response,tagname);
	if(node){
		if(node.firstChild){
			return node.firstChild.data;	
		}
	}
}
function mw_dom_get_ElementsByTagName_node_firstItem(response,tagname){
	if(!response){
		return false;	
	}
	var cont=response.getElementsByTagName(tagname);
	if(cont){
		return 	cont.item(0);
	}
}


function mw_dom_insertAfter(elem,newelem){ 
	if(elem.nextSibling){ 
		elem.parentNode.insertBefore(newelem,elem.nextSibling); 
	} else { 
		elem.parentNode.appendChild(newelem); 
    }
}
function mw_dom_extraer_obj(obj){
	document.body.appendChild(obj);
}
function mw_dom_get_parent_by_tagname(child,tagname) {
	tagname=tagname.toUpperCase();
	if (child.parentNode){
		if (child.parentNode.nodeName==tagname){
			return child.parentNode;
		}else{
			return 	mw_dom_get_parent_by_tagname(child.parentNode,tagname);
		}
	}else{
		return false;	
	}
}
function mw_dom_get_child_by_id(parent,idch) {
	if(!idch){
		return false;	
	}
	var childn;
	if (childn=parent.childNodes){
		for (var x=0;x<childn.length;x++){
			if(childn[x].id==idch){
				return 	childn[x];
			}
		}
	}
}
function mw_dom_get_children_deep_by_id(parent,idch) {
	this.children=new Array;
	this.idch=idch;
	this.parentobj=parent;
	this.get_children=function(p){
		var childn;
		if (childn=p.childNodes){
			for (var x=0;x<childn.length;x++){
				if(childn[x].id==this.idch){
					this.children.push(childn[x]);
				}else{
					this.get_children(childn[x]);
				}
			}
		}
	}
	this.do_get_children=function(){
		if(!this.idch){
			return false;	
		}
		this.get_children(this.parentobj);
		if(this.children.length>=0){
			return true;	
		}
	}
}
function mw_dom_get_child_deep_by_id(parent,idch) {
	var getobj=new mw_dom_get_children_deep_by_id(parent,idch);
	if(getobj.do_get_children()){
		return 	getobj.children[0];
	}
}
function mw_dom_get_childdeep_by_idandtagname(parent,idch,tagname,asarray) {
	tagname=tagname.toUpperCase();
	var elems;
	var rarray;
	var rarrayn;
	if (elems=parent.getElementsByTagName(tagname)){
		if(asarray){
			rarray=new Array();	
			rarrayn=0;
		}
		for (var z=0;z<elems.length;z++){
			if(elems[z].id==idch){
				if(asarray){
					rarray[rarrayn]=elems[z];
					rarrayn++;
				}else{
					return 	elems[z];
				}
			}
		}
		if(asarray){
			if(rarrayn>0){
				return 	rarray;
			}
		}
	}
	return false;
}
function mw_dom_get_elem_by_tagname_name(tagname,name,asarray) {
	tagname=tagname.toUpperCase();
	var elems;
	var rarray;
	var rarrayn;
	if (elems=document.getElementsByTagName(tagname)){
		if(asarray){
			var rarray=new Array();	
			rarrayn=0;
		}
		for (var z=0;z<elems.length;z++){
			if(elems[z].getAttribute('name')==name){
				if(asarray){
					rarray[rarrayn]=elems[z];
					rarrayn++;
				}else{
					return 	elems[z];
				}
			}
		}
		if(asarray){
			if(rarrayn>0){
				return 	rarray;
			}
		}
	}
	
}

function mw_dom_get_childdeep_by_nameandtagname(parent,namech,tagname,asarray) {
	tagname=tagname.toUpperCase();
	var elems;
	var rarray;
	var rarrayn;

	if (elems=parent.getElementsByTagName(tagname)){
		if(asarray){
			rarray=new Array();	
			rarrayn=0;
		}
		
		for (z=0;z<elems.length;z++){
			if(elems[z].getAttribute('name')==namech){
				if(asarray){
					rarray[rarrayn]=elems[z];
					rarrayn++;
				}else{
					return 	elems[z];
				}
			}
		}
		if(asarray){
			if(rarrayn>0){
				return 	rarray;
			}
		}
	}
	return false;
}
function mw_dom_get_parent_by_name(child,name) {
	var pname;
	if (child.parentNode){
		pname=child.parentNode.getAttribute('name');
		if (pname==name){
			return child.parentNode;
		}else{
			return 	mw_dom_get_parent_by_name(child.parentNode,name);
		}
	}else{
		return false;	
	}
}
function mw_dom_findPosX(obj)  {
    var curleft = 0;
    if(obj.offsetParent){
		while(1)  {
          curleft += obj.offsetLeft;
          if(!obj.offsetParent){
            break;
		  }
          obj = obj.offsetParent;
        }
	} else if(obj.x){
        curleft += obj.x;
	}
    return curleft;
  }

function mw_dom_findPosY(obj) {
    var curtop = 0;
    if(obj.offsetParent){
		while(1)       {
          curtop += obj.offsetTop;
          if(!obj.offsetParent){
            break;
		  }
          obj = obj.offsetParent;
        }
	}else if(obj.y){
        curtop += obj.y;
	}
    return curtop;
  }

