﻿function miBefore(curr, next, opts) {
    var caption = $('#mi-caption');
    if (caption != "") {
        $('#mi-caption').slideUp(300);
        $('#mi-caption').html("");
    }
}
function miAfter(curr, next, opts) {
    var caption = $('img', next).attr('alt');
    var link = $('a', next).attr('href');
    if (caption != undefined) {
        $('#mi-caption').html('<a href="' + link + '">' + caption + '</a>');
//        $('img', next).attr('title', '');
        $('#mi-caption').slideDown(500);
    }
}
$(document).ready(function () {
    function megaHoverOver() {
        $(this).find(".sub").stop().fadeTo('fast', 1).show();
        (function ($) {
            jQuery.fn.calcSubWidth = function () {
                rowWidth = 0;
                $(this).find("ul").each(function () {
                    rowWidth += $(this).width();
                    rowWidth += 10;
                });
            };
        })(jQuery);
        if ($(this).find(".row").length > 0) {
            var biggestRow = 0;
            $(this).find(".row").each(function () {
                $(this).calcSubWidth();
                if (rowWidth > biggestRow) {
                    biggestRow = rowWidth;
                }
            });
            $(this).find(".sub").css({ 'width': biggestRow });
            $(this).find(".row:last").css({ 'margin': '0' });
        } else {
            $(this).calcSubWidth();
            $(this).find(".sub").css({ 'width': rowWidth });
        }
    }
    function megaHoverOut() {
        /*$(this).find(".sub").stop().fadeTo('fast', 0, function () {
            $(this).hide();
        });*/
        $(this).find(".sub").stop().hide();
    }
    var config = {
        sensitivity: 2,
        interval: 100,
        over: megaHoverOver,
        timeout: 500,
        out: megaHoverOut
    };
    $("#topnav li .sub").css({ 'opacity': '0' });
    $("#topnav li").hoverIntent(config);
    $("a[href^='http']").not("a[href^='http://shop.somersethouse.org.uk']").attr('target', '_blank').attr('title', 'Opens in a new window');
    $("a[href^='/documents/']").attr('target', '_blank').attr('title', 'Opens in a new window');
});
// Form validation code

// Contact us form
function validateContact(frm) {
    var isError = false;

    if (document.getElementById('contactName').value == "") {
        document.getElementById('contactName_error').innerHTML = "<span class='error'>Please enter your name</span>";
        isError = true;
    } else {
        document.getElementById('contactName_error').innerHTML = "";
    }

    if (document.getElementById('contactEmail').value.search(/^[\w-\.']+@([\w-]+\.)+[\w-]{2,4}$/)) {
        document.getElementById('contactEmail_error').innerHTML = "<span class='error'>Please enter a valid email address</span>";
        isError = true;
    } else {
        document.getElementById('contactEmail_error').innerHTML = "";
    }

    if (document.getElementById('contactMessage').value == "") {
        document.getElementById('contactMessage_error').innerHTML = "<span class='error'>Please enter your message</span>";
        isError = true;
    } else {
        document.getElementById('contactMessage_error').innerHTML = "";
    }

    if (isError) {
        return false;
    } else {
        return true;
    }
}
// Volunteering form
function validateVol(frm) {
    var isError = false;

    if (document.getElementById('title').value == "") {
        document.getElementById('title_error').innerHTML = "<span class='error'>Please select your title</span>";
        isError = true;
    } else {
        document.getElementById('title_error').innerHTML = "";
    }

    if (document.getElementById('firstName').value == "") {
        document.getElementById('firstName_error').innerHTML = "<span class='error'>Please enter your first name</span>";
        isError = true;
    } else {
        document.getElementById('firstName_error').innerHTML = "";
    }

    if (document.getElementById('lastName').value == "") {
        document.getElementById('lastName_error').innerHTML = "<span class='error'>Please enter your surname</span>";
        isError = true;
    } else {
        document.getElementById('lastName_error').innerHTML = "";
    }

    if (document.getElementById('address1').value == "") {
        document.getElementById('address1_error').innerHTML = "<span class='error'>Please enter your address line 1</span>";
        isError = true;
    } else {
        document.getElementById('address1_error').innerHTML = "";
    }

    if (document.getElementById('postcode').value == "") {
        document.getElementById('postcode_error').innerHTML = "<span class='error'>Please enter your postcode</span>";
        isError = true;
    } else {
        document.getElementById('postcode_error').innerHTML = "";
    }

    if (document.getElementById('telephone').value == "") {
        document.getElementById('telephone_error').innerHTML = "<span class='error'>Please enter your telephone number</span>";
        isError = true;
    } else {
        document.getElementById('telephone_error').innerHTML = "";
    }

    if (document.getElementById('contactEmail').value.search(/^[\w-\.']+@([\w-]+\.)+[\w-]{2,4}$/)) {
        document.getElementById('contactEmail_error').innerHTML = "<span class='error'>Please enter a valid email address</span>";
        isError = true;
    } else {
        document.getElementById('contactEmail_error').innerHTML = "";
    }

    if (isError) {
        return false;
    } else {
        return true;
    }
}
// Corporate events form
function validateCorporate(frm) {
    var isError = false;

    if (document.getElementById('title').value == "") {
        document.getElementById('title_error').innerHTML = "<span class='error'>Please enter title</span>";
        isError = true;
    } else {
        document.getElementById('title_error').innerHTML = "";
    }

    if (document.getElementById('firstName').value == "") {
        document.getElementById('firstName_error').innerHTML = "<span class='error'>Please enter your first name</span>";
        isError = true;
    } else {
        document.getElementById('firstName_error').innerHTML = "";
    }

    if (document.getElementById('lastName').value == "") {
        document.getElementById('lastName_error').innerHTML = "<span class='error'>Please enter your last name</span>";
        isError = true;
    } else {
        document.getElementById('lastName_error').innerHTML = "";
    }

    if (document.getElementById('companyName').value == "") {
        document.getElementById('companyName_error').innerHTML = "<span class='error'>Please enter your company name</span>";
        isError = true;
    } else {
        document.getElementById('companyName_error').innerHTML = "";
    }

    if (document.getElementById('address1').value == "") {
        document.getElementById('address1_error').innerHTML = "<span class='error'>Please enter your address line line</span>";
        isError = true;
    } else {
        document.getElementById('address1_error').innerHTML = "";
    }

    if (document.getElementById('town').value == "") {
        document.getElementById('town_error').innerHTML = "<span class='error'>Please enter your town/city</span>";
        isError = true;
    } else {
        document.getElementById('town_error').innerHTML = "";
    }

    if (document.getElementById('county').value == "") {
        document.getElementById('county_error').innerHTML = "<span class='error'>Please enter your county/state</span>";
        isError = true;
    } else {
        document.getElementById('county_error').innerHTML = "";
    }

    if (document.getElementById('postcode').value == "") {
        document.getElementById('postcode_error').innerHTML = "<span class='error'>Please enter your postcode</span>";
        isError = true;
    } else {
        document.getElementById('postcode_error').innerHTML = "";
    }

    if (document.getElementById('telephone').value == "") {
        document.getElementById('telephone_error').innerHTML = "<span class='error'>Please enter your telephone number</span>";
        isError = true;
    } else {
        document.getElementById('telephone_error').innerHTML = "";
    }

    if (document.getElementById('contactEmail').value.search(/^[\w-\.']+@([\w-]+\.)+[\w-]{2,4}$/)) {
        document.getElementById('contactEmail_error').innerHTML = "<span class='error'>Please enter a valid email address</span>";
        isError = true;
    } else {
        document.getElementById('contactEmail_error').innerHTML = "";
    }

    if (document.getElementById('companyType').value == "") {
        document.getElementById('companyType_error').innerHTML = "<span class='error'>Please enter your type of company</span>";
        isError = true;
    } else {
        document.getElementById('companyType_error').innerHTML = "";
    }

    if (document.getElementById('howHear').value == "") {
        document.getElementById('howHear_error').innerHTML = "<span class='error'>Please enter how did you hear about us</span>";
        isError = true;
    } else {
        document.getElementById('howHear_error').innerHTML = "";
    }

    if (isError) {
        return false;
    } else {
        return true;
    }
}
function centrePopup(theURL, winName, width, height, features) {
    var cTop = (screen.availHeight / 2) - (height / 2);
    var cLeft = (screen.availWidth / 2) - (width / 2);
    window.open(theURL, winName, 'width=' + width + ',height=' + height + ',top=' + cTop + ',left=' + cLeft + features);
}
