function equalColHeight() {
if ($('body').hasClass('desktop') || ($('body').hasClass('thefa-theme') && $('div').hasClass('esc')) || ($('body').hasClass('thefa-theme') && $('div').hasClass('signup'))) {
if (($('.grid_2 .myaccount.account').length > 0) || ($('.grid_2 .signup.account').length > 0)) {
var colLeftHeight = $('.grid_2').outerHeight();
var colRightHeight = $('.grid_1').outerHeight();
if (colLeftHeight > colRightHeight) {
$('.grid_1').outerHeight(colLeftHeight);
}
else if (colLeftHeight < colRightHeight) {
$('.grid_1').outerHeight(colLeftHeight);
//$('.grid_2').outerHeight(colRightHeight);
}
}
}
}
function equalColHeightDecrease() {
if ($('body').hasClass('desktop')) {
if (($('.grid_2 .myaccount.account').length > 0) || ($('.grid_2 .signup.account').length > 0)) {
var colLeftHeight = $('.grid_2').outerHeight();
var colLeftInnerHeight = $('.grid_2-inner').outerHeight();
var colRightHeight = $('.grid_1').outerHeight();
var colRightInnerHeight = $('.grid_1-inner').outerHeight();
if ((colLeftHeight > colRightHeight) && (colRightHeight > colLeftInnerHeight)) {
$('.grid_2').outerHeight(colRightHeight);
}
else if ((colLeftHeight > colRightHeight) && (colRightHeight < colLeftInnerHeight)) {
$('.grid_2').height(colLeftInnerHeight);
}
else if ((colLeftHeight < colRightHeight) && (colLeftHeight > colRightInnerHeight)) {
$('.grid_1').outerHeight(colLeftHeight);
}
else if ((colLeftHeight < colRightHeight) && (colLeftHeight < colRightInnerHeight)) {
$('.grid_1').height(colRightInnerHeight);
}
}
}
}
Juniors = {
Init: function () {
alert('Init');
}
}
function getMessage(messageName, defaultText) {
if (typeof window.accountSignupMessages === "undefined")
return defaultText;
if (typeof window.accountSignupMessages[messageName] === "undefined")
return defaultText;
return window.accountSignupMessages[messageName];
}
function validateDateSignup(element) {
var element_id = $(element).val();
//var filter = (?=.*[A-Z])(?=.*[0-9])^[a-zA-Z0-9_\-@$]{6,12}$
var filter = /\b\d{1,2}[\/-]\d{1,2}[\/-]\d{4}\b/;
if (!filter.test($(element).val())) {
return false;
}
else return true;
}
/////////////// Juniors ////
function showTooltip(element) {
$(element).removeClass('input-validation-error');
$(element).addClass('errorClass');
var toolTipText = $(element).closest('.formRow').children('.tooltip').text();
if (!(toolTipText == '')) {
$(element).closest('.formRow').children('.tooltip').addClass('display');
}
}
function hideTooltip(element) {
$(element).removeClass('errorClass');
$(element).addClass('input-validation-error');
$(element).closest('.formRow').children('.tooltip').removeClass('display');
}
function validateRequired(element) {
if (!$(element).val()) {
return false;
}
else {
return true;
}
}
function validateFan(element) {
var element_id = $(element).val();
var filter = /^[0-9]{4,8}$/;
if (!filter.test($(element).val())) {
return false;
}
else {
return true;
}
}
function validateEmail(element) {
var element_id = $(element).val();
//var filter = new RegExp("[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?");
var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
if (!filter.test($(element).val())) {
return false;
}
else {
return true;
}
}
function validateRegEx(element, regEx) {
if (regEx.test($(element).val())) {
return true;
}
return false;
}
function validateDate(element) {
var element_id = $(element).val();
//F0132489
//if (isMobileIOS()) {
if (isMobile()) {
return true; // change format of date on submit. IOS device continue to force the date format no matter what. Change it once the user has submitted the form
} else {
//var filter = (?=.*[A-Z])(?=.*[0-9])^[a-zA-Z0-9_\-@$]{6,12}$
var filter = /\b\d{1,2}[\/-]\d{1,2}[\/-]\d{4}\b/;
if (!filter.test($(element).val())) {
return false;
}
else return true;
}
}
function validateDateCalcAge(element) {
var element_id = $(element).val();
var month = {
"Jan": "1",
"Feb": "2",
"Mar": "3",
"Apr": "4",
"May": "5",
"Jun": "6",
"Jul": "7",
"Aug": "8",
"Sep": "9",
"Oct": "10",
"Nov": "11",
"Dec": "12"
};
var selectedDate = "" + $(element).datepicker('getDate');
//alert(selectedDate);
//F0132489
//if (isMobileIOS()) {
if (isMobile()) {
iosd = $(element).val().split('/');
selectedDate = iosd[0] + '/' + iosd[1] + '/' + iosd[2];
birthDay = iosd[0];
birthMonth = iosd[1];
birthYear = iosd[2];
} else {
//selectedDateArray = selectedDate.split(" ");
var selectedDateTime = new Date(selectedDate);
birthDay = selectedDateTime.getDate();
birthMonth = selectedDateTime.getMonth();
birthYear = selectedDateTime.getFullYear();
}
todayDate = new Date();
todayYear = todayDate.getFullYear();
todayMonth = todayDate.getMonth();
todayDay = parseInt(todayDate.getDate());
age = parseInt(todayYear) - parseInt(birthYear);
if (todayMonth < (birthMonth - 1)) {
age--;
}
if ((birthMonth - 1) == todayMonth && todayDay < birthDay) {
age--;
}
//alert(age);
if (age < 16 && age > -1) {
return false;
}
else return true;
}
function validateDateFuture(element) {
var selectedDate = $(element).datepicker('getDate');
var now = new Date();
//F0131998
if (isMobile()) {
var iosd = $($(element)).val().split('-');
selectedDate = new Date(iosd[1] + '/' + iosd[2] + '/' + iosd[0]);
}
if (selectedDate <= now) {
return false;
}
else {
return true;
}
}
//for all uploaded files
function validateFileSize(element)
{
try
{
var size = ($(element)["0"].files[0].size) * 0.00000095367432;
return size;
}
catch (err)
{
return 0;
}
}
//for passport files
function validateFileExtension(element) {
var file_path = $(element).val();
var file_extension = file_path.substr(file_path.length - 4);
if (!(file_extension.toLowerCase() == '.jpg') && !(file_extension.toLowerCase() == 'jpeg'))
{
return false;
}
else
{
return true;
}
}
//for photo files
function validatePhotoFileExtension(element) {
if (!$(element).is(':visible'))
return true;
var file_path = $(element).val();
var file_extension = file_path.substr(file_path.length - 4);
//alert(file_extension);
if (!(file_extension.toLowerCase() == '.gif') && !(file_extension.toLowerCase() == '.jpg') && !(file_extension.toLowerCase() == 'jpeg') && !(file_extension.toLowerCase() == '.png')) {
return false;
}
else {
return true;
}
}
function validateRequiredRadio(element) {
if (!$('#declaration .prettyradio a').hasClass('checked')) {
return false;
}
else {
return true;
}
}
function validateRequiredRadio1(element) {
if (!$('#declaration1 .prettyradio a').hasClass('checked')) {
return false;
}
else {
return true;
}
}
function datepickerInit(element, yearRange) {
$(element).datepicker({
onSelect: function (date) {
if (!validateDate($(element))) {
$(element).addClass('input-validation-error');
}
else {
$(element).removeClass('input-validation-error');
}
},
onClose: function (date) {
if (!validateDate($(element))) {
$(element).addClass('input-validation-error');
}
else {
$(element).removeClass('input-validation-error');
}
},
dateFormat: "dd/mm/yy",
changeYear: true,
yearRange: yearRange
});
}
function capitalizeString(str) {
var sp = str.split(' ');
var f, r;
var word = new Array();
for (i = 0 ; i < sp.length ; i++) {
f = sp[i].substring(0, 1).toUpperCase();
r = sp[i].substring(1).toLowerCase();
word[i] = f + r;
}
newstring = word.join(' ');
return newstring;
}
function dropBoxInit() {
$('.sbHolder > a').click(function () {
var widthCountry = $('.sbHolder').width();
$('.sbOptions').css('width', widthCountry);
});
}
function countryDropBoxInit() {
$('.country option').each(function (i) {
$(this).text(capitalizeString($(this).text()));
});
$('.country').selectbox();
var tempCountry = $('.sbSelector').text();
if ((tempCountry == 'England') || (tempCountry == 'Åland Islands') || (tempCountry == 'Wales') || (tempCountry == 'Scotland') || tempCountry == ('United Kingdom') || (tempCountry == 'Northern Ireland')) {
$(".postcode").prop('disabled', false);
$(".postcode").removeClass('disabled');
}
else {
$(".postcode").prop('disabled', true);
$(".postcode").addClass('disabled');
$(".postcode").val('');
}
}
function juniorMemberIDsUpdate(element, id) {
$(element).find('h6').text('Junior ' + id);
//first tab
$(element).find('.tab:first-child > input[type=radio]').attr('id', 'junior' + id + 'radio1').attr('name', 'junior-type-' + id);
$(element).find('.tab:first-child > label').attr('for', 'junior' + id + 'radio1');
$(element).find('.tab:first-child > .content > .junior-wrapper').attr('id', 'junior' + id);
$(element).find('.tab:first-child > .content > .junior-wrapper .firstname-label').attr('for', 'FirstName-Junior-' + id);
$(element).find('.tab:first-child > .content > .junior-wrapper .first-name').attr('id', 'FirstName-Junior-' + id).attr('name', 'FirstName-Junior-' + id);
$(element).find('.tab:first-child > .content > .junior-wrapper .lastname-label').attr('for', 'LastName-Junior-' + id);
$(element).find('.tab:first-child > .content > .junior-wrapper .last-name').attr('id', 'LastName-Junior-' + id).attr('name', 'LastName-Junior-' + id);
$(element).find('.tab:first-child > .content > .junior-wrapper .date-label').attr('for', 'DateOfBirth-Junior-' + id);
$(element).find('.tab:first-child > .content > .junior-wrapper .juniordate').attr('id', 'DateOfBirth-Junior-' + id).attr('name', 'DateOfBirth-Junior-' + id);
////second tab
$(element).find('.tab:first-child + .tab > input[type=radio]').attr('id', 'junior' + id + 'radio2').attr('name', 'junior-type-' + id);
$(element).find('.tab:first-child + .tab > label').attr('for', 'junior' + id + 'radio2');
$(element).find('.tab:first-child + .tab > .content > .junior-wrapper').attr('id', 'junior' + id);
$(element).find('.tab:first-child + .tab > .content > .junior-wrapper .firstname-label').attr('for', 'FirstName-Junior-' + id);
$(element).find('.tab:first-child + .tab > .content > .junior-wrapper .first-name').attr('id', 'FirstName-Junior-' + id).attr('name', 'FirstName-Junior-' + id);
$(element).find('.tab:first-child + .tab > .content > .junior-wrapper .lastname-label').attr('for', 'LastName-Junior-' + id);
$(element).find('.tab:first-child + .tab > .content > .junior-wrapper .last-name').attr('id', 'LastName-Junior-' + id).attr('name', 'LastName-Junior-' + id);
$(element).find('.tab:first-child + .tab > .content > .junior-wrapper .date-label').attr('for', 'DateOfBirth-Junior-' + id);
$(element).find('.tab:first-child + .tab > .content > .junior-wrapper .juniordate').attr('id', 'DateOfBirth-Junior-' + id).attr('name', 'DateOfBirth-Junior-' + id);
}
function juniorMemberListRefresh() {
if ($('.junior-tabs').length) {
$('.junior-tabs').each(function (index) {
juniorMemberIDsUpdate(this, index + 1);
});
}
}
function addJuniorMember(id) {
jQuery.support.cors = true;
$.ajax({
dataType: 'text',
contentType: 'text/plain',
crossDomain: true,
type: 'GET',
url: '/html/newJuniorMember.html',
error: function (xhr, statusText) {
//log error
},
success: function (data) {
var htmlfile = data;
idnum = id + 1;
var html = htmlfile.replace(/{{id}}/g, id);
var html = html.replace(/{{idnum}}/g, idnum);
// add junior form
$(html).insertBefore('#junior-members-add');
if ($("html").hasClass("ie7")) {
ie8ClickTab();
}
if (isMobile()) {
$('.date').removeClass('hasDatepicker').attr('type', 'text');
$(".date").bind("focus", function () {
$(this).blur();
});
$('.date').datepicker('disable');
$('.date').datepicker("option", "disabled", true);
}
// set up the removal button
removeJunior(id);
addJuniorMemberContent(id, 'mode');
/*
$('#DateOfBirthValidation-Junior-' + id + '.juniordate, #DateOfBirth-Junior-' + id + '.juniordate ').on('click', function (e) {
if (!$('#ui-datepicker-div').is(':visible')) {
$('#ui-datepicker-div').show();
}
e.stopPropagation();
});
*/
/*
$('#DateOfBirthValidation-Junior-' + id + '.juniordate, #DateOfBirth-Junior-' + id + '.juniordate ').click(function (event) {
event.stopPropagation();
});
*/
$('.grid_2').css({ 'height': 'initial' });
equalColHeight();
}
});
}
function addJuniorMemberContent(id, mode) {
if (!isMobile()) {
$('#DateOfBirthValidation-Junior-' + id + '.juniordate, #DateOfBirth-Junior-' + id + '.juniordate ').removeClass('hasDatepicker').datepicker({
onSelect: function (date) {
if (!validateDate($(this))) {
$(this).addClass('input-validation-error');
}
else {
$(this).removeClass('input-validation-error');
}
},
onClose: function (date) {
if (!validateDate($(this))) {
$(this).addClass('input-validation-error');
}
else {
$(this).removeClass('input-validation-error');
}
},
dateFormat: "dd/mm/yy",
changeYear: true,
yearRange: "-100:+0"
});
}
}
function toggleMembersTrigger(id) {
if (id == 0) {
$('#junior-members-trigger').addClass('active');
$('#junior-members-add').removeClass('active');
$('#junior-section-wrapper').removeClass('active');
}
}
function toggleAddMoreMembers(id) {
if (id > 4) {
$('#junior-members-add').removeClass('active');
}
else if ((id <= 5) && (!$('#junior-members-add').hasClass('active'))) {
$('#junior-members-add').addClass('active');
}
var new_juniors_length = $('#new-juniors-wrapper .junior-tabs').length;
if (new_juniors_length == 0) {
$('#new-juniors').removeClass('active');
}
else if (new_juniors_length > 0) {
$('#new-juniors').addClass('active');
}
}
function getLastJuniorId() {
if ($('.junior-tabs').length > 1) {
return parseInt($('.junior-tabs').last().attr('id').substr(7));
}
else return -1;
}
function removeJunior(id) {
$('#remove-junior-' + id).click(function (e) {
e.preventDefault();
$('.hasDatepicker').datepicker('hide');
junior_tabID = $(this).attr('rel');
juniorRemoveDialog(junior_tabID);
});
}
function juniorRemoveDialog(junior_tabID) {
$("#jr-remove-confirm").html("Remove Junior");
jrName = "";
if ($('#FirstName-Junior-' + junior_tabID) != "" && $('#LastName-junior-' + junior_tabID) != "") {
jrName = " " + $('#FirstName-Junior-' + junior_tabID).val() + " " + $('#LastName-junior-' + junior_tabID).val();
}
if (jrName == "") {
jrName = "New Junior " + (+junior_tabID + 1);
}
jrNameTest = jrName.replace(/\s/g, '');
//console.log('jrName:' + jrName + "|");
if (jrNameTest == "") {
jrName = ' ' + $('#Fan-Junior-' + junior_tabID).val();
}
jrNameTest = jrName.replace(/\s/g, '');
if (jrNameTest == "") {
jrName = " New Junior " + (+junior_tabID + 1);
}
// Define the Dialog and its properties.
$("#junior-remove-dialog-confirm").dialog({
resizable: false,
modal: true,
dialogClass: 'delete-junior',
title: jrName,
height: 250,
width: 500,
buttons: {
"Remove": function () {
$(this).dialog('close');
processRemoveJunior(junior_tabID);
},
"Cancel": function () {
$(this).dialog('close');
processRemoveJunior(false);
}
}
});
}
function processRemoveJunior(junior_tabID) {
if (junior_tabID) {
junior_num = +junior_tabID + 1
num_of_tabs = $('.junior-tabs').length - 1;
if (junior_num == num_of_tabs) {
// if it's the last one
$('.junior-tabs:last').remove();
} else {
// loop through range junior_tabID to num_of_tabs
for (i = junior_num; i < num_of_tabs; i++) {
$('#FirstName-Junior-' + (i - 1)).val($('#FirstName-Junior-' + i).val());
$('#LastName-junior-' + (i - 1)).val($('#LastName-junior-' + i).val());
$('#DateOfBirth-Junior-' + (i - 1)).val($('#DateOfBirth-Junior-' + i).val());
$('#Fan-Junior-' + (i - 1)).val($('#Fan-Junior-' + i).val());
$('#DateOfBirthValidation-Junior-' + (i - 1)).val($('#DateOfBirthValidation-Junior-' + i).val());
}
$('.junior-tabs').slice(-1).remove();
}
var members_length = getNumberOfJuniors();
toggleAddMoreMembers(members_length);
$('.validation-summary-valid ul').empty();
$('.grid_2').css({ 'height': 'initial' });
equalColHeight();
} else {
// do nothing
}
}
function getNumberOfJuniors() {
return $('.junior-tabs').not('.myaccount, .esc-signup').length;
}
function getCurrentJuniorId(currentItem) {
return $(currentItem).closest('.junior-tabs').attr("id").substr(7);
}
/*
if ($("html").hasClass("ie7")) {
$('.tabs .tab label').click(function () {
//tabid = $(this).attr('for');
//radioid = // work this out
alert('clicked');
//$(this).siblings('input').trigger('click');
});
}
*/
function ie8ClickTab() {
// get last junior and set the tabs up
$('#junior-section-wrapper div.junior-tabs:last div.junior-tabs-lower .tabs .tab:first .content').css({ "z-index": "3" });
$('#junior-section-wrapper div.junior-tabs:last div.junior-tabs-lower .tabs .tab:first label:first').css({ "background": "#fff", "border-bottom": "none", "z-index": "4", "position": "relative" });
$('.tabs .tab label').click(function () {
tab = $(this).parent();
tab.find('input[type="radio"]').trigger('click');
tabType = tab.find('input[type="radio"]').val();
if (tabType == "New") {
$(this).css({ "background": "#fff", "border-bottom": "none", "z-index": "4", "position": "relative" });
prevTab = $(this).parent().parent();
prevTab.find('.tab:last label:first').css({ "background": "#ddd", "border-bottom": "#ccc" });
prevTab.find('.tab:last .content').css({ "z-index": "2" });
$(this).siblings('.content').css({ "z-index": "3" });
} else {
$(this).css({ "background": "#fff", "border-bottom": "none", "z-index": "4", "position": "relative" });
prevTab = $(this).parent().parent();
prevTab.find('.tab:first label:first').css({ "background": "#ddd", "border-bottom": "#ccc" });
prevTab.find('.tab:first .content').css({ "z-index": "2" });
$(this).siblings('.content').css({ "z-index": "3" });
}
});
}
function juniorMemberCountUpdate() {
var count = $('.listRow .read-only .prettycheckbox a.checked').length;
$('#junior-count').text('You have selected to upgrade ' + count + ' additional junior members.');
}
function upgradeListInit() {
if ($('.listRow').not('.firstRow').length) {
$('#upgrade-junior-members').addClass('active');
$('#no-entries').removeClass('active');
$('.read-only .prettycheckbox a').each(function (index) {
if ($(this).hasClass('checked')) {
if ($(this).closest('.read-only').hasClass('active')) {
$(this).closest('.read-only').siblings('.read-write').addClass('active');
}
else if (!$(this).closest('.read-only').hasClass('active')) {
$(this).closest('.read-only').addClass('active');
$(this).closest('.read-only').siblings('.read-write').addClass('active');
}
}
else if (!$(this).hasClass('checked')) {
$(this).closest('.read-only').removeClass('active');
$(this).closest('.read-only').siblings('.read-write').removeClass('active');
}
});
}
else {
$('#upgrade-junior-members').removeClass('active');
$('#no-entries').addClass('active');
}
juniorMemberCountUpdate();
}
function juniorValidation(error) {
//does client error div exists
if ($('.validation-summary-valid').length < 1) {
$('.validation-summary-errors').hide();
$('.signUpSubmit').after('
Please correct the highlighted fields and try again ');
}
var jrgroup = new Object();
var junior_i = -1;
dp_num = ($('#junior-section-wrapper .date').length / 2); //can be done better
// initialise datepicker validation counts
for (i = 0; i < dp_num; i++) { jrgroup[i] = ''; }
$('#junior-section-wrapper .date.new').each(function (index) {
var date_message1, date_message2 = false;
if ($(this).closest('.tab').children('.junior-radio').prop('checked')) {
// find out which junior it is from the container class
junior_tabsID = ($(this).closest('.junior-tabs').attr('id').split('-')[1]).valueOf();
junior_tabsID++;
junior_i++;
if (!validateRequired($(this))) {
jrgroup[junior_i] += 'Date of birth is required';
date_message1 = true;
$(this).addClass('input-validation-error');
error = true;
}
if (!validateDate($(this)) && !date_message1) {
jrgroup[junior_i] += 'Please enter passport expiry date in DD/MM/YYYY format';
date_message2 = true;
$(this).addClass('input-validation-error');
error = true;
}
if (validateDateCalcAge($(this)) && !date_message1 && !date_message2) {
jrgroup[junior_i] += 'Juniors must be 16 or younger';
date_message3 = true;
$(this).addClass('input-validation-error');
error = true;
}
// add a header if it's not empty
if (jrgroup[junior_i] != '') {
jrgroup[junior_i] = 'Error(s) on Junior ' + junior_tabsID + ' form
' + jrgroup[junior_i];
}
}
});
junior_i = -1;
$('#junior-section-wrapper .first-name').each(function (index) {
if ($(this).closest('.tab').children('.junior-radio').prop('checked')) {
junior_tabsID = ($(this).closest('.junior-tabs').attr('id').split('-')[1]).valueOf();
junior_tabsID++;
junior_i++;
if (!validateRequired($(this))) {
first_name_message = true;
$(this).addClass('input-validation-error');
error = true;
jrgroup[junior_i] += '' + getMessage('firstNameRequired', 'First name is required') + '';
}
// add header if it there isn't one
if (jrgroup[junior_i].indexOf("") == -1 && jrgroup[junior_i] != "") {
jrgroup[junior_i] = '
Error(s) on Junior ' + junior_tabsID + ' form
' + jrgroup[junior_i];
}
}
})
junior_i = -1;
$('#junior-section-wrapper .last-name').each(function (index) {
if ($(this).closest('.tab').children('.junior-radio').prop('checked')) {
junior_tabsID = ($(this).closest('.junior-tabs').attr('id').split('-')[1]).valueOf();
junior_tabsID++;
junior_i++;
if (!validateRequired($(this))) {
last_name_message = true;
$(this).addClass('input-validation-error');
error = true;
jrgroup[junior_i] += '' + getMessage('lastNameRequired', 'Last name is required') + '';
//console.log('missing last name');
}
// add header if it there isn't one
if (jrgroup[junior_i].indexOf("") == -1 && jrgroup[junior_i] != "") {
jrgroup[junior_i] = '
Error(s) on Junior ' + junior_tabsID + ' form
' + jrgroup[junior_i];
}
}
});
// group message for new juniors
jrp_num = -1;
$.each(jrgroup, function (key, value) {
jrp_num++;
num_li = $('.validation-summary-valid ul li').length;
$('.validation-summary-valid ul').append(value);
num_new_li = $('.validation-summary-valid ul li').length;
if ((num_new_li - num_li) == 4) {
$('.validation-summary-valid ul li').slice(-3).remove();
$('.validation-summary-valid ul').append('' + getMessage('juniorDetailsRequired', 'fill in all of the junior details please') + '
');
} else if ((num_new_li - num_li) > 0) {
$('.validation-summary-valid ul').append('
');
}
});
//existing juniors
var ejgroup = new Object();
junior_i = -1;
$('#junior-section-wrapper .fan').each(function (index) {
junior_i++;
ejgroup[junior_i] = "";
if ($(this).closest('.tab').children('.junior-radio').prop('checked')) {
junior_tabsID = ($(this).closest('.junior-tabs').attr('id').split('-')[1]).valueOf();
junior_tabsID++;
//work out which junior this is for by it's index
thisJunior = junior_i;
if (!validateRequired($(this))) {
ejgroup[thisJunior] += 'FAN number is required';
fan_message = true;
$(this).addClass('input-validation-error');
error = true;
}
if (!validateFan($(this)) && !fan_message) {
if (!fan_message2) {
ejgroup[thisJunior] += 'FAN number is between 4 and 8 characters';
fan_message2 = true;
}
$(this).addClass('input-validation-error');
error = true;
}
// add a header if it's not empty
if (ejgroup[junior_i] != '') {
ejgroup[junior_i] = 'Error(s) on Junior ' + junior_tabsID + ' form
' + ejgroup[junior_i];
}
}
});
junior_i = -1;
var existing_date_message1 = false;
var existing_date_message2 = false;
$('#junior-section-wrapper .date.existing').each(function (index) {
junior_i++;
if ($(this).closest('.tab').children('.junior-radio').prop('checked')) {
junior_tabsID = ($(this).closest('.junior-tabs').attr('id').split('-')[1]).valueOf();
junior_tabsID++;
thisJunior = junior_i;
if (!validateRequired($(this))) {
ejgroup[thisJunior] += 'Date of birth is required for existing junior';
existing_date_message1 = true;
$(this).addClass('input-validation-error');
error = true;
}
if (!validateDate($(this)) && !existing_date_message1) {
ejgroup[thisJunior] += 'Please enter passport expiry date in DD/MM/YYYY format, for existing junior';
existing_date_message2 = true;
$(this).addClass('input-validation-error');
error = true;
}
//if (!existing_date_message1 && !existing_date_message2) {
// ejgroup[thisJunior] += 'No problems with this juniors details xxx';
//}
// add header if it there isn't one
if (ejgroup[junior_i].indexOf("") == -1 && ejgroup[junior_i] != "") {
ejgroup[junior_i] = '
Error(s) on Junior ' + junior_tabsID + ' form
' + ejgroup[junior_i];
}
ejgroup[thisJunior] += '
';
//when index less than ZERO
jr_real_index = thisJunior - 1;
if (jr_real_index < 0) {
$('.validation-summary-valid ul').prepend(ejgroup[thisJunior]);
} else {
$(ejgroup[thisJunior]).insertAfter('.validation-summary-valid ul li.junior-validation-demarker:eq(' + (thisJunior - 1) + ')');
}
}
});
//shave the end divider off the validation error list
$('.validation-summary-valid ul li').slice(-1).remove();
return error;
}
function addedJunior() {
if ($('#junior-0').length > 0) {
return true;
} else {
return false;
}
}
function isMobile() {
if (/Android|webOS|iPhone|iPad|iPod|BlackBerry/i.test(navigator.userAgent)) {return true; }
else { return false; }
}
function isMobileIOS() {
if (/iPhone|iPad|iPod/i.test(navigator.userAgent)) { return true; }
else { return false; }
}
$(document).ready(function () {
var maxIndividualFileSize = 5;//MB
// any datepicker needs to be rgistered here until there is a unifying class implemented. ch 04/07/2014
if (!isMobile()) {
$(".desktop #FANDOB1, .desktop #inwardArrivalDate, .desktop #inwardDepDate, .desktop #arrivalDate, .desktop #depDate, .desktop #DateOfBirth").datepicker({
onSelect: function (date) {
if (!validateDate($(this))) {
$(this).addClass('input-validation-error');
$(this).addClass('ebz');
}
else {
$(this).removeClass('input-validation-error');
$(this).removeClass('ebz');
}
},
onClose: function (date) {
if (!validateDate($(this))) {
$(this).addClass('input-validation-error');
}
else {
$(this).removeClass('input-validation-error');
}
},
dateFormat: "dd/mm/yy",
changeYear: true,
yearRange: "-100:+0"
});
}
// any datepicker needs to be rgistered here until there is a unifying class implemented. ch 04/07/2014
if (!isMobile()) {
$(".desktop #filterFrom").datepicker({
onSelect: function (date) {
if (!validateDate($(this))) {
$(this).addClass('input-validation-error');
$(this).addClass('ebz');
}
else {
$(this).removeClass('input-validation-error');
$(this).removeClass('ebz');
}
},
onClose: function (date) {
if (!validateDate($(this))) {
$(this).addClass('input-validation-error');
}
else {
$(this).removeClass('input-validation-error');
}
},
dateFormat: "dd/mm/yy",
changeYear: true,
yearRange: "-0:+100",
altField: "#filterStartDate",
altFormat: 'yy-mm-dd'
});
$(".desktop #filterTo").datepicker({
onSelect: function (date) {
if (!validateDate($(this))) {
$(this).addClass('input-validation-error');
$(this).addClass('ebz');
}
else {
$(this).removeClass('input-validation-error');
$(this).removeClass('ebz');
}
},
onClose: function (date) {
if (!validateDate($(this))) {
$(this).addClass('input-validation-error');
}
else {
$(this).removeClass('input-validation-error');
}
},
dateFormat: "dd/mm/yy",
changeYear: true,
yearRange: "-0:+100",
minDate: $("#filterFrom").val(),
altField: "#filterEndDate",
altFormat: 'yy-mm-dd'
});
}
if (isMobile()) {
$('.date').removeClass('hasDatepicker').attr('type', 'text');
$(".date").bind("focus", function () {
$(this).blur();
});
$('.date').datepicker('disable');
$('.date').datepicker("option", "disabled", true);
}
$('.mobile #DateOfBirth').attr('placeholder', 'Enter your date of birth in DD/MM/YYYY format...');
$("#passport-expiry, .desktop .date-junior-upgrade").datepicker({
onSelect: function (date) {
if (!validateDate($(this))) {
$(this).addClass('input-validation-error');
}
else {
$(this).removeClass('input-validation-error');
}
},
onClose: function (date) {
if (!validateDate($(this))) {
$(this).addClass('input-validation-error');
}
else {
$(this).removeClass('input-validation-error');
}
},
dateFormat: "dd/mm/yy",
changeYear: true,
yearRange: ":+13"
});
// .datepicker('setDate', '+1');
///// more juniors stuff taken
////
// ------------------------------ V A L I D A T I O N
$('.signUpSubmit #formSignUp').click(function (e) {
//console.log('formSignup submitted');
var error, first_name_message, last_name_message, date_message1, date_message2, fan_message, fan_message2 = false;
$('input').removeClass('input-validation-error');
var errors_number_old = $('.validation-summary-valid li').length;
if ($('.validation-summary-valid').hasClass('block')) {
$('.validation-summary-valid ul').empty();
}
if (!validateRequired($('#FirstName'))) {
$('.validation-summary-valid ul').append('' + getMessage('firstNameRequired', 'First name is required') + '');
$('#FirstName').addClass('input-validation-error');
error = true;
first_name_message = true;
}
if (!validateRequired($('#LastName'))) {
$('.validation-summary-valid ul').append('' + getMessage('lastNameRequired', 'Last name is required') + '');
$('#LastName').addClass('input-validation-error');
error = true;
last_name_message = true;
}
if (!validateRequired($('#Email'))) {
$('.validation-summary-valid ul').append('' + getMessage('emailRequired', 'Email is required') + '');
$('#Email').addClass('input-validation-error');
error = true;
}
if (!validateEmail($('#Email'))) {
$('.validation-summary-valid ul').append('' + getMessage('emailFormat', 'Email needs to be in format: someone@domain.org') + '');
$('#Email').addClass('input-validation-error');
error = true;
}
if (!validateDateCalcAge($('#DateOfBirth')) && addedJunior()) {
$('.validation-summary-valid ul').append('' + getMessage('dateOfBirthValidation', 'Your date of birth indicates you are under 16 years of age.
You cannot add juniors to your account if you are under 16') + '');
// disable add junior member button
$('#junior-members-add').hide();
$('#DateOfBirth').addClass('input-validation-error');
error = true;
date_message1 = true;
}
if (validateDateCalcAge($('#DateOfBirth'))){
// make sure add junior button is visible
$('#junior-members-add').show();
}
if (!validateRequired($('#DateOfBirth'))) {
$('.validation-summary-valid ul').append('' + getMessage('dateOfBirthRequired', 'Date of birth is required') + '');
$('#DateOfBirth').addClass('input-validation-error');
error = true;
date_message1 = true;
}
if (!validateDate($('#DateOfBirth'))) {
$('.validation-summary-valid ul').append('' + getMessage('dateOfBirthFormat', 'Date of birth in DD/MM/YYYY format') + '');
$('#DateOfBirth').addClass('input-validation-error');
error = true;
date_message2 = true;
}
if (!validateRequired($('#Password'))) {
$('.validation-summary-valid ul').append('' + getMessage('passwordRequired', 'Password is required') + '');
$('#Password').addClass('input-validation-error');
error = true;
}
if ($('#Password').val() && !validateRegEx($('#Password'), getMessage('passwordRegEx', '(?=.*[A-Z])(?=.*[0-9])^[a-zA-Z0-9_\-!#%+:=?@$""&\'\()\*+,\.;<>?\\\/[\]^{}|~£]{6,63}$'))) {
$('.validation-summary-valid ul').append('' + getMessage("passwordRegExMessage", "Your password must contain no spaces and be at least 6 characters long, with at least " +
"one number and one upper case letter. Only the following special characters are permitted: !\"#$%&'()*+,-./:;<=>?@[\\]^_{|}~£.") + '');
$('#Password').addClass('input-validation-error');
error = true;
}
if ($('#Password').val() != $('#PasswordConfirm').val()) {
$('.validation-summary-valid ul').append('' + getMessage('passwordMustMatch', 'Passwords must match') + '');
$('#Password').addClass('input-validation-error');
error = true;
}
if (error) {
$('.validation-summary-valid ul').append('
');
}
/* ----- validation of junior section ----- */
error = juniorValidation(error);
var errors_number_new = $('.validation-summary-valid li').length;
if (error == true) {
if (!$('.validation-summary-valid').hasClass('block')) {
$('.validation-summary-valid').addClass('block');
}
e.preventDefault();
if (errors_number_old < errors_number_new) {
equalColHeight();
}
else if (errors_number_old > errors_number_new) {
equalColHeightDecrease();
}
}
else {
$('.validation-summary-valid').slideUp('slow', function () {
$(this).removeClass('block');
equalColHeightDecrease();
});
}
/* ------------- IOS mobile date format fix --------------*/
//F0132489
//if (isMobileIOS() && error == false) {
if (isMobile() && error == false) {
//if (isMobileIOS ) {
// change all the date formats before submition so the server recieves the date as required and not as IOS tied to force it.
// 1.first change the type of all date fields to text
// 2.reformat the date
// 3.allow the form to be submitted.
$('.date').each(function (e) {
if ($(this).val() != "") {
$(this).attr('type', 'text');
iosd = $(this).val().split('-');
fd = iosd[2] + '/' + iosd[1] + '/' + iosd[0];
$(this).val(fd);
}
});
}
});
$('#submitMyAccount').click(function (e) {
var error, first_name_message, last_name_message, date_message1, date_message2, fan_message, fan_message2, expand = false;
$('input').removeClass('input-validation-error');
var errors_number_old = $('.validation-summary-valid li').length;
if ($('.validation-summary-valid').hasClass('block')) {
$('.validation-summary-valid ul').empty();
}
if (!validateRequired($('#Email'))) {
$('.validation-summary-valid ul').append('' + getMessage('emailRequired', 'Email is required') + '');
$('#Email').addClass('input-validation-error');
error = true;
}
if (!validateEmail($('#Email'))) {
$('.validation-summary-valid ul').append('' + getMessage('emailFormat', 'Email needs to be in format: someone@domain.org') + '');
$('#Email').addClass('input-validation-error');
error = true;
}
if (!validateRequired($('#Address_Address1'))) {
$('.validation-summary-valid ul').append('' + getMessage('addressRequired', 'Address is required') + '');
$('#Address_Address1').addClass('input-validation-error');
error = true;
expand = true;
}
if (!validateRequired($('#Address_City'))) {
$('.validation-summary-valid ul').append('' + getMessage('cityRequired', 'Town/City is required') + '');
$('#Address_City').addClass('input-validation-error');
error = true;
expand = true;
}
if (!validateRequired($('#Address_Postcode'))) {
$('.validation-summary-valid ul').append('' + getMessage('postcodeRequired', 'Postcode is required') + '');
$('#Address_Postcode').addClass('input-validation-error');
error = true;
expand = true;
}
/*
if (!validateRequired($('#Password'))) {
$('.validation-summary-valid ul').append('' + getMessage('passwordRequired', 'Password is required') + '');
$('#Password').addClass('input-validation-error');
error = true;
}
if (!validateRequired($('#PasswordConfirm'))) {
$('.validation-summary-valid ul').append('' + getMessage('passwordRequired', 'Password confirmation is required') + '');
$('#PasswordConfirm').addClass('input-validation-error');
error = true;
}
*/
/* ----- validation of junior section ----- */
//juniorValidation();
var jrgroup = new Object();
var junior_i = -1;
dp_num = ($('#junior-section-wrapper .date').length / 2);
// initialise datepicker validation counts
for (i = 0; i < dp_num; i++) { jrgroup[i] = ''; }
$('#junior-section-wrapper .date.new').each(function (index) {
if ($(this).closest('.tab').children('.junior-radio').prop('checked')) {
// find out which junior it is from the container class
junior_tabsID = ($(this).closest('.junior-tabs').attr('id').split('-')[1]).valueOf();
junior_tabsID++;
junior_i++;
if (!validateRequired($(this))) {
jrgroup[junior_i] += '' + getMessage('dateOfBirthRequired', 'Date of birth is required') + '';
date_message1 = true;
$(this).addClass('input-validation-error');
error = true;
}
if (!validateDate($(this)) && !date_message1) {
jrgroup[junior_i] += '' + getMessage('passportExpiryRequired', 'Please enter passport expiry date in DD/MM/YYYY format') + '';
date_message2 = true;
$(this).addClass('input-validation-error');
error = true;
}
if (validateDateCalcAge($(this)) && !date_message1 && !date_message2) {
jrgroup[junior_i] += '' + getMessage('juniorsAgeRestriction', 'Juniors must be 16 or younger') + '';
date_message3 = true;
$(this).addClass('input-validation-error');
error = true;
}
// add a header if it's not empty
if (jrgroup[junior_i] != '') {
jrgroup[junior_i] = 'Error(s) on Junior ' + junior_tabsID + ' form
' + jrgroup[junior_i];
}
}
});
junior_i = -1;
$('#junior-section-wrapper .first-name').each(function (index) {
if ($(this).closest('.tab').children('.junior-radio').prop('checked')) {
junior_tabsID = ($(this).closest('.junior-tabs').attr('id').split('-')[1]).valueOf();
junior_tabsID++;
junior_i++;
if (!validateRequired($(this))) {
first_name_message = true;
$(this).addClass('input-validation-error');
error = true;
jrgroup[junior_i] += '' + getMessage('firstNameRequired', 'First name is required') + '';
}
// add header if it there isn't one
if (jrgroup[junior_i].indexOf("") == -1 && jrgroup[junior_i] != "") {
jrgroup[junior_i] = '
Error(s) on Junior ' + junior_tabsID + ' form
' + jrgroup[junior_i];
}
}
})
junior_i = -1;
$('#junior-section-wrapper .last-name').each(function (index) {
if ($(this).closest('.tab').children('.junior-radio').prop('checked')) {
junior_tabsID = ($(this).closest('.junior-tabs').attr('id').split('-')[1]).valueOf();
junior_tabsID++;
junior_i++;
if (!validateRequired($(this))) {
last_name_message = true;
$(this).addClass('input-validation-error');
error = true;
jrgroup[junior_i] += '' + getMessage('lastNameRequired', 'Last name is required') + '';
}
// add header if it there isn't one
if (jrgroup[junior_i].indexOf("") == -1 && jrgroup[junior_i] != "") {
jrgroup[junior_i] = '
Error(s) on Junior ' + junior_tabsID + ' form
' + jrgroup[junior_i];
}
}
});
// group message for new juniors
jrp_num = -1;
$.each(jrgroup, function (key, value) {
jrp_num++;
num_li = $('.validation-summary-valid ul li').length;
$('.validation-summary-valid ul').append(value);
num_new_li = $('.validation-summary-valid ul li').length;
if ((num_new_li - num_li) == 4) {
$('.validation-summary-valid ul li').slice(-3).remove();
$('.validation-summary-valid ul').append('' + getMessage('juniorDetailsRequired', 'fill in all of the junior details please.') + '
');
} else if ((num_new_li - num_li) > 0) {
$('.validation-summary-valid ul').append('
');
}
});
//existing juniors
var ejgroup = new Object();
junior_i = -1;
$('#junior-section-wrapper .fan').each(function (index) {
junior_i++;
ejgroup[junior_i] = "";
if ($(this).closest('.tab').children('.junior-radio').prop('checked')) {
junior_tabsID = ($(this).closest('.junior-tabs').attr('id').split('-')[1]).valueOf();
junior_tabsID++;
//work out which junior this is for by it's index
thisJunior = junior_i;
if (!validateRequired($(this))) {
ejgroup[thisJunior] += '' + getMessage('fanRequired', 'FAN number is required') + '';
fan_message = true;
$(this).addClass('input-validation-error');
error = true;
}
if (!validateFan($(this)) && !fan_message) {
if (!fan_message2) {
ejgroup[thisJunior] += '' + getMessage('fanFormat', 'FAN number is between 4 and 8 characters') + '';
fan_message2 = true;
}
$(this).addClass('input-validation-error');
error = true;
}
// add a header if it's not empty
if (ejgroup[junior_i] != '') {
ejgroup[junior_i] = 'Error(s) on Junior ' + junior_tabsID + ' form
' + ejgroup[junior_i];
}
}
});
junior_i = -1;
$('#junior-section-wrapper .date.existing').each(function (index) {
junior_i++;
if ($(this).closest('.tab').children('.junior-radio').prop('checked')) {
junior_tabsID = ($(this).closest('.junior-tabs').attr('id').split('-')[1]).valueOf();
junior_tabsID++;
thisJunior = junior_i;
if (!validateRequired($(this))) {
ejgroup[thisJunior] += '' + getMessage('existingJuniorDateOfBirth', 'Date of birth is required for existing junior') + '';
existing_date_message1 = true;
$(this).addClass('input-validation-error');
error = true;
}
if (!validateDate($(this)) && !existing_date_message1) {
ejgroup[thisJunior] += '' + getMessage('passportExpiryDateFormat', 'Please enter passport expiry date in DD/MM/YYYY format, for existing junior') + '';
existing_date_message2 = true;
$(this).addClass('input-validation-error');
error = true;
}
if (!existing_date_message1 && !existing_date_message2) {
ejgroup[thisJunior] += '' + getMessage('juniorDetailsOk', 'No problems with this juniors details') + '';
}
// add header if it there isn't one
if (ejgroup[junior_i].indexOf("") == -1 && ejgroup[junior_i] != "") {
ejgroup[junior_i] = '
Error(s) on Junior ' + junior_tabsID + ' form
' + ejgroup[junior_i];
}
ejgroup[thisJunior] += '
';
//when index less than ZERO
jr_real_index = thisJunior - 1;
if (jr_real_index < 0) {
$('.validation-summary-valid ul').prepend(ejgroup[thisJunior]);
} else {
$(ejgroup[thisJunior]).insertAfter('.validation-summary-valid ul li.junior-validation-demarker:eq(' + (thisJunior - 1) + ')');
}
}
});
//shave the end divider off the validation error list
$('.validation-summary-valid ul li').slice(-1).remove();
var errors_number_new = $('.validation-summary-valid li').length;
if (expand == true) {
$('.address-box-edit').trigger('click');
}
if (error == true) {
if (!$('.validation-summary-valid').hasClass('block')) {
$('.validation-summary-valid').addClass('block');
}
e.preventDefault();
if (errors_number_old < errors_number_new) {
equalColHeight();
}
else if (errors_number_old > errors_number_new) {
equalColHeightDecrease();
}
}
else {
$('.validation-summary-valid').slideUp('slow', function () {
$(this).removeClass('block');
equalColHeightDecrease();
});
}
});
$('.myAccountSubmit #submitMyPassword').click(function (e) {
//console.log('formSignup submitted');
var error;
$('input').removeClass('input-validation-error');
if ($('.validation-summary-valid').hasClass('block')) {
$('.validation-summary-valid ul').empty();
}
if (!validateRequired($('#CurrentPassword'))) {
$('.validation-summary-valid ul').append('' + getMessage('currentPasswordRequired', 'Current password is required') + '');
$('#CurrentPassword').addClass('input-validation-error');
error = true;
}
if (!validateRequired($('#Password'))) {
$('.validation-summary-valid ul').append('' + getMessage('passwordRequired', 'Password is required') + '');
$('#Password').addClass('input-validation-error');
error = true;
}
if ($('#Password').val() && !validateRegEx($('#Password'), getMessage('passwordRegEx', '(?=.*[A-Z])(?=.*[0-9])^[a-zA-Z0-9_\-!#%+:=?@$""&\'\()\*+,\.;<>?\\\/[\]^{}|~£]{6,63}$'))) {
$('.validation-summary-valid ul').append('' + getMessage("passwordRegExMessage", "Your password must contain no spaces and be at least 6 characters long, with at least " +
"one number and one upper case letter. Only the following special characters are permitted: !\"#$%&'()*+,-./:;<=>?@[\\]^_{|}~£.") + '');
$('#Password').addClass('input-validation-error');
error = true;
}
if ($('#Password').val() != $('#PasswordConfirm').val()) {
$('.validation-summary-valid ul').append('' + getMessage('passwordMustMatch', 'Passwords must match') + '');
$('#Password').addClass('input-validation-error');
error = true;
}
if (error) {
$('.validation-summary-valid ul').append('
');
}
if (error == true) {
if (!$('.validation-summary-valid').hasClass('block')) {
$('.validation-summary-valid').addClass('block');
}
e.preventDefault();
}
else {
$('.validation-summary-valid').slideUp('slow', function () {
$(this).removeClass('block');
equalColHeightDecrease();
});
}
});
$('#passportSubmit #submitNext').click(function (e) {
var error = false;
$('input').removeClass('input-validation-error');
if ($('.validation-summary-valid').hasClass('block')) {
$('.validation-summary-valid ul').empty();
}
if ($('#PassportFile').length) {
var label = $("label[for='" + $('#PassportFile').attr('id') + "']");//validate only with label with *
if (label.text().indexOf("*") > -1) {
//file not uploaded
if (!validateRequired($('#PassportFile'))) {
$('.validation-summary-valid ul').append('Please upload a scan/copy of your passport');
$('#PassportFile').addClass('input-validation-error');
error = true;
}
else
{
//uploaded file has wrong format
if (!validateFileExtension($('#PassportFile'))) {
$('.validation-summary-valid ul').append('We accept the following file formats only: jpg, jpeg');
$('#PassportFile').addClass('input-validation-error');
error = true;
}
//check file size is below 5MB
var filesize = validateFileSize($('#PassportFile'));
if (filesize > maxIndividualFileSize) {
$('.validation-summary-valid ul').append('Image is too large, please ensure it is below 5MB');
$('#PassportFile').addClass('input-validation-error');
error = true;
}
}
}
//if ($('input[type=file]').val() != "")
//{
// if (!validateFileExtension($('#PassportFile'))) {
// $('.validation-summary-valid ul').append('We accept the following file formats only: jpg, jpeg');
// $('#PassportFile').addClass('input-validation-error');
// error = true;
// }
// //check file size is below 5MB
// if (validateFileSize($('#PassportFile')) > 5) {
// $('.validation-summary-valid ul').append('Image is too large, please ensure it is below 5MB');
// $('#PassportFile').addClass('input-validation-error');
// error = true;
// }
//}
}
if (!validateRequired($('#place-of-birth'))) {
$('.validation-summary-valid ul').append('Please enter your place of birth');
$('#place-of-birth').addClass('input-validation-error');
error = true;
}
if (!validateRequired($('#pass-nr'))) {
$('.validation-summary-valid ul').append('Please enter your passport number');
$('#pass-nr').addClass('input-validation-error');
error = true;
}
if (!validateDate($('#passport-expiry'))) {
$('.validation-summary-valid ul').append('Please enter passport expiry date in DD/MM/YYYY format');
$('#passport-expiry').addClass('input-validation-error');
error = true;
}
if (!validateDateFuture($('#passport-expiry'))) {
$('.validation-summary-valid ul').append('Passport expiry date must be in the future');
$('#passport-expiry').addClass('input-validation-error');
error = true;
}
if (error == true) {
if (!$('.validation-summary-valid').hasClass('block')) {
$('.validation-summary-valid').addClass('block');
}
e.preventDefault();
equalColHeight();
}
else {
$('.validation-summary-valid').slideUp('slow', function () {
$(this).removeClass('block');
equalColHeightDecrease();
});
}
});
$('#upgradeJuniorSubmit #submitNext').click(function (e) {
var error, date_message1, date_message2, pass_nr_message, photofile_message1, photofile_message2, photofile_message3, passportfile_message1, passportfile_message2, passportfile_message3 = false;
var totalUpdatedJuniorFilesSize = 0;//in MB
//var maxIndividualFileSize = 5;//MB
var maxTotalUploadedFilesSize = 20; //MB
$('input').removeClass('input-validation-error');
var errors_number_old = $('.validation-summary-valid li').length;
if ($('.validation-summary-valid').hasClass('block')) {
$('.validation-summary-valid ul').empty();
}
$('.date').each(function (index) {
if ($(this).closest('.read-write').siblings('.read-only').hasClass('active')) {
if (!validateDate($(this))) {
if (!date_message1) {
$('.validation-summary-valid ul').append('Please enter passport expiry date in DD/MM/YYYY format');
date_message1 = true;
}
$(this).addClass('input-validation-error');
error = true;
}
if (!validateDateFuture($(this))) {
if (!date_message2) {
$('.validation-summary-valid ul').append('Passport expiry date must be in the future');
date_message2 = true;
}
$(this).addClass('input-validation-error');
error = true;
}
}
});
$('.pass-nr').each(function (index) {
if ($(this).closest('.read-write').siblings('.read-only').hasClass('active')) {
if (!validateRequired($(this))) {
if (!pass_nr_message) {
$('.validation-summary-valid ul').append('Please enter your passport number');
pass_nr_message = true;
}
$(this).addClass('input-validation-error');
error = true;
}
}
});
$('.photofile').each(function (index) {
if ($(this).closest('.read-write').siblings('.read-only').hasClass('active') && $(this).is(':visible')) {
if ($(this).hasClass('validate'))
{
if (!validateRequired($(this))) {
if (!photofile_message1) {
$('.validation-summary-valid ul').append('Please upload a photo');
photofile_message1 = true;
}
$(this).addClass('input-validation-error');
error = true;
}
else
{
if (!validatePhotoFileExtension($(this))) {
if (!photofile_message2) {
$('.validation-summary-valid ul').append('We accept the following photo file formats only: jpg, jpeg, png, gif');
photofile_message2 = true;
}
$(this).addClass('input-validation-error');
error = true;
}
//check file size is below 5MB
var filesize = validateFileSize($(this));
totalUpdatedJuniorFilesSize = totalUpdatedJuniorFilesSize + filesize;
if (filesize > maxIndividualFileSize ) {
if (!photofile_message3) {
$('.validation-summary-valid ul').append('Photo Image is too large, please ensure it is below 5MB');
photofile_message3 = true;
}
$(this).addClass('input-validation-error');
error = true;
}
}
}
}
});
$('.passportfile').each(function (index) {
if ($(this).closest('.read-write').siblings('.read-only').hasClass('active') && $(this).is(':visible')) {
if ($(this).hasClass('validate'))
{
if (!validateRequired($(this))) {
if (!passportfile_message1) {
$('.validation-summary-valid ul').append('Please upload a passport copy/scan');
passportfile_message1 = true;
}
$(this).addClass('input-validation-error');
error = true;
}
else
{
//check uploaded file extension
if (!validateFileExtension($(this))) {
if (!passportfile_message2) {
$('.validation-summary-valid ul').append('We accept the following passport file formats only: jpg, jpeg');
passportfile_message2 = true;
}
$(this).addClass('input-validation-error');
error = true;
}
//check file size is below 5MB
var filesize = validateFileSize($(this));
totalUpdatedJuniorFilesSize = totalUpdatedJuniorFilesSize + filesize;
if (filesize > maxIndividualFileSize) {
if (!passportfile_message3) {
$('.validation-summary-valid ul').append('Passport Image is too large, please ensure it is below 5MB');
passportfile_message3 = true;
}
$(this).addClass('input-validation-error');
error = true;
}
}
}
}
});
//alert("totalUpdatedJuniorFilesSize" + totalUpdatedJuniorFilesSize);
////Sum total of all the images on juniors page should not be more than 20 MB.
if (totalUpdatedJuniorFilesSize > maxTotalUploadedFilesSize)
{
$('.validation-summary-valid ul').append('Sum total of size of all the uploaded images on this page should not be more than 20 MB');
$(this).addClass('input-validation-error');
error = true;
}
var errors_number_new = $('.validation-summary-valid li').length;
if (error == true) {
if (!$('.validation-summary-valid').hasClass('block')) {
$('.validation-summary-valid').addClass('block');
}
e.preventDefault();
if (errors_number_old < errors_number_new) {
equalColHeight();
}
else if (errors_number_old > errors_number_new) {
equalColHeightDecrease();
}
}
else {
$('.validation-summary-valid').slideUp('slow', function () {
$(this).removeClass('block');
equalColHeightDecrease();
});
}
});
$('#declarationSubmit #submitNext').click(function (e) {
var error = false;
var error1 = false;
if ($('.validation-summary-valid').hasClass('block')) {
$('.validation-summary-valid ul').empty();
}
if (!validateRequiredRadio($('#declaration'))) {
$('.validation-summary-valid ul').append('Please select answer to the declaration');
$('#declaration').addClass('redBorder');
$('#declaration').addClass('padding-left');
error = true;
}
if (!validateRequiredRadio1($('#declaration1'))) {
$('.validation-summary-valid ul').append('Please select answer to the declaration');
$('#declaration1').addClass('redBorder');
$('#declaration1').addClass('padding-left');
error1 = true;
}
if ((error == true) || (error1 == true)) {
if (!$('.validation-summary-valid').hasClass('block')) {
$('.validation-summary-valid').addClass('block');
}
e.preventDefault();
equalColHeight();
}
else {
$('.validation-summary-valid').slideUp('slow', function () {
$('#declaration').removeClass('redBorder');
$('#declaration').removeClass('padding-left');
$('#declaration1').removeClass('redBorder');
$('#declaration1').removeClass('padding-left');
equalColHeightDecrease();
});
}
});
$('body').on('focus', '.input-text, .ui-datepicker-year', function () {
if ($(this).hasClass('input-validation-error')) {
showTooltip($(this));
}
if ($(this).hasClass('ui-datepicker-year') || $(this).hasClass('hasDatepicker')) {
// do nothing and then some
} else {
//determine which id we're looking for by index
//alert($(this).closest('.junior-tabs').attr('id'));
$('.hasDatepicker').datepicker('hide');
}
});
$('.sbHolder').blur(function () {
if ($(this).children('ul').children('li:eq(0)').children('a').hasClass('sbFocus')) {
$(this).addClass('input-validation-error');
} else {
$(this).removeClass('input-validation-error');
}
});
$('body').on('blur', '.input-text', function () {
//if($(this).hasClass('hasDatepicker')) {
//alert($(this).closest('.junior-tabs').attr('id'));
//$('#DateOfBirth-Junior-0').datepicker('hide');
//}
if ($(this).hasClass('errorClass')) {
var error, errorRequired, errorEmail, errorFan, errorDate = false;
if ($(this).hasClass('required')) {
if (!(validateRequired($(this)))) {
hideTooltip($(this));
errorRequired = false;
}
else {
errorRequired = true;
}
}
if ($(this).hasClass('email')) {
if (!(validateEmail($(this)))) {
hideTooltip($(this));
errorEmail = false;
}
else {
errorEmail = true;
}
}
if ($(this).hasClass('fan')) {
if (!(validateFan($(this)))) {
hideTooltip($(this));
errorFan = false;
}
else {
errorFan = true;
}
}
if ($(this).hasClass('date')) {
if (!(validateDate($(this)))) {
hideTooltip($(this));
errorDate = false;
}
else {
errorDate = true;
}
}
if (($(this).hasClass('required')) && (!$(this).hasClass('email')) && (!$(this).hasClass('fan'))) {
if (errorRequired) {
error = true;
}
}
if (($(this).hasClass('required')) && ($(this).hasClass('email')) && (!$(this).hasClass('fan'))) {
if ((errorRequired) && (errorEmail)) {
error = true;
}
}
if (($(this).hasClass('required')) && ($(this).hasClass('fan')) && (!$(this).hasClass('email'))) {
if ((errorRequired) && (errorFan)) {
error = true;
}
}
if (($(this).hasClass('required')) && ($(this).hasClass('date'))) {
if ((errorRequired) && (errorDate)) {
error = true;
}
}
if (($(this).hasClass('required')) && ($(this).hasClass('email')) && ($(this).hasClass('fan'))) {
if (((errorRequired) && (errorEmail)) || ((errorRequired) && (errorFan))) {
error = true;
}
}
if (error) {
$('#EmailOrFan').removeClass('errorClass, input-validation-error');
}
}
else if (!$(this).is('.input-validation-error, .errorClass')) {
var error, errorRequired, errorEmail, errorFan, errorDate = false;
if ($(this).hasClass('required')) {
if (!(validateRequired($(this)))) {
hideTooltip($(this));
errorRequired = false;
}
else {
errorRequired = true;
}
}
if ($(this).hasClass('email')) {
if (!(validateEmail($(this)))) {
hideTooltip($(this));
errorEmail = false;
}
else {
errorEmail = true;
}
}
if ($(this).hasClass('fan')) {
if (!(validateFan($(this)))) {
hideTooltip($(this));
errorFan = false;
}
else {
errorFan = true;
}
}
if ($(this).hasClass('date')) {
if (!(validateDate($(this)))) {
hideTooltip($(this));
errorDate = false;
}
else {
errorDate = true;
}
}
if ((!$(this).hasClass('required')) && (!$(this).hasClass('email')) && (!$(this).hasClass('fan'))) {
error = true;
}
if (($(this).hasClass('required')) && (!$(this).hasClass('email')) && (!$(this).hasClass('fan'))) {
if (errorRequired) {
error = true;
}
}
if (($(this).hasClass('required')) && ($(this).hasClass('email')) && (!$(this).hasClass('fan'))) {
if ((errorRequired) && (errorEmail)) {
error = true;
}
}
if (($(this).hasClass('required')) && ($(this).hasClass('fan')) && (!$(this).hasClass('email'))) {
if ((errorRequired) && (errorFan)) {
error = true;
}
}
if (($(this).hasClass('required')) && ($(this).hasClass('date'))) {
if ((errorRequired) && (errorDate)) {
error = true;
}
}
if (($(this).hasClass('required')) && ($(this).hasClass('email')) && ($(this).hasClass('fan'))) {
if (((errorRequired) && (errorEmail)) || ((errorRequired) && (errorFan))) {
error = true;
}
}
if (error) {
$('#EmailOrFan').removeClass('errorClass, input-validation-error');
}
else {
$(this).addClass('input-validation-error');
}
}
});
// any datepicker until unifying class is implemented !!!
$('#FANDOB1, #inwardArrivalDate, #inwardDepDate, #arrivalDate, #depDate, #DateOfBirth, #passport-expiry, .date-junior-upgrade, #ui-datepicker-div').on('click', function (e) {
//$('body').on('click', '.date', function (e) {
/*
if (!$('#ui-datepicker-div').is(':visible')) {
$('#ui-datepicker-div').show();
}
e.stopPropagation();
*/
});
$(document).on('click', function (e) {
/*
if ($('#ui-datepicker-div').is(':visible')) {
$('#ui-datepicker-div').hide();
}
e.stopPropagation();
*/
});
/////// more junior stuff taken
//////
$('.select-box-wrapper').on('click', '.sbOptions a', function () {
var tempCountry = $('.sbSelector').text();
if ((tempCountry == 'England') || (tempCountry == 'Åland Islands') || (tempCountry == 'Wales') || (tempCountry == 'Scotland') || (tempCountry == 'United Kingdom') || (tempCountry == 'Northern Ireland')) {
$(".postcode").prop('disabled', false);
$(".postcode").removeClass('disabled');
}
else {
$(".postcode").prop('disabled', true);
$(".postcode").addClass('disabled');
$(".postcode").val('');
}
});
$('.country').change(function () {
// $('.postcode').prop('disabled', true).addClass('disabled').val('');
});
//function inputPhotoInit(element) {
// var el_id = '#';
// el_id += $(element).attr('id');
// var widthPhotoInput = $(el_id).siblings('.file-upload-inner').children('#input-upload').outerWidth();
// $(el_id).outerWidth(widthPhotoInput);
//}
$('.address-box-edit').click(function (e) {
e.preventDefault();
$('#address-readonly').slideUp('slow');
$(this).closest('.formRow').siblings('.expand-view').slideDown('slow', function () {
equalColHeight();
});
$('#HideEditPanel').val(false);
});
$('.ui-dialog-titlebar').not('.ui-dialog-titlebar-close').on('click', function (e) {
e.preventDefault();
});
// ------------------------------ J U N I O R S E C T I O N
/////more junior stuff taken
/////
$('#junior-members-trigger a').click(function (e) {
e.preventDefault();
addJuniorMember(0);
$('#junior-members-trigger').removeClass('active');
$('#junior-members-add').addClass('active');
$('#junior-section-wrapper').addClass('active');
equalColHeight();
});
$('#junior-section-wrapper').on('click', '#junior-members-add .btn-2', function (e) {
e.preventDefault();
//alert('add junior');
var last_id = getLastJuniorId();
if (isNaN(last_id)) {
//we've got existing members but no new ones
//use -1 to make new member 0
last_id = -1;
}
addJuniorMember(last_id + 1); // display new junior forms
/*
$('#DateOfBirthValidation-Junior-' + (last_id + 1) + '.juniordate, #DateOfBirth-Junior-' + (last_id + 1) + '.juniordate ').on('click', function (e) {
if (!$('#ui-datepicker-div').is(':visible')) {
$('#ui-datepicker-div').show();
}
e.stopPropagation();
});
$('#DateOfBirthValidation-Junior-' + (last_id + 1) + '.juniordate, #DateOfBirth-Junior-' + (last_id + 1) + '.juniordate ').click(function (event) {
event.stopPropagation();
});
*/
addJuniorMemberContent((last_id + 1), 'new-junior-member'); // intilialise the new juniors datepickers
var members_length = getNumberOfJuniors();
toggleAddMoreMembers(members_length + 1);
equalColHeight();
});
$('#junior-section-wrapper').on('click', '.junior-members-remove a', function (e) {
e.preventDefault();
//need to add fucntionality to check whether using is existing or not and change whether to confirm
//var deleteUser = confirm("This will remove user ")
//if (deleteUser) {
// $(this).closest('.junior-tabs').slideUp('slow').remove();
// var members_length = getNumberOfJuniors();
// toggleAddMoreMembers(members_length);
// toggleMembersTrigger(members_length);
// juniorMemberListRefresh();
// equalColHeightDecrease();
//}
var junior_tabID = $(this).attr('rel');
var temp = $(this);
$("#dialog-confirm" ).dialog({
resizable: false,
dialogClass: 'delete-junior',
draggable: false,
height: 140,
weight: 400,
modal: true,
buttons: {
"Remove": function () {
/*
$(temp).closest('.junior-tabs').slideUp('slow').remove();
var members_length = getNumberOfJuniors();
toggleAddMoreMembers(members_length);
//toggleMembersTrigger(members_length);
juniorMemberListRefresh();
equalColHeightDecrease();
$(this).dialog("close");
*/
processRemoveJunior(junior_tabID);
$(this).dialog("close");
},
Cancel: function() {
$( this ).dialog( "close" );
}
}
});
});
if(getNumberOfJuniors() > 4) {
$('#junior-members-add-new').hide();
}
$('body').on('change', '.junior-radio.btn-1', function () {
$('.hasDatepicker').datepicker('hide');
if ($(this).closest('.formRow').siblings('.content-wrapper').length) {
//$(this).closest('.formRow').siblings('.content-wrapper').slideUp('fast', function () {
$(this).closest('.formRow').siblings('.content-wrapper').remove();
var id = parseInt(getCurrentJuniorId(this));
addJuniorMemberContent(id, 'new-junior-member');
// });
}
else {
id = $(this).siblings('.content').children('.junior-wrapper').children('.content-wrapper').children('.formRow:eq(1)').children('.labelWrapper').children('input').attr('id').split('-')[2];
addJuniorMemberContent(id, 'new-junior-member');
//$('#junior-members-add').addClass('active');
var members_length = getNumberOfJuniors();
toggleAddMoreMembers(members_length);
equalColHeight();
}
});
$('body').on('change', '.junior-radio.btn-2', function () {
$('.hasDatepicker').datepicker('hide');
if ($(this).closest('.formRow').siblings('.content-wrapper').length) {
// $(this).closest('.formRow').siblings('.content-wrapper').slideUp('fast', function () {
$(this).closest('.formRow').siblings('.content-wrapper').remove();
var id = parseInt(getCurrentJuniorId(this));
addJuniorMemberContent(id, 'link-junior-member');
// });
}
else {
var id = parseInt(getCurrentJuniorId(this));
addJuniorMemberContent(id, 'link-junior-member');
//$('#junior-members-add').addClass('active');
var members_length = getNumberOfJuniors();
toggleAddMoreMembers(members_length);
equalColHeight();
}
});
$('#upgrade-junior-members .read-only li:first-child + li + li + li + li').click(function () {
$(this).closest('.read-only').toggleClass('active');
$(this).closest('.read-only').siblings('.read-write').toggleClass('active');
juniorMemberCountUpdate();
if ($(this).closest('.read-only').hasClass('active')) {
equalColHeight();
} else {
equalColHeightDecrease();
}
});
if ($('.cancelMsg').length && $('.social-signin-container').length) {
cancelMsg = $('.cancelMsg:eq(0)').html();
$('.cancelMsg:eq(0)').remove();
$('.social-signin-container:eq(0)').append("" + cancelMsg + "
");
}
if ($('.social-signin-container.top').length) {
$('.england-supporters.signin.account, .signup.account').addClass('social');
}
// ------------------------------ ACCESSIBLILTY
$('.hasDatepicker').each(function (index) {
$(this).parent().siblings('.tooltip').after('Use CTRL+ARROW KEYS to navigate days and months');
});
$('.aqm-hover').hover(
function () {
i = $(this).index();
$('.datepicker-instructions-text:eq('+i+')').fadeIn();
},
function () {
i = $(this).index();
$('.datepicker-instructions-text:eq(' + i + ')').fadeOut();
});
$('.aqm-hover').focus(function () {
i = $(this).index();
$('.datepicker-instructions-text:eq(' + i + ')').fadeIn();
});
$('.aqm-hover').blur(function () {
i = $(this).index();
$('.datepicker-instructions-text:eq(' + i + ')').fadeOut();
});
// ------------------------------ I N I T
$('.adaptive-checkbox input[type=checkbox]').prettyCheckable();
$('#DeclarationAnswer_Yes, #DeclarationAnswer_No').prettyCheckable({
customClass: 'margin-right'
});
$('#DeclarationAnswer1_Yes, #DeclarationAnswer1_No').prettyCheckable({
customClass: 'margin-right'
});
if ($('#upgrade-junior-members').length) {
upgradeListInit();
//datepickerInit('.date-junior-upgrade', ':+10');
}
if (!$('#linked-juniors-wrapper .junior-tabs').length) {
}
else {
$('#linked-juniors').addClass('active');
}
dropBoxInit();
if ($('.country').length > 0) {
countryDropBoxInit();
}
if ($('.ethnicBackgroundSelect').length > 0) {
$('.ethnicBackgroundSelect').selectbox();
$('._disabilitySelect').selectbox();
}
// IE8 & IE9 placeholder
if ($('.desktop').length) {
//$('input, textarea').placeholder();
}
//if ($('#cropping-image').length == 0) {
// equalColHeight();
//}
$('input[type=radio][name=disabled]').click(function(e) {
var disabled = $(this).val();
if (disabled == "yes") {
$('.disibilityContainer').show();
} else {
$("#SelectedDisabilityType").val('DISUNKNOWN');
$('.disibilityContainer').hide();
}
});
$('.btn-upload').click(function (e) {
if ($(this).siblings('.input-upload').val() == '') {
return false;
}
});
if ($('.about-registration h3').length > 0) {
if ($('.about-registration h3').is(':empty')) {
$('.about-registration').hide();
}
}
/* Photo Upload Ends */
if ($('.myaccount').length) {
$('.grid_1').addClass('myaccount blue-branding');
}
if ($('.account.blue-branding').length) {
$('.grid_1').addClass('blue-branding');
}
if ($('.password-reset').length) {
$('.grid_1').addClass('blue-branding');
}
if ($('.cancelMsg').length) {
$('.grid_1').addClass('cancelMsgWrapper');
}
equalColHeight();
//Juniors.Init();
});
$(window).load(function () {
//if ($('#cropping-image').length > 0) {
equalColHeight();
//}
if ($('#upload-preview').length == 1) {
var imgHeight = $('#upload-preview').height();
var btnHeight = $('#btn-upload').outerHeight();
var marginTop = (imgHeight / 2) - (btnHeight / 2);
$('#btn-upload').css('margin-top', marginTop).css('opacity','1');
}
$('.jcrop-tracker').on('click', function (e) {
return false;
e.preventDefault();
});
$("input, .sbHolder, .aqm-hover").each(function (i) {
$(this).attr('tabindex', i + 1);
});
if ($('.mobile').length) {
//$('input[type="text"].date').attr('type', 'date');
$('input.date').before('Format (DD / MM / YYYY)');
//$('#formSignUp').css('background', '#00ffff');
}
});