
tdi_imageViewer = {
	vars:{
		mainDisplay:{
			lightBox:{id:"tdi_imageDispDiv_lightBox", css:0},
			mainCon:{id:"tdi_imageDispDiv", css:"#tdi_imageDispDiv"},
			closeBtn:{id:"tdi_imageDispDiv_closeBtn", css:0, script:0},
			
			pageTitle:{id:"tdi_imageDispDiv_pageTitle", css:0},
			
			largeImg:{id:"tdi_imageDispDiv_mainImage", css:"#tdi_imageDispDiv .mainImage"},
			thumbCon:{id:"tdi_sliderHolderGroupDiv", css:"#tdi_imageDispDiv .sliderHolderGroupDiv"},
			thumbHolder:{id:"tdi_imageDispDiv_sliderHoderDiv", css:"#tdi_imageDispDiv .sliderHoderDiv"},
			thumbSlider:{id:"tdi_imageDispDiv_imageDivSlider", css:"#tdi_imageDispDiv .imageDivSlider"},
			proxySlider:{id:0, css:0},
			groupDisplay:{id:"tdi_imageDispDiv_imageGroupDisplay", css:"#tdi_imageDispDiv .imageGroupDisplay"},
			picCounter:{id:"tdi_imageDispDiv_picCounter", css:"#tdi_imageDispDiv .picCounterText"},
			captionOver:{id:"tdi_imageDispDiv_CaptionOver", css:0},
			captionOverHolder:{id:"tdi_imageDispDiv_CaptionOverHolder", css:"#tdi_imageDispDiv .imageDispDiv_CaptionOverHolder"},
			infoIcon:{id:"tdi_imageDispDiv_infoIcon", css:"#tdi_imageDispDiv .infoIcon"},
			disclaimer_a:{id:"tdi_imageDispDiv_disclaimer_a", css:"#tdi_imageDispDiv .disclaimer"},
			disclaimer_a_copy:{id:"tdi_disclaimer_a_copy", css:0},
			disclaimer_b_title:{id:"tdi_imageDispDiv_disclaimer_b_title", css:0},
			disclaimer_b_copy:{id:"tdi_imageDispDiv_disclaimer_b_copy", css:0},
			captionRight:{id:"tdi_imageDispDiv_CaptionRight", css:0},
			wallpaper:{id:"tdi_magGroup_wallpaper", css:0}
		},
		arrows:{
			imageArrow:{
				left:{
  					obj:"imageDispDiv_thumbArrowLeft",
  					move:{dir:-1,speed:1000}
  				},
				right:{
  					obj:"imageDispDiv_thumbArrowRight",
  					move:{dir:1,speed:1000}
  				}
			},
			thumbArrow:{
				left:{
  					obj:"imageDispDiv_picArrowLeft",
  					move:{dir:-1,speed:1000}
  				},
  				right:{
  					obj:"imageDispDiv_picArrowRight",
  					move:{dir:1,speed:1000}
  				}
			},
			css:{
  				negArrow:"#tdi_imageDispDiv .negArrow",
  				posArrow:"#tdi_imageDispDiv .posArrow"
			}
		},
		env:{
			baseDir:0,
			baseImg:0,
			scrollBar:0,
			zoom:0,
			lightBox:0,
			wallPaper:0,
			startImg:0
		},
		images:0,
		speed:1000,
		dims:{
			objs:{},
			thumbs:{
				w:[],
				tw:0,
				groups:0
			}
		},
		info:{
			curOn:0,
			cImageInt:0,
			cLeft:0,
			tPics:0,
			cGroup:-1,
			oGroups:[],
			bAnimate:0,
			imgLut:[]
		}
	},
	utils:function(oPar, sName){
		this.par = oPar
		this.name = sName
		this.inish = function(oSelf){
			this.self = oSelf
		}
		this.quickGroup = function(iSpeed){
		    if(!this.par.vars.dims.thumbs.groups) return
			var info = this.par.vars.info
			var ng = Math.floor(info.cImageInt/(info.tPics/this.par.vars.dims.thumbs.groups.length))
			var oSpeed = this.par.vars.speed
			this.par.vars.speed = iSpeed
			info.oGroups[ng].script.run({type:"mouseover"})
			info.oGroups[ng].script.run({type:"mouseup"})
			this.par.vars.speed = oSpeed
		}				
	},
	autoFuns:{
		main:function(oPar, sName){
			this.par = oPar
			this.name = sName
			this.site = oPar.par
			this.isLoaded = 0
			this.inish = function(oSelf){
				this.self = oSelf
			}
			this.run = function(){
				if(this.par.vars.env.scrollBar){
					this.par.vars.env.scrollBar = this.site[this.par.vars.env.scrollBar].main.run(
						document.getElementById("tdi_imageDispDiv_CaptionRight_scroller_scrollBarDiv"),
						document.getElementById("tdi_imageDispDiv_CaptionRight_scroller"),
						document.getElementById("tdi_imageDispDiv_CaptionRight_scroller_container")
						)
				}
				if(this.par.vars.env.zoom){
					this.par.vars.env.zoom = this.site[this.par.vars.env.zoom].main.run(
						document.getElementById("tdi_magImageDiv"),
						document.getElementById("tdi_magThumbGroup_thumbDIV_alpha"),
						document.getElementById("tdi_magThumbGroup_thumbDIV"),
						document.getElementById("tdi_magThumbGroup_thumbIMG"),
						"slider",
						document.getElementById("tdi_magGroup_plusIcon"),
						document.getElementById("tdi_magGroup_minusIcon")
					)
					var openWin = new this.par.funs.openWindow(this.par, this.site, this.name, document.getElementById("tdi_imageDispDiv_fullScreen"))
					openWin.inish(openWin)
				} else {
					var targ = document.getElementById("tdi_magThumbGroup")
					targ.parentNode.removeChild(targ)
				}
				if(this.par.vars.env.wallPaper){
					var targ = this.par.vars.env.wallPaper
					targ.script = this.site[this.par.vars.env.wallPaper.name]
					targ.localScript = new this.par.funs.wallPaper(this.par.vars.env.wallPaper, this.par.vars.mainDisplay.wallpaper.obj, this.site)
					targ.localScript.inish(targ.localScript)
					
				}
				if(this.par.vars.env.lightBox){
				    
				    this.site[this.par.vars.env.lightBox].main.add(this.par.name, this.par.vars.mainDisplay.lightBox.obj, 0, document.getElementById("tdi_contentBoxHolder"), document.getElementById("tdi_contentBoxHolder"))
				}
				var r = new this.par.funs.closeBTN(this.par, this.par.name, this.par.vars.mainDisplay.closeBtn.obj, this.par.vars.env.lightBox)
				r.inish(r, this.site)
				this.par.vars.mainDisplay.closeBtn.script = r
				
				var r = new this.par.funs.closeBTN(this.par, this.par.name, this.par.vars.mainDisplay.pageTitle.obj, this.par.vars.env.lightBox)
				r.inish(r, this.site)
				
				targ = this.par.vars.images
			}
			this.loadAry = function(oVal, oParams){
				oParams.par.vars.images = oVal
				if(oParams.self.isLoaded ) oParams.self.draw()
			}
			this.load = function(){
				this.isLoaded = 1
				var r = new this.par.funs.infoIcon(this.par.vars.mainDisplay.captionOverHolder.obj, this.par.vars.mainDisplay.infoIcon.obj)
				r.inish(r, this.site)
				
				r = new this.par.funs.discIcon(this.par.vars.mainDisplay.captionOverHolder.obj, this.par.vars.mainDisplay.disclaimer_a.obj, this.par)
				r.inish(r)
				
				var targ = this.par.vars.dims.objs
				for(var e in targ){
					var cTarg = targ[e]
					if(cTarg.obj) cTarg.dims = this.site.utils.getPos(cTarg.obj, 0)
				}
				if(typeof(this.par.vars.images) == "object") this.draw()
			}
			
			this.show = function(iInt){
				this.site.flipLightBox.main.show(this.par.name)
				this.par.deepLink.run(iInt)
			}
			
			this.draw = function(oVal){
			    var v = this.par.vars
			    var md = v.mainDisplay
				var oVal = v.images
				var targ = md.thumbSlider.obj
				var pTarg = md.proxySlider
				var dims = v.dims.thumbs
				var startLeft = md.thumbSlider.dims.l
				if(pTarg) pTarg = pTarg.obj
				var first = 0
				var int = 0
				md.thumbSlider.obj.style.width = "100000px"
				this.addGroup = function(iInt){
				    var v = this.par.vars
				    var targ = md.groupDisplay
				    if(targ){
				        targ = targ.obj
				        var d = targ.appendChild(document.createElement("div"))
				        d.className = "imageGroupDisplayDot_mouseout"
				        var r = new this.par.funs.groupMouseAction(this.par, d, iInt)
				        r.inish(this.site, r, d)
				        v.info.oGroups.push({obj:d, script:r})
				    }
				}
				this.setGroup = function(){
				    var v = this.par.vars
					var targ = md.groupDisplay
					if(targ){
						var div = this.site.utils.findChildren(targ.obj, "div", 0)
						var l = div.pop()
						var f = l
						if(div.length) f = div.shift()
						var d = this.site.utils.getPos(l)
						targ.obj.style.left = (targ.obj.offsetParent.offsetWidth/2)-(targ.obj.offsetWidth/2)+"px"
						v.info.oGroups[0].script.run({type:"mouseover"})
						v.info.cGroup = 0
					}
				}
				for(var e in oVal){
					if(oVal[e].private) return alert("private variable used")
					
					if(!first) first = e
					v.info.imgLut.push(e)
					oVal[e].private = {}
					int++
					var d = targ.appendChild(document.createElement("div"))
					d.className = "thumb_con"
					var dd = d.appendChild(document.createElement("div"))
					dd.className = "thumb_mouseout"
					var oo = new this.par.funs.thumbOverOut(this.par, dd, e)
					var ma = new this.par.funs.mouseAction(this.par, dd, e)
					if(pTarg){
						var p = pTarg.appendChild(document.createElement("div"))
						p.className = "thumb_con"
						p.style.backgroundColor = "transparent"
						oo.inish(this.site, oo, p)
						ma.inish(this.site, ma, p)
					} else {
						oo.inish(this.site, oo, d)
						ma.inish(this.site, ma, d)
					}
					oVal[e].private.thumbOverOut = oo
					oVal[e].private.mouseAction = ma
					oVal[e].private.int = int-1
					oVal[e].private.obj = d
					dd.style.backgroundImage = 'url('+v.env.baseDir+oVal[e].thumb+')'
					var thisDim = this.site.utils.getPos(d) 
					dims.w.push({l:thisDim.l-startLeft, r:thisDim.r-startLeft})
				}
				dims.tw = dims.w[dims.w.length-1].r
				dims.buffer = 0
				if(dims.w.length-1) dims.buffer = dims.w[1].l - dims.w[0].r
				
				md.thumbSlider.obj.style.width = (dims.tw+dims.buffer)+"px"
				this.par.animate.setRule(md.thumbSlider.obj)
				v.info.tPics = int
				v.images[first].private.thumbOverOut.run({type:"mouseover"})
				v.images[first].private.mouseAction.run()
				var dw = v.dims.objs["thumbHolder"].obj.offsetWidth
				var arrows = v.arrows.imageArrow
				if(dims.tw > dw){
					for(var i=0;i<dims.w.length;i++){
						if(dims.w[i].r > dw){
							dims.groupUnit = dims.w[i].l
							var g = (dims.w.length)/(i)
							var rem = g-Math.floor(g)
							g = Math.floor(g)
							dims.groups = []
							for(var j=0;j<g;j++){
    						    		dims.groups.push(dims.groupUnit)
    						    		this.addGroup(j)
    							}
							if(rem){
								dims.groups.push(dims.groupUnit*rem)
								this.addGroup(j)
							}
							break;
						}
					}
					this.setGroup()
					for(var e in arrows){
						var r = new this.par.funs.arrowClick(this.par, arrows[e].obj, arrows[e].move)
						r.inish(r, this.site)
					}
				}
				arrows = v.arrows.thumbArrow
				for(var e in arrows){
					var r = new this.par.funs.smallArrowClick(this.par, arrows[e].obj, arrows[e].move)
					r.inish(r, this.site)
				}
				r = new this.par.funs.rDisclaim(
					md.disclaimer_b_title.obj,
					md.disclaimer_b_copy.obj,
					v.env.scrollBar
				)
				r.inish(r, this.site)
			}
		},
		load:function(oPar, sName){
			this.par = oPar
			this.site = oPar.par
			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){
				    if(this.par.vars.images){
					    var targ = this.par.vars.mainDisplay
					    for(var e in targ){
						    targ[e].obj = document.getElementById(targ[e].id)
						    targ[e].dims = 1
						    this.par.vars.dims.objs[e] = targ[e]
					    }
					    var tStr = ["imageArrow", "thumbArrow", "css"]
					    for(var i =0;i<tStr.length;i++){
						    var targ = this.par.vars.arrows[tStr[i]]
						    for(var e in targ){
							    targ[e].obj = document.getElementById(targ[e].obj)
						    }
					    }
					    this.par.main.run()
					    this.par.main.load()
					    if(this.par.vars.env.startImg) this.par.deepLink.run(this.par.vars.env.startImg)
					} else {
					    delete this.par.par.vars.events.load[this.par.name]
					}
				}
			}
		},
		controler:function(oPar, sName){
			this.par = oPar
			this.site = oPar.par
			this.name = sName
			this.inish = function(oSelf){
				this.self = oSelf
			}
			this.displayImage = function(sImage){
				var v = this.par.vars
				if(!v.info.bAnimate){
					var md = v.mainDisplay
					var targ = v.images[sImage]
					var disp = md.largeImg.obj
					var cap = targ.cap
					md.captionRight.obj.innerHTML = md.captionOver.obj.innerHTML = targ.cap
					md.disclaimer_b_copy.obj.style.display = "none"
					var vis = "hidden"
					if(parseInt(targ.disclaimer.length)){
						vis = ""
						md.disclaimer_a_copy.obj.innerHTML = md.disclaimer_b_copy.obj.innerHTML = targ.disclaimer
					}
					md.disclaimer_a.obj.style.visibility = md.disclaimer_b_title.obj.style.visibility = vis
					if(v.env.scrollBar) v.env.scrollBar.run(0)
					if(v.env.wallPaper){
						var wp = md.wallpaper.obj
						wp.style.visibility = "hidden"
						if(targ.hasWP.toLowerCase() != "false"){
							wp.style.visibility = ""
							v.env.wallPaper.script.main.run([v.env.baseDir+targ.WPRes1JS, v.env.baseDir+targ.WPRes2JS, v.env.baseDir+targ.WPRes3JS])
						}	
					}
					v.dims.objs.largeImg.obj.style.backgroundImage = "url("+v.env.baseDir+targ[v.env.baseImg]+")"
					if(v.env.zoom) v.env.zoom(v.env.baseDir+targ.fullscreen, v.env.baseDir+targ.thumb)
					v.info.cImageInt = targ.private.int
					md.picCounter.obj.innerHTML = (targ.private.int+1)+" of "+(v.info.tPics)
					
					this.updateArrows()
					if(opener && opener.tdi_site && opener.tdi_site[this.par.name]) opener.tdi_site[this.par.name].deepLink.run(sImage)
				}
			}
			this.mainArrowClick = function(e, oDir){
				if(!this.par.vars.info.bAnimate){ 
					var info = this.par.vars.info
					var cg = info.cGroup
					if(info.oGroups){
						cg+= oDir.dir
						info.oGroups[cg].script.run({type:"mouseover"})
						info.oGroups[cg].script.run({type:"mouseup"})
					} else {
						this.par.animate.setAnimation(this.par.vars.speed, this.par.vars.dims.thumbs.groupUnit, oDir.dir)
					}
					this.updateArrows()
				}
			}
			this.moveGroup = function(iInt){
			    var v = this.par.vars
				if(!v.info.bAnimate){ 
					var info = v.info
					var gDims = v.dims.thumbs.groups
					var lg = info.cGroup
					info.cGroup = iInt
					if(info.oGroups) info.oGroups[lg].script.run({type:"mouseout"});
					var dir = (lg-iInt)/Math.abs((lg-iInt))
					var dist = 0
					if(dir > 0){
						for(var i=lg;i>iInt;i--){
							dist += gDims[i]
						}
					} else {
						dist = eval(gDims.slice(lg+1, iInt+1).join("+")) 
					}
					this.par.animate.setAnimation(v.speed, dist, dir)
					this.updateArrows()
				}
			}
			this.smallArrowClick = function(iInt){
			    var v = this.par.vars
				if(!v.info.bAnimate){ 
					var info = v.info
					var images = v.images
					var ni = info.cImageInt+iInt
					
				    var targ = images[info.imgLut[ni]].private
				    targ.thumbOverOut.run({type:"mouseover"})
				    targ.mouseAction.run({type:"mouseup"})
				    this.updateArrows()
				    
				    if(this.par.vars.dims.thumbs.groups){
				        var inGroup = (info.tPics/v.dims.thumbs.groups.length)
				        var lb = Math.floor(info.cGroup*inGroup)
				        var ub = Math.floor(lb+inGroup)
				        if(ni = lb || ni > ub) this.par.utils.quickGroup(1)
				    }
				    
				}
			}
			this.updateArrows = function(){
			
			
			
				var info = this.par.vars.info
				var arrows = this.par.vars.arrows
				for(var e in arrows){
					var aa = arrows[e]
					for(var ee in aa){
						if(aa[ee].obj) aa[ee].obj.style.display = ""
					}
				}
				
				if(!info.cImageInt) arrows.thumbArrow.left.obj.style.display = "none"
				if(info.cImageInt == info.tPics-1)  arrows.thumbArrow.right.obj.style.display = "none"
				if(!info.cGroup || info.cGroup == -1) arrows.imageArrow.left.obj.style.display = "none"
				if(info.cGroup > -1 && info.cGroup == info.oGroups.length-1) arrows.imageArrow.right.obj.style.display = "none"
			}
		},
		deepLink:function(oPar, sName){
			this.par = oPar
			this.name = sName
			this.inish = function(oSelf){
				this.self = oSelf
			}
			this.run = function(param){
				var info = this.par.vars.info
				if(typeof(param) == "number") param = info.imgLut[param]
				var targ = this.par.vars.images[param].private
				targ.thumbOverOut.run({type:"mouseover"})
				targ.mouseAction.run({type:"mouseup"})
				this.par.utils.quickGroup(500)
			}
		},
		animate:function(oPar, sName){
			this.par = oPar
			this.site = oPar.par
			this.name = sName
			this.inish = function(oSelf){
				this.self = oSelf
				this.fun = function(){
					oSelf.run()
				}
			}
			this.setRule = function(oObj){
				this.obj = oObj
			}
			this.setAnimation = function(iTime, iDistance, iDir){
				if(!this.par.vars.env.lightBox){
				    this.distance = iDistance
				    this.dir = iDir
				    this.par.vars.info.bAnimate = 1
				    this.start = (new Date).getTime()
				    this.end = this.start+iTime
				    this.run()
				}
			}
			this.run = function(){
				var time = (new Date).getTime()
				if(time > this.end) time = this.end
				var move = this.par.vars.info.cLeft+((this.distance*((time-this.start)/(this.end-this.start)))*this.dir)
				this.obj.style.left = move+"px"
				if(time == this.end){
					this.par.vars.info.cLeft = move
					this.par.vars.info.bAnimate = 0
				} else {
					setTimeout(this.fun, 50)
				}
			}
		}		

	},
	funs:{
		infoIcon:function(oShow, oObj){
			this.show = oShow
			this.obj = oObj
			this.inish = function(oSelf, oSite){
				var fun = function(event){
					oSelf.run(event)
				}
				oSite.utils.addListener(this.obj, ["mouseover", "mouseout"], fun)
			}
			this.run = function(e){
				this.show.style.visibility = "hidden"
				if(e.type == "mouseover") this.show.style.visibility = "visible"
			}
		},
		discIcon:function(oShow, oObj, oPar){
		    this.obj = oObj
		    this.par = oPar
		    this.site = oPar.par
		    var md = this.par.vars.mainDisplay
		    this.cap = md.captionOver.obj
		    this.disc = md.disclaimer_a_copy.obj
		    this.inish = function(oSelf){
		        this.self = oSelf
		        var fun = function(event){
		            oSelf.run(event)
		        }
		        this.site.utils.addListener(this.obj, ["mouseover", "mouseout"], fun)
		        var rv = new this.par.funs.infoIcon(oShow, oObj)
		        rv.inish(rv, this.site)
		    }
		    
		    this.run = function(e){
		        var v = {cap:"", disc:"none"}
		        if(e.type == "mouseover") v = {cap:"none", disc:""}
		        
		        this.cap.style.display = v.cap
		        this.disc.style.display = v.disc
		    }        
		},
		thumbOverOut:function(oPar, oObj, sName){
			this.par = oPar
			this.name = sName
			this.obj = oObj
			this.inish = function(oSite, oSelf, oObj){
				this.self = oSelf
				var fun = function(event){
					oSelf.run(event)
				}
				oSite.utils.addListener(oObj, ["mouseover", "mouseout"], fun)
			}
			this.run = function(event){
				if(this.par.vars.info.curOn == this.name) return
				var cn = this.obj.className.split("_")
				cn.pop()
				cn.push(event.type)
				this.obj.className = cn.join("_")
			}
		},
		groupMouseAction:function(oPar, oObj, iInt){
			this.par = oPar
			this.obj = oObj
			this.int = iInt
			this.inish = function(oSite, oSelf, oObj){
				this.self = oSelf
				var fun = function(event){
					oSelf.run(event)
				}
				oSite.utils.addListener(oObj, ["mouseover", "mouseout", "mouseup"], fun)
			}
			this.run = function(e){
				if(this.par.vars.info.cGroup == this.int) return
				var cn = this.obj.className.split("_")
				cn.pop()
				cn.push(e.type)
				this.obj.className = cn.join("_")
				if(e.type == "mouseup") this.par.controler.moveGroup(this.int)
			}
		},
		mouseAction:function(oPar, oObj, sName){
			this.par = oPar
			this.name = sName
			this.obj = oObj
			this.inish = function(oSite, oSelf, oObj){
				this.self = oSelf
				var fun = function(event){
					oSelf.run(event)
				}
				oSite.utils.addListener(oObj, ["mouseup"], fun)
			}
			this.run = function(event){
				var co = this.par.vars.info.curOn
				if(co == this.name) return
				this.par.vars.info.curOn = 0
				if(co) this.par.vars.images[co].private.thumbOverOut.run({type:"mouseout"})
				this.par.vars.info.curOn = this.name
				this.par.controler.displayImage(this.name)
			}
		},
		arrowClick:function(oPar, oObj, oDir, oCall){
			this.par = oPar
			this.obj = oObj
			this.dir = oDir
			this.inish = function(oSelf, oSite){
				this.self = oSelf
				var fun = function(event){
					oSelf.run(event)
				}
				oSite.utils.addListener(oSelf.obj, ["mousedown"], fun)
			}
			this.run = function(e){
				this.par.controler.mainArrowClick(e, this.dir)
			}
		},
		smallArrowClick:function(oPar, oObj, oDir){
			this.par = oPar
			this.obj = oObj
			this.dir = oDir
			this.inish = function(oSelf, oSite){
				this.self = oSelf
				var fun = function(event){
					oSelf.run(event)
				}
				oSite.utils.addListener(oSelf.obj, ["mousedown"], fun)
			}
			this.run = function(e){
			    this.par.controler.smallArrowClick(this.dir.dir)
				setTimeout('mContentActivity("photo'+this.par.vars.info.cImageInt+'")', 50)
				
			}
		},
		rDisclaim:function(oClick, oDisplay, oScroll){
			this.click = oClick
			this.disp = oDisplay
			this.scroll = oScroll
			this.inish = function(oSelf, oPar){
				var fun = function(event){
					oSelf.run(event)
				}
				oPar.utils.addListener(this.click, ["mouseup"], fun)
			}
			this.run = function(){
				var disp = "none"
				if(this.disp.style.display.length) disp = ""
				this.disp.style.display = disp
				oScroll.run(0)
			}
		},
		closeBTN:function(oPar, sName, oObj, lightBox){
			this.par = oPar
			this.name = sName
			this.obj = oObj
			this.lightBox = lightBox
			this.inish = function(oSelf, oSite){
				this.site = oSite
				var fun = function(){
					oSelf.run()
				}
				oSite.utils.addListener(this.obj, ["mouseup"], fun)
			}
			this.run = function(){
				if(this.lightBox){
				    this.par.vars.env.scrollBar.run(1)
					if(this.par.vars.env.wallPaper) this.par.vars.env.wallPaper.localScript.run("hide")
					this.site.flipLightBox.main.hide(this.name)
					
				} else {
					window.close()
				}
			}
		},
		wallPaper:function(oConfig, oObj, oSite){
			this.config = oConfig
			this.obj = oObj
			this.site = oSite
			this.inish = function(oSelf, oSite){
				this.self = oSelf
				var fun = function(){
					oSelf.run("show")
				}
				this.site.utils.addListener(this.obj, ["mouseup"], fun)
			}
			this.run = function(sAction){
				this.site[this.config.lightBox].main[sAction](this.config.name)
			}
		},
		openWindow:function(oPar, oSite, sName, oObj){
		    this.par = oPar
		    this.site = oSite
		    this.name = sName
		    this.obj = oObj
		    this.inish = function(oSelf){
		        this.self = oSelf
		        var fun = function(){
		            oSelf.run()
		        }
		        this.site.utils.addListener(this.obj, ["mouseup"], fun)
		    }
		    this.run = function(){
		        var ah=screen.availHeight-30;
	            var aw=screen.availWidth;
	            var str="height="+ah+",innerHeight="+ah;
	            str+=",width="+aw+",innerWidth="+aw;
	            var xc=0;
	            var yc=0;
	            str+=",left="+xc+",screenX="+xc;
	            str+=",top="+yc+",screenY="+yc;
	            str += ",resizable=yes,status=no,toolbar=no,menubar=no,location=no"
	            if (screen.availHeight > 770){
		            str+=",scrollbars=no";
	            }else{			
		            str+=",scrollbars=yes";
	            }
	            
	            
		        open(document.location.toString().split(document.location.host).pop().split("?").shift()+'popup/index.asp?showImg='+this.par.vars.info.curOn, '_blank', str)
		   }
		}
	},
	config:function(oSelf){
		this.self = oSelf
		this.vars = oSelf.vars
		this.env = function(oAry){
			var targ = this.vars.env
			for(var e in targ){
				var info = oAry[e]
				targ[e] = info
			}
		}
	},
	inish:tdi_site.funs.genInish
}

tdi_site.autoFuns["imageViewer"] = tdi_imageViewer