function SasoEventticketsValidator_WC_backend($, phpObject) { const { __, _x, _n, sprintf } = wp.i18n; let _self = this; let _sasoEventtickets; let DATA = {}; function renderFormatterFields() { let hiddenValueField = $('input[data-id="'+phpObject.formatterInputFieldDataId+'"]'); let formatterValues = $(hiddenValueField).val(); if (formatterValues != "") { try { formatterValues = JSON.parse(formatterValues); } catch (e) { //console.log(e); } } let serialCodeFormatter = _sasoEventtickets.form_fields_serial_format($('#'+phpObject._divAreaId)); serialCodeFormatter.setNoNumberOptions(); serialCodeFormatter.setFormatterValues(formatterValues); serialCodeFormatter.setCallbackHandle(_formatterValues=>{ $(hiddenValueField).val(JSON.stringify(_formatterValues)); }); serialCodeFormatter.render(); $(hiddenValueField).val(JSON.stringify(serialCodeFormatter.getFormatterValues())); } function _addHandlerToTheOrderCodeFields() { if (typeof phpObject.tickets != "undefined") { let ok = false; for(let key in phpObject.tickets) { if (phpObject.tickets[key].codes != "") { ok = true; break; } } if (ok) { $('body').find('button[data-id="'+phpObject.prefix+'btn_download_alltickets_one_pdf"]').prop('disabled', false).on('click', ()=>{ let url = phpObject.ajaxurl + '?' +'action='+encodeURIComponent(phpObject.action) +'&nonce='+encodeURIComponent(phpObject.nonce) +'&a_sngmbh=downloadAllTicketsAsOnePDF' +'&data[order_id]='+encodeURIComponent(phpObject.order_id); window.open(url, 'download_tickets'); return false; }); $('body').find('button[data-id="'+phpObject.prefix+'btn_remove_tickets"]').prop('disabled', false).on('click', event=>{ event.preventDefault(); if (confirm("Do you want to remove the ticket from the order? Your customer will not be informed. New tickets will be assigned to the order if you change the order status and the status is set to assign ticket numbers. Or you use the add tickets button (Premium).")) { let btn = event.target; $(btn).prop("disabled", true); let url = phpObject.ajaxurl; let _data = { action:encodeURIComponent(phpObject.action), nonce:encodeURIComponent(phpObject.nonce), a_sngmbh:'removeAllTicketsFromOrder', "data[order_id]":encodeURIComponent(phpObject.order_id) }; // Pass through debug parameter if set in URL var urlParams = new URLSearchParams(window.location.search); if (urlParams.has('VollstartValidatorDebug')) { _data['VollstartValidatorDebug'] = urlParams.get('VollstartValidatorDebug') || '1'; } $.get( url, _data, function( response ) { if (!response.success) { alert(response); } else { window.location.reload(true); } }); } return false; }); $('body').find('button[data-id="'+phpObject.prefix+'btn_download_badge"]').prop('disabled', false).on('click', event=>{ event.preventDefault(); // check how many tickets are in the order // if more than 1, show a list of tickets // if only 1, show the ticket let ticket_numbers = []; for(var key in phpObject.tickets) { let ticket = phpObject.tickets[key]; if (ticket.codes != "") { let codes = ticket.codes.split(','); for(let i=0;i 1) { let ticketList = $('
'); for(let i=0;i').appendTo(ticketList); elem.append($('

').html('#'+(i+1)+'. '+ticket_number)); elem.append($('