var HTTP_GET_VARS;
var PRINTER_NAME = "Xerox";
//var PRINTER_FALLBACK_NAME = "Deskjet";
var PRINTER_FALLBACK_NAME = "Adobe";
$(document).ready(function(){
importGetVars();
// assign vars
var data = eval("(" + GET('json') + ")");
$('#invoiceDate').html(data.invoiceDate);
$('#invoiceNumber').html(data.invoiceNumber);
$('#eventTitle').html(data.eventTitle);
$('#eventDate').html(data.eventDate);
$('#customerAddress').html(data.customerAddress);
$('#totalPrice').html(data.totalPrice);
var html = '';
for (var i = 0; i < data.tickets.length; ++i) {
html += '
';
if (data.tickets[i].reduced == "true") {
html += 'Eintrittskarte (ermäßigt) | ';
}
else {
html += 'Eintrittskarte | ';
}
html += '' + data.tickets[i].price + ' | ';
html += '
';
}
if (data.shipping) {
html += '';
html += 'Zustellung | ';
html += '' + data.shipping + ' | ';
html += '
';
}
$('#tickets').replaceWith(html);
// print
jsPrintSetup.setPrinter(selectPrinter());
jsPrintSetup.setOption('orientation', jsPrintSetup.kPortraitOrientation);
jsPrintSetup.setOption('marginTop', 0);
jsPrintSetup.setOption('marginBottom', 0);
jsPrintSetup.setOption('marginLeft', 0);
jsPrintSetup.setOption('marginRight', 0);
jsPrintSetup.setOption('headerStrLeft', '');
jsPrintSetup.setOption('headerStrCenter', '');
jsPrintSetup.setOption('headerStrRight', '');
jsPrintSetup.setOption('footerStrLeft', '');
jsPrintSetup.setOption('footerStrCenter', '');
jsPrintSetup.setOption('footerStrRight', '');
jsPrintSetup.setOption('printBGColors', 1);
jsPrintSetup.clearSilentPrint();
jsPrintSetup.setOption('printSilent', 1);
jsPrintSetup.printWindow(window);
window.close();
});
function importGetVars() {
HTTP_GET_VARS = new Array();
strGET = document.location.search.substr(1, document.location.search.length);
if(strGET!='') {
gArr = strGET.split('&');
for (var i = 0; i < gArr.length; ++i) {
v = '';
vArr = gArr[i].split('=');
if(vArr.length > 1){
v = vArr[1];
}
HTTP_GET_VARS[unescape(vArr[0])] = decodeURIComponent(v);
}
}
}
function GET(v) {
if(!HTTP_GET_VARS[v]){
return 'undefined';
}
return HTTP_GET_VARS[v];
}
function selectPrinter() {
var printers = jsPrintSetup.getPrintersList().split(',');
//console.log(printers);
for (var i = 0; i < printers.length; ++i) {
if (printers[i].toLowerCase().indexOf(PRINTER_NAME.toLowerCase()) != -1) {
return printers[i];
}
}
for (var i = 0; i < printers.length; ++i) {
if (printers[i].toLowerCase().indexOf(PRINTER_FALLBACK_NAME.toLowerCase()) != -1) {
return printers[i];
}
}
if (printers.length > 0) {
return printers[0];
}
return '';
}