Are you sure you want to change your ticket selection ?
`;
$('.ticket__totalBox.small-discout-box').after(errorDiv);
return false;
}
// Check if we have existing ticket details to validate against
if(userDetailsEditTicket){
// Only validate quantities if V5 API discounts and quantity restrictions are enabled
if(enableV5ApiDiscount){
$("#LoadingBar").show();
// Initialize upgrade/downgrade handler
const upgradeDowngradeObject = new UpgradeDowngradeClass(
"https://otcybersummit.isa.org/rest/v5/registration/paymentSummary/upgradeDowngrade/getAmountPaid"
);
// Compare quantities between original and new selections
// Returns false if quantities don't match to prevent invalid upgrades
if(typeof enableTicketUpgradeRestrictQty !== 'undefined' && enableTicketUpgradeRestrictQty !='0'){
if(!upgradeDowngradeObject.ticketUpgradeRestrictQtyCheck(multipleTicketPackageListOnly, TicketPackages)) {
$('#error_message_addons').remove();
var errorDiv = '
Changing the quantity of packages is restricted. Please contact support for assistance.
';
$('.ticket__totalBox.small-discout-box').after(errorDiv);
// Hide error message after 5 seconds
setTimeout(function() {
$('.ticket__totalBox.small-discout-box').next('.alert-danger').remove();
}, 5000);
$("#LoadingBar").hide();
return false;
}
}
if(typeof enableTicketUpgradeRestrictAddonsQtyNumber !== 'undefined' && enableTicketUpgradeRestrictAddonsQtyNumber !='0'){
if(!upgradeDowngradeObject.ticketUpgradeRestrictAddonsQtyNumber(multipleTicketPackageListOnly, TicketPackages)) {
$('#error_message_addons').remove();
var errorDiv = '
Changing the quantity of add-ons is restricted. Please contact support for assistance.
';
$('.ticket__totalBox.small-discout-box').after(errorDiv);
setTimeout(function() {
$('.ticket__totalBox.small-discout-box').next('.alert-danger').remove();
}, 5000);
$("#LoadingBar").hide();
return false;
}
}
$("#LoadingBar").hide();
}
}
if (parseInt(isTicket)) {
if(fromBackBtn && tcktModifiedFromBackBtn){
$('.packageBlock').html('');
$('.user-links input').each(function(){
$(this).val('');
});
if (pageBreakSummaryCount > 0) {
$('.packageContainer > .aPackage').remove();
}
}
if (isTicket && (isGroupBypassMember && isGroupRegistrationField) && ! multipleTicketEdit) {
$('.packageBlock').css("visibility", "hidden");
$('.group_registration_label').css("display", "none");
$('.group-reg-block').css("height", "0px");
$('.packageBlock').css({
height: '0px', // set to your desired height
width: '0px' // set to your desired width
});
/* VFE-60354 - Group Reg - Hide it when package is one */
} else {
$('.packageBlock').css("visibility", "visible");
$('.group_registration_label').css("display", "block");
$('.group-reg-block').css("height", "auto");
$(this).css({
height: '',
width: ''
});
/* VFE-60354 - Group Reg - Hide it when package is one */
}
if ($(".ticketSelbtn")[0]) {
flag = 0;
$(".ticketSelbtn").each(function () {
if ($(this).css("display") == "none") {
flag = flag + 1;
}
});
if (flag == 0) {
$('#packages-error').remove();
$('.ticket__content h3').after('
Please Select Package.
');
$('#packages-error').fadeOut(20000);
return false;
} else {
$('#packages-error').remove();
if (isTicket && !parseInt(isTicketTop)) {
if(paymentMethodCount != 1) {
$('.order__summary.ordsum').show();
}else{
$('.paynbtn.single-pay').show();
}
$('.order-now-button1').hide();
}
}
}
$(this).prop('disabled', true);
total_sum = 0;
count_start = 0;
// simplifiedTicketAssignment=1;
// console.log($('.qty_package').length);
var count = 1;
// Start Generation Here
$(document).find('.qty_package').each(function () {
if (($(this).val() != '' && $(this).val() != 0) && ((fromBackBtn && tcktModifiedFromBackBtn) || (!fromBackBtn && !tcktModifiedFromBackBtn))) {
total_sum = parseInt(total_sum) + parseInt($(this).val());
var packageHTML = '';
if(simplifiedTicketAssignment){
// console.log(total_sum);
var total_sum_faker = (count -1) + parseInt($(this).val()); // Example total sum
var savedPackage = 1;
var buyer = 0;
var first_name = 'Not Set';
var last_name = '';
var email = 'Not Set';
var addons = 'Not Set';
while (count ' +
'
' +
'
' +
'
Name ' + first_name + ' ' + last_name + '
' +
'
' +
'
' +
'
' +
'
' +
'
';
count++;
}
}
let assignLink = '';
let countItem = '';
let ticketAssigned = '';
if (!simplifiedTicketAssignment) {
assignLink = '
Assign' +
'
' +
' Add a New User ' +
' ' +
' ';
countItem='
' + $(this).closest('.ticket__item').find('.ticket__desc__text h5').text() + ' (0/' + $(this).val() + ') ';
}else{
assignLink = '
Assign to Self';
countItem='
' + $(this).closest('.ticket__item').find('.ticket__desc__text h5').text() + ' ';
ticketAssigned='
0/' + $(this).val() + ' tickets assigned ';
}
// Start of Selection
var packageId = $(this).prev().data('id');
var oriTotal = $(this).val();
$('.packageBlock').append('
' +
'
' +
countItem +
'
' +
assignLink +
'
' +
'
' +
ticketAssigned +
packageHTML +
'
');
if(TicketPackages[packageId]){
var packagedetails= TicketPackages[packageId];
if(packagedetails && packagedetails['isDonation'] ==1){
$('#packageContainerBlock'+packageId).hide();
}
}
count_start = total_sum;
}
});
// plce new data here nomi
if(userDetailsEditTicket){
if(byPassGroupMember){
$('#bypass').closest('div').hide();
}
var countSelector=count_start+1;
$('input[name="email"]').attr('readonly', true);
// var countSelector=0;
// start
var ticketAddonsQtyArr = {};
$.each(userDetailsEditTicket, function(packageId, packageArray) {
if(!isNaN(parseFloat(packageId)) && isFinite(packageId)) {
if (TicketPackages.hasOwnProperty(packageId) && TicketPackages[packageId].hasOwnProperty('pkg_qty')) {
var packageQtyEdit = TicketPackages[packageId]['pkg_qty'];
var packageCount = 0;
var countCheck = 1;
$.each(packageArray, function (index, packageDetails) {
if (parseInt(packageQtyEdit) 0) {
if (TicketPackages[packageId] && TicketPackages[packageId][index] && TicketPackages[packageId][index]['addons_qty']) {
ticketAddonsQtyArr[packageId][index] = TicketPackages[packageId][index]['addons_qty'];
}
}
});
}
}
}
});
}
}
});
//end
$.each(userDetailsEditTicket, function(packageId, packageArray) { // Data from DB
if(!isNaN(parseFloat(packageId)) && isFinite(packageId)) {
if (TicketPackages.hasOwnProperty(packageId) && TicketPackages[packageId].hasOwnProperty('pkg_qty')) { // current selection
if(TicketPackages[packageId].hasOwnProperty('isDonation') && TicketPackages[packageId].isDonation != 1){
var packageQtyEdit = TicketPackages[packageId]['pkg_qty'];
var packageCount = 0;
var countCheck = 1;
$.each(packageArray, function (index, packageDetails) {
if (parseInt(packageQtyEdit) 0) {
if (parseInt(ticketAddonsQtyArr[packageId][index]) > 0) {
if (packageDetails.field_addons_qty[index]) {
if (ticketAddonsQtyArr[packageId][index] > 0) {
if (packageDetails.field_addons_qty[index] && packageDetails.field_addons_qty[index] > 1) {
var quantity = packageDetails.field_addons_qty[index];
var ticketAddonsQty = ticketAddonsQtyArr[packageId][index];
var addonsCount = ticketAddonsQty;
for (var i = 0; i ' + addon + '';
ticketAddonsQtyArr[packageId][index] = ticketAddonsQtyArr[packageId][index] - 1;
AddonsArray.push(index);
}
} else {
if (allAddonsName !== '') {
allAddonsName += ', ';
jsonfield_addons += ',';
}
jsonfield_addons += index;
allAddonsName += addon;
allAddonsNameBox += '
' + addon + ' ';
ticketAddonsQtyArr[packageId][index] = ticketAddonsQtyArr[packageId][index] - 1;
AddonsArray.push(index);
}
}
}
}else{
console.log('no addons');
}
}
}
});
if (packageDetails && packageDetails.userDetails && typeof packageDetails.userDetails === 'object') {
// if (parseInt(ticketAddonsQtyArr[packageId][index]) > 0) {
let newAddonsArr = [...AddonsArray];
if (Array.isArray(AddonsArray) && AddonsArray.length > 0) {
// Copying AddonsArray to newAddonsArr
packageDetails.userDetails.field_addons = newAddonsArr;
}else{
packageDetails.userDetails.field_addons = newAddonsArr;
packageDetails.field_addons = {};
packageDetails.field_addons_qty = {};
}
// }
}
}
var buyer = 0;
if (buyer == 0) {
var emailInput = $('input[name="email"]');
if (emailInput.length > 0) {
if (email == emailInput.val().trim()) {
buyer = 1;
}
}
}
var packageContainerSelector = '#packageContainerBlock' + packageId;
var packageContainer = $(packageContainerSelector, window.parent.document);
var ori_total = packageContainer.find('.packageContainer__head').data("ori-total");
var total = packageContainer.find('.packageContainer__head').data("total");
var savedPackage = packageContainer.data('package');
var count = parseInt(packageContainer.find('.packageContainer__head').attr("data-count")) + 1;
packageContainer.find('.packageContainer__head').attr("data-count", count);
if (total === count) {
packageContainer.find('.packageContainer__head .dropdown').hide();
}
var size = packageContainer.find('> .aPackage').length + 1;
if (simplifiedTicketAssignment) {
var package_name = packageContainer.find('> span.assigned-tickets').text().replace(/\d+\/\d+ tickets assigned/, '') + ' ' + size + '/' + ori_total + ' tickets assigned';
// var package_name = packageContainer.find('.packageContainer__head > h3').text().replace(/\d+\/\d+ tickets assigned/, '') + ' ' + size + '/' + ori_total + ' tickets assigned';
packageContainer.find('> span.assigned-tickets').text(package_name);
var package_name = packageContainer.find('> span.assigned-tickets').text().replace(/\d+\/\d+ tickets assigned/, '') + ' ' + size + '/' + ori_total + ' tickets assigned';
packageContainer.find('> span.assigned-tickets').text(package_name);
} else {
var package_name = packageContainer.find('.packageContainer__head > h3').text().replace(/\s*\(\d+\/\d+\)/, '') + ' (' + size + '/' + ori_total + ')';
packageContainer.find('.packageContainer__head > h3').text(package_name);
var package_name = packageContainer.find('.packageContainer__head > h3').text().replace(/\s*\(\d+\/\d+\)/, '') + ' (' + size + '/' + ori_total + ')';
packageContainer.find('.packageContainer__head > h3').text(package_name);
}
var selector = '.user-num' + countSelector;
packageContainer.append('
' +
'
Name ' + firstName + ' ' + lastName + '
' +
'
Addons ' + allAddonsNameBox + '
' +
'
');
if (packageDetails.userDetails.current_url) {
var url = packageDetails.userDetails.current_url;
var decodedUrl = decodeURIComponent(url.replace(/&/g, '&'));
var urlObject = new URL(decodedUrl);
var newGroupValue = 'user' + countSelector; // Example new value
urlObject.searchParams.set('group', newGroupValue);
var updatedUrl = urlObject.toString();
var encodedUrl = updatedUrl.replace(/&/g, '&');
packageDetails.userDetails.current_url = encodedUrl;
}
var encodedJsonData = JSON.stringify(packageDetails.userDetails);
$('#user' + countSelector).val(encodedJsonData);
countSelector++;
countCheck++;
}
}
});
}
}
}
});
// Remaining addons fixed
var total_data={};
$.each(TicketPackages, function (packageId, package) {
if(!isNaN(parseFloat(packageId)) && isFinite(packageId)) {
total_data[packageId] = {};
// Iterate through each item/package addon
$.each(package, function (key, item) {
if (key !== 'pkg_price' && key !== 'total_price' && key !== 'tax' && key !== 'pkg_qty' && key !== 'symbol') {
if (item.id && item.addons_qty) {
total_data[packageId][item.id] = item.addons_qty;
}
}
});
}
});
const used_data = Object.assign({}, total_data);
$('.packageContainer .aPackage', window.parent.document).each(function () {
var $package = $(this);
var packageId = $package.attr("data-package");
var addonsArray = $package.attr("data-addons");
// if(package_id == savedPackage){
addonsArray = addonsArray.split(',');
$.each(addonsArray, function (key, value){
value=parseInt(value);
used_data[packageId][value]=parseInt(used_data[packageId][value]) - 1;
});
// }
});
var remainingAddons="";
var remainingIds="";
$.each(used_data, function (packageId, package) {
if(!isNaN(parseFloat(packageId)) && isFinite(packageId)) {
$.each(package, function (key, item) {
for(i=0;i
{
// // Find the parent div with class "radio" and hide it
// const parentDiv = input.closest('.radio');
// if (parentDiv) {
// parentDiv.style.display = 'none';
// }
// });
setTimeout(function () {
$(document).find('#dropdown-btn').click();
$('.dropdown-menu.dropdown-menu-main.dropdown-menu-right').css('display', 'none');
},1000);
var serializedObject = JSON.stringify(TicketPackages);
localStorage.setItem("TicketPackages", serializedObject);
// new code //
var totalElement = document.querySelector('.totalcountT p[data-total]');
if (totalElement) {
var totalText = totalElement.textContent;
var totalNumber = parseFloat(totalText.replace(/[^0-9.]/g, ''));
if(totalNumber > 0){
$('.zerobb').css('display', 'none');
}
}
if (EditProfilePaymentMethodId) {
var pmnt_fld_name = $('.pmnt_fld').attr('name');
$('select[name="' + pmnt_fld_name + '"]').val(EditProfilePaymentMethodId).change();
$('input[type="radio"][value="' + EditProfilePaymentMethodId + '"]').prop('checked', true);
var dataMethod = $('input[name="optionsRadios"][value="' + EditProfilePaymentMethodId + '"]').attr('data-method');
if (dataMethod == 13 && stripeConnectElement) {
setTimeout(function () {
$('#payment-element').show();
}, 2000);
}
}
// donation package Auto assign to parent
setTimeout(function () {
$('input[name="first_name"], input[name="last_name"], input[name="email"]').change();
}, 2000);
//
}else{
// donation package Auto assign to parent
setTimeout(function () {
$('input[name="first_name"], input[name="last_name"], input[name="email"]').change();
}, 2000);
const totalPkgQty = Object.keys(TicketPackages)
.filter(key => typeof TicketPackages[key] === 'object' && TicketPackages[key].hasOwnProperty('pkg_qty'))
.reduce((sum, key) => sum + parseInt(TicketPackages[key].pkg_qty, 10), 0);
if (totalPkgQty > 1) {
$('#bypass').closest('div').show();
}
}
if (count_start == 1) {
if (!isRegistrationForm || pageBreakSummaryCount == 0) {
$('input[name=partner_tag]').val(count_start);
}
$('.packageBlock').css("visibility", "hidden");
$('.group_registration_label').css("display", "none");
$('.group-reg-block').css("height", "0px");
} else {
if (!isGroupBypassMember) {
$('.packageBlock').css("visibility", "visible");
$('.group_registration_label').css("display", "block");
$('.group-reg-block').css("height", "auto");
}
}
// TICKET: VFC-21255,VFC-21456 - hide package block incase of single ticket and multiple page breaks
let packageCount = 0;
$.each(TicketPackages, function (packageId, package) {
if (!isNaN(packageId)) {
if (package['pkg_qty'] != '' && package['pkg_qty'] != undefined && !isNaN(package['pkg_qty'])) {
packageCount += parseInt(package['pkg_qty']);
}
}
});
if (isRegistrationForm) {
if (pageBreakSummaryCount > 0 && packageCount == 1) {
$('.packageBlock').css("visibility", "hidden");
$('.group_registration_label').css("display", "none");
$('.group-reg-block').css("height", "0px");
}
}
var checkTicketCount= validateTicketPackages();
if(checkTicketCount==false){
$('.packageBlock').css("visibility", "hidden");
$('.group_registration_label').css("display", "none");
$('.group-reg-block').css("height", "0px");
}
$('input[name="first_name"], input[name="last_name"], input[name="email"]').change(function () {
var first_name = $('input[name="first_name"]').val().trim();
var last_name = $('input[name="last_name"]').val().trim();
var email = $('input[name="email"]').val().trim();
$packageContainer = $('.packageContainer');
var data = {};
if(first_name !='' && last_name !='' && email !='') {
if ($packageContainer.find('> .aPackage').length > 1) {
$packageContainer.find('> .aPackage').each(function () {
var $package = $(this);
var block_id = $package.attr("data-pack");
if(block_id !== undefined && block_id !== ''){
var buyer = $package.attr("data-buyer");
if (buyer == 1) {
// simplifiedTicketAssignment =1
if (simplifiedTicketAssignment) {
var name = $package.find('.aPackage__detail__cell:nth-of-type(2) p').text();
var block_email = $package.find('.aPackage__detail__cell:nth-of-type(3) p').text().replace(/\s/g, "");
$package.find('.aPackage__detail__cell:nth-of-type(2) p').text(first_name + ' ' + last_name);
$package.find('.aPackage__detail__cell:nth-of-type(3) p').text(email);
} else {
var name = $package.find('.aPackage__detail__cell:nth-of-type(1) p').text();
var block_email = $package.find('.aPackage__detail__cell:nth-of-type(2) p').text().replace(/\s/g, "");
$package.find('.aPackage__detail__cell:nth-of-type(1) p').text(first_name + ' ' + last_name);
$package.find('.aPackage__detail__cell:nth-of-type(2) p').text(email);
}
var value = $("#user" + block_id).val();
// $('#' + user_id).val();
// Parse JSON value and update corresponding user input
if (value != undefined && value != "") {
var jsonObject = JSON.parse(value);
// Unset property
jsonObject.first_name = first_name;
jsonObject.last_name = last_name;
jsonObject.email = email;
value = JSON.stringify(jsonObject);
$("#user" + block_id).val(value);
}
}
}
});
}
$packageContainer.each(function () {
$(this).find('.dropdown-menu > li a').each(function () {
var buyer = $(this).attr("data-buyer");
var user = $(this).attr("data-user");
if (buyer == 1) {
$(this).find('p').text(first_name + ' ' + last_name + ' (Buyer)')
$(this).find('span').text(email)
return false;
}
});
});
}
var singleTicketAutoAssign = '';
if(singleTicketAutoAssign){
if(first_name !='' && last_name !='' && email !=''){
if($('.aPackage1').length > 0){
var name=first_name + ' ' +last_name;
if(simplifiedTicketAssignment){
$('.aPackage1 .aPackage__detail__cell p').eq(1).text(name);
$('.aPackage1 .aPackage__detail__cell p').eq(2).text(email);
}else{
$('.aPackage1 .aPackage__detail__cell p').first().text(name);
$('.aPackage1 .aPackage__detail__cell p').eq(1).text(email);
}
}else{
$('#dropdown-btn').click();
$('.user-info-prev.buyer').click();
}
}
}
//donation auto assign to parent user
if(first_name !='' && last_name !='' && email !=''){
$.each(TicketPackages, function (packageId, package) {
if(package && package['isDonation'] && typeof package['isDonation'] !== 'undefined' && package['isDonation'] !== null && package['isDonation'] == 1){
var countPackage=0;
$('input[name="user_list[]"]').each(function() {
const inputField = $(this);
if ($.trim(inputField.val()) !== "") { // Check if the input value is not empty
try {
const jsonData = JSON.parse(inputField.val().replace(/"/g, '"')); // Parse JSON
if (jsonData && parseInt(jsonData.package) === parseInt(packageId)) { // Validate if `package` exists and matches
countPackage++;
}
} catch (error) {
console.error("Invalid JSON in input field:", inputField.val()); // Log error for debugging
}
}
});
if(countPackage ==0){
for (let i = 0; i ' + first_name + ' ' + last_name + ' (Buyer)
' + email + ' ');
});
}
if ($packageContainer.find('.packageContainer__head .dropdown-menu-main .buyer').length == 0) {
var dropdownMenuNew = $packageContainer.find('.packageContainer__head .dropdown-menu-main');
// Create the new element
var newUserData = `
${first_name} ${last_name} (Buyer)
${email}
`;
// Check if there are at least 2 existing elements
if (dropdownMenuNew.find('li').length >= 2) {
// Insert the new user data as the 3rd (index 2, 0-based)
dropdownMenuNew.find('li').eq(1).after(newUserData);
} else {
// If there are fewer than 2 , append it at the end
dropdownMenuNew.append(newUserData);
}
}
// If the dropdown was already visible, hide it. Otherwise, show it.
if (!isDropdownHidden) {
$dropdownMenu.hide();
} else {
$dropdownMenu.show();
}
//This code is creating issue on live site
// setTimeout(function(){
// if($('div[data-buyer="1"]').length == 0){
// let buyer_one_anchor = $('a[data-buyer="1"]');
// buyer_one_anchor.click();
// buyer_one_anchor.prop('disabled',true);
// buyer_one_anchor.css('cursor','not-allowed');
// $('.aPackage1 .action-btn').first().hide();
// }
// },500);
if (isUniqueEmailValidationEnabled) {
clickedOnce = true;
}
}
} else {
alert("Please fill in all fields: First Name, Last Name, and Email.");
$dropdownMenu.hide();
}
});
$(document).on('click', '.assign-user-to-package', function () {
/* JIRA Ticket - VFC-19349 */
if (!simplifiedTicketAssignment) {
$(this).parent().parent().hide();
count = $(this).closest('.packageContainer__head').attr('data-count');
}else{
count = $(this).closest('.packageContainer').find('.packageContainer__head').attr('data-count');
}
if (typeof multipleTicketEdit !== 'undefined' && multipleTicketEdit) {
count = getlastRecordID();
}
package_id = $(this).closest('.packageContainer').data('package');
count = parseInt(count) + 1;
if(simplifiedTicketAssignment){
count = $(this).attr('data-row');
}
$('.user-num' + count).click();
localStorage.setItem("savedPackage", package_id);
var serializedObject = JSON.stringify(TicketPackages);
localStorage.setItem("TicketPackages", serializedObject);
});
$(document).on('click', '.update-user-to-package', function () {
console.log('EDIT');
selector = $(this).attr('data-selector');
package_id = $(this).closest('.packageContainer').data('package');
buyer = $(this).closest('.aPackage').data('buyer');
localStorage.setItem("buyer", buyer);
localStorage.setItem("savedPackage", package_id);
var serializedObject = JSON.stringify(TicketPackages);
localStorage.setItem("TicketPackages", serializedObject);
$(selector).click();
});
// $(".user-info-prev", window.parent.document).click(function () {
$(document).on('click', '.user-info-prev', function () {
var first_name = $('input[name="first_name"]').val().trim();
var last_name = $('input[name="last_name"]').val().trim();
var email = $('input[name="email"]').val().trim();
var appId = $('#appId').val();
if (first_name !== '' && last_name !== '' && email !== '') {
// Retrieve relevant data attributes
var $packageContainer = $(this).closest('.packageContainer');
var user_id = $(this).data("user");
var data_buyer = $(this).data("buyer");
var ori_total = $packageContainer.find('.packageContainer__head').data("ori-total");
var total = $packageContainer.find('.packageContainer__head').data("total");
var savedPackage = $packageContainer.data('package');
// Increment count and hide dropdown if necessary
var count = parseInt($packageContainer.find('.packageContainer__head').attr("data-count")) + 1;
$packageContainer.find('.packageContainer__head').attr("data-count", count);
var Useremail = $(this).find('span').text();
if (total === count) {
$packageContainer.find('.packageContainer__head .dropdown').hide();
}
var size = $packageContainer.find('> .aPackage').length + 1;
if(simplifiedTicketAssignment){
var package_name = $packageContainer.find('> span.assigned-tickets').text().replace(/\d+\/\d+ tickets assigned/, '') + ' ' + size + '/' + ori_total + ' tickets assigned';
$packageContainer.find('> span.assigned-tickets').text(package_name);
}else{
var package_name = $packageContainer.find('.packageContainer__head > h3').text().replace(/\s*\(\d+\/\d+\)/, '') + ' (' + size + '/' + ori_total + ')';
$packageContainer.find('.packageContainer__head > h3').text(package_name);
}
if(simplifiedTicketAssignment){
count = $packageContainer.find('.fakePackage').first().data('pack');
}
var buyer = 0;
if (user_id == 'buyer' || data_buyer == 1) {
data = {};
var formDataArray = $('.reg-form-data').serializeArray();
formDataArray.forEach(function (field) {
if (field.name != "user_list[]") {
// Check if field name contains "[]"
if (field.name.indexOf("[]") !== -1) {
// Remove "[]" from the field name
var fieldName = field.name.replace("[]", "");
// Initialize an array if the key doesn't exist
if (!data[fieldName]) {
data[fieldName] = [];
}
// Push the value to the array
data[fieldName].push(field.value);
} else {
// Add the value directly if the key doesn't exist
data[field.name] = field.value;
}
}
});
buyer = 1;
var first_name = data['first_name'];
var last_name = data['last_name'];
var email = data['email'];
data["package"] = savedPackage;
var clickSource = $(this).attr('data-click-source') || '';
if(clickSource === 'partner_tag_section') {
let addonPaymentValues = [];
// Check if TicketPackages has single object and pkg_qty is 1
let packageKeys = Object.keys(TicketPackages).filter(key => !isNaN(key));
if (packageKeys.length === 1) {
let package = TicketPackages[savedPackage];
if (package.pkg_qty === 1) {
// Get addon IDs from numeric keys
for (let key in package) {
if (!isNaN(key) && package[key].id) {
addonPaymentValues.push(package[key].id);
}
}
}
}
if (addonPaymentValues.length > 0) {
data["field_addons"] = addonPaymentValues;
}
// Remove the attribute after handling
// $(this).removeAttr('data-click-source');
}
data = JSON.stringify(data);
$('#user' + count).val(data);
window.changeIcon(count);
} else {
var value = $('#' + user_id).val();
if(value ==""){
var newValue=null;
var userListInputs = document.querySelectorAll('input[name="user_list[]"]');
var count =0;
userListInputs.forEach(function(input) {
var value2 = input.value;
if (value2 !="") {
// Parse JSON value and update corresponding user input
var jsonObject = JSON.parse(value2);
if(jsonObject.email.trim().toLowerCase() ==Useremail.trim().toLowerCase()){
newValue=value2;
}
}
});
if(newValue !=null){
value=newValue;
}
}
// Parse JSON value and update corresponding user input
var jsonObject = JSON.parse(value);
// Unset property
delete jsonObject.field_addons;
value = JSON.stringify(jsonObject);
count = findFirstEmptyField(count);
$('#user' + count).val(value);
window.changeIcon(count);
var first_name = jsonObject.first_name;
var last_name = jsonObject.last_name;
var email = jsonObject.email;
}
if (buyer == 0) {
if (email == $('input[name="email"]').val().trim()) {
buyer = 1;
}
}
// Append new package block
var selector = '.user-num' + count;
if(simplifiedTicketAssignment){
var fakePackageCount = '.fakePackage' + count;
var ticketBlock='';
var ticketButtons=' Edit ' +
' Remove ';
}else{
ticketBlock='';
ticketButtons = '';
}
var packageHTML = '' +
'
' +
ticketBlock+
'
Name ' + first_name + ' ' + last_name + '
' +
'
' +
'
' +
'
' +
ticketButtons +
'
' +
'
';
if(simplifiedTicketAssignment){
$('#packageContainerBlock' + savedPackage +' '+fakePackageCount).after(packageHTML);
$('#packageContainerBlock' + savedPackage +' '+fakePackageCount).remove();
if(TicketPackages[savedPackage]['isDonation'] !=1){
$('.user-info-prev').hide();
}
}else{
$('#packageContainerBlock' + savedPackage).append(packageHTML);
}
// Update data object
var data = {};
$packageContainer.find('> .aPackage').each(function () {
var $package = $(this);
var pack_id = $package.attr("data-pack");
var name = $package.find('.aPackage__detail__cell:nth-of-type(1) p').text();
var email = $package.find('.aPackage__detail__cell:nth-of-type(2) p').text().replace(/\s/g, "");
var parent_email = $('input[name="email"]').val().trim();
if (email == parent_email) {
name = name + ' (Buyer)';
}
if (!data[email]) {
data[email] = name + ',' + pack_id;
}
});
// Update dropdown menu
var $dropdownMenu = $packageContainer.find('.packageContainer__head .dropdown-menu-main');
// $dropdownMenu.find("li").slice(3).remove();
var flag = 0;
$packageContainer.find('.dropdown-menu > li a').each(function () {
var buyer = $(this).attr("data-buyer");
var user = $(this).attr("data-user");
if (buyer == 1) {
flag = 1;
}
});
/* JIRA Ticket - VFC-19349 */
// 1
Object.entries(data).forEach(function ([key, value]) {
value = value.split(",");
buyer = 0;
if (key == $('input[name="email"]').val().trim()) {
buyer = 1;
value[0] = value[0] + ' (Buyer)';
}
if ($dropdownMenu && $dropdownMenu.length > 0) {
if ($dropdownMenu.find('span').length > 0) {
var emailExistsInList = $dropdownMenu.find('span').filter(function () {
return $(this).text().trim() === key;
}).length > 0;
if (buyer == 1 && flag == 1) {
} else {
if (!emailExistsInList) {
var $dropdownMenu = $packageContainer.find('.packageContainer__head .dropdown-menu-main');
$dropdownMenu.append(' ' + value[0] + '
' + key + ' ');
}
}
}
}
// $dropdownMenu.append('' + value[0] + '
' + key + ' ');
});
//Check remaining Data
var total_data = {};
$.each(TicketPackages, function (packageId, package) {
if(!isNaN(parseFloat(packageId)) && isFinite(packageId)) {
total_data[packageId] = {};
// Iterate through each item/package addon
$.each(package, function (key, item) {
if (key !== 'pkg_price' && key !== 'total_price' && key !== 'tax' && key !== 'pkg_qty' && key !== 'symbol') {
if (item.id && item.addons_qty) {
total_data[packageId][item.id] = item.addons_qty;
}
}
});
}
});
// console.log('Total addons');
// console.log(total_data);
const used_data = Object.assign({}, total_data);
let excluded_app_ids_embed = [17033, 14853, 15625, 15741, 16644,16279,16782,16783,18414];
if(!excluded_app_ids_embed.includes(app_id)){
$('.packageContainer .aPackage', window.parent.document).each(function () {
var $package = $(this);
var package_id = $package.attr("data-package");
var addonsArray = $package.attr("data-addons");
// if(package_id == savedPackage){
addonsArray = addonsArray.split(',');
// console.log(addonsArray);
$.each(addonsArray, function (key, value) {
value = parseInt(value);
used_data[package_id][value] = parseInt(used_data[package_id][value]) - 1;
});
// }
});
}else{
$('.packageContainer .aPackage', window.document).each(function () {
var $package = $(this);
var package_id = $package.attr("data-package");
var addonsArray = $package.attr("data-addons");
// if(package_id == savedPackage){
addonsArray = addonsArray.split(',');
// console.log(addonsArray);
$.each(addonsArray, function (key, value) {
value = parseInt(value);
used_data[package_id][value] = parseInt(used_data[package_id][value]) - 1;
});
// }
});
}
// console.log('used_data addons');
// console.log(used_data);
var remaining_addons = "";
var remaining_ids = "";
$.each(used_data, function (packageId, package) {
if(!isNaN(parseFloat(packageId)) && isFinite(packageId)) {
// console.log(package);
$.each(package, function (key, item) {
for (i = 0; i !isNaN(key));
if (packageKeys.length === 1) {
let package = TicketPackages[savedPackage];
if (package.pkg_qty === 1) {
// Get addon IDs from numeric keys
for (let key in package) {
if (!isNaN(key) && package[key].id) {
addonPaymentValues.push(package[key].id);
}
}
}
}
if (addonPaymentValues.length > 0) {
jsonObject.field_addons = addonPaymentValues;
}
// Remove the attribute after handling
$(this).removeAttr('data-click-source');
}
value = JSON.stringify(jsonObject);
$('#user' + count).val(value);
}
}
}
/* VFC-19349 */
});
$(document).on('click', '.remove-block', function () {
var $packageContainer = $(this).closest('.packageContainer');
var savedPackage = $packageContainer.data('package');
var ori_total = $packageContainer.find('.packageContainer__head').data("ori-total");
var total = $packageContainer.find('.packageContainer__head').data("total");
var count = parseInt($packageContainer.find('.packageContainer__head').attr("data-count")) - 1;
$packageContainer.find('.packageContainer__head').attr("data-count", count);
$packageContainer.find('.packageContainer__head .dropdown').show();
var $dropdownMenu = $packageContainer.find('.packageContainer__head .dropdown-menu-main');
var user_id = $(this).closest('.aPackage').attr("data-pack");
var userBuyer = $(this).closest('.aPackage').attr("data-buyer");
var Useremail = $(this).closest('.aPackage').find('.aPackage__detail__cell')
.filter(function() {
return $(this).find('span').text() === 'Email';
})
.find('p')
.text();
var userDetails=null;
$dropdownMenu.find('.user-info-prev').each(function() {
var currentEmail = $(this).find('span').text().trim();
if (currentEmail === Useremail) {
userDetails = $(this).attr("data-user");
}
});
// simplifiedTicketAssignment=1;
if(simplifiedTicketAssignment){
count=user_id;
var savedPackage = 1;
var buyer = 0;
var first_name = 'Not Set';
var last_name = '';
var email = 'Not Set';
var addons = 'Not Set';
var selector = '.user-num' + count;
packageHTML='';
packageHTML += '' +
'
' +
'
' +
'
Name ' + first_name + ' ' + last_name + '
' +
'
' +
'
' +
'
' +
'
' +
'
';
$(this).closest('.aPackage').after(packageHTML);
if(userBuyer == 1){
$('.user-info-prev').show();
}
}
/* JIRA ticket: VFC-19907 */
$(this).closest('.aPackage').remove();
var size = $packageContainer.find('> .aPackage').length;
// Update package name
if(simplifiedTicketAssignment){
var package_name = $packageContainer.find('> span.assigned-tickets').text().replace(/\d+\/\d+ tickets assigned/, '') + ' ' + size + '/' + ori_total + ' tickets assigned';
$packageContainer.find('> span.assigned-tickets').text(package_name);
}else{
var package_name = $packageContainer.find('.packageContainer__head > h3').text().replace(/\s*\(\d+\/\d+\)/, '') + ' (' + size + '/' + ori_total + ')';
$packageContainer.find('.packageContainer__head > h3').text(package_name);
}
if(simplifiedTicketAssignment){
}else{
if (user_id .aPackage').each(function () {
var $package = $(this);
var pack_id = $package.attr("data-pack");
console.log("Block :" + pack_id);
console.log("counter: " + counter);
if (parseInt(pack_id) > parseInt(counter)) {
console.log(pack_id);
console.log(parseInt(counter));
$package.attr("data-pack", counter);
$package.removeClass('aPackage' + pack_id);
$package.addClass('aPackage' + counter);
$package.find('.dropdown-menu-edit li:nth-of-type(1) a').attr("data-selector", ".user-num" + counter);
json = $('#user' + pack_id).val();
$('#user' + counter).val(json);
$('#user' + pack_id).val('')
counter = parseInt(counter) + 1
}
});
}
// Update data object
var data = {};
$packageContainer.find('> .aPackage').each(function () {
var $package = $(this);
var pack_id = $package.attr("data-pack");
var name = $package.find('.aPackage__detail__cell:nth-of-type(1) p').text();
var email = $package.find('.aPackage__detail__cell:nth-of-type(2) p').text().replace(/\s/g, "");
if (!data[email]) {
data[email] = name + ',' + pack_id;
}
});
// Update dropdown menu
// if(count != ori_total) {
// }
var flag = 0;
$packageContainer.find('.dropdown-menu > li a').each(function () {
var buyer = $(this).attr("data-buyer");
var user = $(this).attr("data-user");
if (buyer == 1) {
flag = 1;
}
});
/* JIRA Ticket - VFC-19349 */
Object.entries(data).forEach(function ([key, value]) {
value = value.split(",");
buyer = 0;
if (key == $('input[name="email"]').val().trim()) {
buyer = 1;
value[0] = value[0] + ' (Buyer)';
}
if (buyer == 1 && flag == 1) {
} else {
var isEmailExist=true;
$dropdownMenu.find('.user-info-prev').each(function() {
var currentEmail = $(this).find('span').text().trim();
if (currentEmail === key) {
isEmailExist=false;
}
});
if(isEmailExist){
$dropdownMenu.append('' + value[0] + '
' + key + ' ');
}
}
});
var TicketPackages = localStorage.getItem("TicketPackages");
var TicketPackages = JSON.parse(TicketPackages);
var emailArray = [];
for (var key in TicketPackages) {
if (TicketPackages.hasOwnProperty(key)) {
var counter = parseInt(user_id);
var packageContainer2 = $('#packageContainerBlock'+key);
var $dropdownMenu2 = packageContainer2.find('.packageContainer__head .dropdown-menu-main');
$('#packageContainerBlock'+key+' span:contains("Email")').each(function() {
var email = $(this).next('p').text();
if (email.includes('@')) {
emailArray.push(email);
}
});
}
}
for (var key in TicketPackages) {
if (TicketPackages.hasOwnProperty(key)) {
var counter = parseInt(user_id);
var packageContainer2 = $('#packageContainerBlock'+key);
var $dropdownMenu2 = packageContainer2.find('.packageContainer__head .dropdown-menu-main');
var emailExists = emailArray.map(email => email.trim().toLowerCase()).includes(Useremail.trim().toLowerCase());
let emailCount = emailArray.filter(email => email.trim().toLowerCase() === Useremail.trim().toLowerCase()).length;
console.log(emailExists);
console.log(Useremail);
console.log(emailCount);
// if (!emailExists || emailArray.length ==0 || emailCount ==1) {
if (!emailExists || emailArray.length ==0) {
// var Useremail = packageContainer2.find('a[data-user="user'+user_id+'"] span').text();
$dropdownMenu2.find('.user-info-prev').each(function() {
var currentEmail = $(this).find('span').text().trim();
if (currentEmail.trim().toLowerCase() === Useremail.trim().toLowerCase()) {
var dataUserValue = $(this).attr('data-user');
var userValue = dataUserValue.replace('user', '');
if(dataUserValue !='buyer'){
$dropdownMenu2.find('li a[data-user="user'+userValue+'"]').closest('li').remove();
}
}
});
}
}
}
var userValue = user_id.replace('user', '');
if($('#user'+userValue).val() !=''){
document.getElementById('user'+userValue).value = '';
}else{
var userValue = userDetails.replace('user', '');
document.getElementById('user'+userValue).value = '';
}
}
});
isEventBound = true;
}
}
if(parseInt(isTicket) && (parseInt(isStripeElement) || parseInt(isStripeConnectElement)) && parseInt(isTicketTop)) {
appId= "8995";
// if(appId == 14853){
var price = sessionStorage.getItem('total_price');
if(price == null || price == undefined || price == ''){
price = $('.order__summary .price__item > div.total__price > span').text();
}
// }else{
// price = $('.order__summary .price__item > div.total__price > span').text();
// }
jQuery.ajax({
url: "https://otcybersummit.isa.org/en/form/createPaymentIntent",
data: {
price: price,
appID: appId,
ticketPackages: JSON.stringify(TicketPackages),
},
type: "POST",
success: function (response) {
if (response) {
var response = eval('(' + response + ')');
if (response.status) {
client_secret = response.client_secret;
intent_id = response.intent_id;
customer_id = response.customer_id;
$('#customer_id').val(customer_id)
if ($(".refund_amount_multiple_edit").length === 1) {
$('#payment-element').css('display', 'none');
}
stripe = '';
if (parseInt(isStripeConnectElement)) {
stripe = Stripe('pk_live_51Gj5ghDmn4yW9ExlgaV6bbens9FzPTaMhHdZ9LmnOdEn6l6A3ybAjr6RiEXGEamrEM36mTa46XxYVUNmFenfa58p00JV0xrYun', {stripeAccount: isStripeConnectAccountId});
} else {
stripe = Stripe('pk_live_51Gj5ghDmn4yW9ExlgaV6bbens9FzPTaMhHdZ9LmnOdEn6l6A3ybAjr6RiEXGEamrEM36mTa46XxYVUNmFenfa58p00JV0xrYun');
}
elements = stripe.elements({
clientSecret: client_secret
});
// Create and mount the Payment Element
const paymentElement = elements.create('payment');
paymentElement.mount('#payment-element');
var id = $('.reg-form-data').attr('id');
const formSubmit = document.getElementById(id);
console.log("form=1");
console.log(formSubmit);
flag_lis = 0;
// $(document).off('submit', '#' + id).on('submit', '#' + id, async function (event) {
formSubmit.addEventListener('submit', async (event) => {
console.log("form=3");
console.log("flag_lis: " + flag_lis);
if (flag_lis == 0) {
console.log("flag_lis == 0 =1");
event.preventDefault();
let mainEmail = $('input[name="email"]').val().trim();
if (typeof shouldRunStripeSubmit !== 'undefined' && !shouldRunStripeSubmit) {
return; // Do nothing if flag is false
}
const {error} = await stripe.confirmPayment({
//`Elements` instance that was used to create the Payment Element
elements,
confirmParams: {
return_url: 'https://vfairs.com',
receipt_email: ('' != mainEmail)? mainEmail : ''
},
redirect: 'if_required'
}).then((result) => {
console.log("result: " + result);
const messageContainer = document.querySelector('#error-message');
if ((result.error && $('input[name="optionsRadios"]').closest('.order__payment').css('display') === 'none') || (result.error && $('input[name="optionsRadios"]:checked').data('name') === 'Stripe')) {
// if (result.error && $('input[name="optionsRadios"]:checked').data('name') === 'Stripe') {
if ($(".refund_amount_multiple_edit").length === 1) {
console.log("refund_amount_multiple_edit");
isStripeValidation = true;
flag_lis = 1;
$('#' + id).submit();
}else{
// console.log("result.error =1: " + result.error);
messageContainer.textContent = result.error.message;
}
// messageContainer.textContent = result.error.message;
} else {
console.log("isStripeValidation =1" );
messageContainer.textContent = '';
isStripeValidation = true;
flag_lis = 1;
if ($('input[name="optionsRadios"]:checked').data('name') != 'Check') {
console.log("submit");
console.log(id, $('#' + id));
console.log($('#' + id).length); // Should be 1 if the form exists
$('#' + id).submit();
}
}
}).catch((err) => {
});
if (error) {
// This point will only be reached if there is an immediate error when
// confirming the payment. Show error to your customer (for example, payment
// details incomplete)
const messageContainer = document.querySelector('#error-message');
messageContainer.textContent = error.message;
console.log("error: " + error);
} else {
}
}
});
if((isUpgradeDowngradeProfile !== null && isUpgradeDowngradeProfile !== '' && (isUpgradeDowngradeProfile == 1 || isUpgradeDowngradeProfile == "1"))){
paymentName=$('input[name="optionsRadios"]:checked').data('name');
if(paymentName =='Stripe'){
$('#payment-element').show();
}else{
setTimeout(function() {
$('#payment-element').hide();
}, 3000);
}
}
}else{
console.log("false status");
var id = $('.reg-form-data').attr('id');
const formSubmit = document.getElementById(id);
formSubmit.addEventListener('submit', async (event) => {
if ($(".refund_amount_multiple_edit").length === 1 && price == 0) {
isStripeValidation = true;
flag_lis = 1;
$('#' + id).submit();
}
});
}
// VFC-17411 - add receiptEmail in payment intent for stripe Element
let stripeElementContainer = $('body').find('.StripeElement');
if($(stripeElementContainer).length > 0){
$('body').find('.StripeElement').attr('data-stripe_payment_intent_id', intent_id);
}
$('.ev__ticket__wrapper').hide();
if(seatPlanUrl !== '' && seatPlanPackageIds.includes($('.package_list').val())) {
$('.seat-plan-iframe-div').show();
$('#floorPlanIframe').attr('src', seatPlanUrl + $('.package_list').val());
} else {
$('.seat-plan-iframe-div').hide();
}
console.log("gStepNumber: " + gStepNumber);
if(gStepNumber >= 1){
$('.both-block').show();
}
numItems = $('.payment__method > .radio').length;
if (numItems == 1) {
$('.order__payment').hide();
}
$("html, body").animate({scrollTop: 0}, "slow");
// return false;
}
}
});
}else{
if(!parseInt(isTicketTop)){
}else{
$('.ev__ticket__wrapper').hide();
if(seatPlanUrl !== '' && seatPlanPackageIds.includes($('.package_list').val())) {
$('.seat-plan-iframe-div').show();
$('#floorPlanIframe').attr('src', seatPlanUrl + $('.package_list').val());
} else {
$('.seat-plan-iframe-div').hide();
}
console.log("gStepNumber: " + gStepNumber);
if(gStepNumber >= 1){
$('.both-block').show();
}
numItems = $('.payment__method > .radio').length;
if(numItems == 1){
$('.order__payment').hide();
}
$("html, body").animate({ scrollTop: 0 }, "slow");
return false;
}
}
}
});
')
var buyer = localStorage.getItem("buyer");
if(parseInt(buyer) && (ud_profile == 1 || ud_profile == 2)){
$("#iframe-id-new").contents().find("[name='email']").prop('readonly', true);
$("#iframe-id-new").contents().find("input, select, radio, checkbox").prop('readonly', true);
}
}
}
if (isTicket) {
var savedPackage = localStorage.getItem("savedPackage");
// console.log('savedPackage');
// console.log(savedPackage);
var $packageContainer;
let appId = 8995;
let excluded_app_ids = [18414];
if(excluded_app_ids.includes(appId)){
$packageContainer = $('#packageContainerBlock' + savedPackage,window.document);
console.log("packageContainer");
console.log(savedPackage);
console.log('packageContainer 123:');
console.log($packageContainer);
}else{
try {
// Attempt to access the parent document
$packageContainer = $('#packageContainerBlock' + savedPackage, window.parent.document);
} catch (e) {
if (e instanceof DOMException) {
// If a cross-origin error occurs, fallback to the current document
console.error('Cross-origin access error:', e);
$packageContainer = $('#packageContainerBlock' + savedPackage);
} else {
// If some other error occurs, rethrow it
throw e;
}
}
}
var data = {};
$count_addons = {};
var selected_addons = {};
$packageContainer.find('> .aPackage').each(function () {
var $package = $(this);
var blockId = $package.attr("data-pack");
var packageId = $package.attr("data-package");
var addonsArray = $package.attr("data-addons");
addonsArray = addonsArray.split(',');
$.each(addonsArray, function (key, value) {
console.log("email_content"+email_content);
if(email_content){
if('user'+blockId == id){
if (selected_addons[value]) {
selected_addons[value] = selected_addons[value] + 1;
} else {
selected_addons[value] = 1;
}
}
}
if(value && value !=""){
if ($count_addons[value]) {
$count_addons[value] = $count_addons[value] + 1;
} else {
$count_addons[value] = 1;
}
}
});
});
//Total used till now
data[savedPackage] = $count_addons;
// Used in edit page only
// addons=TicketPackages[savedPackage];
addons_html = '';
$.each(TicketPackages, function (packageId, package) {
if(!isNaN(parseFloat(packageId)) && isFinite(packageId)) {
if (packageId == savedPackage) {
// Iterate through each item/package addon
$.each(package, function (key, item) {
if (key !== 'pkg_price' && key !== 'total_price' && key !== 'tax' && key !== 'pkg_qty' && key !== 'symbol') {
if (data[savedPackage][item.id]) {
used_quantities = data[savedPackage][item.id];
// if(selected_addons[item.id] && email_content){
// used_quantities=parseInt(used_quantities) -parseInt(selected_addons[item.id]);
// }
total_quantities = item.addons_qty;
remaining_total_quantities = total_quantities - used_quantities;
} else {
remaining_total_quantities = item.addons_qty;
}
if (item.id) {
var count = 0
if (remaining_total_quantities > 0) {
while (count 0 && email_content) {
addons_html += '
' + item.addons_name + ' ';
selected_addons[item.id] = selected_addons[item.id] - 1;
console.log("selected_addons MINUS");
console.log(selected_addons);
} else {
addons_html += '
' + item.addons_name + ' ';
console.log("MINUS 2");
count = count + 1;
}
} else {
addons_html += '
' + item.addons_name + ' ';
console.log(" MINUS 3");
count = count + 1;
}
}
} else {
var size = Object.keys(selected_addons).length;
if (!jQuery.isEmptyObject(selected_addons)) {
while (selected_addons[item.id] > 0) {
if (selected_addons[item.id] && selected_addons[item.id] > 0 && email_content) {
addons_html += '
' + item.addons_name + ' ';
selected_addons[item.id] = selected_addons[item.id] - 1;
}
}
}
}
}
}
});
}
}
});
let addonInitInterval = setInterval(function () {
if ($("#iframe-id-new").contents().find('#field_addons').length) {
$("#iframe-id-new").contents().find('#field_addons').append(addons_html);
$("#iframe-id-new").contents().find('#field_addons').trigger('change.select2');
/* Show addons dropdown only if it has any option */
if (addons_html != "") {
$("#iframe-id-new").contents().find('#field_addons').parent().show();
} else {
$("#iframe-id-new").contents().find('#field_addons').parent().hide();
}
clearInterval(addonInitInterval);
}
}, 500);
/* Hide addons dropdown by default */
$("#iframe-id-new").contents().find('#field_addons').parent().hide();
if($('.edit-block-open').length == 1){
}
}
$("#iframe-id-new").contents().find(".header-content").css("display", "none");
$("#iframe-id-new").contents().find(".page-heading").css("display", "none");
$("#iframe-id-new").contents().find(".osano-cm-window__widget").css("display", "none");
setTimeout(function () {
$("#iframe-id-new").contents().find(".osano-cm-window__widget").css("display", "none");
$("#iframe-id-new").contents().find("#launcher").css("display", "none");
}, 3000);
$('#launcher').css('display', 'none');
$('#loadingMessage1').css('display', 'none');
$('#loadingMessage').css('display', 'none');
$('.page-heading').css('display', 'none');
}, 4000);
// $("#iframe-id-new").remove();
} else {
setTimeout(function () {
$("#iframe-id").contents().find(".header-content").css("display", "none");
$('#loadingMessage').css('display', 'none');
$('#loadingMessage1').css('display', 'none');
$('.page-heading').css('display', 'none');
var $iframeContents = $("#iframe-id").contents();
// console.log(selectedIds);
// Initialize an object to store the counts of values for each dropdown ID
dynamicLimitDropdown(dropdownIds);
}, 3000);
}
});
});
function dynamicLimitDropdown(dropdownIds, mainForm = 0) {
var valueCounts = {};
// Loop through the dropdown IDs to capture initial counts based on select options
dropdownIds.forEach(function (dropdownId) {
valueCounts[dropdownId] = {};
// Loop through each option in the select dropdown and initialize the counts
$("#" + dropdownId + " option").each(function () {
var optionValue = $(this).val();
var limitCount = parseInt($(this).attr("data-limit-option"), 10) || 0;
if (optionValue) {
valueCounts[dropdownId][optionValue] = {
selectedCount: 0, // This will track how many times this value has been selected
limit: limitCount // This stores the limit as per the option
};
}
});
});
$('select').each(function () {
var selectId = $(this).attr('id');
// Iterate over each option in the select
$(this).find('option').each(function () {
var option = $(this);
// Check if the option has data-limit-option="1" and is selected
if (option.data('limit-option') >= 1 && option.is(':selected')) {
if (valueCounts[selectId][option.val()]) {
valueCounts[selectId][option.val()].selectedCount++;
}
}
});
});
// Iterate over each input with name 'user_list[]'
$("input[name='user_list[]']").each(function () {
var userData = $(this).val();
// Parse the JSON string (after replacing the HTML entities)
if (userData) {
userData = userData.replace(/"/g, '"'); // Convert HTML entities to plain JSON string
var userObj = JSON.parse(userData);
// Loop through the dropdown IDs array to fetch their values
dropdownIds.forEach(function (dropdownId) {
var value = userObj[dropdownId]; // Fetch the value for the current dropdown ID
// If the value exists, increment its selectedCount in the valueCounts object
if (value && valueCounts[dropdownId][value]) {
valueCounts[dropdownId][value].selectedCount++;
}
});
}
});
// Log the result
console.log(valueCounts);
if (!mainForm) {
for (const [key, value] of Object.entries(valueCounts)) {
removeOptionsIfLimitReached(key, value);
}
} else {
$('select', window.parent.document).each(function () {
var selectId = $(this).attr('id');
if (selectId) {
// Iterate over each option in the select
$(this).find('option').each(function () {
var option = $(this);
// Check if the option has data-limit-option="1" and is selected
if (option.data('limit-option') >= 1 && !option.is(':selected')) {
if (valueCounts && valueCounts[selectId] && valueCounts[selectId][option.val()]) {
remainingLimit = valueCounts[selectId][option.val()].limit - valueCounts[selectId][option.val()].selectedCount;
if (remainingLimit == 0) {
$('#' + selectId, window.parent.document).find(`option[value="${option.val()}"]`).remove();
} else {
// $('#'+selectId, window.parent.document).find(`option[value="${option.val()}"]`).attr('data-limit-option',remainingLimit);
$('#' + selectId, window.parent.document).find(`option[value="${option.val()}"]`).text(option.val() + ' (' + remainingLimit + ')');
}
}
}
});
}
});
}
}
// Function to remove options based on the dynamic data object
function removeOptionsIfLimitReached(dropdownId, data) {
// Access the iframe's contents
var $iframeContents = $("#iframe-id").contents();
// Get the dropdown element by ID within the iframe context
const dropdown = $iframeContents.find(`#${dropdownId}`);
$iframeContents.find(`#${dropdownId} option`).each(function() {
let optionValue = $(this).val();
// If the option value is not present in the objects, remove it
if (data && !data.hasOwnProperty(optionValue)) {
$(this).remove();
}
});
if (dropdown.length === 0) {
console.error(`Dropdown with ID ${dropdownId} not found.`);
return;
}
// Loop through each option in the data object
for (const [key, value] of Object.entries(data)) {
// Check if selectedCount equals limit
if (value.selectedCount === value.limit) {
// Remove the option from the dropdown
dropdown.find(`option[value="${key}"]`).remove();
}else{
decrementValue= value.limit - value.selectedCount;
dropdown.find(`option[value="${key}"]`).attr('data-limit-option',decrementValue);
dropdown.find(`option[value="${key}"]`).text(key +' ('+decrementValue+')');
}
}
}
$(document).ready(function () {
var isTicketTop = '';
if (isTicketTop) {
setTimeout(function () {
if ($('.form_field_grp .ticket__content .ticket__item').length == 1) {
$('.form_field_grp .ticket__content .ticket__item .ticketSelbtn').click();
}
}, 1500);
} else {
setTimeout(function () {
if ($('.ticket__content .ticket__item').length == 1) {
$('.ticket__content .ticket__item .ticketSelbtn').click();
}
}, 1500);
}
var checkMappingPackage = '0';
var isGroupRegistration = '0';
var form_type = 'REGISTRATION_FORM';
var app_id = '8995';
if (checkMappingPackage != 0) {
$('input[name="email"]').focusout(function () {
var email = $('input[name="email"]').val();
$("#LoadingBar").show();
jQuery.ajax({
url: "https://otcybersummit.isa.org/en/form/emailDomainPackage",
//url: "http://vjf.local.me/en/form/emailDomainPackage",
data: {
email: email,
isGroupRegistration: isGroupRegistration,
form_type: form_type,
app_id: app_id,
checkMappingPackage: checkMappingPackage,
},
type: "POST",
success: function (response) {
$('.addonweb').css('display', 'none');
var response = eval('(' + response + ')');
if (response.status == true) {
$('.package_list').find('option:not(:first)').remove();
var list = response.list;
for (var i = 0; i '
+ list[i]['name'] + ' - ' + list[i]['price']
+ '');
} else if (list[i]['limitation'] == null) {
console.log('NULL Unlimited: ' + list[i]['name']);
$('.package_list').append(
'
'
+ list[i]['name'] + ' - ' + list[i]['price']
+ ' ');
} else if (parseInt(list[i]['limitation']) > parseInt(list[i]['avail_limit'])) {
console.log('Limit Available: ' + list[i]['name']);
$('.package_list').append(
'
'
+ list[i]['name'] + ' - ' + list[i]['price'] + ' (' + limit_count + ')'
+ ' ');
}
}
} else {
$('.package_list').find('option:not(:first)').remove();
}
}
});
$("#LoadingBar").hide();
});
}
});
$(document).ready(function () {
// ADD RED ASTRISK ON REQUIERD FIELD's LABEL
// $('input,select,file').each(function(){
// if($(this).prop('required')){
// if($(this).parent().find('.text-danger').length ==0)
// $(this).parent().find('.control-label').append('
* ');
// }
// });
setTimeout(function () {
$('.payment__method > .radio:nth-of-type(1) img').click();
window.scrollTo(0, 0);
}, 1000);
$('.addonweb').css("display", "none");
$('.addnopkg').css("display", "none");
if ($('.addonp').val() != '') {
$('.addonweb').css("display", "block");
$('.addonp').trigger("change");
}
$('.pmnt_fld').on('change', function (e) {
if (!isTicket && enableV5ApiDiscount){
getOldformTicketData();
}
// var symbol= $('.pmnt_fld option:selected').data('symbol');
// var price= $('.total-addons-price').data('price');
// if(price != ''){
// $('.total-addons-price').html('
Amount '+ symbol +''+ price +'');
// }
});
$('.addonp').on('change', function (e) {
var value = $(this).val();
$('.addonweb').css("display", "none");
$('.addnopkg').css("display", "none");
$('.selected-addons-package').remove();
$('.total-addons-price').remove();
$('.total-addons-tax').remove();
$cost = $(this).find(':selected').data('cost');
if ($cost >= 1000) {
$('#grp_fld_1379629').parent().removeClass("field-hidden");
$('#grp_fld_1379629').removeClass("field-hidden");
} else {
$('#grp_fld_1379629').parent().addClass("field-hidden");
$('#grp_fld_1379629').addClass("field-hidden");
}
if (value != '') {
$('.addonsvp input[type=checkbox]').each(function () {
$(this).prop("checked", false);
});
$('.addon-package' + value).css("display", "block");
$('.addnopkg').css("display", "block");
}
});
//$('.addonsvp input[type=checkbox], select[name="group_registration"]').on('change', function (e) {
// payment_section = $('.addonp').val();
//
// if (payment_section == '') {
// $('.addonweb').css("display", "none");
// $('.addnopkg').css("display", "none");
// } else {
// $('.selected-addons-package').remove();
// $('.total-addons-price').remove();
// $('.total-addons-tax').remove();
// // var selected = '
Packages Included: ';
// var price = 0;
// var flag = 0;
//
// var symbol = $('.pmnt_fld option:selected').data('symbol');
// if (typeof symbol == "undefined") {
// symbol = '';
// }
// selected += $('.addonp option:selected').text();
// // price = parseFloat($('.addonp option:selected').data('price')) + parseFloat(price);
// // price = parseFloat($('.addonp option:selected').data('cost')) + parseFloat(price);
// // var selectedValueGroupRegistration = $('select[name="group_registration"]').val();
// if(selectedValueGroupRegistration != ''){
// var totalGroupRegistration = parseFloat(price) * parseFloat(selectedValueGroupRegistration);
// price = parseFloat(totalGroupRegistration) + parseFloat(price);
// }
// // $('.addonsvp input[type=checkbox]:checked').each(function () {
// selected += ", " + $(this).data('name');
// price = parseFloat($(this).data('price')) + parseFloat(price);
// flag = 1;
// });
//
// selected += '
';
// if (flag == 1) {
// $('.package_addon_price').text(price);
// $('.pmnt_fld').parent('div').parent('div').before(selected);
// // $(this).parent('div').parent('span').append(selected);
// // var tax_obligation = $('.tax_obligation_price').html();
// var total_tax = price / 100 * parseFloat(tax_obligation);
// var total_price = parseFloat(total_tax) + parseFloat(price);
// // var total_price = parseFloat(price);
// //
//
//
// $('.pmnt_fld').parent('div').parent('div').before('
Amount: ' + symbol + '' + price + '
');
// // $('.pmnt_fld').parent('div').parent('div').before('
State Tax: ' + symbol + '' + total_tax + '
');
// // $('.pmnt_fld').parent('div').parent('div').before('
Total : ' + symbol + '' + total_price + '
');
// // $(this).parent('div').parent('span').append('
Total Price: '+ symbol +''+ price + '
');
// }
// // }
//
//
//});
$('.addonsvp input[type=checkbox], select[name="group_registration"]').on('change', function () {
const paymentSection = $('.addonp').val();
const $addonWeb = $('.addonweb');
const $addnoPkg = $('.addnopkg');
// Reset the display for empty payment section
if (!paymentSection) {
$addonWeb.hide();
$addnoPkg.hide();
return;
}
// console.log('TicketPackages after submit child :',TicketPackages)
if (!isTicket && enableV5ApiDiscount){
getOldformTicketData();
}
// Clear previous addon details
$('.selected-addons-package, .total-addons-price, .total-addons-tax').remove();
const symbol = $('.pmnt_fld option:selected').data('symbol') || '';
let price = 0;
let hasAddons = false;
// Add package details
let selectedText = `
Packages Included: ${$('.addonp option:selected').text()}`;
// Calculate price based on conditions
price += parseFloat($('.addonp option:selected').data('cost') || 0);
// Group registration calculations
// Process selected addons
$('.addonsvp input[type=checkbox]:checked').each(function () {
selectedText += `, ${$(this).data('name')}`;
price += parseFloat($(this).data('price') || 0);
hasAddons = true;
});
selectedText += '
';
if (hasAddons) {
const $pmntFld = $('.pmnt_fld').closest('div').parent();
const taxEnabled = false;
const taxRate = parseFloat($('.tax_obligation_price').html() || 0);
const totalTax = taxEnabled ? (price * taxRate) / 100 : 0;
const totalPrice = price + totalTax;
if(!isTicket){
// Append details to DOM
$pmntFld.before(selectedText);
$pmntFld.before(`
Amount: ${symbol}${price}
`);
if (taxEnabled) {
$pmntFld.before(`
State Tax: ${symbol}${totalTax}
`);
}
$pmntFld.before(`
Total: ${symbol}${totalPrice}
`);
}
if(enableV5ApiDiscount){
// console.log('checkbox click');
// console.log(TicketPackages);
if(!isTicket){
paymentSummaryObject.getOldFormPaymentSummaryDetails(TicketPackages);
}
}
}
});
$(function () {
$('[data-toggle="tooltip"]').tooltip(
{template: '
'}
);
if(enableV5ApiDiscount && !isTicket){
var selectedValue = $(".package_list").val();
if (selectedValue !== "") {
getOldformTicketData();
}
}
})
$('.verify_registration_code').on('click', function (e) {
e.preventDefault();
var code= $("input[name=registration_code]").val();
if (code != "") {
$("#registration_code_message").html('');
jQuery.ajax({
url: "https://otcybersummit.isa.org/en/form/registrationCodeVerification",
data: {
registration_code: code,
ajax_call: 1,
appID: 8995,
},
type: "POST",
success: function (response) {
if(response.indexOf('verified') != -1){
$("#registration_code_message").html('
'+response.toString().replace(/"/g, "")+' ');
}else{
$("#registration_code_message").html(response.toString().replace(/"/g, "") );
}
}});
} else {
$("#registration_code_message").html("Please Enter Registration Code");
}
});
});
var slice = [].slice;
(function ($, window) {
var Starrr;
window.Starrr = Starrr = (function () {
Starrr.prototype.defaults = {
rating: void 0,
max: 5,
readOnly: false,
emptyClass: 'fa fa-star fa-star-emp',
fullClass: 'fa fa-star',
change: function (e, value) {
}
};
function Starrr($el, options) {
this.options = $.extend({}, this.defaults, options);
this.$el = $el;
this.createStars();
this.syncRating();
if (this.options.readOnly) {
return;
}
this.$el.on('mouseover.starrr', 'a', (function (_this) {
return function (e) {
return _this.syncRating(_this.getStars().index(e.currentTarget) + 1);
};
})(this));
this.$el.on('mouseout.starrr', (function (_this) {
return function () {
return _this.syncRating();
};
})(this));
this.$el.on('click.starrr', 'a', (function (_this) {
return function (e) {
return _this.setRating(_this.getStars().index(e.currentTarget) + 1);
};
})(this));
this.$el.on('starrr:change', this.options.change);
}
Starrr.prototype.getStars = function () {
return this.$el.find('a');
};
Starrr.prototype.createStars = function () {
var j, ref, results;
results = [];
var maxStars = this.options.max;
if(this.options.maxStars) {
maxStars = this.options.maxStars;
}
for (j = 1, ref = maxStars; 1 = ref; 1 "));
}
return results;
};
Starrr.prototype.setRating = function (rating) {
if (this.options.rating === rating) {
rating = void 0;
}
this.options.rating = rating;
this.syncRating();
return this.$el.trigger('starrr:change', rating);
};
Starrr.prototype.getRating = function () {
return this.options.rating;
};
Starrr.prototype.syncRating = function (rating) {
var $stars, i, j, ref, results;
rating || (rating = this.options.rating);
$stars = this.getStars();
results = [];
var maxStars = this.options.max;
if(this.options.maxStars) {
maxStars = this.options.maxStars;
}
for (i = j = 1, ref = maxStars; 1 = ref; i = 1 = i ? this.options.emptyClass : this.options.fullClass).addClass(rating >= i ? this.options.fullClass : this.options.emptyClass));
}
return results;
};
return Starrr;
})();
$.fn.extend({
starrr: function () {
var args, option;
option = arguments[0], args = 2
';
}else{
ticketButtons = '
';
}
var newPackage='
';
/* JIRA Ticket - VFC-19349 */
if (simplifiedTicketAssignment) {
var fakePackage=".fakePackage"+user_id;
packageContainer.find(fakePackage).after(newPackage);
packageContainer.find(fakePackage).remove();
}else{
packageContainer.append(newPackage);
/* JIRA Ticket - VFC-19349 */
/* Only add new user to assign list if duplicate email validation is off as user is already assigned to package after creation */
packageContainer.find('.dropdown-menu-main').append('
');
newUserData = '
';
}
}
//Check remaining Data
var total_data={};
$.each(TicketPackages, function (packageId, package) {
if(!isNaN(parseFloat(packageId)) && isFinite(packageId)) {
total_data[packageId] = {};
// Iterate through each item/package addon
$.each(package, function (key, item) {
if (key !== 'pkg_price' && key !== 'total_price' && key !== 'tax' && key !== 'pkg_qty' && key !== 'symbol') {
if (item.id && item.addons_qty) {
total_data[packageId][item.id] = item.addons_qty;
}
}
});
}
});
const used_data = Object.assign({}, total_data);
$('.packageContainer .aPackage', window.parent.document).each(function () {
var $package = $(this);
var package_id = $package.attr("data-package");
var addonsArray = $package.attr("data-addons");
// if(package_id == savedPackage){
addonsArray = addonsArray.split(',');
$.each(addonsArray, function (key, value){
value=parseInt(value);
used_data[package_id][value]=parseInt(used_data[package_id][value]) - 1;
});
// }
});
var remaining_addons="";
var remaining_ids="";
$.each(used_data, function (packageId, package) {
if(!isNaN(parseFloat(packageId)) && isFinite(packageId)) {
$.each(package, function (key, item) {
for (i = 0; i Form is Successfully Submitted