Jump to content

PasiniOnline

Members
  • Posts

    21
  • Joined

  • Last visited

PasiniOnline's Achievements

Newbie

Newbie (1/14)

0

Reputation

  1. Hi thanks for your reply. I attach two images: • A screenshot of product_lang table which shows the link_rewrite • A screenshot of the product in the front of house which shows it is missing. Only difference is the category is added in the shop. Would getting rid of that help?
  2. Hi. Using Prestashop 1.5.6 on Apache. Have finished uploading products and every product appears in the category list but random products return the following error when you try to view them: There is 1 error Product not found There really doesn't seem to be any pattern to it. And about a third of the products seem to be affected. If I manually change the URL through the back end, the products work. But I want to keep the URLs how they are and even so manually changing them is out of the question as I have over 7,000 products. I believe it must be something to do with the Pretty URLs module as when I turn it off, products work but with a URL I don't want to keep. Take a look for yourselves: www.myiconart.com Any help is greatly appreciated.
  3. Hi, Have been receving this error from customers who are using the PayPal Pro payment option when validating their order. "Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting ')' in /home/georgea2/public_html/ modules/paypalpro/validation.php on line 54" No code has been touched in many months so I'm guessing this may be a server issue. I am using Prestashop 1.5.6.0 Any help would be greatly appreciated. Thanks.
  4. I should probably also state that this is the line of code that calls the logo: <img src="{if $conf.logo_invoice}{$conf.logo_invoice}{else}{$conf.logo}{/if}" /></div>
  5. Hi, My client has a multistore with around 7 shops. When they click on a specific store and then print the invoice the shop logo comes up fine on the PDF. When they haven't specified an exact store, and have left it on 'all stores' then the logo is replaced with a red 'X' because it cannot call the correct logo. Even though it is simple to specify a store and then print the invoice, they want it to be able to print invoices with the correct store logo without specifying the store. Is there anyway I can adapt the invoice template to call the correct logo for the correct shop when it is set to 'all stores'. Using Prestashop 1.5.6.1 on Apache. Thanks.
  6. Hi, I have my ajax cart in my header, and would like it to remain collapsed at all times, and only expanded when a user hovers over it. Everything works except on page load at which time the cart remains expanded until hovered over. Can anyone help me to keep the cart collapsed on page load? Using Prestashop 1.5.3 and my ajaxcart.js file I have pasted below, as i'm certain this is where the problem lies. /* * 2007-2012 PrestaShop * * NOTICE OF LICENSE * * This source file is subject to the Academic Free License (AFL 3.0) * that is bundled with this package in the file LICENSE.txt. * It is also available through the world-wide-web at this URL: * http://opensource.org/licenses/afl-3.0.php * If you did not receive a copy of the license and are unable to * obtain it through the world-wide-web, please send an email * to [email protected] so we can send you a copy immediately. * * DISCLAIMER * * Do not edit or add to this file if you wish to upgrade PrestaShop to newer * versions in the future. If you wish to customize PrestaShop for your * needs please refer to http://www.prestashop.com for more information. * * @author PrestaShop SA <[email protected]> * @copyright 2007-2012 PrestaShop SA * @version Release: $Revision: 7009 $ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) * International Registered Trademark & Property of PrestaShop SA */ // Retrocompatibility with 1.4 if (typeof baseUri === "undefined" && typeof baseDir !== "undefined") baseUri = baseDir; //JS Object : update the cart by ajax actions var ajaxCart = { nb_total_products: 0, //override every button in the page in relation to the cart overrideButtonsInThePage : function(){ //for every 'add' buttons... $('.ajax_add_to_cart_button').unbind('click').click(function(){ var idProduct = $(this).attr('rel').replace('ajax_id_product_', ''); if ($(this).attr('disabled') != 'disabled') ajaxCart.add(idProduct, null, false, this); return false; }); //for product page 'add' button... $('body#product p#add_to_cart input').unbind('click').click(function(){ ajaxCart.add( $('#product_page_product_id').val(), $('#idCombination').val(), true, null, $('#quantity_wanted').val(), null); return false; }); //for 'delete' buttons in the cart block... $('#cart_block_list .ajax_cart_block_remove_link').unbind('click').click(function(){ // Customized product management var customizationId = 0; var productId = 0; var productAttributeId = 0; if ($($(this).parent().parent()).attr('name') == 'customization') // Reverse two levels: a >> div >> li var customizableProductDiv = $($(this).parent().parent()).find("div[id^=deleteCustomizableProduct_]"); else var customizableProductDiv = $($(this).parent()).find("div[id^=deleteCustomizableProduct_]"); if (customizableProductDiv && $(customizableProductDiv).length) { $(customizableProductDiv).each(function(){ var ids = $(this).attr('id').split('_'); if (typeof(ids[1]) != 'undefined') { customizationId = parseInt(ids[1]); productId = parseInt(ids[2]); if (typeof(ids[3]) != 'undefined') productAttributeId = parseInt(ids[3]); return false; } }); } // Common product management if (!customizationId) { //retrieve idProduct and idCombination from the displayed product in the block cart var firstCut = $(this).parent().parent().attr('id').replace('cart_block_product_', ''); firstCut = firstCut.replace('deleteCustomizableProduct_', ''); ids = firstCut.split('_'); productId = parseInt(ids[0]); if (typeof(ids[1]) != 'undefined') productAttributeId = parseInt(ids[1]); } var idAddressDelivery = $(this).parent().parent().attr('id').match(/.*_\d+_\d+_(\d+)/)[1]; // Removing product from the cart ajaxCart.remove(productId, productAttributeId, customizationId, idAddressDelivery); return false; }); }, // try to expand the cart expand : function(){ if ($('#cart_block #cart_block_list').hasClass('collapsed')) { $('#header #cart_block #cart_block_summary').slideUp(200, function(){ $(this).addClass('collapsed').removeClass('expanded'); $('#header #cart_block #cart_block_list').slideDown({ duration: 450, complete: function(){$(this).addClass('expanded').removeClass('collapsed');} }); }); // toogle the button expand/collapse button $('#cart_block h4 span#block_cart_expand').fadeOut('slow', function(){ $('#cart_block h4 span#block_cart_collapse').fadeIn('fast'); }); // save the expand statut in the user cookie $.ajax({ type: 'GET', url: baseDir + 'modules/blockcart/blockcart-set-collapse.php', async: true, data: 'ajax_blockcart_display=expand' + '&rand=' + new Date().getTime() }); } }, // Fix display when using back and previous browsers buttons refresh : function(){ $.ajax({ type: 'GET', url: baseUri, async: true, cache: false, dataType : "json", data: 'controller=cart&ajax=true&token=' + static_token, success: function(jsonData) { ajaxCart.updateCart(jsonData); } }); }, // try to collapse the cart collapse : function(){ if ($('#cart_block #cart_block_list').hasClass('expanded')) { $('#header #cart_block #cart_block_list').slideUp('slow', function(){ $(this).addClass('collapsed').removeClass('expanded'); $('#header #cart_block #cart_block_summary').slideDown(450, function(){ $(this).addClass('expanded').removeClass('collapsed'); }); }); $('#cart_block h4 span#block_cart_collapse').fadeOut('slow', function(){ $('#cart_block h4 span#block_cart_expand').fadeIn('fast'); }); // save the expand statut in the user cookie $.ajax({ type: 'GET', url: baseDir + 'modules/blockcart/blockcart-set-collapse.php', async: true, data: 'ajax_blockcart_display=collapse' + '&rand=' + new Date().getTime() }); } }, // Update the cart information updateCartInformation : function (jsonData, addedFromProductPage) { ajaxCart.updateCart(jsonData); //reactive the button when adding has finished if (addedFromProductPage) $('body#product p#add_to_cart input').removeAttr('disabled').addClass('exclusive').removeClass('exclusive_disabled'); else $('.ajax_add_to_cart_button').removeAttr('disabled'); }, // add a product in the cart via ajax add : function(idProduct, idCombination, addedFromProductPage, callerElement, quantity, whishlist){ if (addedFromProductPage && !checkCustomizations()) { alert(fieldRequired); return ; } emptyCustomizations(); //disabled the button when adding to do not double add if user double click if (addedFromProductPage) { $('body#product p#add_to_cart input').attr('disabled', true).removeClass('exclusive').addClass('exclusive_disabled'); $('.filled').removeClass('filled'); } else $(callerElement).attr('disabled', true); if ($('#cart_block #cart_block_list').hasClass('collapsed')) this.expand(); //send the ajax request to the server $.ajax({ type: 'POST', url: baseUri, async: true, cache: false, dataType : "json", data: 'controller=cart&add=1&ajax=true&qty=' + ((quantity && quantity != null) ? quantity : '1') + '&id_product=' + idProduct + '&token=' + static_token + ( (parseInt(idCombination) && idCombination != null) ? '&ipa=' + parseInt(idCombination): ''), success: function(jsonData,textStatus,jqXHR) { // add appliance to whishlist module if (whishlist && !jsonData.errors) WishlistAddProductCart(whishlist[0], idProduct, idCombination, whishlist[1]); // add the picture to the cart var $element = $(callerElement).parent().parent().find('a.product_image img,a.product_img_link img'); if (!$element.length) $element = $('#bigpic'); var $picture = $element.clone(); var pictureOffsetOriginal = $element.offset(); if ($picture.size()) $picture.css({'position': 'absolute', 'top': pictureOffsetOriginal.top, 'left': pictureOffsetOriginal.left}); var pictureOffset = $picture.offset(); if ($('#cart_block').offset().top && $('#cart_block').offset().left) var cartBlockOffset = $('#cart_block').offset(); else var cartBlockOffset = $('#shopping_cart').offset(); // Check if the block cart is activated for the animation if (cartBlockOffset != undefined && $picture.size()) { $picture.appendTo('body'); $picture.css({ 'position': 'absolute', 'top': $picture.css('top'), 'left': $picture.css('left'), 'z-index': 4242 }) .animate({ 'width': $element.attr('width')*0.66, 'height': $element.attr('height')*0.66, 'opacity': 0.2, 'top': cartBlockOffset.top + 30, 'left': cartBlockOffset.left + 15 }, 1000) .fadeOut(100, function() { ajaxCart.updateCartInformation(jsonData, addedFromProductPage); }); } else ajaxCart.updateCartInformation(jsonData, addedFromProductPage); }, error: function(XMLHttpRequest, textStatus, errorThrown) { alert("Impossible to add the product to the cart.\n\ntextStatus: '" + textStatus + "'\nerrorThrown: '" + errorThrown + "'\nresponseText:\n" + XMLHttpRequest.responseText); //reactive the button when adding has finished if (addedFromProductPage) $('body#product p#add_to_cart input').removeAttr('disabled').addClass('exclusive').removeClass('exclusive_disabled'); else $(callerElement).removeAttr('disabled'); } }); }, //remove a product from the cart via ajax remove : function(idProduct, idCombination, customizationId, idAddressDelivery){ //send the ajax request to the server $.ajax({ type: 'POST', url: baseUri, async: true, cache: false, dataType : "json", data: 'controller=cart&delete=1&id_product=' + idProduct + '&ipa=' + ((idCombination != null && parseInt(idCombination)) ? idCombination : '') + ((customizationId && customizationId != null) ? '&id_customization=' + customizationId : '') + '&id_address_delivery=' + idAddressDelivery + '&token=' + static_token + '&ajax=true', success: function(jsonData) { ajaxCart.updateCart(jsonData); if ($('body').attr('id') == 'order' || $('body').attr('id') == 'order-opc') deleteProductFromSummary(idProduct+'_'+idCombination+'_'+customizationId+'_'+idAddressDelivery); }, error: function() {alert('ERROR: unable to delete the product');} }); }, //hide the products displayed in the page but no more in the json data hideOldProducts : function(jsonData) { //delete an eventually removed product of the displayed cart (only if cart is not empty!) if ($('#cart_block #cart_block_list dl.products').length > 0) { var removedProductId = null; var removedProductData = null; var removedProductDomId = null; //look for a product to delete... $('#cart_block_list dl.products dt').each(function(){ //retrieve idProduct and idCombination from the displayed product in the block cart var domIdProduct = $(this).attr('id'); var firstCut = domIdProduct.replace('cart_block_product_', ''); var ids = firstCut.split('_'); //try to know if the current product is still in the new list var stayInTheCart = false; for (aProduct in jsonData.products) { //we've called the variable aProduct because IE6 bug if this variable is called product //if product has attributes if (jsonData.products[aProduct]['id'] == ids[0] && (!ids[1] || jsonData.products[aProduct]['idCombination'] == ids[1])) { stayInTheCart = true; // update the product customization display (when the product is still in the cart) ajaxCart.hideOldProductCustomizations(jsonData.products[aProduct], domIdProduct); } } //remove product if it's no more in the cart if (!stayInTheCart) { removedProductId = $(this).attr('id'); if (removedProductId != null) { var firstCut = removedProductId.replace('cart_block_product_', ''); var ids = firstCut.split('_'); $('#'+removedProductId).addClass('strike').fadeTo('slow', 0, function(){ $(this).slideUp('slow', function(){ $(this).remove(); // If the cart is now empty, show the 'no product in the cart' message and close detail if($('#cart_block dl.products dt').length == 0) { $("#header #cart_block").stop(true, true).slideUp(200); $('p#cart_block_no_products:hidden').slideDown(450); $('div#cart_block dl.products').remove(); } }); }); $('dd#cart_block_combination_of_' + ids[0] + (ids[1] ? '_'+ids[1] : '') + (ids[2] ? '_'+ids[2] : '')).fadeTo('fast', 0, function(){ $(this).slideUp('fast', function(){ $(this).remove(); }); }); } } }); } }, hideOldProductCustomizations : function (product, domIdProduct) { var customizationList = $('#cart_block #cart_block_list ul#customization_' + product['id'] + '_' + product['idCombination']); if(customizationList.length > 0) { $(customizationList).find("li").each(function(){ $(this).find("div").each(function() { var customizationDiv = $(this).attr('id'); var tmp = customizationDiv.replace('deleteCustomizableProduct_', ''); var ids = tmp.split('_'); if ((parseInt(product.idCombination) == parseInt(ids[2])) && !ajaxCart.doesCustomizationStillExist(product, ids[0])) $('#' + customizationDiv).parent().addClass('strike').fadeTo('slow', 0, function(){ $(this).slideUp('slow'); $(this).remove(); }); }); }); } var removeLinks = $('#cart_block_product_' + domIdProduct).find('a.ajax_cart_block_remove_link'); if (!product.hasCustomizedDatas && !removeLinks.length) $('#' + domIdProduct + ' span.remove_link').html('<a class="ajax_cart_block_remove_link" rel="nofollow" href="' + baseUri + '?controller=cart&delete&id_product=' + product['id'] + '&ipa=' + product['idCombination'] + '&token=' + static_token + '"> </a>'); if (parseFloat(product.price_float) <= 0) $('#' + domIdProduct + ' span.remove_link').html(''); }, doesCustomizationStillExist : function (product, customizationId) { var exists = false; $(product.customizedDatas).each(function() { if (this.customizationId == customizationId) { exists = true; // This return does not mean that we found nothing but simply break the loop return false; } }); return (exists); }, //refresh display of vouchers (needed for vouchers in % of the total) refreshVouchers : function (jsonData) { if (typeof(jsonData.discounts) == 'undefined' || jsonData.discounts.length == 0) $('#vouchers').hide(); else { $('#vouchers tbody').html(''); for (i=0;i<jsonData.discounts.length;i++) { if (parseFloat(jsonData.discounts.price_float) > 0) { var delete_link = ''; if (jsonData.discounts.code.length) delete_link = '<a class="delete_voucher" href="'+jsonData.discounts.link+'" title="'+delete_txt+'"><img src="'+img_dir+'icon/delete.gif" alt="'+delete_txt+'" class="icon" /></a>'; $('#vouchers tbody').append($( '<tr class="bloc_cart_voucher" id="bloc_cart_voucher_'+jsonData.discounts.id+'">' +' <td class="quantity">1x</td>' +' <td class="name" title="'+jsonData.discounts.description+'">'+jsonData.discounts.name+'</td>' +' <td class="price">-'+jsonData.discounts.price+'</td>' +' <td class="delete">' + delete_link + '</td>' +'</tr>' )); } } $('#vouchers').show(); } }, // Update product quantity updateProductQuantity : function (product, quantity) { $('dt#cart_block_product_' + product.id + '_' + (product.idCombination ? product.idCombination : '0')+ '_' + (product.idAddressDelivery ? product.idAddressDelivery : '0') + ' .quantity').fadeTo('fast', 0, function() { $(this).text(quantity); $(this).fadeTo('fast', 1, function(){ $(this).fadeTo('fast', 0, function(){ $(this).fadeTo('fast', 1, function(){ $(this).fadeTo('fast', 0, function(){ $(this).fadeTo('fast', 1); }); }); }); }); }); }, //display the products witch are in json data but not already displayed displayNewProducts : function(jsonData) { //add every new products or update displaying of every updated products $(jsonData.products).each(function(){ //fix ie6 bug (one more item 'undefined' in IE6) if (this.id != undefined) { //create a container for listing the products and hide the 'no product in the cart' message (only if the cart was empty) if ($('div#cart_block dl.products').length == 0) { $('p#cart_block_no_products').before('<dl class="products"></dl>'); $('p#cart_block_no_products').hide(); } //if product is not in the displayed cart, add a new product's line var domIdProduct = this.id + '_' + (this.idCombination ? this.idCombination : '0') + '_' + (this.idAddressDelivery ? this.idAddressDelivery : '0'); var domIdProductAttribute = this.id + '_' + (this.idCombination ? this.idCombination : '0'); if ($('#cart_block dt#cart_block_product_'+ domIdProduct ).length == 0) { var productId = parseInt(this.id); var productAttributeId = (this.hasAttributes ? parseInt(this.attributes) : 0); var content = '<dt class="hidden" id="cart_block_product_' + domIdProduct + '">'; content += '<span class="quantity-formated"><span class="quantity">' + this.quantity + '</span>x</span>'; var name = (this.name.length > 12 ? this.name.substring(0, 10) + '...' : this.name); content += '<a href="' + this.link + '" title="' + this.name + '">' + name + '</a>'; if (parseFloat(this.price_float) > 0) content += '<span class="remove_link"><a rel="nofollow" class="ajax_cart_block_remove_link" href="' + baseUri + '?controller=cart&delete&id_product=' + productId + '&token=' + static_token + (this.hasAttributes ? '&ipa=' + parseInt(this.idCombination) : '') + '"> </a></span>'; else content += '<span class="remove_link"></span>'; content += '<span class="price">' + (parseFloat(this.price_float) > 0 ? this.priceByLine : freeProductTranslation) + '</span>'; content += '</dt>'; if (this.hasAttributes) content += '<dd id="cart_block_combination_of_' + domIdProduct + '" class="hidden"><a href="' + this.link + '" title="' + this.name + '">' + this.attributes + '</a>'; if (this.hasCustomizedDatas) content += ajaxCart.displayNewCustomizedDatas(this); if (this.hasAttributes) content += '</dd>'; $('#cart_block dl.products').append(content); } //else update the product's line else { var jsonProduct = this; if($('dt#cart_block_product_' + domIdProduct + ' .quantity').text() != jsonProduct.quantity || $('dt#cart_block_product_' + domIdProduct + ' .price').text() != jsonProduct.priceByLine) { // Usual product if (parseFloat(this.price_float) > 0) $('dt#cart_block_product_' + domIdProduct + ' .price').text(jsonProduct.priceByLine); else $('dt#cart_block_product_' + domIdProduct + ' .price').html(freeProductTranslation); ajaxCart.updateProductQuantity(jsonProduct, jsonProduct.quantity); // Customized product if (jsonProduct.hasCustomizedDatas) { customizationFormatedDatas = ajaxCart.displayNewCustomizedDatas(jsonProduct); if (!$('#cart_block ul#customization_' + domIdProductAttribute).length) { if (jsonProduct.hasAttributes) $('#cart_block dd#cart_block_combination_of_' + domIdProduct).append(customizationFormatedDatas); else $('#cart_block dl.products').append(customizationFormatedDatas); } else { $('#cart_block ul#customization_' + domIdProductAttribute).html(''); $('#cart_block ul#customization_' + domIdProductAttribute).append(customizationFormatedDatas); } } } } $('#cart_block dl.products .hidden').slideDown(450).removeClass('hidden'); var removeLinks = $('#cart_block_product_' + domIdProduct).find('a.ajax_cart_block_remove_link'); if (this.hasCustomizedDatas && removeLinks.length) $(removeLinks).each(function() { $(this).remove(); }); } }); }, displayNewCustomizedDatas : function(product) { var content = ''; var productId = parseInt(product.id); var productAttributeId = typeof(product.idCombination) == 'undefined' ? 0 : parseInt(product.idCombination); var hasAlreadyCustomizations = $('#cart_block ul#customization_' + productId + '_' + productAttributeId).length; if (!hasAlreadyCustomizations) { if (!product.hasAttributes) content += '<dd id="cart_block_combination_of_' + productId + '" class="hidden">'; if ($('#customization_' + productId + '_' + productAttributeId).val() == undefined) content += '<ul class="cart_block_customizations" id="customization_' + productId + '_' + productAttributeId + '">'; } $(product.customizedDatas).each(function(){ var done = 0; customizationId = parseInt(this.customizationId); productAttributeId = typeof(product.idCombination) == 'undefined' ? 0 : parseInt(product.idCombination); content += '<li name="customization"><div class="deleteCustomizableProduct" id="deleteCustomizableProduct_' + customizationId + '_' + productId + '_' + (productAttributeId ? productAttributeId : '0') + '"><a rel="nofollow" class="ajax_cart_block_remove_link" href="' + baseUri + '?controller=cart&delete&id_product=' + productId + '&ipa=' + productAttributeId + '&id_customization=' + customizationId + '&token=' + static_token + '"> </a></div><span class="quantity-formated"><span class="quantity">' + parseInt(this.quantity) + '</span>x</span>'; // Give to the customized product the first textfield value as name $(this.datas).each(function(){ if (this['type'] == CUSTOMIZE_TEXTFIELD) { $(this.datas).each(function(){ if (this['index'] == 0) { content += ' ' + this.truncatedValue.replace(/<br \/>/g, ' '); done = 1; return false; } }) } }); // If the customized product did not have any textfield, it will have the customizationId as name if (!done) content += customizationIdMessage + customizationId; if (!hasAlreadyCustomizations) content += '</li>'; // Field cleaning if (customizationId) { $('#uploadable_files li div.customizationUploadBrowse img').remove(); $('#text_fields li input').attr('value', ''); } }); if (!hasAlreadyCustomizations) { content += '</ul>'; if (!product.hasAttributes) content += '</dd>'; } return (content); }, //genarally update the display of the cart updateCart : function(jsonData) { //user errors display if (jsonData.hasError) { var errors = ''; for(error in jsonData.errors) //IE6 bug fix if(error != 'indexOf') errors += jsonData.errors[error] + "\n"; alert(errors); } else { ajaxCart.updateCartEverywhere(jsonData); ajaxCart.hideOldProducts(jsonData); ajaxCart.displayNewProducts(jsonData); ajaxCart.refreshVouchers(jsonData); //update 'first' and 'last' item classes $('#cart_block dl.products dt').removeClass('first_item').removeClass('last_item').removeClass('item'); $('#cart_block dl.products dt:first').addClass('first_item'); $('#cart_block dl.products dt:not(:first,:last)').addClass('item'); $('#cart_block dl.products dt:last').addClass('last_item'); //reset the onlick events in relation to the cart block (it allow to bind the onclick event to the new 'delete' buttons added) ajaxCart.overrideButtonsInThePage(); } }, //update general cart informations everywhere in the page updateCartEverywhere : function(jsonData) { $('.ajax_cart_total').text(jsonData.productTotal); if (parseFloat(jsonData.shippingCostFloat) > 0 || jsonData.nbTotalProducts < 1) $('.ajax_cart_shipping_cost').text(jsonData.shippingCost); else $('.ajax_cart_shipping_cost').html(freeShippingTranslation); $('.ajax_cart_tax_cost').text(jsonData.taxCost); $('.cart_block_wrapping_cost').text(jsonData.wrappingCost); $('.ajax_block_cart_total').text(jsonData.total); this.nb_total_products = jsonData.nbTotalProducts; if (parseInt(jsonData.nbTotalProducts) > 0) { $('.ajax_cart_no_product').hide(); $('.ajax_cart_quantity').text(jsonData.nbTotalProducts); $('.ajax_cart_quantity').fadeIn('slow'); $('.ajax_cart_total').fadeIn('slow'); if (parseInt(jsonData.nbTotalProducts) > 1) { $('.ajax_cart_product_txt').each( function () { $(this).hide(); }); $('.ajax_cart_product_txt_s').each( function () { $(this).show(); }); } else { $('.ajax_cart_product_txt').each( function () { $(this).show(); }); $('.ajax_cart_product_txt_s').each( function () { $(this).hide(); }); } } else { $('.ajax_cart_quantity, .ajax_cart_product_txt_s, .ajax_cart_product_txt, .ajax_cart_total').each(function(){ $(this).hide(); }); $('.ajax_cart_no_product').show('slow'); } } }; function HoverWatcher(selector){ this.hovering = false; var self = this; this.isHoveringOver = function() { return self.hovering; } $(selector).hover(function() { self.hovering = true; }, function() { self.hovering = false; }) } //when document is loaded... $(document).ready(function(){ // expand/collapse management $('#block_cart_collapse').click(function(){ ajaxCart.collapse(); }); $('#block_cart_expand').click(function(){ ajaxCart.collapse(); }); ajaxCart.overrideButtonsInThePage(); ajaxCart.refresh(); /* roll over cart */ var cart_block = new HoverWatcher('#cart_block'); var shopping_cart = new HoverWatcher('#shopping_cart'); $("#shopping_cart a:first").hover( function() { $(this).css('border-radius', '3px 3px 0px 0px'); if (ajaxCart.nb_total_products > 0) $("#header #cart_block").stop(true, true).slideDown(450); }, function() { $('#shopping_cart a').css('border-radius', '3px'); setTimeout(function() { if (!shopping_cart.isHoveringOver() && !cart_block.isHoveringOver()) $("#header #cart_block").stop(true, true).slideUp(450); }, 200); } ); $("#cart_block").hover( function() { $('#shopping_cart a').css('border-radius', '3px 3px 0px 0px'); }, function() { $('#shopping_cart a').css('border-radius', '3px'); setTimeout(function() { if (!shopping_cart.isHoveringOver()) $("#header #cart_block").stop(true, true).slideUp(450); }, 200); } ); $('.delete_voucher').live('click', function() { $.ajax({url:$(this).attr('href')}); $(this).parent().parent().remove(); if ($('body').attr('id') == 'order' || $('body').attr('id') == 'order-opc') { if (typeof(updateAddressSelection) != 'undefined') updateAddressSelection(); else location.reload(); } return false; }); });
  7. Hi again Mike, below is a sample line from my CSV. As you can see there is nothing there that can cause any problems. Any thoughts would be very well received! PRODUCT ID* OPTIONS (GROUP:VALUE)* 10001 Color:Black;Size:S So if I already have a color:black and a size:s, why is it creating new ones and not respecting what is already there?
  8. Sorry Mike I think you misunderstand. I don't touch Store Commander until I have created and uploaded the combinations CSV and uploaded it through the back end. And in the back end it is creating duplicate colors and sizes which I have already made for the products that are currently on my site. I.E I have a Color:Black which I have defined each new product to have in the CSV, but when I upload that CSV through the back end, it is creating a new Black, without a swatch which doesn't appear to link to the current black at all.
  9. Hi Mike, Do you think so? Because from my perspective, the problem seems to be coming from the back end as that is what is creating the endless combinations until I have to force stop it. It's only through Store Commander that I find out it is creating all of the combinations and not respecting the attributes which the other products use. Thanks.
  10. Hi, My online store is up and running, and all is working ok until this morning when I tried to upload some new products. I use a Third Party programe to manage my combinations called Store Commander. For some reason now, I can upload products perfectly from the back end, and add images through Store Commander, but when I upload a new combinations CSV through the back end, it doesn't recognise my current attributes (which match with current products which work fine, and creates new Size and Colour attributes, albeit in their proper attribute groups. For example, I have a colour black, but when I upload a new combinations CSV to a new product, it creates a new black, and a new size and never seems to end. By this I mean once it has created these new attributes, it goes back and creates them again and again for every product until I have to cancel the CSV upload. Also, in my back end I have just noticed the following error under the combinations tab: Warning : Invalid argument supplied for foreach() in /home/georgea2/public_html/myiconadmin/tabs/AdminProducts.php on line 3202 This means I can't even manage the combinations properly from the back end. Can anyone help? Using prestashop 1.4.6.2
  11. Hi there, Yes here is the link http://www.myiconart.com/modules/hsbc/ I have been told that I need to supply an xml file to HSBC to check that payment processes work but I haven't the first clue of how to do that. Apparently I need to extract the xml information from the module. Does that make any sense? Thanks
  12. Hi, I have downloaded and installed an HSBC API module to take secure online payments. All was fine until I tried a test payment of a 10p product when it gave me an error code 10. I'm unable to find any literature which could help me out with this problem, has anyone got a fix? Using prestashop 1.4.6.2
  13. Hi, I have a fully working site and am happy with my URLs, however my client is insistent that when on a product page, the URL doesn't contain the category name. For example, if a certain product URL is: www.mysite.com/category/product.html They want it to read: www.mysite.com/product.html I have explained that having the category in the URL will have very little impact on SEO, they insist it is very important them. Can anyone help me achieve that goal as I've become a bit stuck on the subject. Using prestashop 1.4.6.2 Thanks
  14. Hi, I've just transferred my site from an IP on my dedicated server where I have been constucting it, but my url has the PS directory on the end. For example, the site is www.myiconart.com but you can only access it if you add the subdirectory on the end so www.myiconart.com/~georgea2 is the only way to access it. I understand that this means that the contents of my site are sitting in the wrong folder, but Filezilla won't let me move the contents to any other folder, even when I change the folder permissions. On top of that, my site files are sitting in the public_html directory which I understood was the base directory? Can anyone help me to remove the PS directory from the URL? Using prestashop 1.4.7
  15. Yeah I sort of got that idea the minute I posted the last message! Thanks ever so much, that's fixed the problem.
×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More