tdi_buttons = {
	vars:{
		round:{}
	},
	utils:function(oPar, sName){
		this.par = oPar
		this.site = oPar.par
		this.name = sName
		
		this.inish = function(oSelf){
			this.self = oSelf
		}
		
		this.makeRound = function(sClass){
			
			if(!this.par.vars.round[sClass]){
				var cAry = ["tl", "t", "tr", "ml", "m", "mr", "bl", "b", "br"]
				var t = document.createElement("TABLE")
				t.cellPadding = t.cellSpacing = t.border = 0
				var tb = t.appendChild(document.createElement("TBODY"))
				for(var c=0;c<cAry.length;c++){
					if(!(c%3)){
						var tr = tb.appendChild(document.createElement("tr"))
					}
					var td = tr.appendChild(document.createElement("TD"))
					td.className = cAry[c]
					if(cAry[c] != "m"){
						if(!(c%2)){
							td.className += " corner"
						} else {
							td.className += " outer"
						}
						td.innerHTML = "<div class='spDIV1x1'>&nbsp;</DIV>"
					}

				}
				this.par.vars.round[sClass] = t
			}
			
			return this.par.vars.round[sClass].cloneNode(true)
		}
		
	},
	autoFuns:{
		main:function(oPar, sName){
			this.par = oPar
			this.name = sName
			this.site = oPar.par
			
			this.inish = function(oSelf){
				this.self = oSelf
			}
			this.run = function(){
				this.par.funs.roundContainer(this.par, this.site)
				this.par.funs.genButton(this.par, this.site)
				this.par.funs.roundButton(this.par, this.site)
				
			}
		},
		load:function(oPar, sName){
			this.par = oPar
			this.name = sName
			this.inish = function(oSelf){
				this.self = oSelf
				
				this.par.par.vars.events.load[this.par.name] = oSelf
			}
			this.run = function(bAllLoad){
			    //if(bAllLoad){
				    this.par.main.run()
				    delete this.par.par.vars.events.load[this.par.name]
				//}
			}
		}

	},
	funs:{
		roundContainer:function(oPar, oSite){
			var targ = document.getElementById("tdi_roundContainer")
			while(targ){
				if(targ.length){
					var cur= targ[0]
				} else {
					var cur = targ
				}
				var div = oSite.utils.findChildren(cur, 0,0)[0]
				if(div){
					var t = oPar.utils.makeRound(targ.className)
					t.childNodes[0].rows[1].cells[1].appendChild(div.cloneNode(1))
					t.id = div.id+"_roundTABLE"
					cur.removeChild(div)
					cur.appendChild(t)
				}
				cur.id = ""
				targ = document.getElementById("tdi_roundContainer")
			}	
		},
		genButton:function(oPar, oSite){
			var targ = document.getElementsByName("tdi_genButton")
			for(var i=0;i<targ.length;i++){
				var div = oSite.utils.findChildren(targ[i], 0,0)[0]
				var r = new oPar.funs.overOut(div, oPar, oSite, 0)
				r.inish(r)
			}
		},
		roundButton:function(oPar, oSite){
			var targ = document.getElementsByName("tdi_roundButton")
			for(var i=0;i<targ.length;i++){
				var div = oSite.utils.findChildren(targ[i], 0,0)[0]
				if(div){
					
					var t = oPar.utils.makeRound(div.className)
					t.childNodes[0].rows[1].cells[1].appendChild(div.cloneNode(1))
					div.innerHTML = ""
					div.appendChild(t)
					if(div.className.split("_").pop() == "mouseout"){
						var r = new oPar.funs.overOut(div, oPar, oSite, 0)
						r.inish(r)
					}
				}
			}
		},
		overOut:function(oObj, oPar, oSite, bClickOut){
			this.obj = oObj
			this.par = oPar
			this.site = oSite
			this.clickOut = bClickOut
			this.inish = function(oSelf){
				this.self = oSelf
				var fun = {
					overOut:function(event){
						oSelf.run(event)
					}
				}
				this.site.utils.addListener(this.obj, ["mouseover", "mouseout", "mouseup"], fun.overOut)
				return fun.overOut
			}
			this.run = function(e){
				var t = e.type
				if(t == "mouseup" && this.clickOut) t = "mouseout"
				if(t == "mouseout"){
					this.obj.className = this.obj.className.replace(/_mouseover/gi, "_mouseout")
				} else {
					this.obj.className = this.obj.className.replace(/_mouseout/gi, "_mouseover")
				}
			}
		}

	},
	inish:tdi_site.funs.genInish
}

tdi_site.autoFuns["buttons"] = tdi_buttons