function addToQs(name, val) {
	if (val != "") {
		return name + "=" + encodeURIComponent(val) + "&";
	}
	return "";
}

// Returns the background position given the center position. 
function calculatePosition(center) {
    var windoww = $(window).width();
    if (windoww > 1600) windoww = 1600; // max width we aim for.
    return -(center - (windoww / 2));
}

function initializebackground() {

    var offset = mpos;
    var pageclass = $("body").attr("class");
    if (pageclass.indexOf("knowledge") > -1) {
        offset = rpos;
    }
    if (pageclass.indexOf("news_and_events") > -1) {
        offset = lpos;
    }

    // Now scroll the body background-position to the place.
    var newpos = calculatePosition(offset);
    $("body").stop().animate({
        backgroundPosition: newpos + "px 0px"
    }, 0);

    //alert(" Width: " + windoww + " Scroll to " + newpos);
}


$(function() {
	$('.shareEventLink').initShareEvent();
	//$('.innerMember').galleryDetails();
	$('.innerNewsletter').tabsMenu();
	$('.blockActive').tooltipInfo();
	$('.inpSearch').validateSearch();
	//$('#context').accordionsMenu();
	$('.nav').menuHover();
	$('.member').bannerSlider();
    $(".removeDefaultInputValue").removeDefaultInputValue();
    $(".inputEnterKey").checkInputEnterKey();
    $(".jshidden").removeClass("jshidden");
    $(".jshidewhenactive").removeClass("jshidewhenactive").addClass("hidden");
	
	if(typeof $.fn.tabs != 'undefined'){
		$("#tabs").tabs();
	}
	
    $("a.external").click(function() {
        this.target = "_blank";
    });

    $('a.flickrimage').cluetip({
        splitTitle: '|', // use the invoking element's title attribute to populate the clueTip...
        showTitle: true, // hide the clueTip's heading
        dropShadow: false,
        width: 260,
        topOffset: 0,
        leftOffset: 5,
        hoverIntent: {
            sensitivity: 7,
            interval: 100,
            timeout: 0
        }

    });

    // Gray images are to be switched to color when hovering, both over the image itself, but also over the rest of the "article".
    // To use, place the gray image url in the img attr. "rev" and the color url in the "rev". Also set the image id.
    // On all elements that need to trigger the toggle,
    // set the class to "toggleImage" and set the "rel" to the image id.
    // TRA 2009.11.19  Ps: Remove this comment on deploy to prod. to reduce footprint. :-)
    $(".toggleImage").hover(
      function() {
          var imgid = $(this).attr("rel");
          var color = $("#" + imgid).attr("rel");
          $("#" + imgid).attr("src", color);
      },
      function() {
          var imgid = $(this).attr("rel");
          var gray = $("#" + imgid).attr("rev");
          $("#" + imgid).attr("src", gray);
      }
    );
    $("img.toggleMe").hover(
      function() {
          //var imgid = $(this).attr("id");
          var color = $(this).attr("rel");
          $(this).attr("src", color);
      },
      function() {
          //var imgid = $(this).attr("rel");
          var gray = $(this).attr("rev");
          $(this).attr("src", gray);
      }
    );

      $("#search").bind("keypress", function(e) {
      	var key = e.charCode ? e.charCode : e.keyCode ? e.keyCode : 0;
      	if (key == 13) {
      		e.preventDefault();
      		$("#btnGlobalSearch").click();
      	}
      })

    $(window).resize(function() {
        var windoww = $(this).width();
        if (windoww > 1600) windoww = 1600; // max width we aim for.
        var offset = mpos;
        var pageclass = $("body").attr("class");
        var bodywidth = $("body").width();
        if (pageclass.indexOf("knowledge") > -1) {
            offset = rpos;
        }
        if (pageclass.indexOf("news_and_events") > -1) {
            offset = lpos;
        }

        //alert(" o:1000 w:1000 " + calculatePosition(1000));
        //alert(" o:2000 w:1000 " + calculatePosition(2000));
        // Now scroll the body background-position to the place.
        var newpos = calculatePosition(offset);
        $("body").stop().animate({
            backgroundPosition: newpos + "px 0px"
        }, 500);

        //alert(" Width: " + windoww + " Scroll to " + newpos);
    });

	

});

/* ADDTHIS BUTTON BEGIN */
var addthisScript = (("https:" == document.location.protocol) ? "https://s7.addthis.com/" : "http://s7.addthis.com/");
document.write(unescape("%3Cscript src='" + addthisScript + "js/250/addthis_widget.js' type='text/javascript'%3E%3C/script%3E"));


var addthis_config = {
	username: "cphcleantech",
	ui_header_color: "#ffffff",
	ui_header_background: "#2E5A8C",
	ui_language: "en",
	ui_offset_top: 5,
	ui_offset_left: 0,
	services_compact: "email, linkedin, facebook, twitter, favorites, more",
    services_exclude: ""
   };

   /*
   send mail
linkedIn
facebook
twitter
favoriter
   */

//var addthis_localize = {
//	share_caption: "Del siden"
//}; 

/* ADDTHIS BUTTON END */

; (function($) {

	$.fn.checkInputEnterKey = function() {

		$(this).bind("keypress", function(e) {
			var key = e.charCode ? e.charCode : e.keyCode ? e.keyCode : 0;
			if (key == 13) {
				e.preventDefault();
				var parentFieldset = $(e.target).parents("fieldset").find("input[type=submit]").click();
			}
		})
		return this;
	};

	$.fn.extend({
		removeDefaultInputValue: function() {
			return this.each(function() {
				new $.RemoveDefaultInputValueMethod(this);
			});
		}
	});

	$.RemoveDefaultInputValueMethod = function(input) {
		var $input = $(input);

		$("form").submit(function() {
			if ($input.val() == $input.attr("title")) {
				$input.val("");
			}
			return true;
		});

		$input.bind("focus", function(event) {
			if ($input.val() == $input.attr("title")) {
				$input.val("");
			}
		}).bind("blur", function(event) {
			if ($input.val() == "") {
				$input.val($input.attr("title"));
			}
		});

	};

})(jQuery);



/* QUICKPOLL BEGIN */
function AddVote(id, pageid) {
    var selectedValue = $("input[name='poll" + id + "']:checked").val();
    if (selectedValue == null)
        return false;

    $.ajax({
        type: "POST",
        url: "/FemtenNulOtte/COP/QuickPollVote.axd",
        data: "poll=" + id + "&pageid=" + pageid + "&vote=" + encodeURIComponent(selectedValue),
        success: function(html) {
            if (html == null || html == '')
                return;
            $("#pollContainer" + id).html(html);
        }
    });
}

/* ImageSwap */
function SetImageSrc(imageId, imageSrc) {
	var imageObj = $("#" + imageId);
	if (imageObj) {
		imageObj.attr("src", imageSrc);
	}
}

/* QUICKPOLL END */



/* EventArchive BEGIN */
function SetFilterCheckboxes(chkBox, classSelector)
{
    $("." + classSelector).attr('checked', chkBox.checked);    
}
/* EventArchive END */


/* Form validation START */
function ValidateForm(containerId) {
    var success = true;
    var message = null;
    //validateMembersignonIndustry
    var membersignonIndustryFields = $("#" + containerId).find('.validateMembersignonIndustry');
    if (membersignonIndustryFields != null && membersignonIndustryFields.length > 0) {
        var field = membersignonIndustryFields[0];
        var result = ValidateMembersignonIndustry(field, containerId);
        if (result != '')
            message += '&raquo; '+ result;
    }

    //validateNotEmpty 
    var notEmptyFields = $("#" + containerId).find('.signupname');
    var notEmptyFields1 = $("#" + containerId).find('.signuptitle');
    var notEmptyFields2 = $("#" + containerId).find('.signupcompany');
	
    if (notEmptyFields != null && notEmptyFields.length > 0 ) {
        for (i = 0; i < notEmptyFields.length; i++) {
            var field = notEmptyFields[i];
            if (!ValidateNotEmpty(field)) {
                message = 'Please fill in the required fields';
				if ($("#" + containerId + '_errors').is("div")) {
					message = message.replace(/&raquo;/g, "<br />&raquo; ");
					$("#" + containerId + '_errors').html(message);
					$('.myRequired').addClass('hidden');
					$("#" + containerId + '_errors').removeClass('hidden');					
				}
				else {
					message = message.replace(/&raquo;/g, "\n ");
					alert(message);
				}
				notEmptyFields.focus();
				return false;
            }	
        }
    }
	
	if (notEmptyFields1 != null && notEmptyFields1.length > 0) {
        for (i = 0; i < notEmptyFields1.length; i++) {
            var field = notEmptyFields1[i];
            if (!ValidateNotEmpty(field)) {
                message = 'Please fill in the required fields';
				if ($("#" + containerId + '_errors').is("div")) {
					message = message.replace(/&raquo;/g, "<br />&raquo; ");
					$("#" + containerId + '_errors').html(message);
					$('.myRequired').addClass('hidden');
					$("#" + containerId + '_errors').removeClass('hidden');					
				}
				else {
					message = message.replace(/&raquo;/g, "\n ");
					alert(message);
				}
				notEmptyFields1.focus();
				return false;
            }	
        }
    }
	
    //validateEmail  
    var emailFields = $("#" + containerId).find('.validateEmail');
    if (emailFields != null && emailFields.length > 0) {
        for (i = 0; i < emailFields.length; i++) {
            var field = emailFields[i];
            if (!ValidateEmail(field)) {
				message = 'Email is not valid';
				if ($("#" + containerId + '_errors').is("div")) {
					message = message.replace(/&raquo;/g, "<br />&raquo; ");
					$("#" + containerId + '_errors').html(message);
					$('.myRequired').addClass('hidden');
					$("#" + containerId + '_errors').removeClass('hidden');
				}
				else {
					message = message.replace(/&raquo;/g, "\n ");
					alert(message);
				}
				emailFields.focus();
				return false;
            }
        }
    }

	if (notEmptyFields2 != null && notEmptyFields2.length > 0) {
        for (i = 0; i < notEmptyFields2.length; i++) {
            var field = notEmptyFields2[i];
            if (!ValidateNotEmpty(field)) {
                message = 'Please fill in the required fields';
				if ($("#" + containerId + '_errors').is("div")) {
					message = message.replace(/&raquo;/g, "<br />&raquo; ");
					$("#" + containerId + '_errors').html(message);
					$('.myRequired').addClass('hidden');
					$("#" + containerId + '_errors').removeClass('hidden');					
				}
				else {
					message = message.replace(/&raquo;/g, "\n ");
					alert(message);
				}
				notEmptyFields2.focus();
				return false;
            }	
        }
    }
	
	//validateMustbeChecked
    var mustBeCheckedFields = $("#" + containerId).find('.validateMustbeChecked');
    if (mustBeCheckedFields != null && mustBeCheckedFields.length > 0)     
	{
        for (i = 0; i < mustBeCheckedFields.length; i++) {
            var field = mustBeCheckedFields[i];
            if (!ValidateMustBeChecked(field)) {
                success = false;
                var label = ValidationGetLabel(field.id, containerId);
                message += '&raquo; ' + label;
            }
        }           		
	}
    
    //validateIfCheckedThenEmail
	var ifCheckedThenEmailFields = $("#" + containerId).find('.validateIfCheckedThenEmail');
    if (ifCheckedThenEmailFields != null && ifCheckedThenEmailFields.length > 0) 
	{
        for (i = 0; i < ifCheckedThenEmailFields.length; i++) {
            var field = ifCheckedThenEmailFields[i];
            var resultMsg = ValidateIfCheckedThenEmail(field, containerId);
			if(resultMsg != '')
			{
				success = false;
				message += "&raquo; "+resultMsg;
			}
        }           		
	}
	
    return true;
}

function ValidateFormSignup(containerId) {
    var success = true;
    var message = null;
    //validateMembersignonIndustry
    var membersignonIndustryFields = $("#" + containerId).find('.validateMembersignonIndustry');
    if (membersignonIndustryFields != null && membersignonIndustryFields.length > 0) {
        var field = membersignonIndustryFields[0];
        var result = ValidateMembersignonIndustry(field, containerId);
        if (result != '')
            message += '&raquo; '+ result;
    }

    //validateNotEmpty 
    var notEmptyFields = $("#" + containerId).find('.signupname');
    var notEmptyFields1 = $("#" + containerId).find('.signuptitle');
    var notEmptyFields2 = $("#" + containerId).find('.signupcompany');
	
    if (notEmptyFields != null && notEmptyFields.length > 0 ) {
        for (i = 0; i < notEmptyFields.length; i++) {
            var field = notEmptyFields[i];
            if (!ValidateNotEmpty(field)) {
                message = 'Please fill in the required fields';
				if ($("#" + containerId + '_errors').is("div")) {
					message = message.replace(/&raquo;/g, "<br />&raquo; ");
					$("#" + containerId + '_errors').html(message);
					$('.myRequired').addClass('hidden');
					$("#" + containerId + '_errors').removeClass('hidden');					
				}
				else {
					message = message.replace(/&raquo;/g, "\n ");
					alert(message);
				}
				notEmptyFields.focus();
				return false;
            }	
        }
    }
	
	if (notEmptyFields1 != null && notEmptyFields1.length > 0) {
        for (i = 0; i < notEmptyFields1.length; i++) {
            var field = notEmptyFields1[i];
            if (!ValidateNotEmpty(field)) {
                message = 'Please fill in the required fields';
				if ($("#" + containerId + '_errors').is("div")) {
					message = message.replace(/&raquo;/g, "<br />&raquo; ");
					$("#" + containerId + '_errors').html(message);
					$('.myRequired').addClass('hidden');
					$("#" + containerId + '_errors').removeClass('hidden');					
				}
				else {
					message = message.replace(/&raquo;/g, "\n ");
					alert(message);
				}
				notEmptyFields1.focus();
				return false;
            }	
        }
    }
	
    //validateEmail  
    var emailFields = $("#" + containerId).find('.validateEmail');
    if (emailFields != null && emailFields.length > 0) {
        for (i = 0; i < emailFields.length; i++) {
            var field = emailFields[i];
            if (!ValidateEmail(field)) {
				message = 'Email is not valid';
				if ($("#" + containerId + '_errors').is("div")) {
					message = message.replace(/&raquo;/g, "<br />&raquo; ");
					$("#" + containerId + '_errors').html(message);
					$('.myRequired').addClass('hidden');
					$("#" + containerId + '_errors').removeClass('hidden');
				}
				else {
					message = message.replace(/&raquo;/g, "\n ");
					alert(message);
				}
				emailFields.focus();
				return false;
            }
        }
    }

	if (notEmptyFields2 != null && notEmptyFields2.length > 0) {
        for (i = 0; i < notEmptyFields2.length; i++) {
            var field = notEmptyFields2[i];
            if (!ValidateNotEmpty(field)) {
                message = 'Please fill in the required fields';
				if ($("#" + containerId + '_errors').is("div")) {
					message = message.replace(/&raquo;/g, "<br />&raquo; ");
					$("#" + containerId + '_errors').html(message);
					$('.myRequired').addClass('hidden');
					$("#" + containerId + '_errors').removeClass('hidden');					
				}
				else {
					message = message.replace(/&raquo;/g, "\n ");
					alert(message);
				}
				notEmptyFields2.focus();
				return false;
            }	
        }
    }

	//validateMustbeChecked
    var mustBeCheckedFields = $("#" + containerId).find('.validateMustbeChecked');
    if (mustBeCheckedFields != null && mustBeCheckedFields.length > 0)     
	{
        for (i = 0; i < mustBeCheckedFields.length; i++) {
            var field = mustBeCheckedFields[i];
            if (!ValidateMustBeChecked(field)) {
                success = false;
                var label = ValidationGetLabel(field.id, containerId);
                message += '&raquo; ' + label;
            }
        }           		
	}
    
    //validateIfCheckedThenEmail
	var ifCheckedThenEmailFields = $("#" + containerId).find('.validateIfCheckedThenEmail');
    if (ifCheckedThenEmailFields != null && ifCheckedThenEmailFields.length > 0) 
	{
        for (i = 0; i < ifCheckedThenEmailFields.length; i++) {
            var field = ifCheckedThenEmailFields[i];
            var resultMsg = ValidateIfCheckedThenEmail(field, containerId);
			if(resultMsg != '')
			{
				success = false;
				message += "&raquo; "+resultMsg;
			}
        }           		
	}
	
    return true;
}

function ValidateFormMembership(containerId) {
    var success = true;
    var message = null;
    //validateMembersignonIndustry
    var membersignonIndustryFields = $("#" + containerId).find('.validateMembersignonIndustry');
    if (membersignonIndustryFields != null && membersignonIndustryFields.length > 0) {
        var field = membersignonIndustryFields[0];
        var result = ValidateMembersignonIndustry(field, containerId);
        if (result != '')
            message += '&raquo; '+ result;
    }

    //validateNotEmpty 
    var notEmptyFields = $("#" + containerId).find('.validateNotEmpty');
	
    if (notEmptyFields != null && notEmptyFields.length > 0 ) {
        for (i = 0; i < notEmptyFields.length; i++) {
            var field = notEmptyFields[i];
            if (!ValidateNotEmpty(field)) {
                message = 'Please fill in the required fields';
				if ($("#" + containerId + '_errors').is("div")) {
					message = message.replace(/&raquo;/g, "<br />&raquo; ");
					$("#" + containerId + '_errors').html(message);
					$('.myRequired').addClass('hidden');
					$("#" + containerId + '_errors').removeClass('hidden');					
				}
				else {
					message = message.replace(/&raquo;/g, "\n ");
					alert(message);
				}
				notEmptyFields[i].focus();
				return false;
            }	
        }
    }
	
    //validateEmail  
    var emailFields = $("#" + containerId).find('.validateEmail');
    if (emailFields != null && emailFields.length > 0) {
        for (i = 0; i < emailFields.length; i++) {
            var field = emailFields[i];
            if (!ValidateEmail(field)) {
				message = 'Email is not valid';
				if ($("#" + containerId + '_errors').is("div")) {
					message = message.replace(/&raquo;/g, "<br />&raquo; ");
					$("#" + containerId + '_errors').html(message);
					$('.myRequired').addClass('hidden');
					$("#" + containerId + '_errors').removeClass('hidden');
				}
				else {
					message = message.replace(/&raquo;/g, "\n ");
					alert(message);
				}
				emailFields.focus();
				return false;
            }
        }
    }

	//validateMustbeChecked
    var mustBeCheckedFields = $("#" + containerId).find('.validateMustbeChecked');
    if (mustBeCheckedFields != null && mustBeCheckedFields.length > 0)     
	{
        for (i = 0; i < mustBeCheckedFields.length; i++) {
            var field = mustBeCheckedFields[i];
            if (!ValidateMustBeChecked(field)) {
                success = false;
                var label = ValidationGetLabel(field.id, containerId);
                message += '&raquo; ' + label;
            }
        }           		
	}
    
    //validateIfCheckedThenEmail
	var ifCheckedThenEmailFields = $("#" + containerId).find('.validateIfCheckedThenEmail');
    if (ifCheckedThenEmailFields != null && ifCheckedThenEmailFields.length > 0) 
	{
        for (i = 0; i < ifCheckedThenEmailFields.length; i++) {
            var field = ifCheckedThenEmailFields[i];
            var resultMsg = ValidateIfCheckedThenEmail(field, containerId);
			if(resultMsg != '')
			{
				success = false;
				message += "&raquo; "+resultMsg;
			}
        }           		
	}
	
    return true;
}

function ValidationGetLabel(inputId, containerId) {
    var label = $("#" + containerId).find("label[for=" + inputId + "]");
    if (label != null && label.length > 0) {
        return label.text();
    }
    return 'Field with id: ' + inputId;
}

function ValidateGetElementType(element)
{
    var elementType = element.tagName.toLowerCase();    
    if (elementType == 'input') {
        elementType = element.type.toLowerCase();
    }
    return elementType;
}

function ValidateGetValue(element) {
    var elementType = ValidateGetElementType(element);
    var value = '';
    switch (elementType) {
        case 'text':
            value = element.value;
            break;
        case 'select':            
            return element.options[element.selectedIndex].value;
            break;
         case 'checkbox':
         case 'radio':
            value = (element.checked)?'1':'0';
            break;
    };
    return value;
}

function ValidateNotEmpty(element) {
    var value = ValidateGetValue(element);    
    if (value == null || $.trim(value) == '' || element.title == value)  // also test for title - the default value of some text fields /TRA
        return false;
    return true;
}



function ValidateEmail(element) {
    var value = ValidateGetValue(element);
    var emailChk = new RegExp("^([0-9a-zA-Z]+[-._+&])*[0-9a-zA-Z]+@([-0-9a-zA-Z]+[.])+[a-zA-Z]{2,6}$");
    return (value.match(emailChk) != null);    
}

function ValidateMustBeChecked(element)
{
	var value = ValidateGetValue(element);
	if(value == '1')
		return true;
	return false;	
}

// requires that <input .... ref="emailFieldId"/>
function ValidateIfCheckedThenEmail(element, containerId)
{
    if (ValidateMustBeChecked(element)) {
        var emailFieldId = $(element).attr("ref");
        if (emailFieldId != null && emailFieldId != '') {
            var emailField = document.getElementById(emailFieldId);
            if(emailField != null) {
                if (!ValidateEmail(emailField)) {
                    var label = ValidationGetLabel(emailFieldId, containerId);
                    return label;
                }
            }
        }
    }
    return '';
}

function ValidateMembersignonIndustry(element, containerId) {    
    var checkboxes = $(element).find('.form_checkbox');
    var oneChecked = false;
    var otherChecked = false;
    for (var i = 0; i < checkboxes.length; i++) {
        var chkBox = checkboxes[i];
        if (chkBox.checked) {
            oneChecked = true;
            if (chkBox.id == 'chkOther')
                otherChecked = true;
        }
    }

    if (!oneChecked)
        return "Industry: ";
    if (otherChecked) {
        var otherCommentBox = document.getElementById('txtOtherComment');  //$("#txtOtherComment");
        if (!ValidateNotEmpty(otherCommentBox)) {
            return ValidationGetLabel(otherCommentBox.id, containerId) + " (Industry)";
        }
    }
    return '';
}

/* Form validation END */

/* Event form validation START */
function ValidateFormEvent(containerId) {
    var success = true;
    var message = 'Disse felter skal udfyldes:\n';
    //validateMembersignonIndustry
    var membersignonIndustryFields = $("#" + containerId).find('.validateMembersignonIndustry');
    if (membersignonIndustryFields != null && membersignonIndustryFields.length > 0) {
        var field = membersignonIndustryFields[0];
        var result = ValidateMembersignonIndustry(field, containerId);
        if (result != '')
            message += '&raquo; ' + result;
    }

    //validateNotEmpty 
    var notEmptyFields = $("#" + containerId).find('.validateNotEmpty');
    if (notEmptyFields != null && notEmptyFields.length > 0) {
        for (i = 0; i < notEmptyFields.length; i++) {
            var field = notEmptyFields[i];
            if (!ValidateNotEmpty(field)) {
                success = false;
                var label = ValidationGetLabel(field.id, containerId);
                message += '&raquo; ' + label;
            }
        }
    }

    //validateEmail  
    var emailFields = $("#" + containerId).find('.validateEmail');
    if (emailFields != null && emailFields.length > 0) {
        for (i = 0; i < emailFields.length; i++) {
            var field = emailFields[i];
            if (!ValidateEmail(field)) {
                success = false;
                var label = ValidationGetLabel(field.id, containerId);
                message += '&raquo; ' + label;
            }
        }
    }



    //validateMustbeChecked
    var mustBeCheckedFields = $("#" + containerId).find('.validateMustbeChecked');
    if (mustBeCheckedFields != null && mustBeCheckedFields.length > 0) {
        for (i = 0; i < mustBeCheckedFields.length; i++) {
            var field = mustBeCheckedFields[i];
            if (!ValidateMustBeChecked(field)) {
                success = false;
                var label = ValidationGetLabel(field.id, containerId);
                message += '&raquo; ' + label;
            }
        }
    }

    //validateIfCheckedThenEmail
    var ifCheckedThenEmailFields = $("#" + containerId).find('.validateIfCheckedThenEmail');
    if (ifCheckedThenEmailFields != null && ifCheckedThenEmailFields.length > 0) {
        for (i = 0; i < ifCheckedThenEmailFields.length; i++) {
            var field = ifCheckedThenEmailFields[i];
            var resultMsg = ValidateIfCheckedThenEmail(field, containerId);
            if (resultMsg != '') {
                success = false;
                message += "&raquo; " + resultMsg;
            }
        }
    }

    if (!success) {
        // Emit error to a div with id = containerId + '_errors' - else to an alert.
        if ($("#" + containerId + '_errors').is("div")) {
            message = message.replace(/&raquo;/g, "<br />&raquo; ");
            $("#" + containerId + '_errors').html(message);
        }
        else {
            message = message.replace(/&raquo;/g, "\n ");
            alert(message);
        }
        return false;
    }
    return true;
}

/* Event form validation END */


/* Share Event Button */

; (function($) {

	$.fn.initShareEvent = function() {
		var defaults={
			sharelayer : '.wrapPopupEmail'
		};
		var options = $.extend(defaults, options); 
		return this.each(function(){
			var that = $(this);
			that.vars = {
				layer: null,
				overlay: null,
				fromlayer: '#frmSend',
				mintop:null,
				minleft:null
			}
			$('.wrapPopupEmail').removeClass('hidden');
			$('.wrapPopupEmail').css({
				'top':-10000,
				'position':'absolute'
			});
			var jforms = that.vars.fromlayer;
			that.unbind('click.showp').bind('click.showp',function(e){
				e.preventDefault();
				$(jforms)[0].reset();
				$(jforms).find('.frmNote:last').addClass('hidden');
				$(jforms).find('.frmNote:first').removeClass('hidden');
				
				$.ajax({
					type: "GET",
					url: "/usercontrols/umbracoInviFriend/CapChaInput.ashx",
					data: that.serialize(),
					success: function(data) {
						$(jforms).find('.capcha').html(data);
						if(!$('#frmSend').data('initialize')){						
							$('#frmSend').data('initialize', 1).initValidateForm();
						}
					}
				});
				
				that.vars.layer = $(options.sharelayer);
				that.vars.overLay = $('#layerOverlay');
				that.vars.mintop = ($(window).height() - that.vars.layer.height()) / 2;
				that.vars.minleft = ($(window).width() - that.vars.layer.width()) / 2;
				if(that.vars.mintop <= 0)
				{
					that.vars.mintop = 10;
				}
				if(that.vars.minleft < 0)
				{
					that.vars.minleft = 10;
				}
				
				if(!that.vars.overLay.length){
					that.vars.overLay = $('<div id="layerOverlay"></div>').appendTo(document.body);
				}
				
				if(that.vars.layer){
					that.vars.overLay.css({
							'position': 'fixed',
							'opacity': 0,
							'display': 'block',	
							'width': '100%',
							'height': '100%',
							'background': 'black',
							'top': '0px',
							'left': '0px',
							'z-index': 1000
						}).animate({
							opacity: 0.5
						},500);
						
					that.vars.layer.removeClass('hidden')
					.css({
						'opacity': '0',
						'position': 'fixed',
						'top': that.vars.mintop,
						'left': that.vars.minleft,
						'margin':0,
						'z-index': 1001
						})
					.animate({
							opacity: 1											
						},500);
					
					that.vars.layer.find('.closeLnk').click(function(){
						that.vars.layer.stop().animate({
							'opacity': 0
						},500, function(){
							$(this).css({
								'top': -10000
							});
						});
						that.vars.overLay.stop().animate({
							'opacity': 0							
						}, function(){
							that.vars.overLay.css('display','none');
						});
						$(jforms).find('.frmNote textarea#txtTo').css({'color':'#a2a2a2'});
						$(jforms).find('#recaptcha_instructions_image').text('Type the two words:');
						$(jforms).find('#recaptcha_instructions_image').css({
							'color':'black'
						});
						if(typeof Recaptcha != 'undefined'){
							Recaptcha.reload();
						}
						return false;
						
					});
					
					that.vars.layer.find('input[name=close_btn]').click(function(){
						that.vars.layer.find('.closeLnk').trigger('click');
						return false;
					});
							
				}
				
				$(window).resize(function(){
				that.vars.mintop = ($(window).height() - that.vars.layer.height()) / 2;
				that.vars.minleft = ($(window).width() - that.vars.layer.width()) / 2;
				if(that.vars.mintop <= 0)
				{
					that.vars.mintop = 10;
				}
				if(that.vars.minleft < 0)
				{
					that.vars.minleft = 10;
				}
					that.vars.layer.css({
						'position': 'fixed',
						'top': that.vars.mintop,
						'left': that.vars.minleft
					});
					that.vars.overLay.css('position','fixed');
				});

			});
		});	
	};
	
	$.fn.bannerSlider = function(options){	
		var defaults={
			clsIconNext :'.icoNext',
			clsIconPrev : '.icoPre',
			clsContainerSlider:'.item:first',
			duration:500,
			clsActive:'active',
			setInterval:true,
			timerInterval:5000
		};

		options = $.extend(defaults, options); 
		return this.each(function(){
			var that = jQuery(this);
			var iconNext = that.find(options.clsIconNext);
			var iconPrev = that.find(options.clsIconPrev);
			var slideContainer = that.find(options.clsContainerSlider);
			var durationAnimate = options.duration;
			var slides = slideContainer.find('ul').children();
			var lengthContainer = slides.length - 1;
			var containerWidth = slides.eq(0).outerWidth();
			var contentImgDesc = that.find('.galleryMember').next();
			
			var flag = false;
			
			var galleryData = {
				timerId: null,
				currenIdx: 0,
				status: 1,
				stop:function (){
					clearInterval(galleryData.timerId);
					this.status = 0;
				},

				resume:function(){
					galleryData.timerId = setInterval(function(){
						iconNext.trigger('click');
					}, options.timerInterval);
					this.status = 1;
				}
			};
			
			galleryData.currenIdx = Math.floor(Math.random()*(slides.length));

			that.data('galleryData', galleryData);

			if(slides.length < 2){				
				iconNext.css('visibility','hidden');
				iconPrev.css('visibility','hidden');
			}
			
			contentImg(galleryData.currenIdx);
			
			slides.css({
				'position':'absolute',
				'marginLeft': -10000
			}).eq(galleryData.currenIdx).css({
				'marginLeft':0
			});

			if(options.setInterval){
				galleryData.timerId = setInterval(function(){
					iconNext.trigger('click');
				}, options.timerInterval);
			}

			iconNext.unbind('click.slider').bind('click.slider',function(){
				if(slides.length < 2 || flag)
				{
					return false;
				}

				clearInterval(galleryData.timerId);
				
				var oldIdx = galleryData.currenIdx;
				
				galleryData.currenIdx = galleryData.currenIdx + 1;
				
				if(galleryData.currenIdx > lengthContainer)
				{
					galleryData.currenIdx = 0;
				}
				
				flag= true;
				
				contentImg(galleryData.currenIdx);
				
				var cur = slides.eq(galleryData.currenIdx),
					prev = slides.eq(oldIdx);
					
				cur.css('marginLeft',containerWidth);
				
				prev.stop(true).animate({
					'marginLeft': -containerWidth
				}, {
					duration: durationAnimate,
					
					step: function(mleft){
						cur.css('marginLeft', containerWidth + mleft);
					},
					complete: function(){
						if(options.setInterval)
						{	
							flag = false;
							galleryData.timerId = setInterval(function(){
								iconNext.trigger('click');
							},options.timerInterval);
						}
					}
				});

				return false;
			});

			iconPrev.unbind('click.slider').bind('click.slider',function(){
				if(flag){return false;}	
				
				clearInterval(galleryData.timerId);
				
				var oldIdx = galleryData.currenIdx;
			
				galleryData.currenIdx = galleryData.currenIdx - 1;
				
				if(galleryData.currenIdx < 0)
				{
					galleryData.currenIdx = lengthContainer;
				}
				
				flag= true;
				
				contentImg(galleryData.currenIdx);
				
				var cur = slides.eq(galleryData.currenIdx),
					prev = slides.eq(oldIdx);
					
				cur.css('marginLeft',-containerWidth);
				
				prev.stop(true).animate({
					'marginLeft': containerWidth
				}, {
					duration: durationAnimate,
					
					step: function(mleft){
						cur.css('marginLeft', mleft - containerWidth);
					},
					complete: function(){
						if(options.setInterval)
						{	
							flag = false;
							galleryData.timerId = setInterval(function(){
								iconNext.trigger('click');
							},options.timerInterval);
						}
					}
				});
				
				return false;
			});

			$(document).bind('keydown.slider',function(e){
				if(e.keyCode == 39)
				{	
					if(galleryData.status){
						iconNext.trigger('click');
					}
				}
				if(e.keyCode == 37)
				{
					if(galleryData.status){

						iconPrev.trigger('click');

					}
				}
			});
			
			function contentImg(cIndex){
				var temp = cIndex;
				var titleImage = $(slides.eq(temp).find('img')).attr("title");
				if(!titleImage){
					return;
				}
				
				contentImgDesc.text(titleImage);
			};
			
		});
	};
	
	$.fn.galleryDetailsBig = function(options){
		var defaults = {
			thumb: {
				show: 0,
				duration: 500,
				activeClass: 'active'
			},
			preview: {
				duration: 1000
			}
		};
		options = $.extend(defaults, options); 						
		return this.each(function(){
			var that = $(this);
			that.vars = {
				previewContainer: null, 
				leftButton: null,
				rightButton: null,
				scrollContent: null,
				currentIndex: 0
			};			
			
			that.vars.scrollContent = that.find('.item ul');
			that.vars.leftButton = that.find('.icoPre');
			that.vars.rightButton = that.find('.icoNext');
			var imgTags = that.vars.scrollContent.find('img');
			var liTags = that.vars.scrollContent.find('li');
			var flag = false;
			
			liTags.eq(that.vars.currentIndex).addClass(options.thumb.activeClass);
			checkNextPrev(that.vars.currentIndex);
			contentImg(that.vars.currentIndex);

			that.vars.rightButton.unbind('click').bind('click',function(){
				if(that.vars.currentIndex >= liTags.length - 1 || flag){ return false;}
				liTags.eq(that.vars.currentIndex).removeClass(options.thumb.activeClass);
				imgTags.eq(that.vars.currentIndex).stop().animate({
						'opacity': 0
					},options.preview.duration);
				that.vars.currentIndex++;
				flag= true;
				checkNextPrev(that.vars.currentIndex);
				contentImg(that.vars.currentIndex);
				liTags.eq(that.vars.currentIndex).addClass(options.thumb.activeClass);
				imgTags.eq(that.vars.currentIndex).stop().animate({
						'opacity': 1
					},options.preview.duration);
				if(that.vars.currentIndex <= liTags.length - options.thumb.show){
					that.vars.scrollContent.stop().animate({
						'marginLeft': - (liTags.eq(0).innerWidth()) * (that.vars.currentIndex)
					}, options.thumb.duration,function(){
						flag = false;
					});
				}	
				return false;
			});
			
			that.vars.leftButton.unbind('click').bind('click',function(){
				if(that.vars.currentIndex <= 0 || flag){return false;}
				liTags.eq(that.vars.currentIndex).removeClass(options.thumb.activeClass);
				imgTags.eq(that.vars.currentIndex).stop().animate({
						'opacity': 0
					},options.preview.duration);
				that.vars.currentIndex--;
				flag= true;
				checkNextPrev(that.vars.currentIndex);
				contentImg(that.vars.currentIndex);
				liTags.eq(that.vars.currentIndex).addClass(options.thumb.activeClass);
				imgTags.eq(that.vars.currentIndex).stop().animate({
						'opacity': 1
					},options.preview.duration);
				if(parseInt(that.vars.scrollContent.css('marginLeft')) < 0){
					that.vars.scrollContent.stop().animate({
						'marginLeft': - (liTags.eq(0).innerWidth()) * Math.min(liTags.length - options.thumb.show, that.vars.currentIndex)
					}, options.thumb.duration,function(){
						flag = false;
					});
				}
				return false;		
			});
			
			function checkNextPrev(cIndex){
				var temp = cIndex;
				if(temp <= 0){
					that.vars.leftButton.addClass('disable');
					that.vars.rightButton.removeClass('disable');
				}
				else if(that.vars.currentIndex >= liTags.length - 1){
					that.vars.rightButton.addClass('disable');
					that.vars.leftButton.removeClass('disable');
				}else{
					that.vars.rightButton.removeClass('disable');
					that.vars.leftButton.removeClass('disable');
				}
			};
			
			function contentImg(cIndex){
				var temp = cIndex;
				var titleImage = $(liTags.eq(temp).find('img')).attr("title");
				if(!titleImage){
					return;
				}
				var contentImg = that.find('.galleryMember').next();
				contentImg.text(titleImage);
			};
			
		});			
	};
	
	$.fn.tabsMenu = function(options){
		var defaults = {
			
		};
		options = $.extend(defaults, options); 						
		return this.each(function(){
			var that = $(this);
			that.vars = {
				tabsContent:null,
				divContent:null
			};			
			that.vars.tabsContent = that.find('.tab01');
			that.vars.divContent = that.find('.contentNewsLetter');
			var liTags = that.vars.tabsContent.children();
			
			var divTags = that.vars.divContent.find('.tab_content').removeClass('hidden').hide();
			var curIdx = 0;
			
			if($.browser.msie && parseInt($.browser.version) < 9){
				divTags.eq(0).show();
				
				jQuery('.galleryStory').galleryDetailsBig();
				
				liTags.each(function(index){
					var liTag = $(this);
					liTag.unbind('click.tabsMenu').bind('click.tabsMenu',function(){
						if(liTag.hasClass('active')){
							return false;
						}
						
						liTags.eq(curIdx).removeClass('active');
						divTags.eq(curIdx).hide();
						
						liTag.addClass('active');
						divTags.eq(index).show();
						
						curIdx = index;
						return false;
					});
				});
			}else{
			
				divTags.eq(0).stop(true).css({'opacity': 0.3, 'display': 'block'}).fadeTo(500, 1, function(){
					$(this).css('filter', '');
				});
				
				jQuery('.galleryStory').galleryDetailsBig();
				liTags.each(function(index){
					var liTag = $(this);
					liTag.unbind('click.tabsMenu').bind('click.tabsMenu',function(){
						if(liTag.hasClass('active')){
							return false;
						}
						
						liTags.eq(curIdx).removeClass('active');
						divTags.eq(curIdx).stop().hide();
						
						liTag.addClass('active');
						divTags.eq(index).stop().css({'opacity': 0.3, 'display': 'block'}).fadeTo(500, 1, function(){
							$(this).css('filter', '');
						});
						
						curIdx = index;
						return false;
					});
				});
			}
		});			
	};
	
	$.fn.menuHover = function(options){
		var defaults = {
			
		};
		options = $.extend(defaults, options); 						
		return this.each(function(){
			var that = $(this);
			that.vars = {
				
			};			
			var liTags = that.children();
			
			liTags.each(function(index){
				var liTag = $(this);
				var span = liTag.find('span');
				var divMenu = liTag.find('div:first')
				liTag.unbind('mouseenter.menuHover').bind('mouseenter.menuHover',function(){
					if(!divMenu){
						return false;
					}
					divMenu.css('display', 'block');
				});
				
				span.unbind('mouseenter.menuHover').bind('mouseenter.menuHover',function(){
					divMenu.css('display', 'none');
				});
					
				liTag.unbind('mouseleave.menuHover').bind('mouseleave.menuHover',function(){
					if(!divMenu){
						return false;
					}
					divMenu.css('display', 'none');
				});
			});
		});			
	};
	
	$.fn.tooltipInfo = function(options){
		var defaults = {
			
		};
		options = $.extend(defaults, options); 						
		return this.each(function(){
			var that = $(this);
			that.vars = {
				infoContent:null
			};
			that.vars.infoContent = that.find('ul');
			var liTags = that.vars.infoContent.find('li');
			var divContent = liTags.find('.show');
			liTags.each(function(index){
				var spanTag = $(this).find('.img');
				var active = $(this);
				
				var divInfo = $(this).find('.layerActive');
				
				if(!divInfo){
					return;
				}
				
				spanTag.unbind('mouseenter.tooltip').bind('mouseenter.tooltip',function(e){
					e.preventDefault();
					divInfo.css({'opacity':0.8})
					divInfo.removeClass('hidden');
				});				
				
				spanTag.unbind('mouseleave.tooltip').bind('mouseleave.tooltip',function(e) {
					e.preventDefault();
					divInfo.addClass('hidden');
				});
			});
		});			
	};
	
	$.fn.validateSearch = function(options){
		var defaults = {
			alertLayer: '.message'
		};
		options = $.extend(defaults, options); 						
		return this.each(function(){
			var that = $(this);
			that.vars = {
				btnSearch:null,
				inputSearch:null
			};
			var alertSearch = $(options.alertLayer);
			var inputSearch = that.find('input');
			var btnSearch = that.find('.btnSearch');
			btnSearch.unbind('click.validateSearch').bind('click.validateSearch',function(){
				clearTimeout(alertSearch.timer);
				if(inputSearch.val() == 'Enter search word' || $.trim(inputSearch.val())==""){
					alertSearch.removeClass('hidden');	
					alertSearch.css({
					'opacity':0,
					'position':'fixed',
					'top':inputSearch.offset().top+30,
					'left':inputSearch.offset().left,
					'z-index':1006
					}).stop().animate({
					'opacity':1
					},500);
				
					alertSearch.timer = setTimeout(function(){
						alertSearch.addClass('hidden');
					},3000);
					return false;
				}
					//return false;
			});
		});			
	};
	
	$.fn.initAjaxLoad = function() {
		var defaults={
			
		};
		return this.each(function(){
			var jcontainer = $(this);
			jcontainer.children().addClass('hidden');
			jcontainer.append('<div class="ajaxLoading"><img src="/resources/images/ajax_load.gif" width="16" height="16"/></div').find('.ajaxLoading img').css({top: (150 - 16) / 2, left: (jcontainer.width() - 16) / 2});
		});
	};
	
	$.fn.removeAjaxLoad = function() {
		var defaults={
			
		};
		return this.each(function(){
			var jcontainer = $(this);
			jcontainer.find('.ajaxLoading').remove();
			jcontainer.children().removeClass('hidden');
		});
	};
	
	$.fn.accordionsMenu = function() {
		var defaults={
			
		};
		return this.each(function(){
			var that = $(this);
			var ulContent = that.find('ul:first');
			var liTags = ulContent.children();
			
			liTags.each(function(){
				var liTag = $(this);
				var liSibling = liTag.siblings();
				var block = false;
				liTag.unbind('click.accMenu').bind('click.accMenu',function(e){										
					if ($(e.target).parent().find('ul').length){
						if(liTag.hasClass('active') ){						
							return false;						
						}
						
						if(liSibling.hasClass('active')){
							var oldLiTag = $(ulContent.children()).filter(function(idx){
								return $(this).hasClass('active');
							});
							
							oldLiTag.removeClass('active');
							oldLiTag.find('ul').slideUp('normal',function(){
								liTag.addClass('active');
								liTag.find('ul').slideDown('normal');
							});
							
							return false;
						}
						
						liTag.addClass('active');
						
						liTag.find('ul').slideDown('normal');
						
						return false;
					}
				});
			});
		});
	};

	$.fn.initValidateForm = function() {
		var defaults={
			
		};
		var options = $.extend(defaults, options); 
		return this.each(function(){
			var that = $(this);
			that.vars = {
				btn:null
			}
			
			var emailTo = that.find('.frmNote textarea#txtTo');
			var emailFrom = that.find('.frmNote input#txtFrom');
			var sNote = that.find('.frmNote textarea#txtNote');
			var cCapcha = that.find('.frmNote input#recaptcha_response_field');
			var erCapcha = $('#recaptcha_instructions_image');
			$(emailTo).unbind('blur.alter').unbind('focus.alter').bind('blur.alter', function(){
			   if($.trim(emailTo.val()) == ''){
				emailTo.val("email1@mail.com, email2@mail.com, email3@mail.com").css({'color':'#a2a2a2'});
				emailTo.removeClass("invalid");
			   }
			  }).bind('focus.alter', function(){
			   if($.trim(emailTo.val()) == "email1@mail.com, email2@mail.com, email3@mail.com"){
				emailTo.val('').css({'color':'#1f1f1f'});
			   }
			 });
			  
			if(!emailTo.length || !emailFrom.length || !sNote.length){
				return;
			}
			
				$('#nodeId').prev().unbind('click').bind('click',function(){
				that.find('.invalid').each(function(){
					$(this).removeClass('invalid');
				});
				
				if(!checkEmail(emailTo)){
					return false;
				}
				if(!checkEmail(emailFrom)){
					return false;
				}
				if(!checkNull(sNote)){
					return false;
				}
				// if(!checkNull(cCapcha)){
					// return false;
				// }
				
				if(!checkCapcha()){
					return false;
				}
				
				$.ajax({
					type: "POST",
					url: "/usercontrols/umbracoInviFriend/SendToAFriend.ashx",
					data: that.serialize(),
					beforeSend: function(){
						$('.wrapPopupEmailCnt').initAjaxLoad();
					},
					success: function(data) {
						$('.wrapPopupEmailCnt').removeAjaxLoad();
						that.find('.frmSent').removeClass('hidden').find('li:first').html(data);
						that.find('.frmNote:first').addClass('hidden');
						// if(data == 'Successful!!! Indeed'){
							// $('.wrapPopupEmailCnt').removeAjaxLoad();
							// that.find('.frmSent').removeClass('hidden').find('li:first').html(data);
							// that.find('.frmNote:first').addClass('hidden');
						// }else{
							// $('.wrapPopupEmailCnt').removeAjaxLoad();
							// that.find('.frmSent').addClass('hidden');
							// erCapcha.text('Please input correct code!');
							// erCapcha.css({
								// 'color':'red'
							// });
						// }
					}
				});
				return false;
				
			});			
			
			function checkNull(obj) {
				var temp = $(obj);
				if ($.trim(temp.val()) == "") {
					temp.focus();
					temp.addClass("invalid");
					return false;
				}else{
					temp.removeClass("invalid")
					return true;
				}
			};
			
			function checkCapcha(obj,checkCapcha){
				var temp = that.find('.frmNote input#txtCapCha');
				var check = that.find('.frmNote input#hdCapcha');
				
				if (temp.val() != check.val()) {
					temp.focus();
					temp.addClass("invalid");
					return false;
				}else{
					temp.removeClass("invalid")
					return true;
				}
			};
			
			function validEmail(d) {
				return /^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/.test(d);
			};
			
			function checkEmail(obj){
				var temp = obj;
				var strs = $.trim($(obj).val());
			
				if(!strs){
					temp.focus();
					temp.addClass("invalid");
					return false;
				}
				
				var emails = strs.split(",");
				var valid = true;
				
				for(var i = 0; i < emails.length; i++){					
					var email = $.trim(emails[i]);
					if (!validEmail(email) || email == "email1@mail.com"){
						temp.focus();
						valid = false;
						break;
					}
				};
				if(valid){
					temp.removeClass("invalid");
					return true;
				}else{
					temp.addClass("invalid");
					return false;
				}
			};			
		});
	};
	
})(jQuery);
