var price_array={}
price_array['Booklets']='Booklets|A5 Portrait|100gsm Uncoated|8 pages|50|61|100|72|250|97|500|142|1000|246-EOL-Booklets|A5 Portrait|100gsm Uncoated|12 Pages|50|65|100|82|250|118|500|184|1000|332-EOL-Booklets|A5 Portrait|100gsm Uncoated|16 Pages|50|72|100|90|250|139|500|227|1000|419-EOL-Booklets|A5 Portrait|100gsm Uncoated|20 Pages|50|78|100|97|250|161|500|271|1000|504-EOL-Booklets|A5 Portrait|100gsm Uncoated|24 Pages|50|82|100|107|250|181|500|313|1000|587-EOL-Booklets|A5 Portrait|100gsm Uncoated|28 Pages|50|86|100|114|250|203|500|355|1000|674-EOL-Booklets|A5 Portrait|130gsm Silk|8 pages|50|61|100|72|250|99|500|144|1000|252-EOL-Booklets|A5 Portrait|130gsm Silk|12 Pages|50|67|100|82|250|120|500|187|1000|339-EOL-Booklets|A5 Portrait|130gsm Silk|16 Pages|50|72|100|92|250|141|500|233|1000|427-EOL-Booklets|A5 Portrait|130gsm Silk|20 Pages|50|79|100|99|250|164|500|277|1000|515-EOL-Booklets|A5 Portrait|130gsm Silk|24 Pages|50|82|100|109|250|184|500|320|1000|601-EOL-Booklets|A5 Portrait|130gsm Silk|28 Pages|50|88|100|117|250|206|500|364|1000|689-EOL-Booklets|A5 Landscape|100gsm Uncoated|8 pages|50|61|100|72|250|97|500|142|1000|246-EOL-Booklets|A5 Landscape|100gsm Uncoated|12 Pages|50|65|100|82|250|118|500|184|1000|332-EOL-Booklets|A5 Landscape|100gsm Uncoated|16 Pages|50|72|100|90|250|139|500|227|1000|419-EOL-Booklets|A5 Landscape|100gsm Uncoated|20 Pages|50|78|100|97|250|161|500|271|1000|504-EOL-Booklets|A5 Landscape|100gsm Uncoated|24 Pages|50|82|100|107|250|181|500|313|1000|587-EOL-Booklets|A5 Landscape|100gsm Uncoated|28 Pages|50|86|100|114|250|203|500|355|1000|674-EOL-Booklets|A5 Landscape|130gsm Silk|8 pages|50|61|100|72|250|99|500|144|1000|252-EOL-Booklets|A5 Landscape|130gsm Silk|12 Pages|50|67|100|82|250|120|500|187|1000|339-EOL-Booklets|A5 Landscape|130gsm Silk|16 Pages|50|72|100|92|250|141|500|233|1000|427-EOL-Booklets|A5 Landscape|130gsm Silk|20 Pages|50|79|100|99|250|164|500|277|1000|515-EOL-Booklets|A5 Landscape|130gsm Silk|24 Pages|50|82|100|109|250|184|500|320|1000|601-EOL-Booklets|A5 Landscape|130gsm Silk|28 Pages|50|88|100|117|250|206|500|364|1000|689-EOL-Booklets|A4 Portrait|100gsm Uncoated|8 pages|50|72|100|90|250|139|500|233|1000|434-EOL-Booklets|A4 Portrait|100gsm Uncoated|12 Pages|50|82|100|107|250|181|500|318|1000|434-EOL-Booklets|A4 Portrait|100gsm Uncoated|16 Pages|50|90|100|123|250|224|500|405|1000|434-EOL-Booklets|A4 Portrait|100gsm Uncoated|20 Pages|50|97|100|139|250|268|500|491|1000|434-EOL-Booklets|A4 Portrait|100gsm Uncoated|24 Pages|50|107|100|158|250|310|500|573|1000|434-EOL-Booklets|A4 Portrait|100gsm Uncoated|28 Pages|50|114|100|174|250|352|500|660|1000|434-EOL-Booklets|A4 Portrait|130gsm Silk|8 pages|50|72|100|92|250|141|500|239|1000|442-EOL-Booklets|A4 Portrait|130gsm Silk|12 Pages|50|82|100|109|250|184|500|325|1000|598-EOL-Booklets|A4 Portrait|130gsm Silk|16 Pages|50|92|100|125|250|230|500|414|1000|598-EOL-Booklets|A4 Portrait|130gsm Silk|20 Pages|50|99|100|141|250|274|500|502|1000|598-EOL-Booklets|A4 Portrait|130gsm Silk|24 Pages|50|109|100|160|250|317|500|587|1000|598-EOL-Booklets|A4 Portrait|130gsm Silk|28 Pages|50|117|100|178|250|361|500|648|1000|598'
price_array['Carbonless Forms']='Carbonless Forms|A5|White/Pink|Black Only Single Sided|Loose Sets|250|28|500|42|1000|54|2000|78|-EOL-Carbonless Forms|A5|White/Pink|Black Only Single Sided|Pads of 50 (glued only)|2|31|5|38|10|46|20|58|-EOL-Carbonless Forms|A5|White/Pink|Black Only Single Sided|Books of 50 (top Copy perforated)|2|42|5|50|10|58|20|70|-EOL-Carbonless Forms|A5|White/Yellow|Black Only Single Sided|Loose Sets|250|28|500|42|1000|54|2000|78|-EOL-Carbonless Forms|A5|White/Yellow|Black Only Single Sided|Pads of 50 (glued only)|2|31|5|38|10|46|20|58|-EOL-Carbonless Forms|A5|White/Yellow|Black Only Single Sided|Books of 50 (top Copy perforated)|2|42|5|50|10|58|20|70|-EOL-Carbonless Forms|A5|White/Yellow/Pink|Black Only Single Sided|Loose Sets|250|29|500|43|1000|59|2000|93|-EOL-Carbonless Forms|A5|White/Yellow/Pink|Black Only Single Sided|Pads of 50 (glued only)|2|29|5|33|10|43|20|58|-EOL-Carbonless Forms|A5|White/Yellow/Pink|Black Only Single Sided|Books of 50 (top Copy perforated)|2|39|5|44|10|55|20|69|-EOL-Carbonless Forms|A5|White/Yellow/Pink/Green|Black Only Single Sided|Loose Sets|250|39|500|45|1000|62|2000|95|-EOL-Carbonless Forms|A5|White/Yellow/Pink/Green|Black Only Single Sided|Pads of 50 (glued only)|2|39|5|52|10|64|20|93||||||||-EOL-Carbonless Forms|A5|White/Yellow/Pink/Green|Black Only Single Sided|Books of 50 (top Copy perforated)|2|49|5|61|10|76|20|109||||||||-EOL-Carbonless Forms|A4|White/Pink|Black Only Single Sided|Loose Sets|250|42|500|54|1000|78|2000|128||||||||-EOL-Carbonless Forms|A4|White/Pink|Black Only Single Sided|Pads of 50 (glued only)|2|37|5|46|10|58|20|82||||||||-EOL-Carbonless Forms|A4|White/Pink|Black Only Single Sided|Books of 50 (top Copy perforated)|2|47|5|57|10|70|20|95||||||||-EOL-Carbonless Forms|A4|White/Yellow|Black Only Single Sided|Loose Sets|250|42|500|54|1000|78|2000|128||||||||-EOL-Carbonless Forms|A4|White/Yellow|Black Only Single Sided|Pads of 50 (glued only)|2|37|5|46|10|58|20|82||||||||-EOL-Carbonless Forms|A4|White/Yellow|Black Only Single Sided|Books of 50 (top Copy perforated)|2|47|5|57|10|70|20|95||||||||-EOL-Carbonless Forms|A4|White/Yellow/Pink|Black Only Single Sided|Loose Sets|250|39|500|56|1000|86|2000|151||||||||-EOL-Carbonless Forms|A4|White/Yellow/Pink|Black Only Single Sided|Pads of 50 (glued only)|2|31|5|43|10|58|20|85||||||||-EOL-Carbonless Forms|A4|White/Yellow/Pink|Black Only Single Sided|Books of 50 (top Copy perforated)|2|41|5|59|10|70|20|99||||||||-EOL-Carbonless Forms|A4|White/Yellow/Pink/Green|Black Only Single Sided|Loose Sets|250|45|500|62|1000|95|2000|161||||||||-EOL-Carbonless Forms|A4|White/Yellow/Pink/Green|Black Only Single Sided|Pads of 50 (glued only)|2|45|5|64|10|93|20|148||||||||-EOL-Carbonless Forms|A4|White/Yellow/Pink/Green|Black Only Single Sided|Books of 50 (top Copy perforated)|2|1|5|1|10|1|20|1||||||||'
price_array['Leaflets']='Leaflets|A6|130gsm Silk|Single Sided|No Fold|100|28|250|30|500|35|1000|44|2000|65|3000|79|4000|94|5000|111-EOL-Leaflets|A6|130gsm Silk|Double Sided|No Fold|100|31|250|35|500|44|1000|63|2000|92|3000|120|4000|148|5000|152-EOL-Leaflets|A6|170gsm Silk|Single Sided|No Fold|100|30|250|30|500|37|1000|44|2000|67|3000|82|4000|98|5000|117-EOL-Leaflets|A6|170gsm Silk|Double Sided|No Fold|100|32|250|35|500|45|1000|65|2000|94|3000|123|4000|152|5000|182-EOL-Leaflets|A6|300gsm Silk|Single Sided|No Fold|100|46|250|46|500|52|1000|58|2000|94|3000|106|4000|136|5000|151-EOL-Leaflets|A6|300gsm Silk|Double Sided|No Fold|100|49|250|52|500|60|1000|77|2000|121|3000|146|4000|189|5000|190-EOL-Leaflets|A5|130gsm Silk|Single Sided|No Fold|100|30|250|35|500|44|1000|65|2000|94|3000|146|4000|189|5000|190-EOL-Leaflets|A5|130gsm Silk|Double Sided|No Fold|100|32|250|44|500|63|1000|92|2000|148|3000|146|4000|189|5000|190-EOL-Leaflets|A5|130gsm Silk|Double Sided|Folded to A6|100|41|250|53|500|74|1000|106|2000|168|3000|146|4000|189|5000|190-EOL-Leaflets|A5|170gsm Silk|Single Sided|No Fold|100|30|250|37|500|44|1000|67|2000|98|3000|146|4000|189|5000|190-EOL-Leaflets|A5|170gsm Silk|Double Sided|No Fold|100|32|250|45|500|65|1000|140|2000|166|3000|146|4000|189|5000|190-EOL-Leaflets|A5|170gsm Silk|Double Sided|Folded to A6|100|41|250|54|500|76|1000|108|2000|166|3000|146|4000|189|5000|190-EOL-Leaflets|A5|300gsm Silk|Single Sided|No Fold|100|46|250|52|500|58|1000|94|2000|166|3000|146|4000|189|5000|190-EOL-Leaflets|A5|300gsm Silk|Double Sided|No Fold|100|49|250|60|500|77|1000|121|2000|166|3000|146|4000|189|5000|190-EOL-Leaflets|A5|300gsm Silk|Double Sided|Folded to A6|100|63|250|76|500|96|1000|146|2000|166|3000|146|4000|189|5000|190-EOL-Leaflets|A4|130gsm Silk|Single Sided|No Fold|100|33|250|44|500|65|1000|94|2000|166|3000|146|4000|189|5000|190-EOL-Leaflets|A4|130gsm Silk|Double Sided|No Fold|100|41|250|63|500|92|1000|148|2000|166|3000|146|4000|189|5000|190-EOL-Leaflets|A4|130gsm Silk|Double Sided|Folded to A5|100|56|250|81|500|114|1000|179|2000|166|3000|146-EOL-Leaflets|A4|170gsm Silk|Single Sided|No Fold|100|33|250|44|500|67|1000|98|2000|166|3000|146-EOL-Leaflets|A4|170gsm Silk|Double Sided|No Fold|100|42|250|65|500|94|1000|152|2000|166|3000|146-EOL-Leaflets|A4|170gsm Silk|Double Sided|Folded to A5|100|57|250|82|500|117|1000|184|2000|166|3000|146-EOL-Leaflets|A4|300gsm Silk|Single Sided|No Fold|100|49|250|58|500|94|1000|125|2000|166|3000|146-EOL-Leaflets|A4|300gsm Silk|Double Sided|No Fold|100|58|250|77|500|121|1000|180|2000|166|3000|146-EOL-Leaflets|A4|300gsm Silk|Double Sided|Folded to A5|100|72|250|95|500|143|1000|199|2000|166|3000|146-EOL-Leaflets|DL|130gsm Silk|Single Sided|No Fold|100|28|250|32|500|40|1000|50|2000|75|3000|94-EOL-Leaflets|DL|130gsm Silk|Double Sided|No Fold|100|31|250|38|500|51|1000|73|2000|110|3000|146-EOL-Leaflets|DL|170gsm Silk|Single Sided|No Fold|100|30|250|32|500|40|1000|51|2000|78|3000|98-EOL-Leaflets|DL|170gsm Silk|Double Sided|No Fold|100|32|250|38|500|52|1000|75|2000|113|3000|152-EOL-Leaflets|DL|300gsm Silk|Single Sided|No Fold|100|46|250|49|500|55|1000|64|2000|103|3000|136-EOL-Leaflets|DL|300gsm Silk|Double Sided|No Fold|100|49|250|55|500|66|1000|86|2000|138|3000|190'
price_array['Letterheads']='Letterheads|100gsm|100|33|250|43|500|63|750|78|1000|91|||||-EOL-Letterheads|120gsm|100|42|250|51|500|69|750|81|1000|104|||||-EOL-Letterheads'
var images_url_types = 0;
var pl_dropdowns_container = '';
var pl_default_product = '';
var pl_product_info_container = '';
var pl_price_container = '';
var pl_tax_container = '';
var pl_price_input = '';
var pl_net_input = '';
var pl_vat_input = '';
var pl_price_info = '';
var pl_order_btn = '';
var pl_order_popup_background = '';
var pl_order_popup = '';
var category_dropdown_count = 0;
var sid = "webshop-202405182255-105813";
function populate_container(headings_container,
dropdowns_container,
product_buy_container,
product_info_container,
price_container,
tax_container,
price_input,
net_input,
vat_input,
price_info,
order_btn,
order_popup_background,
order_popup,
images_dir,
default_product,
images_url_types = 0)
{
pl_headings_container = headings_container;
pl_dropdowns_container = dropdowns_container;
pl_product_buy_container = product_buy_container;
pl_default_product = default_product;
pl_product_info_container = product_info_container;
pl_price_container = price_container;
pl_tax_container = tax_container;
pl_price_input = price_input;
pl_net_input = net_input;
pl_vat_input = vat_input;
pl_price_info = price_info;
pl_order_btn = order_btn;
pl_order_popup_background = order_popup_background;
pl_order_popup = order_popup;
pl_default_product = default_product;
pl_images_url_types = images_url_types;
//append drop downs to container
$.ajax({
method:'post',
url:'https://www.printlogicsystem.eu/ordering/onlineshop_stripe_basket.php?func=add_to_cart&sid='+sid,
success:function(response) {
$('#pl_shopping_cart').html(response);
updateShoppingCart();
}
});
home_redirect = false;
var home_button = $(' ').attr("onclick", "shopHome();").addClass('mr-1 breadcrumb-link').text("Home").appendTo($('#pl_breadcrumbs'));
var basket_button = $(' ').css('float','right').attr("onclick", "toggleCart();").html(" ").appendTo($('#pl_breadcrumbs'));
$('#'+pl_headings_container).append('
Document Type Booklets Carbonless Forms Leaflets Letterheads
')
var buttons = '';
var vat_field = null;
$('#pl_shop_left').removeClass('col-lg-7').addClass('col-12');
$('#pl_shop_right').hide();
$('#pl_document_type').find('option').each(function() {
if($(this).val() != '') {
var value = $(this).val();
var image = value;
switch(pl_images_url_types) {
case 1: {
image = image.replace(/[\W_]+/g,"-");
image = image.toLowerCase();
image = image.replace(/-+$/,'');
} break;
case 2: {
image = image.replace(/[\W_]+/g,"-");
image = image.replace(/-+$/,'');
} break;
}
var button = $("
").addClass("col-6 col-md-4 product-block").html('');
$("#pl_products_container").append(button);
}
});
var hashproduct = decodeURI(window.location.hash.substring(1));
if(hashproduct) {
$('[data-product=\''+hashproduct+'\']').trigger('click');
}
if(default_product) {
$('[data-product=\''+default_product+'\']').trigger('click');
}
$('#'+pl_dropdowns_container).append('
');
$('#'+pl_order_btn).on("click", function() {
addToCart();
});
setProduct();
//$('#pl_category').val($('#pl_category option:first').val()).trigger('change');
}
function selectProduct(selector, value, images_dir) {
window.location.hash = value;
$('#pl_shop_left').addClass('col-lg-7').removeClass('col-12');
$('#pl_shop_right').show();
$('#pl_document_type').val(value).trigger('change');
$('#pl_products_container').hide();
$(' ').addClass('breadcrumb-separator').addClass('mr-1').html('▶').appendTo($('#pl_breadcrumbs'));
$(' ').addClass('mr-1 breadcrumb-link').text(value).appendTo($('#pl_breadcrumbs'));
var image = value;
switch(pl_images_url_types) {
case 1: {
image = image.replace(/[\W_]+/g,"-");
image = image.toLowerCase();
image = image.replace(/-+$/,'');
} break;
case 2: {
image = image.replace(/[\W_]+/g,"-");
image = image.replace(/-+$/,'');
} break;
}
var productInfo = '' + value + '
';
$('#pl_product_buttons .product-block').removeClass("isActive");
$('#pl_product_buttons').find("[data-product='"+value+"']").addClass("isActive");
$('#'+pl_product_info_container).html(productInfo);
}
function nextOrder()
{
var leavePage = true;
if($('#confirmation_printed').val() == 0) {
leavePage = false;
var r = confirm("Are you sure you want to create new order? We recommend printing this confirmation before placing next order or closing this page.");
if (r == true) {
leavePage = true;
}
}
if(leavePage) {
$('#pl_document_type').change();
var footer = 'Close Place order ';
$('#pl_form').find('.modal .modal-footer').html(footer);
closeModal();
}
}
function stripHTML(dirtyString) {
var container = document.createElement('div');
var text = document.createTextNode(dirtyString);
container.appendChild(text);
return container.innerHTML;
}
function updateShoppingCart() {
$.ajax({
type : "post",
url : "https://www.printlogicsystem.eu/ordering/onlineshop_stripe_basket.php",
data : {"func" : "get_cart_contents", "sid" : sid},
success : function(response) {
var json = JSON.parse(response);
$("#pl_cart_summary .items").html(json.items);
$("#pl_cart_summary .currency").html(json.currency);
$("#pl_cart_summary .value").html(json.value);
if(json.items > 0) {
$("#pl_cart_summary").show();
}
else {
$("#pl_cart_summary").hide();
}
}
});
}
function removeFromCart(product_id) {
$.ajax({
type : "post",
url : "https://www.printlogicsystem.eu/ordering/onlineshop_stripe_basket.php",
data : {func : "remove_from_cart", product_id : product_id, "sid" : sid},
success : function(response) {
//show the total here
var newCount = parseInt($("#pl_cart_summary .items").text()) -1;
if(newCount > 0)
{
$("#pl_cart_summary .items").text(newCount);
}
else
{
$("#pl_cart_summary .items").text("");
$("#pl_cart_summary .items").hide();
}
$("#pl_shopping_cart").html(response);
$("#pl_shopping_cart").show();
$("#pl_shopping_cart .table").show();
//updateShoppingCart();
}
});
}
function updateCart(product_id) {
$.ajax({
type : "post",
url : "https://www.printlogicsystem.eu/ordering/onlineshop_stripe_basket.php",
data : {func : "update_cart", product_id : product_id, product_quantity : $("#qty_" + product_id).val(), "sid" : sid},
success : function(response) {
$("#pl_shopping_cart").html(response);
$("#pl_shopping_cart").show();
$("#pl_shopping_cart .table").show();
//updateShoppingCart();
}
});
}
function addToCart()
{
$("#pl_shopping_cart").html(`
Loading cart. Please wait.
`);
var product = [];
product["name"] = $("#" + pl_price_info).find("li:first b").text();
product["quantity"] = parseInt($("#pl_quantity").val());
product["price"] = $("#" + pl_price_input).val();
product["tax"] = $("#" + pl_vat_input).val();
product["product_details"] = "";
$("#headings_div").find(".form-group").each(function(i, el) {
if(typeof $(el).find(":selected").text() !== "undefined") {
product["product_details"] += $(el).find(":selected").text() + "|^";
}
});
$.ajax({
type : "post",
url : "https://www.printlogicsystem.eu/ordering/onlineshop_stripe_basket.php",
data : {func : "add_to_cart", product_name : product["name"], product_quantity : product["quantity"], product_price : product["price"], product_tax : product["tax"], product_details : product["product_details"], "sid" : sid },
success : function(response) {
$("#pl_shopping_cart").html(response);
updateShoppingCart();
$("#pl_shopping_cart").show();
$("#pl_shopping_cart .table").show();
$("#pl_product_details").hide();
//toggleCart();
}
});
}
function toggleCart()
{
if($("#pl_shopping_cart").is(":visible")) {
$("#pl_products_container").show();
$("#pl_categories_container").show();
$("#pl_shopping_cart").hide();
$("#pl_shopping_cart .table").hide();
}
else {
$("#pl_product_details").hide();
$("#pl_categories_container").hide();
$("#pl_products_container").hide();
$("#pl_shopping_cart").show();
$("#pl_shopping_cart .table").show();
}
}
function shopHome(category_selected)
{
history.replaceState(null, null, ' ');
//location.reload();
//history.pushState("", document.title, window.location.pathname + window.location.search);
$('#pl_breadcrumbs').find('.breadcrumb-link').remove();
$('#pl_breadcrumbs').find('.breadcrumb-separator').remove();
if(typeof category_selected !== "undefined") {
window.location.href.split('#')[0];
$('#pl_category').val(category_selected).trigger('change');
}
else {
//window.location.href.split('#')[0];
//location;
home_button = $(' ').attr("onclick", "shopHome();").addClass('mr-1 breadcrumb-link').text("Home").appendTo($('#pl_breadcrumbs'));
$('#pl_shopping_cart').hide();
$("#pl_products_container").show();
$("#pl_categories_container").show();
$('#pl_product_details').hide();
//$('.product-block').hide();
}
//toggleCart();
}
function showCartItems() {
if($('#pl_shopping_cart .table').is(':visible')) {
$('#pl_shopping_cart .table').hide();
$('#pl_categories_container').show();
$('#pl_headings_container').hide();
$('#pl_products_container').hide();
$('#pl_product_details').hide();
}
else {
$('#pl_shopping_cart .table').show();
$('#pl_categories_container').hide();
$('#pl_headings_container').hide();
$('#pl_products_container').hide();
}
}
function orderClick()
{
showModal();
$("#pl_order_dialog .modal-body").html(`
`).scrollTop(0);
$("#pl_order_dialog .modal-title").text("Your details");
$("#pl_order_dialog .modal-footer").show();
var o_id = $("#pl_order_dialog").find('[name=create_order]').val();
$.ajax({
type : "post",
url : "https://www.printlogicsystem.eu/ordering/onlineshop_stripe_basket.php",
data : {func : "get_summary", "sid" : sid},
success : function(response) {
$("#order_totals").html(response);
updateShoppingCart();
}
});
$("#pl_order_dialog .btn-submit").attr('onclick', 'submitOrder(\'frm'+o_id+'\', 0)').text("Send order request");
/*
var product=$('#pl_document_type').val();
var desc='';
for (var i = 1; i < category_dropdown_count+1; i++)
{
desc=desc+$('#pl_label'+i).html()+": "+$('#pl_category'+i).val()+" \n";
}
$('#item_title').val(product)
$('#item_desc').val(desc)
$('#item_qty').val($('#pl_qty').val())
$('#item_price').val($('#' + pl_price_input).val())
$('#item_net').val($('#' + pl_net_input).val())
$('#item_vat').val($('#' + pl_vat_input).val())
$('#item_vat_rate').val('20')
$('#item_vat_name').val('VAT')
$('#item_id').val(0)
*/
$('#'+pl_order_popup).show();
}
function hideOrderDivs()
{
$('#'+pl_order_popup_background).hide();
$('#'+pl_order_popup).hide();
}
function createOrder()
{
var order_id = $('#order_id').val();
var order = $('#order').val();
}
function submitOrder(frmName, payment)
{
var valid = true;
if($('#order_contact_1').val() == '') {
valid = false;
$('#order_contact_1').addClass('is-invalid');
$('#order_contact_1').after('Please enter contact name
');
$('#order_contact_1').on('change', function() {
$(this).removeClass('is-invalid');
$(this).parents('.form-group').find('.invalid-feedback').remove();
});
}
if($('#order_phone_1').val() == '') {
valid = false;
$('#order_phone_1').addClass('is-invalid');
$('#order_phone_1').after('Please enter phone number
');
$('#order_phone_1').on('change', function() {
$(this).removeClass('is-invalid');
$(this).parents('.form-group').find('.invalid-feedback').remove();
});
}
if($('#order_email_1').val() == '') {
valid = false;
$('#order_email_1').addClass('is-invalid');
$('#order_email_1').after('Please enter email
');
$('#order_email_1').on('change', function() {
$(this).removeClass('is-invalid');
$(this).parents('.form-group').find('.invalid-feedback').remove();
});
}
/*
if($('#order_due_1').val() == '') {
valid = false;
$('#order_due_1').addClass('is-invalid');
$('#order_due_1').after('Please enter date
');
$('#order_due_1').on('change', function() {
$(this).removeClass('is-invalid');
$(this).parents('.form-group').find('.invalid-feedback').remove();
});
}
*/
if($('#order_shipping_address_line_1_1').val() == '') {
valid = false;
$('#order_shipping_address_line_1_1').addClass('is-invalid');
$('#order_shipping_address_line_1_1').after('Please enter at least first line of delivery address
');
$('#order_shipping_address_line_1_1').on('change', function() {
$(this).removeClass('is-invalid');
$(this).parents('.form-group').find('.invalid-feedback').remove();
});
}
if($('#order_shipping_admin_area_2_1').val() == '') {
valid = false;
$('#order_shipping_admin_area_2_1').addClass('is-invalid');
$('#order_shipping_admin_area_2_1').after('Please enter city name
');
$('#order_shipping_admin_area_2_1').on('change', function() {
$(this).removeClass('is-invalid');
$(this).parents('.form-group').find('.invalid-feedback').remove();
});
}
if($('#order_shipping_admin_area_1_1').val() == '') {
valid = false;
$('#order_shipping_admin_area_1_1').addClass('is-invalid');
$('#order_shipping_admin_area_1_1').after('Please enter state, region or county name
');
$('#order_shipping_admin_area_1_1').on('change', function() {
$(this).removeClass('is-invalid');
$(this).parents('.form-group').find('.invalid-feedback').remove();
});
}
if($('#order_shipping_postal_code_1').val() == '') {
valid = false;
$('#order_shipping_postal_code_1').addClass('is-invalid');
$('#order_shipping_postal_code_1').after('Please enter postal code
');
$('#order_shipping_postal_code_1').on('change', function() {
$(this).removeClass('is-invalid');
$(this).parents('.form-group').find('.invalid-feedback').remove();
});
}
if($('#order_shipping_country_code_1').val() == '') {
valid = false;
$('#order_shipping_country_code_1').addClass('is-invalid');
$('#order_shipping_country_code_1').after('Please select country from the list
');
$('#order_shipping_country_code_1').on('change', function() {
$(this).removeClass('is-invalid');
$(this).parents('.form-group').find('.invalid-feedback').remove();
});
}
if(valid) {
// submit form by ajax
var form = $('#'+frmName)[0];
var data = new FormData(form);
var time=new Date().getTime();
var footer = 'Close Place next order ';
$.ajax({
type: "POST",
enctype: 'multipart/form-data',
url: 'https://www.printlogicsystem.eu/ordering/onlineshop_stripe_basket.php?ol_firm_id=14608&file_code=63138b24343ef¤cy_symbol=GBP¬ification_email=mattstanfordpage601@gmail.com?t='+time+'&sid='+sid,
data: data,
processData: false,
contentType: false,
cache: false,
timeout: 600000,
success: function (data) {
$('#pl_form').find('.modal-body').html(data).scrollTop(0);
$('#pl_form').find('.modal-footer').html(footer);
},
error: function (e) {
alert("We are sorry but an error has occurred and your order has not been submitted.");
}
});
// spinning thing here
$('#pl_form').find('.modal-body').html(`
Processing data. Please wait.
`).scrollTop(0);
}
}
function changeSelects() {
$("#pl_dropdowns_container").find("select").each(function(index, item) {
var buttonsHolder = $('
').addClass("container-fluid");
var buttons = $('
').addClass("row");
$(item).find("option").each(function(subindex, option) {
if($(option).val() != '---' && $(option).val() != "undefined" && $(option).val() != "") {
var button = $(' ').addClass('btn d-flex flex-grow-1 btn-product').attr('data-value', $(option).val()).text(option.text);
if($(option).val() == $(item).val()) {
$(button).addClass("active");
}
$(button).on("click", function() {
if($(item).is('#pl_qty')) {
$(this).parents('.form-group:first').find('.active').not(this).removeClass('active');
}
$(this).addClass("active");
$(item).val($(this).attr('data-value')).trigger("change");
});
$(buttons).append(button);
}
});
$(item).addClass("d-none");
$(item).next('div').remove();
$(buttonsHolder).html(buttons);
$(item).after(buttonsHolder);
});
}
function setSelect(button, select, option) {
$(button).remove();
}
function setDropdownBtn(id, value) {
$("#pl_category"+id).val(value).trigger("change");
}
function setProductBtn(type) {
$("#pl_document_type").val(type).trigger("change");
}
function getImageUrl(dir, image, method) {
}
function setCategory()
{
var headings={};
var categories={};
var drop_down_values={};
headings['Booklets']='Document Type|Sizes|Stock|Finishing|Qty 1|Price 1|Qty 2|Price 2|Qty 3|Price 3|Qty 4|Price 4|Qty 5|Price 5';
headings['Carbonless Forms']='Document Type|Sizes|Stock|Colour|Finishing|Qty 1|Price 1|Qty 2|Price 2|Qty 3|Price 3|Qty 4|Price 4|';
headings['Leaflets']='Document Type|Sizes|Stock|Printing side|Finishing|Qty 1|Price 1|Qty 2|Price 2|Qty 3|Price 3|Qty 4|Price 4|Qty 5|Price 5|Qty 6|Price 6|Qty 7|Price 7|Qty 8|Price 8';
headings['Letterheads']='Document Type|Material/Paper|Qty 1|Price 1|Qty 2|Price 2|Qty 3|Price 3|Qty 4|Price 4|Qty 5|Price 5|||||';
var selected_category = $("#pl_category").val();
$(".product-block").each(function() {
if($(this).attr("data-product-category") == selected_category) {
//$(".btn[data-category]").removeClass("active");
$(".btn[data-category='"+selected_category+"']").addClass("active");
$(this).show();
}
else {
$(".btn[data-category!='"+selected_category+"']").removeClass("active");
$(this).hide();
}
});
if(window.location.hash ) {
history.pushState("", document.title, window.location.pathname + window.location.search);
$('#pl_breadcrumbs').find('.breadcrumb-link:last').remove();
$('#pl_breadcrumbs').find('.breadcrumb-separator:last').remove();
$('#pl_breadcrumbs').find('.breadcrumb-link:last').remove();
$('#pl_breadcrumbs').find('.breadcrumb-separator:last').remove();
$('#pl_category').val(selected_category).trigger('change');
$('#pl_product_details').hide();
}
else {
$('#pl_categories_container').hide();
$('#pl_products_container').show();
//$('#pl_product_details').show();
$('#pl_breadcrumbs').find('.breadcrumb-link:first').attr({onclick : "shopHome()"});
$(' ').addClass('breadcrumb-separator').addClass('mr-1').html('▶').appendTo($('#pl_breadcrumbs'));
var category_link = $(' ').addClass('mr-1 breadcrumb-link').attr({"data-category" : selected_category}).text(selected_category).appendTo($('#pl_breadcrumbs'));
}
}
function setProduct(images_dir)
{
var headings={};
var categories={};
var drop_down_values={};
headings['Booklets']='Document Type|Sizes|Stock|Finishing|Qty 1|Price 1|Qty 2|Price 2|Qty 3|Price 3|Qty 4|Price 4|Qty 5|Price 5';
headings['Carbonless Forms']='Document Type|Sizes|Stock|Colour|Finishing|Qty 1|Price 1|Qty 2|Price 2|Qty 3|Price 3|Qty 4|Price 4|';
headings['Leaflets']='Document Type|Sizes|Stock|Printing side|Finishing|Qty 1|Price 1|Qty 2|Price 2|Qty 3|Price 3|Qty 4|Price 4|Qty 5|Price 5|Qty 6|Price 6|Qty 7|Price 7|Qty 8|Price 8';
headings['Letterheads']='Document Type|Material/Paper|Qty 1|Price 1|Qty 2|Price 2|Qty 3|Price 3|Qty 4|Price 4|Qty 5|Price 5|||||';
category_dropdown_count=0;
vat_field = null;
var product=$('#pl_document_type').val();
$('#headings_div').html('');
$('#pl_shopping_cart .table').hide();
$('#pl_product_details').show();
if(typeof headings[product] != "undefined"){
var tmp=headings[product].split('|');
for (var i = 1; i < tmp.length; i++) {
if(tmp[i].substring(0,5)=='Price') {
break;
}
if(tmp[i].substring(0,3)=='Qty') {
break;
}
else if(tmp[i] == 'Category') {
break;
}
else if(tmp[i] == 'VAT') {
vat_field = i;
break;
}
$('#headings_div').append(''+tmp[i]+'
');
category_dropdown_count++;
}
$('#headings_div').append('Quantity
');
$('#pl_qty').trigger('change');
var topButtons = "';
if($('#pl_product_buttons').length === 0) {
$('#pl_document_type').hide();
}
setDropdowns(0);
}
}
function showModal() {
$("body").addClass("modal-open");
$("#pl_order_dialog").fadeIn(250);
$("#pl_order_dialog .modal-dialog").css({opacity : 0, left : 0-$(window).outerWidth()});
$("#pl_order_dialog .modal-dialog").animate({opacity : 1, left : 0}, 500, function() {
$("#pl_order_dialog").addClass("show");
$("#pl_order_dialog").removeClass("hide");
});
}
function closeModal() {
$("#pl_order_dialog").fadeOut(250);
$("#pl_order_dialog .modal-dialog").animate({opacity : 0, left : 0+$(window).outerWidth()}, 500, function() {
$("body").removeClass("modal-open");
$("#pl_order_dialog").addClass("hide");
$("#pl_order_dialog").removeClass("show");
});
}
function setDropdowns(n)
{
$('.select-product').remove();
if(n < category_dropdown_count)
{
for (var i = n+1; i < category_dropdown_count+1; i++)
{
$('#pl_category'+i).empty();
}
$('#'+pl_product_info_container).slideDown(250, 'swing');
$('#'+pl_product_buy_container).slideUp(250, 'swing', function() {
$('#'+pl_price_container).html(' ');
});
}
$('#pl_qty').empty();
var product=$('#pl_document_type').val();
$('.documentTypes').hide();
$("div[data-documentType='" + product +"']").show();
rows=price_array[product].split("-EOL-");
searchKey=product+"|"
for (var i = 1; i < n+1; i++) {
searchKey=searchKey+$('#pl_category'+i).val()+"|"
}
var values={};
for (var i = 0; i < rows.length; i++) {
if(rows[i].substr(0,searchKey.length)==searchKey)
{
tmp=rows[i].substr(searchKey.length).split("|");
values[tmp[0]]=1;
}
}
n=n+1;
count=0
$('#pl_category'+n).append('-- select -- ');
for (var key in values) {
$('#pl_category'+n).append(''+key+' ');
count++;
}
if(n == category_dropdown_count+1)
{
priceProduct(1);
}
changeSelects();
}
function priceProduct(flag)
{
var product=$('#pl_document_type').val();
var product = $('#pl_document_type').val();
var chosen_options = ''+product+' ';;
$('#'+pl_dropdowns_container).find('select').each(function(i, item) {
var label = $(item).parents('div:first').find('label').text();
if($(item).val() != "" && $(item).val() != "---") {
chosen_options += ''+label+' '+$(item).val()+' ';
}
});
$('#' + pl_price_info).html(chosen_options);
rows=price_array[product].split("-EOL-");
searchKey=product+"|"
for (var i = 1; i < category_dropdown_count+1; i++) {
searchKey=searchKey+$('#pl_category'+i).val()+"|"
}
for (var i = 0; i < rows.length; i++) {
if(rows[i].substr(0,searchKey.length)==searchKey)
{
tmp=rows[i].substr(searchKey.length).split("|");
var vat_rate = 20;
var offset = 0;
if(vat_field != null) {
var tmp2 = rows[i].split("|");
if(typeof(tmp2[vat_field]) !== "undefined") {
vat_rate = parseFloat(tmp2[vat_field]);
offset = 1;
}
}
if(flag==1)
{
for (var p = offset; p < tmp.length+1; p+=2)
{
var current_qty = parseInt(tmp[p]);
if(!isNaN(current_qty)) {
$('#pl_qty').append(''+tmp[p]+' ');
}
}
$('#pl_qty').find('option:first').trigger('change');
}
for (var p = offset; p < tmp.length+1; p+=2)
{
if($('#pl_qty').val()==tmp[p])
{
$('#'+pl_price_container).html(' £'+ ((parseFloat(tmp[p+1]) + (parseFloat(tmp[p+1]) * (vat_rate / 100))).toFixed(2)).replace(".00", "").toString().replace(/(\.[0-9]{2})/g, '$1 '));
$('#pl_quantity').val(tmp[p]);
if(vat_rate > 0) {
$('#'+pl_tax_container).html('Price includes £' + ((parseFloat(tmp[p+1]) * (vat_rate / 100)).toFixed(2)) + ' VAT');
}
//$('#'+pl_price_input).val(tmp[p+1]);
$('#'+pl_price_input).val((parseFloat(tmp[p+1]) + (parseFloat(tmp[p+1]) * (vat_rate / 100))).toFixed(2));
$('#'+pl_net_input).val(parseFloat(tmp[p+1]).toFixed(2));
$('#'+pl_vat_input).val((parseFloat(tmp[p+1]) * (vat_rate / 100)).toFixed(2))
$('#'+pl_order_btn).show();
$('#'+pl_product_info_container).slideUp(250, 'swing');
$('#'+pl_product_buy_container).slideDown(250, 'swing');
}
}
break
}
}
}
function validateEmail(email) {
var re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
return re.test(email);
}
function validateNumber(number)
{
var re = /^\d+$/;
tempRes = re.test(number);
if(tempRes && number.length < 5)
{
tempRes = false;
}
return tempRes;
}
function checkform(code)
{
allowed_exts = new Array(".pdf", ".eps", ".jpg", ".ai");
if($('#order_contact_'+code).val()=='' || $('#order_email_'+code).val()=='' || $('#order_phone_'+code).val()=='' || $('#order_delivery_'+code).val()=='' || $('#artwork_'+code).val() == '')
{
alert('All mandatory fields (marked with an *) must be filled in.')
}
else if(!validateNumber($('#order_phone_'+code).val()))
{
alert('Please ensure that you have entered a valid contact number (numbers only, length greater than 5 chars)');
}
else if(!validateEmail($('#order_email_'+code).val()))
{
alert('Please ensure that you have entered a valid email address');
}
else
{
fileName = $('#artwork_'+code).val();
allowed_exts = new Array(".gif", ".jpg", ".doc", ".pdf");
thisExt = (fileName.substring(fileName.lastIndexOf("."))).toLowerCase();
pass = false;
for (var i = 0; i < allowed_exts.length; i++) {
if (allowed_exts[i] == thisExt) {
pass = true;
break;
}
}
if(pass)
{
$('#frm'+code).submit();
}
else
{
alert('File type not allowed. Artwork must be .gif, .jpg, .doc or .pdf');
}
}
}