﻿var debug_target="debug";

function get_el_id(id){
	var obj = document.getElementById(id);
	return obj;
}
function get_taglist_in(targ_str,tag_name,class_name){
	var tab_results = new Array();
	var target = get_el_id(targ_str);
	var tab_tag = target.getElementsByTagName(tag_name);
	if(tab_tag.length<0){
		writeToDebug('get_taglist_in: ', 'No result found for '+tag_name+' '+targ_obj);
	}else{
		(class_name !== null ? action="tri":action="list");
		switch(action){
			case "list":
				var test = "";
				for( var i = 0; i < tab_tag.length; i++ ){
					test += i + ', '
					tab_results.push(tab_tag[i]);
				}
				return tab_results;
			break;
			case "tri":
				for(var i=0;i<tab_tag.length;i++){
					node = tab_tag[i];
					if(node.getAttributeNode('class') !== null)  {
						node_class = node.getAttributeNode('class').nodeValue;
						if(node_class == class_name) tab_results.push(tab_tag[i]);
					}
				}
				return tab_results;
			break;
		}
	}
}
function writeToDebug(label_str, str){
	var target = get_el_id(debug_target);

	dt = document.createElement('dt');
	dt_str = document.createTextNode('>> '+label_str);
	dt.appendChild(dt_str);

	dl = get_taglist_in(debug_target,'dl', null);
	node_parent = dl[0];

	node_parent.appendChild(dt);

	if(!str.push){
		dd = document.createElement('dd');
		dd_str = document.createTextNode(str);
		dd.appendChild(dd_str);
		//
		node_parent.appendChild(dd);
	}else{
		for(var i=0;i<str.length;i++){
			dd = document.createElement('dd');
			dd_str = document.createTextNode(str[i]);
			dd.appendChild(dd_str);
			//
			node_parent.appendChild(dd);
		}

	}
}
var tab_element = new Array();
function tree_walk(node_obj){

	if(node_obj.hasChildNodes()){

		for(var i=0; i < node_obj.childNodes.length; i++){
			child_node = node_obj.childNodes[i];
			if(child_node.hasChildNodes()){
				tree_walk(child_node);
			}
			tab_element.push(node_obj.childNodes[i]);
		}
	}
	return tab_element;
}