var i1  = new Image(); i1.src  = '/img/bg-menu-top.png';
var i2  = new Image(); i2.src  = '/img/ajax-loader-invert.gif';

interval = 0;

navigatorIE6 = (($.browser.msie) && (parseInt($.browser.version.substr(0,1)) <= 6));

$(document).ready(function(){
	
	var rt = $('#company div.text-long div.international a');
	var ri = $('#company div.text-long div.international ul');
	var pr = $('#products div.scrollable');
	var pc = $('#pictures div.scrollable');
	var pt = $('#prints div.scrollable');
	var mp = $('#company div.text-long div.mount-prints div.scrollable');
	var mo = $('#company div.text-long div.mount-pools ul li a');
	var mt = $('#company div.text-long div.mount-prints div div a');
	var ft = $('#formats div.scrollable');
	var ap = $('#application div.scrollable')
	var ir = $('#index-retails');
	var cr = $('#cidade-revenda');
	var ru = $('#revenda-uf');
	var rc = $('#revenda-cidade');
	var rl = $('#revenda-listar');
	var sb = $('#send-budget');
	var ss = $('#send-sacs');
	var sf = $('#send-faq');
	var sc = $('#send-curriculum');
	var ot = $('#others');
	var on = $('#others-news');
	var wt = $('#wait');
	var ww = $('#window');
	var ab = $('a.add-budget');
	var cf = $('form.change-quantity');
	var cq = $('form.change-quantity fieldset label input');
	var ar = $('a.reset');
	var db = $('#company div.text-long div.budget');
	var ae = $('a.add-experience');
	var fn = $('#form-news');
	
	var sa = $('#send-budget-air');
	var sw = $('#send-budget-water');
	var sl = $('#send-budget-lake');
	var sp = $('#send-budget-person');
	var ta = $('#send-talk-assist');
	var ts = $('#send-talk-sac');
	
	$.ajaxSetup({
		beforeSend: function() {
			wt.html('').prepend(wait_html);
			openWait();
		},
		error: function() {
			wt.html('').prepend(wait_close).prepend(wait_error);
			openWait();
		},
		cache: false,
		type: 'GET'
	});
	
	$('a.blank').attr('target','_blank');
	
	$('input#search').resetDefaultValue();
	
	$('a.lightbox').lightBox({
		imageLoading  : '/img/ajax-loader.gif',
		imageBtnClose : '/img/btn-fechar.gif'
	});
	
	$('#datacompra').mask('99/99/9999');
	$('#cep').mask('99999-999');
	$('#telefone, #fax').mask('(99) 9999-9999');
	$('#ocupantesfixo, #ocupantestransito, #ambiente_nropessoas, #bomba_qtde, #filtro_qtde, #biologico_qtde').numeric();
	$('#ambiente_sala, #ambiente_pedireito, #ambiente_arcentral, #reservatoriotamanho, #vazaominima, #vazaomedia, #vazaomaxima, #tubulacao_diametro, #volumetotal, #qtdedrenodia, #temperatura_minima, #temperatura_maxima, #comprimento, #largura, #profundidade').numeric(',');
	
	pr.scrollable({ size:6, clickable:false });
	pc.scrollable({ size:6 });
	mp.scrollable({ size:4 });
	pt.scrollable({ size:6 });
	ft.scrollable({ size:1 });
	ap.scrollable({ size:1 });
	
	rt.bind('click',function(){
		var obj = $('#' + $(this).attr('class'));
		var ths = $(this);
		if (obj.css('display') == 'none') {
			if (navigatorIE6) {
				ri.hide();
				rt.css('background','#fff');
				ths.css('background','#f2f2f2');
				obj.show();
			} else {
				ri.slideUp(function(){
					$(this).hide();
				});
				rt.css('background','#fff');
				ths.css('background','#f2f2f2');
				obj.slideDown();
			}
		} else {
			if (navigatorIE6) {
				obj.hide();
				rt.css('background','#fff');
			} else {
				obj.slideUp(function(){
					$(this).hide();
					rt.css('background','#fff');
				});
			}
		}
	});
	
	ar.bind('click',function(){
		$(this).parent().parent().each(function(){
			this.reset();
		});
	});
	
	ot.bind('change',function(){
		var v = $(this).find('option:selected').val();
		if (v != '-') {
			window.location.href = '/produtos/'+ v +'.html';
		}
	});
	
	on.bind('change',function(){
		var v = $(this).find('option:selected').val();
		if (v != '-') {
			window.location.href = '/news/'+ v;
		}
	});
	

	sa.bind('submit',function(e){
		e.preventDefault();
		$.ajax({
			url: '/orcamento/ar/ajax/validar/',
			data: sa.serialize(),
			success: function(xml) {
				var list = xml.split(';');
				var red  = false;
				if (list.length > 2) {
					$('fieldset.dados input, fieldset.dados select, fieldset.dados textarea').each(function(){
						if (xml.indexOf(';'+ $(this).attr('id') +';') > - 1) {
							$(this).parent().find('span:first').addClass('error');
							red  = true;
						} else {
							$(this).parent().find('span:first').removeClass('error');
						}
					});
					var additional = '';
					if (xml.indexOf(';selecionarproduto;') > - 1) {
						additional += '<br /> - Selecionar um ou mais produtos;';
					}
					if (red) {
						additional += '<br /> - Corrigir todos campos marcados em vermelho;';
					}
					wt.html('').prepend(wait_close).prepend('<p><span>Atenção!</span></p><p>Para prosseguir você deve:'+ additional +'</p>');
					openWait();
				} else {
					window.location.href = '/orcamento/ar/sucesso.html';
				}
			}
		});
	});
	
	sw.bind('submit',function(e){
		e.preventDefault();
		$.ajax({
			url: '/orcamento/agua/ajax/validar/',
			data: sw.serialize(),
			success: function(xml) {
				var list = xml.split(';');
				var red  = false;
				if (list.length > 2) {
					$('fieldset.dados input, fieldset.dados select, fieldset.dados textarea').each(function(){
						if (xml.indexOf(';'+ $(this).attr('id') +';') > - 1) {
							$(this).parent().find('span:first').addClass('error');
							red  = true;
						} else {
							$(this).parent().find('span:first').removeClass('error');
						}
					});
					var additional = '';
					if (xml.indexOf(';selecionarproduto;') > - 1) {
						additional += '<br /> - Selecionar um ou mais produtos;';
					}
					if (red) {
						additional += '<br /> - Corrigir todos campos marcados em vermelho;';
					}
					wt.html('').prepend(wait_close).prepend('<p><span>Atenção!</span></p><p>Para prosseguir você deve:'+ additional +'</p>');
					openWait();
				} else {
					window.location.href = '/orcamento/agua/sucesso.html';
				}
			}
		});
	});
	
	sl.bind('submit',function(e){
		e.preventDefault();
		$.ajax({
			url: '/orcamento/lago/ajax/validar/',
			data: sl.serialize(),
			success: function(xml) {
				var list = xml.split(';');
				var red  = false;
				if (list.length > 2) {
					$('fieldset.dados input, fieldset.dados select, fieldset.dados textarea').each(function(){
						if (xml.indexOf(';'+ $(this).attr('id') +';') > - 1) {
							$(this).parent().find('span:first').addClass('error');
							red  = true;
						} else {
							$(this).parent().find('span:first').removeClass('error');
						}
					});
					var additional = '';
					if (xml.indexOf(';selecionarproduto;') > - 1) {
						additional += '<br /> - Selecionar um ou mais produtos;';
					}
					if (red) {
						additional += '<br /> - Corrigir todos campos marcados em vermelho;';
					}
					wt.html('').prepend(wait_close).prepend('<p><span>Atenção!</span></p><p>Para prosseguir você deve:'+ additional +'</p>');
					openWait();
				} else {
					window.location.href = '/orcamento/lago/sucesso.html';
				}
			}
		});
	});
	
	sp.bind('submit',function(e){
		e.preventDefault();
		$.ajax({
			url: '/orcamento/personalizado/ajax/validar/',
			data: sp.serialize(),
			success: function(xml) {
				var list = xml.split(';');
				var red  = false;
				if (list.length > 2) {
					$('fieldset.dados input, fieldset.dados select, fieldset.dados textarea').each(function(){
						if (xml.indexOf(';'+ $(this).attr('id') +';') > - 1) {
							$(this).parent().find('span:first').addClass('error');
							red  = true;
						} else {
							$(this).parent().find('span:first').removeClass('error');
						}
					});
					var additional = '';
					if (xml.indexOf(';selecionarproduto;') > - 1) {
						additional += '<br /> - Selecionar um ou mais produtos;';
					}
					if (red) {
						additional += '<br /> - Corrigir todos campos marcados em vermelho;';
					}
					wt.html('').prepend(wait_close).prepend('<p><span>Atenção!</span></p><p>Para prosseguir você deve:'+ additional +'</p>');
					openWait();
				} else {
					window.location.href = '/orcamento/personalizado/sucesso.html';
				}
			}
		});
	});
	
	ta.bind('submit',function(e){
		e.preventDefault();
		$.ajax({
			url: '/fale-conosco/assistencia-tecnica/ajax/validar/',
			data: ta.serialize(),
			success: function(xml) {
				var list = xml.split(';');
				if (list.length > 2) {
					$('fieldset.dados input, fieldset.dados select, fieldset.dados textarea').each(function(){
						if (xml.indexOf(';'+ $(this).attr('id') +';') > - 1) {
							$(this).parent().find('span:first').addClass('error');
						} else {
							$(this).parent().find('span:first').removeClass('error');
						}
					});
					wt.html('').prepend(wait_close).prepend(continue_red_fields);
					openWait();
				} else {
					window.location.href = '/fale-conosco/assistencia-tecnica/sucesso.html';
				}
			}
		});
	});
	
	ts.bind('submit',function(e){
		e.preventDefault();
		$.ajax({
			url: '/fale-conosco/sac/ajax/validar/',
			data: ts.serialize(),
			success: function(xml) {
				var list = xml.split(';');
				if (list.length > 2) {
					$('fieldset.dados input, fieldset.dados select, fieldset.dados textarea').each(function(){
						if (xml.indexOf(';'+ $(this).attr('id') +';') > - 1) {
							$(this).parent().find('span:first').addClass('error');
						} else {
							$(this).parent().find('span:first').removeClass('error');
						}
					});
					wt.html('').prepend(wait_close).prepend(continue_red_fields);
					openWait();
				} else {
					window.location.href = '/fale-conosco/sac/sucesso.html';
				}
			}
		});
	});
	
	sf.bind('submit',function(e){
		e.preventDefault();
		$.ajax({
			url: '/fale-conosco/faq/ajax/validar/',
			data: sf.serialize() + '&lang=' + LANG,
			success: function(xml) {
				var list = xml.split(';');
				if (list.length > 2) {
					$('fieldset.dados input, fieldset.dados select, fieldset.dados textarea').each(function(){
						if (xml.indexOf(';'+ $(this).attr('id') +';') > - 1) {
							$(this).parent().find('span:first').addClass('error');
						} else {
							$(this).parent().find('span:first').removeClass('error');
						}
					});
					wt.html('').prepend(wait_close).prepend(continue_red_fields);
					openWait();
				} else {
					if (LANG == 'pt') {
						window.location.href = '/fale-conosco/faq/sucesso.html';
					} else if (LANG == 'en') {
						window.location.href = '/en/talk-to-us/faq/sucessfuly.html';
					} else if (LANG == 'es') {
						window.location.href = '/es/contacto/faq/exito.html';
					}
				}
			}
		});
	});
	
	sc.bind('submit',function(e){
		e.preventDefault();
		$.ajax({
			url: '/fale-conosco/curriculum/ajax/validar/',
			data: sc.serialize() + '&lang=' + LANG,
			success: function(xml) {
				var list = xml.split(';');
				if (list.length > 2) {
					$('fieldset.dados input, fieldset.dados select, fieldset.dados textarea').each(function(){
						if (xml.indexOf(';'+ $(this).attr('id') +';') > - 1) {
							$(this).parent().find('span:first').addClass('error');
						} else {
							$(this).parent().find('span:first').removeClass('error');
						}
					});
					$('fieldset.replication input, fieldset.replication textarea').each(function(){
						if (xml.indexOf(';'+ $(this).attr('name').replace('[]','') +';') > - 1) {
							if (($(this).attr('class') == 'date') && (!isDate($(this).val(), format_date))) {
								$(this).parent().find('span:first').addClass('error');

							} else if ($(this).val() == '') {
								$(this).parent().find('span:first').addClass('error');
							}
						} else {
							if (($(this).attr('class') == 'date') && (isDate($(this).val(), format_date))) {
								$(this).parent().find('span:first').removeClass('error');
							} else if ($(this).val() == '') {
								$(this).parent().find('span:first').removeClass('error');
							}
						}
					});
					wt.html('').prepend(wait_close).prepend(continue_red_fields);
					openWait();
				} else {
					if (LANG == 'pt') {
						window.location.href = '/fale-conosco/curriculum/sucesso.html';
					} else if (LANG == 'en') {
						window.location.href = '/en/talk-to-us/curriculum/sucessfuly.html';
					} else if (LANG == 'es') {
						window.location.href = '/es/contacto/curriculum/exito.html';
					}
				}
			}
		});
	});
	
	cf.bind('submit',function(e){
		e.preventDefault();
		$(this).find('fieldset label input').each(function(){
			this.blur();
		});
	});
	
	cq.numeric();
	
	cq.bind('blur',function(){
		if ($(this).val() != this.defaultValue) {
			var c = $(this).parent().parent().find('input[name=codigo]').val();
			if ($(this).val() <= 0) {
				if (!removeProduct(c, true)) {
					$(this).val(this.defaultValue);
				}
			} else {
				this.defaultValue = $(this).val();
				$.ajax({
					url: '/produtos/ajax/quantidade/',
					data: 'codigo='+ c +'&qtde='+ $(this).val(),
					success: function() {
						hiddenWait();
					}
				});
			}
		}
	});
	
	ae.bind('click',function(){
		$('fieldset.replication:first').clone().appendTo('#more-experience').find('p.whats-big').css('text-align','left').append(delete_experience);
		$('fieldset.replication:last input, fieldset.replication:last textarea').val('');
		$('fieldset.replication:last label span').removeClass('error');
		$('fieldset.replication:last label input.date').mask('99/99/9999');
		$('a.remove-experience').bind('click',function(e){
			if (navigatorIE6) {
				$(this).parent().parent().remove();
			} else {
				$(this).parent().parent().slideUp(function(){
					$(this).remove();
				});
			}
		});
	});
	
	if ((definedFormat != '') && (definedPrint != '') && (definedSize != '')) {
		$('#company div.text-long div.mount-pools ul li a[class="cp-'+ definedFormat +'"]').click();
		$('#company div.text-long div.mount-prints div div a[class="ct-'+ definedPrint +'"]').click();
	} else {
		$('#company div.text-long div.mount-pools ul').find('li:first a').click();
		$('#company div.text-long div.mount-prints div div').find('a:first-child').click();
	}
});

function openWait() {
	if (navigatorIE6) {
		$('select').css({ visibility:'hidden' });
		$('#background').css({ filter:'alpha(opacity=70)' }).show();
		$('#wait').show();
		window.location.hash = '#goto';
	} else {
		$('#background').css({ opacity:0.7 }).fadeIn(function(){
			$('#wait').slideDown(function(){
				$(this).show();
			});
		});
	}
}

function closeWait() {
	if (navigatorIE6) {
		$('#wait').hide();
		$('#background').hide().css({ filter:'alpha(opacity=0)' });
		$('select').css({ visibility:'visible' });
	} else {
		clearInterval(interval);
		$('#wait').slideUp(function(){
			$(this).hide(function(){
				$('#background').fadeOut(function(){
					$(this).animate({ opacity:0 });
				});
			});
		});
	}
}

function hiddenWait() {
	if (navigatorIE6) {
		closeWait();
	} else {
		interval = setInterval('closeWait()', 800);
	}
}

function openWindow() {
	if (navigatorIE6) {
		$('select').css({ visibility:'hidden' });
		$('#background').css({ filter:'alpha(opacity=70)' }).show();
		$('#window').show();
		window.location.hash = '#goto';
	} else {
		$('#background').css({ opacity:0.7 }).fadeIn(function(){
			$('#window').slideDown(function(){
				$(this).show();
			});
		});
	}
}

function hiddenWindow() {
	if (navigatorIE6) {
		$('#window').hide();
		$('#background').hide().css({ filter:'alpha(opacity=0)' });
		$('select').css({ visibility:'visible' });
	} else {
		$('#window').slideUp(function(){
			$(this).hide(function(){
				$('#background').fadeOut(function(){
					$(this).hide().css({ opacity:0 });
				});
			});
		});
	}
}

function showProducts() {
	$('form.change-quantity').numeric();
	$('form.change-quantity').bind('submit',function(e){
		e.preventDefault();
		$(this).find('fieldset label input').each(function(){
			this.blur();
		});
	});
	$('form.change-quantity fieldset label input').bind('blur',function(){
		if ($(this).val() != this.defaultValue) {
			var c = $(this).parent().parent().find('input[name=codigo]').val();
			if ($(this).val() <= 0) {
				if (!removeProduct(c, true)) {
					$(this).val(this.defaultValue);
				}
			} else {
				this.defaultValue = $(this).val();
				$.ajax({
					url: '/produtos/ajax/quantidade/',
					data: 'codigo='+ c +'&qtde='+ $(this).val(),
					success: function() {
						hiddenWait();
					}
				});
			}
		}
	});
}

function removeProduct(c, b) {
	if (c > 0) {
		if (confirm('Deseja remover este produto do seu orçamento?')) {
			$.ajax({
				url: '/produtos/ajax/remover/',
				data: 'codigo=' + c,
				success: function() {
					$.ajax({
						url: '/produtos/ajax/selecionados/',
						beforeSend: function() { },
						success: function(txt) {
							productChangedQuantity(txt);
						}
					});
				}
			});
			if (b) { return true; }
		} else {
			if (b) { return false; }
		}
	}
}

function removeAllProducts() {
	if (confirm('Deseja remover todos os produtos do seu orçamento?')) {
		$.ajax({
			url: '/produtos/ajax/remover-todos/',
			success: function() {
				$.ajax({
					url: '/produtos/ajax/selecionados/',
					beforeSend: function() { },
					success: function(txt) {
						productChangedQuantity(txt);
					}
				});
			}
		});
	}
}

function addBudget(c) {
	if (c > 0) {
		$.ajax({
			url: '/produtos/ajax/adicionar/',
			data: 'produto=' + c,
			success: function() {
				$.ajax({
					url: '/produtos/ajax/selecionados/',
					beforeSend: function() { },
					success: function(txt) {
						productChangedQuantity(txt);
					}
				});
			}
		});
	}
}

function productChangedQuantity(txt) {
	$('#table-products').html('').html(txt);
	if (navigatorIE6) {
		if (!$('form.change-quantity').size()) {
			$('div.control').hide();
		} else {
			$('div.control').show();
		}
	} else {
		if (!$('form.change-quantity').size()) {
			$('div.control').slideUp();
		} else {
			$('div.control').slideDown();
		}
	}
	hiddenWait();
	showProducts();
}

function productIndicate(c) {
	if (c > 0) {
		$('#window div.top').html(window_indicate);
		$('#window div.content').html(window_indicate_form);
		openWindow();
		$('#window div.content form:first').bind('submit',function(e){
			e.preventDefault();
			if (navigatorIE6) {
				$('#window').hide();
				$('#wait').html('').prepend(wait_html).show();
				$(this).show(function(){
					$.ajax({
						url: '/produtos/ajax/indicar/',
						data: $('#window div.content form:first').serialize() + '&codigo=' + c + '&referer=' + window.location.href + '&lang=' + LANG,
						beforeSend: function() { },
						success: function(xml) {
							var list = xml.split(';');
							if (list.length > 2) {
								$('fieldset.friend input').each(function(){
									if (($(this).attr('id') != '') && (xml.indexOf(';'+ $(this).attr('id') +';') > - 1)) {
										$(this).parent().find('span:first').addClass('error');
									} else if ($(this).attr('id') != '') {
										$(this).parent().find('span:first').removeClass('error');
									}
								});
								$('#wait').hide().html('').prepend(close_window_indicate).prepend(continue_red_fields).show();
							} else {
								$('#wait').hide().html('').prepend(wait_close).prepend(indicate_sucessfully).show();
							}
						}
					});
				});
			} else {
				$('#window').slideUp(function(){
					$(this).hide(function(){
						$('#wait').html('').prepend(wait_html);
						$('#wait').slideDown(function(){
							$(this).show(function(){
								$.ajax({
									url: '/produtos/ajax/indicar/',
									data: $('#window div.content form:first').serialize() + '&codigo=' + c + '&referer=' + window.location.href + '&lang=' + LANG,
									beforeSend: function() { },
									success: function(xml) {
										var list = xml.split(';');
										if (list.length > 2) {
											$('fieldset.friend input').each(function(){
												if (($(this).attr('id') != '') && (xml.indexOf(';'+ $(this).attr('id') +';') > - 1)) {
													$(this).parent().find('span:first').addClass('error');
												} else if ($(this).attr('id') != '') {
													$(this).parent().find('span:first').removeClass('error');
												}
											});
											$('#wait').slideUp(function(){
												$(this).hide(function(){
													$('#wait').html('').prepend(close_window_indicate).prepend(continue_red_fields);
													$('#wait').slideDown(function(){
														$(this).show();
													});
												});
											});
										} else {
											$('#wait').slideUp(function(){
												$(this).hide(function(){
													$('#wait').html('').prepend(wait_close).prepend(indicate_sucessfully);
													$('#wait').slideDown(function(){
														$(this).show();
													});
												});
											});
										}
									}
								});
							});
						});
					});
				});
			}
		});
	}
}

function openWindowIndicate() {
	if (navigatorIE6) {
		$('#wait').hide();
		$('#window').show();
	} else {
		$('#wait').slideUp(function(){
			$(this).hide(function(){
				$('#window').slideDown(function(){
					$(this).show();
				});
			});
		});
	}
}