//fpv=5
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 (childn=parent.childNodes){
		for (x=0;x<childn.length;x++){
			if(childn[x].id==idch){
				return 	childn[x];
			}
		}
	}
}
function mw_dom_get_childdeep_by_idandtagname(parent,idch,tagname) {
	tagname=tagname.toUpperCase();
	if (elems=parent.getElementsByTagName(tagname)){
		for (z=0;z<elems.length;z++){
			if(elems[z].id==idch){
				return 	elems[z];
			}
		}
	}
}
function mw_dom_get_childdeep_by_nameandtagname(parent,namech,tagname) {
	tagname=tagname.toUpperCase();
	if (elems=parent.getElementsByTagName(tagname)){
		for (z=0;z<elems.length;z++){
			if(elems[z].getAttribute('name')==namech){
				return 	elems[z];
			}
		}
	}
}
function mw_dom_get_parent_by_name(child,name) {
	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;
  }
