var ModalBox = new Class({
	Implements: Chain,
	Modal:"",
	Over:"",
	Close:"",
	initialize:function(){
		this.Over=new Element("div",{"id":"_over"}).setStyles({"bottom":"0px","top":"0px","width":"100%","height":"100%","position":"fixed","background":"#000","opacity":"0"}).inject(document.body,"bottom").addEvent("click",function(){this.overOff()}.bind(this))
		this.Modal=new Element("div",{"id":"_moodal","class":"tabela"}).setStyles({"background":"#86010B url(/layout/img_misc_box-orelha.gif) no-repeat right bottom","left":"50%","top":"50%","position":"fixed","opacity":"0"}).inject(this.Over,"after")
		this.Close=new Element("a",{"id":"_close","class":"fechar_lb"}).inject(this.Modal).addEvent("click",function(){this.overOff()}.bind(this))
		new Element("img",{"id":"_wheel","src":"/layout/loading.gif"}).setStyles({"position":"absolute","left":"50%","top":"50%","margin-left":"-25px","margin-top":"-14px","display":"none"}).inject(this.Modal)

	},
	makeModal:function(domobj){
		this.overOn()
		this.Modal.set("html","").setStyles({"width":"auto","height":"auto"})
		this.Close.inject(this.Modal)
		var mPropX=mPropY=mProp=1
		this.Modal.adopt(domobj).setStyle("display","")
		ms=this.Modal.getSize()
		ws=window.getSize()
		if ((ws.x.toInt()-60)<ms.x.toInt()){ mPropX=(ws.x.toInt()-60)/ms.x.toInt() }
		if ((ws.y.toInt()-60)<ms.y.toInt()){ mPropY=(ws.y.toInt()-60)/ms.y.toInt() }
		if (mPropX>mPropY){mProp=mPropY} else {mProp=mPropX}
		this.Modal.setStyles({"margin-left":-ms.x/2,"margin-top":-ms.y/2})
		if (mProp<1){
			this.Modal.setStyles({
				"overflow":"auto",
				"width":ms.x*mProp,
				"height":ms.y*mProp
			})
			//gambiz para detectar o tamanho do div com os scrollbars e tudo.
			ms=this.Modal.getSize()
			this.Modal.setStyles({
				"margin-left":-ms.x/2,
				"margin-top":-ms.y/2
			})
		}
		this.Modal.setStyles({"display":"", "opacity":"0"})
		new Fx.Morph(this.Modal).start({"opacity":"1"})
		this.Modal.getElement("form").addEvent("submit",function(){
			var form=this.Modal.getElement("form")
			m=this
			new Request({
				url:form.get("action"),
				onRequest:function(){
					form.getElement(".botao").setStyle("opacity","0.5").set("disabled","disabled")
					m.wheelOn()
				},
				onSuccess:function(response){
					m.wheelOff()
					form.getElement(".botao").setStyle("opacity","1").set("disabled","")
					m.Modal.setStyles({"height":m.Modal.getSize().y,"width":m.Modal.getSize().x})
					m.changeSize(form)
				}
			}).post(form)
			return false
		}.bind(this))
	},
	changeSize:function(form){
		var form=this.Modal.getElement("form")
		var pureH=this.Modal.getSize().y-(this.Modal.getStyle("padding-left").toInt()*2)
		var pureW=this.Modal.getSize().x-(this.Modal.getStyle("padding-top").toInt()*2)
		var mT=this.Modal.getStyle("margin-top").toInt()
		var mL=this.Modal.getStyle("margin-left").toInt()
		
		var dh4=$("_moodal").getElement("div")
		
		var h4=new Element("div",{"class":"warning ok"}).appendText("Enviado com sucesso.").setStyle("padding-right","16px").inject(dh4,"bottom")
		h4.getPrevious("form").setStyles({"display":"none"})
		
		var nextH=this.Modal.getSize().y-(this.Modal.getStyle("padding-left").toInt()*2)
		var nextW=this.Modal.getSize().x-(this.Modal.getStyle("padding-top").toInt()*2)
		
		h4.getPrevious("form").setStyle("display","")
		h4.setStyles({"opacity":"0","display":"none"})
		
		this.Modal.setStyles({"height":pureH,"width":pureW})
		
		new Fx.Tween(form).start("opacity","0").chain(function(){
			form.setStyle("display","none")
			new Fx.Morph(this.Modal).start({"height":nextH,"width":nextW,"margin-top":-(nextH/2),"margin-left":-(nextW/2)})
			h4.setStyle("display","")
			new Fx.Tween(h4).start("opacity","1")
		}.bind(this))
	},
	overOn:function(){
		this.iehaxOn()
		this.Over.setStyle("display","")
		new Fx.Morph(this.Over).start({"opacity":0.6})
		return false;
	},
	overOff:function(){
		new Fx.Morph(this.Over).start({"opacity":0}).chain(function(){
			this.Over.setStyle("display","none")
		}.bind(this))
		new Fx.Tween(this.Modal).start("opacity","0").chain(function(){
			this.Modal.setStyle("display","none")
			this.iehaxOff()
		}.bind(this))
		return false
	},
	wheelOn:function(){
		$("lb_wheel").setStyles({"display":"","opacity":"0","margin-left":(-25-($("side_images").getSize().x/2))+"px"})
		new Fx.Tween($("lb_wheel"),{duration:50}).start("opacity","1")
	},
	wheelOff:function(){
		new Fx.Tween($("lb_wheel")).start("opacity","0")
	},
	iehaxOn:function(){
		if(Browser.Engine.trident && Browser.Engine.version<=4){
			$$("html, body").setStyles({"overflow":"hidden"})
			this.Over.setStyles({"top":document.documentElement.scrollTop,"width":window.getSize().x,"height":window.getSize().y,"position":"absolute","bottom":"0","right":"0"})
			this.Modal.setStyles({"width":"550px","position":"absolute","top":document.documentElement.scrollTop+(document.documentElement.clientHeight/2)})
		}
	},
	iehaxOff:function(){
		if(Browser.Engine.trident && Browser.Engine.version<=4){
			$$("html, body").setStyles({"overflow":"auto"})
		}
	}
})
var lb2c = new Class({
	Implements: Chain,
	initialize:function(si){
		p=this
		id_prod=window.location.search.split("id=")[1]
		id_prod=$("produto_id").get("value");
		new Element("div",{id:"lbO"}).setStyles({"bottom":"0px","top":"0px","width":"100%","height":"100%","position":"fixed","background":"#000","opacity":"0"}).inject($("page").getParent("body"),"bottom").addEvent("click",this.overOff)
		new Element("div",{"id":"image_modal"}).setStyles({"padding":"10px","border":"solid 5px #86010B","background":"#6d0000 url(/layout/img_misc_box-orelha.gif) no-repeat right bottom","left":"50%","top":"50%","position":"fixed","opacity":"0","display":"none"}).inject($("lbO"),"after")
		new Element("h3",{"id":"image_modal_title"}).setStyles({"padding":"10px 0 10px 16px","border-bottom":"solid 1px #86010B","width":"100%","margin":"-10px 0 10px -9px"}).set("html","<img id='tit_medidas' alt='Titulo Medidas' src='/layout/tit_medidas.png'/><img id='tit_prod' alt='"+id_prod+"' src='/files/produtos/"+id_prod+"/titulo_"+id_prod+".png'/>").inject($("image_modal"),"top")
		$("tit_medidas").setStyle("display","none")
		new Element("a",{"id":"lbX","href":"#"}).setStyles({"background":"url(/layout/lb_button_fechar.png) no-repeat","width":"40px","height":"10px","display":"block","position":"absolute", "top":"14px","right":"12px"}).inject($("image_modal_title"), "after").addEvent("click", p.overOff)
		new Element("div",{"id":"side_images"}).setStyles({"float":"left","margin-left":"12px"}).inject($("image_modal"),"bottom")
		new Element("img",{"id":"lb_wheel","src":"/layout/loading.gif"}).setStyles({"position":"absolute","left":"50%","top":"50%","margin-left":"-25px","margin-top":"-14px","display":"none"}).inject($("image_modal"))
		$$(".produto-imagens p").clone().setStyles({"margin-bottom":"12px","display":"block"}).inject($("side_images"))
		
		$("side_images").getElements("a").addEvent("click",function(){
			p.fadeOutImg(this.href)
			return false
		})
		
	},
	startModal:function(src,si){
		$("lbO").setStyle("display","")
		$("image_modal").setStyle("display","")
		if (si!=null){
			$("side_images").setStyle("display","none")
			$("tit_medidas").setStyle("display","")
			$("tit_prod").setStyle("display","none")
		}else{
			$("tit_medidas").setStyle("display","none")
			$("tit_prod").setStyle("display","")
			$("side_images").setStyle("display","")
		}
		this.overOn()
		this.fadeOutImg(src)
	},
	fadeOutImg:function(src){
		if($$("#lbI").length>0){
			new Fx.Tween($("lbI")).start("opacity","0").chain(function(){
				var I=$("lbI").set("src",src)
				p.fadeInImg(src,I)
				p.wheelOn()
			})
		} else {
			var I = new Element('img', { 'id':'lbI','src': src }).setStyle("float","left").inject($("side_images"),"before");
			this.fadeInImg(src,I)
			this.wheelOn()
		}
	},
	fadeInImg:function(src,I){
		if (I.complete && Browser.Engine.trident){
			this.e()
			this.wheelOff()
			new Fx.Tween($("lbI")).start("opacity","1")
			new Fx.Tween($("image_modal")).start("opacity","1")
		} else {
			I.addEvent("load", function(){
				p.e()
				p.wheelOff()
				new Fx.Tween($("lbI")).start("opacity","1")
				new Fx.Tween($("image_modal")).start("opacity","1")
			})
		}
	},
	overOn:function(){
		p.iehaxOn()
		new Fx.Morph($("lbO")).start({"opacity":0.6})
		return false;
	},
	overOff:function(){
		new Fx.Tween($("lbO")).start("opacity",0).chain(function(){
			$("lbO").setStyle("display","none")
		})
		new Fx.Tween($("image_modal")).start("opacity","0").chain(function(){
			$("image_modal").setStyle("display","none")
			p.iehaxOff()
		})
		return false
	},
	wheelOn:function(){
		$("lb_wheel").setStyles({"display":"","opacity":"0","margin-left":(-25-($("side_images").getSize().x/2))+"px"})
		new Fx.Tween($("lb_wheel"),{duration:50}).start("opacity","1")
	},
	wheelOff:function(){
		new Fx.Tween($("lb_wheel")).start("opacity","0")
	},
	e:function(){
		var imgProp=1
		var imgPropX=imgPropY=1
		$("image_modal").setStyle("display","inline-block")
		$$("#image_modal img").setStyles({"width":"auto","height":"auto"})
		ws=window.getSize()
		$("lbI").setStyle("opacity","1")
		ims=$("image_modal").getSize()
		$("lbI").setStyle("opacity","0")
		if ((ws.x.toInt()-60)<ims.x.toInt()){ imgPropX=(ws.x.toInt()-60)/ims.x.toInt() }
		if ((ws.y.toInt()-60)<ims.y.toInt()){ imgPropY=(ws.y.toInt()-60)/ims.y.toInt() }
		if (imgPropX>imgPropY){imgProp=imgPropY} else {imgProp=imgPropX}
		$$("#image_modal img").each(function(el){
			el.setStyles({"width":el.getSize().x.toInt()*imgProp,"height":el.getSize().y.toInt()*imgProp})
		})
		ims=$("image_modal").getSize()
		$("image_modal").setStyles({"margin-left":-ims.x/2,"margin-top":-ims.y/2})
	},
	iehaxOn:function(){
		if(Browser.Engine.trident && Browser.Engine.version<=4){
			$$("html, body").setStyles({"overflow":"hidden"})
			$("lbO").setStyles({"top":document.documentElement.scrollTop,"width":window.getSize().x,"height":window.getSize().y,"position":"absolute","bottom":"0","right":"0"})
			$("image_modal").setStyles({"width":"550px","position":"absolute","top":document.documentElement.scrollTop+(document.documentElement.clientHeight/2)})
		}
	},
	iehaxOff:function(){
		if(Browser.Engine.trident && Browser.Engine.version<=4){
			$$("html, body").setStyles({"overflow":"auto"})
		}
	}
})

function lb2(){
	newlb = new lb2c()
	$$(".produto-imagens a").addEvent("click",function(){newlb.startModal(this.get("href"));return false})
	$$("#produto-imagem a")[0].addEvent("click",function(){newlb.startModal(this.get("href"));return false})
	$$(".tabela-medidas a").addEvent("click",function(){newlb.startModal(this.get("href"),1);return false})
	
	mb=new ModalBox()
	$$(".enviar-amigo a").addEvent("click",function(){
		var div=new Element("div",{"class":"notif"})
		div.set("html",'<h3 id="enviar-amigo" class="new_wave">Enviar para amigo:</h3>\
		<form action="/recomendar.php" name="form_indicar" method="post" id="form_indicar">\
			<p>\
				<label for="recomendar_remetente_nome">Seu nome:</label><input name="recomendar_remetente_nome" id="recomendar_remetente_nome" value="" type="text"/>\
				<input name="recomendar_remetente_email" id="recomendar_remetente_email" value="fugazi@fugazi.com.br" type="hidden"/>\
			</p><p>\
			<label for="recomendar_destinatario_nome">Nome do seu amigo:</label><input name="recomendar_destinatario_nome" id="recomendar_destinatario_nome" value="" type="text"/>\
			</p><p>\
			<label for="recomendar_destinatario_email">E-mail do seu amigo:</label><input name="recomendar_destinatario_email" id="recomendar_destinatario_email" value="" type="text"/>\
			</p><p>\
			<label for="recomendar_mensagem">Mensagem:</label><textarea name="recomendar_mensagem" id="recomendar_mensagem"></textarea>\
			</p>\
			<input class="botao" value="Enviar formulário" id="enviar-formulario" type="submit">\
			<input type="hidden" name="id" value="'+$("produto_id").get("value")+'" />\
		</form>')
		mb.makeModal(div)
		return false
	})
	$$(".produto-acabou a").addEvent("click",function(){
		var div=new Element("div")
		div.set("html",$("notificacao").getElement("div").get("html"))
		mb.makeModal(div)
		return false
	})
}