﻿/** 
* Copyright 2006 massimocorner.com
* License: http://www.massimocorner.com/license.htm
* @author      Massimo Foti (massimo@massimocorner.com)
* @version     0.2.6, 2006-12-12
*/

if(typeof(tmt)=="undefined"){var tmt={};}
tmt.addEvent=function(obj,type,fn){if(obj.addEventListener){obj.addEventListener(type,fn,false);}
else if(obj.attachEvent){obj["e"+type+fn]=fn;obj[type+fn]=function(){obj["e"+type+fn](window.event);}
obj.attachEvent("on"+type,obj[type+fn]);}}
tmt.get=function(){var returnNodes=new Array();for(var i=0;i<arguments.length;i++){var nodeElem=arguments[i];if(typeof nodeElem=="string"){nodeElem=document.getElementById(nodeElem);}
if(arguments.length==1){return nodeElem;}
returnNodes.push(nodeElem);}
return returnNodes;}
tmt.getAll=function(startNode){var rootNode=(startNode)?tmt.get(startNode):document;return rootNode.getElementsByTagName("*");}
tmt.getAllNodes=function(startNode){var elements=tmt.getAll(startNode);var nodesArray=[];for(var i=0;i<elements.length;i++){if(elements[i].nodeType==1){nodesArray.push(elements[i]);}}
return nodesArray;}
tmt.getNodesByAttribute=function(attName,startNode){var nodes=tmt.getAll(startNode);return tmt.filterNodesByAttribute(attName,nodes);}
tmt.getNodesByAttributeValue=function(attName,attValue,startNode){var nodes=tmt.getAll(startNode);return tmt.filterNodesByAttributeValue(attName,attValue,nodes);}
tmt.filterNodesByAttribute=function(attName,nodes){var filteredNodes=new Array();for(var i=0;i<nodes.length;i++){if(nodes[i].getAttribute(attName)){filteredNodes.push(nodes[i]);}}
return filteredNodes;}
tmt.filterNodesByAttributeValue=function(attName,attValue,nodes){var filteredNodes=new Array();for(var i=0;i<nodes.length;i++){if(nodes[i].getAttribute(attName)&&(nodes[i].getAttribute(attName)==attValue)){filteredNodes.push(nodes[i]);}}
return filteredNodes;}
tmt.setNodeAttribute=function(nodeList,attName,attValue){for(var i=0;i<nodeList.length;i++){var nodeElem=tmt.get(nodeList[i]);if(nodeElem){nodeElem[attName]=attValue;}}}
tmt.trim=function(str){return str.replace(/^\s+|\s+$/g,"");}
tmt.encodeEntities=function(str){if(str&&str.search(/[&<>"]/)!=-1){str=str.replace(/&/g,"&amp;");str=str.replace(/</g,"&lt;");str=str.replace(/>/g,"&gt;");str=str.replace(/"/g,"&quot;");}
return str}
tmt.unencodeEntities=function(str){str=str.replace(/&amp;/g,"&");str=str.replace(/&lt;/g,"<");str=str.replace(/&gt;/g,">");str=str.replace(/&quot;/g,'"');return str}