/*
 * SimpleModal Contact Form
 * http://www.ericmmartin.com/projects/simplemodal/
 * http://code.google.com/p/simplemodal/
 *
 * Copyright (c) 2007 Eric Martin - http://ericmmartin.com
 *
 * Licensed under the MIT license:
 *   http://www.opensource.org/licenses/mit-license.php
 *
 * Revision: $Id: contact.js 86 2008-01-10 23:15:01Z emartin24 $
 *
 */

$(document).ready(function () {	$('.linkContacto').click(function (e) {	e.preventDefault(); $.get('/data/contact-'+selector+'.php', function(data){ $(data).modal({	close: false, overlayId: 'contactModalOverlay',	containerId: 'contactModalContainer', onOpen: contact.open, onShow: contact.show,onClose: contact.close	}); });	});
    refreshImgInt = setTimeout("$('#rSpacer').trigger('refreshImg', [ '' ]);",7500);
    $('#rSpacer').bind("refreshImg", function(e, myName, myValue){ $.ajax({	type: 'POST', url: '/data/tokenVisit.php', data: ('alfbr=' + selector )  , success: function (xhr) {	$.ajax({ type: "POST", url: "/index.php?op=empresa&selector="+selector+"&action=refrescar", data: "xhr="+xhr, success: function(msg){} }); } }); }); });

var contact = {
	message: null,
	open: function (dialog) {
		dialog.overlay.fadeIn(200, function () {
			dialog.container.fadeIn(200, function () {
				dialog.data.fadeIn(200, function () {
					$('#contactModalContainer #name').focus();
				});
				if ($.browser.safari) {
					$('#contactModalContainer #name, #contactModalContainer #email, #contactModalContainer #message').css({
						'font-size': '.9em'
					});
				}
				if ($.browser.msie && $.browser.version < 7) {
					$('#contactModalContainer .send, #contactModalContainer .cancel').each(function () {
						if ($(this).css('backgroundImage').match(/^url[("']+(.*\.png)[)"']+$/i)) {
							var src = RegExp.$1;
							$(this).css({
								backgroundImage: 'none',
								filter: 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src="' +  src + '", sizingMethod="scale")'
							});
						}
					});
				}
			});
		});
	},
	show: function (dialog) {
		$('#contactModalContainer .send').click(function (e) {
			e.preventDefault();
			if (contact.validate()) {
				$('#contactModalContainer .message').fadeOut(function () {
					$('#contactModalContainer .message').removeClass('error').empty();
				});
				$('#contactModalContainer .title').html('Sending...');
				$('#contactModalContainer form').fadeOut(200);
				$('#contactModalContainer .content').animate({
					height: '80px'
				}, function () {
					$('#contactModalContainer .loading').fadeIn(200, function () {
						$.get("/data/token.php",function(txt){
						  $.ajax({
							type: "POST",							
							url: '/data/contact-'+selector+'.php',
							data: $('#contactModalContainer form').serialize() + '&action=send&ts=' +txt ,
							dataType: 'html',
							complete: function (xhr) {
								$('#contactModalContainer .loading').fadeOut(200, function () {
									$('#contactModalContainer .title').html('Muchas Gracias!');
									$('#contactModalContainer .message').html(xhr.responseText).fadeIn(200);
								});
							},
							error: contact.error
						  });
						});
					});
				});
			}
			else {
				if ($('#contactModalContainer .message:visible').length > 0) {
					$('#contactModalContainer .message div').fadeOut(200, function () {
						$('#contactModalContainer .message div').empty();
						contact.showError();
						$('#contactModalContainer .message div').fadeIn(200);
					});
				}
				else {
					$('#contactModalContainer .message').animate({
						height: '40px'
					}, contact.showError);
				}
				
			}
		});
	},
	close: function (dialog) {
		dialog.data.fadeOut(200, function () {
			dialog.container.fadeOut(200, function () {
				dialog.overlay.fadeOut(200, function () {
					$.modal.close();
				});
			});
		});
	},
	error: function (xhr) {
		alert(xhr.statusText);
	},
	validate: function () {
		contact.message = '';
		if (!$('#contactModalContainer #name').val()) {
			contact.message += 'Es necesario que dejes tu nombre. ';
		}

		var email = $('#contactModalContainer #email').val();
		if (!email) {
			contact.message += 'Es necesario que dejes tu mail. ';
		}
		else {
			if (!contact.validateEmail(email)) {
				contact.message += 'El email es invalido. ';
			}
		}

		if (!$('#contactModalContainer #message').val()) {
			contact.message += 'Es necesario que escribas un mensaje.';
		}

		if (contact.message.length > 0) {
			return false;
		}
		else {
			return true;
		}
	},
	validateEmail: function (email) {
		var at = email.lastIndexOf("@");

		if (at < 1 || (at + 1) === email.length)
			return false;

		if (/(\.{2,})/.test(email))
			return false;

		var local = email.substring(0, at);
		var domain = email.substring(at + 1);

		if (local.length < 1 || local.length > 64 || domain.length < 4 || domain.length > 255)
			return false;

		if (/(^\.|\.$)/.test(local) || /(^\.|\.$)/.test(domain))
			return false;

		if (!/^"(.+)"$/.test(local)) {
			if (!/^[-a-zA-Z0-9!#$%*\/?|^{}`~&'+=_\.]*$/.test(local))
				return false;
		}

		if (!/^[-a-zA-Z0-9\.]*$/.test(domain) || domain.indexOf(".") === -1)
			return false;	

		return true;
	},
	showError: function () {
		$('#contactModalContainer .message')
			.html($('<div class="error">').append(contact.message))
			.fadeIn(200);
	}
};

function getVar(name)
         {
         get_string = document.location.search;         
         return_value = '';
         
         do { 
            name_index = get_string.indexOf(name + '=');
            
            if(name_index != -1)
              {
              get_string = get_string.substr(name_index + name.length + 1, get_string.length - name_index);
              
              end_of_value = get_string.indexOf('&');
              if(end_of_value != -1)                
                value = get_string.substr(0, end_of_value);                
              else                
                value = get_string;                
                
              if(return_value == '' || value == '')
                 return_value += value;
              else
                 return_value += ', ' + value;
              }
            } while(name_index != -1)
            
  
         space = return_value.indexOf('+');
         while(space != -1)
              { 
              return_value = return_value.substr(0, space) + ' ' + 
              return_value.substr(space + 1, return_value.length);
							 
              space = return_value.indexOf('+');
              }
          
         return(return_value);        
}
