function rtrim(str, charlist) {
	charlist = !charlist ? ' \s\xA0' : (charlist+'').replace(/([\[\]\(\)\.\?\/\*\{\}\+\$\^\:])/g, '\$1');
    var re = new RegExp('[' + charlist + ']+$', 'g');
    return (str+'').replace(re, '');
}

function startsWith(string, searchString) {
	if (string == false) {
		return (searchString == string.substring(0, searchString.length));
	} else {
		return (searchString.toLowerCase() == string.substring(0, searchString.length).toLowerCase());
	}
}

function validateEmail(value) {
	var pattern = /[a-z0-9!#$%&'*+\/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+\/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/;
	return pattern.test(value);
}

function validateUrl(value) {
	var pattern = /^(http|https):\/\/[\w-_]+(\.[\w-_]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?$/;
	return pattern.test(value);
}


function addToFavorites()
{
    var title = document.title; var url = location.href;
    if (window.sidebar) // Firefox
	    window.sidebar.addPanel(title, url, '');
    else if(window.opera && window.print) // Opera
    {
	    var elem = document.createElement('a');
	    elem.setAttribute('href',url);
	    elem.setAttribute('title',title);
	    elem.setAttribute('rel','sidebar'); // required to work in opera 7+
	    elem.click();
    }
    else if(document.all) // IE
	    window.external.AddFavorite(url, title);
}

function popup(url, windowWidth, windowHeight, arguments) {
	//Centramos el popup.
	var left = (window.screen.width - windowWidth) / 2;
	var top = (window.screen.height - windowHeight) / 2;
	window.open(url, '_blank', arguments + ',width=' + windowWidth + ',height=' + windowHeight + ',left=' + left + ',top=' + top);
}

$(document).ready(function() {

	//Validación de los campos del formulario de contacto.
	$("#contactform form").submit(function() {

		if (startsWith(window.location.pathname, '/online-marketing/')) { //Aleman
			var FULLNAME_REQUIRED = "Vollstaendiger Name erforderlich.<br />";
			var EMAIL_REQUIRED = "E-Mail-Adresse erforderlich.<br />";
			var EMAIL_FORMAT_INVALID = "E-Mail-Format ist ungueltig.<br />";
			var CODE_REQUIRED = "Sicherheitscode ist erforderlich.<br />";
			var CODE_FORMAT_INVALID = "Sicherheitscode-Format ist ungueltig.<br />";
			var WEBSITE_FORMAT_INVALID = "Website URL ist ungueltig.<br />";
		} else
		if (startsWith(window.location.pathname, '/internet-marketing/')) { //Inglés
			var FULLNAME_REQUIRED = "Full name is required.<br />";
			var EMAIL_REQUIRED = "E-mail is required.<br />";
			var EMAIL_FORMAT_INVALID = "E-mail format is not valid.<br />";
			var CODE_REQUIRED = "Security code is required.<br />";
			var CODE_FORMAT_INVALID = "Security code format is not valid.<br />";
			var WEBSITE_FORMAT_INVALID = "Website URL is not valid.<br />";
		} else { //Español
			var FULLNAME_REQUIRED = "El nombre es requerido.<br />";
			var EMAIL_REQUIRED = "El correo electr&oacute;nico es requerido.<br />";
			var EMAIL_FORMAT_INVALID = "El formato del correo electr&oacute;nico no es v&aacute;lido.<br />";
			var CODE_REQUIRED = "El c&oacute;digo de seguridad es requerido.<br />";
			var CODE_FORMAT_INVALID = "El formato del c&oacute;digo de seguridad no es v&aacute;lido.<br />";
			var WEBSITE_FORMAT_INVALID = "La direcci&oacute;n del sitio web no es v&aacute;lida.<br />";
		}

		var name = $("#contactform form input[name=fullname]");
		var email = $("#contactform form input[name=email]");
		var securitycode = $("#contactform form input[name=securitycode]");
		var website = $("#contactform form input[name=website]");
		var response = $("#contactform form .er_fail");
		var message = '';

		if (name.val() == '') message += FULLNAME_REQUIRED;
		if (email.val() == '') {
			message += EMAIL_REQUIRED;
		} else if (!validateEmail(email.val())) {
			message += EMAIL_FORMAT_INVALID;
		}
		if (securitycode.val() == '') {
			message += CODE_REQUIRED;
		} else if (securitycode.val().length < 4) {
			message += CODE_FORMAT_INVALID;
		}
		if (website.val() != '' && !validateUrl(website.val())) {
			message += WEBSITE_FORMAT_INVALID;
		}

		if (message != '') {
			response.empty();
			response.append('<span>' + message + '</span>');
			return false;
		}
	});


	//Agregar página a favoritos.
	$("#footer .menu .favorites").click(function() {
		addToFavorites();
		return false;
	});

});


// LOAD FACEBOOK SIDEBAR IN BLOG //
window.onload = function() {
	if($("#facebookSidebar").length > 0){
		FB.init("e189b66a7ef3a4de972b1e8b6da86688");
	}
};
