Jump to content
thirty bees forum

Pedalman

Silver member
  • Posts

    460
  • Joined

  • Last visited

  • Days Won

    5

Everything posted by Pedalman

  1. Perhaps this week. We will see.
  2. Sunnytoo just wrote we should use Prestashop 1.8 and they would not offer a Thirtybees version of their theme Panda. I am disappointed since I really waited for it and am now in the rain again. I do not know if there are any themes out we can use with TB despite the default one.
  3. Can you please link me to it? I just found https://github.com/mollie/PrestaShop1.6/releases Version 4.5.3 Latest
  4. @30knees I like very much the option to fill the newsletter with products from the db. I am with Cleverreach and it is too much hassle to copy and paste all product links and image links manually since it has no access to my 'db'. If I got it right, this email module runs on your host, right? If it runs on your host where your shop runs, you do not fear that it might be 'blocked' in anyway? I heard that it could happen and that it would be best therefore to send email newsletter via a service with its own domain.
  5. I am using since two years`? the PS version: V3.5.5 **************** But I thought that the module development for PS V1.6 and TB stopped in 2021, too? I am now very confused why you use V3.17. And moreover, I found a git repo 'mollie/Prestashop1.6" and it says: Version 4.5.3 Latest Changes in release 4.5.3 GitHub Release notes: 1.6.1.x - 1.6.x.x Compatible with PHP: 5.6.x - 7.3.x OPTIMIZATION Fixed href issue where html was escaped Removed reference variables from translations. Fixed issue where not secure credit card would sometimes throw error on checkout. Fixed issue where on php5.6 order api would not change status in some cases. It says it is not compatible with php8.x and as far as I can remember there were endless issues with the mollie module in those days. Active development for PS1.7+ seems to be much more stable. So, I hoped we could expect to use an up-to-date mollie module for Thirtybees, too. Mollie has become a big PSP in Europe.
  6. Seems that Mollie module migration for TB is not coming. But who knows.. You talk about PayPal module issues. Are you referring to the PS or TB version?
  7. Kurz nachgehakt, das PS PayPalPlus modul wird auch mit Datakick's CHEX funktionieren? Meine Planung sieht vor, Mollie als PSP für Klarna durch PayPalPlus mit Rechnungskauf zu ersetzen. Hauptsächlich, weil das Molliemodul für PS1.6x bzw TB sehr alt ist und ich mir erhoffe, ein paar Gebühren zu sparen. Interessant ist weiterhin, wie PayPal seine Gebühren für 'andere' Einkäufe als PayPal abbucht. Bisher ist es für die Buchhaltung sehr einfach und sie ist auf die Transaktionslisten von PayPal optimiert. Hier wäre es sehr ärgerlich, wenn das durcheinander käme und geändert werden müsste.
  8. Once I read that a native Mollie module is in development. Can we still expect its release, or is development on it stalled?
  9. I run TB 1.4 stable since last year and wanted to configure the payment module Mollie today, but I ran into infamous error 500. Can somebody please help me with that? filename /_adminfolder/index.php controller AdminModules token configure mollie tab_module payments_gateways module_name mollie Adresse Status 500 Internal Server Error VersionHTTP/2 Übertragen91,78 kB (91,63 kB Größe) Referrer Policystrict-origin-when-cross-origin Anfrage-PrioritätHighest PS: I still hope that TB will receive its native Mollie module in sort time.
  10. Pedalman

    PANDA theme

    Hello, I am on tour so to speak but I stumbled upon the Panda page of Sunnytoo and saw in the news block on the right sight that there are news about Panda and Thirtybees. Namely, Panda V1.5: Panda theme v1.5.0 for Thirtybees v1.1.0 is released, to use it you have to upgrade your TB to v1.1.0 first, check the "Changelog" tab on Panda theme page for more info. May be it is old news. If so, I am sorry.
  11. I like to ask here what web server extension you suggest from the options my Host offers to me: mod_http2 mod_deflate mod_brotli mod_pagespeed As I understand it these have to be utilized via .htaccess and maybe most shop owners use the standard one that TB creates....
  12. Great news that we can rely on new techniques to boost loading performance of our shops (on customer's side)! However, I checked my consoleH (host: Hetzner) and I can or better have the php option ACPu (and OPcache ?!) activated. Redis needs a manual install and I do not know if I have to manage it or configure it after I did install it... Also I do not understand why we still have the option to use ACP when there is ACPu. Moreover, I as a normal merchant never understood why there are two categories in the performance options: Smarty - Application-Cache Server-Side Caching Full-Page Cache (that is said to have never really worked ? and we were told to deactivate it fore sure, as far as I know)
  13. I just wanted to know, if it is still being supported, before I have a look into it. Most likely, I will need support due to Databack's comment on payment options integration in the checkout. I am using since two years Chex and if I got it right I might run into issues.
  14. I will give it a try musicmaster. Thank you for still supporting your great tool! PS: Are you with Panda or Bootstrap5 theme? (pm)
  15. Well, I am pretty certain that there are lots of old db entries from modules etc we dont use for a long time. But I am just a merchant and think that I should therefore install a fresh installation and migrate shop data (only) to get rid of old entries.
  16. Hello has this project moved to somewhere else or is development stalled at the moment? thank you
  17. No, no, we just began 10 years ago with PS1.x, and I was one of the first who migrated to TB. I am running now TB1.4 stable, but am tempted to make a clean vanilla installation of TB bleeding edge and a new theme (problably the often mentioned Cisero theme). I then need to migrate my shop data to the new installation (maybe with some 3rd party module I like to continue to use). I know about the great Prestools_Suite but must admit though I am a supporter, I never got really warm with the module.
  18. Nichtsdestotrotz, ist der Shopbetreiber, der kein Design-Programierkünsterl ist, vielleicht ein wenig mit den vorhanden Möglichkeiten überfordert. Eine vielleicht erstmal rudimentäre aber nutzbare Möglichkeit, seine Startseite, schnell zu ändern wäre schon schön.
  19. Can I use it to transfer my live TB installation that derives from PS 1.3x times into a fresh TB1.4 or TB1.5 installation?
  20. I am very interested to get away from our GDPR cookie solution that is depending on an external service. I have no clue but could it be that both of the above scripts could improve web page loading times if they are hosted locally? Do you run on of the above? Do we as merchants need to track the made options of customers in any way (TB db table)?
  21. "I try to, but the lack of accuracy in calculating actual shipping costs restricts it's accuracy and effectiveness." .... would be really great if we could rely on this table since it's shown on the main dashboard and that very prominently.
  22. I like to see the possibility to hide corporate banking address information via button, so the hidden fields only appear if the customer activates the button because he needs to fill those corporate data. Other customers do not need to see VAT field etc.
  23. Thank you, I got that working. Just out of curiosity, I tried to copy the addtions to an override. Never did that before, so I like to ask, if the following is fine, or if it even could be made more concise. <?php class HTMLTemplateInvoiceCore extends HTMLTemplateCore { public function getContent() { $invoiceAddressPatternRules = json_decode(Configuration::get('PS_INVCE_INVOICE_ADDR_RULES'), true); $deliveryAddressPatternRules = json_decode(Configuration::get('PS_INVCE_DELIVERY_ADDR_RULES'), true); $invoiceAddress = new Address((int) $this->order->id_address_invoice); $country = new Country((int) $invoiceAddress->id_country); $formattedInvoiceAddress = AddressFormat::generateAddress($invoiceAddress, $invoiceAddressPatternRules, '<br />', ' '); $deliveryAddress = null; $formattedDeliveryAddress = ''; if (isset($this->order->id_address_delivery) && $this->order->id_address_delivery) { $deliveryAddress = new Address((int) $this->order->id_address_delivery); $formattedDeliveryAddress = AddressFormat::generateAddress($deliveryAddress, $deliveryAddressPatternRules, '<br />', ' '); } $customer = new Customer((int) $this->order->id_customer); $carrier = new Carrier((int) $this->order->id_carrier); $orderDetails = $this->order_invoice->getProducts(); $order = new Order($this->order_invoice->id_order); $hasDiscount = false; foreach ($orderDetails as $id => &$orderDetail) { // Find out if column 'price before discount' is required if ($orderDetail['reduction_amount_tax_excl'] > 0) { $hasDiscount = true; $orderDetail['unit_price_tax_excl_before_specific_price'] = $orderDetail['unit_price_tax_excl_including_ecotax'] + $orderDetail['reduction_amount_tax_excl']; } elseif ($orderDetail['reduction_percent'] > 0) { $hasDiscount = true; $orderDetail['unit_price_tax_excl_before_specific_price'] = (100 * $orderDetail['unit_price_tax_excl_including_ecotax']) / (100 - $orderDetail['reduction_percent']); } // Set tax_code $taxes = OrderDetail::getTaxListStatic($id); $taxTemp = []; foreach ($taxes as $tax) { $obj = new Tax($tax['id_tax']); $taxTemp[] = sprintf($this->l('%1$s%2$s%%'), (float) round($obj->rate, 3), '&nbsp;'); } $orderDetail['order_detail_tax'] = $taxes; $orderDetail['order_detail_tax_label'] = implode(', ', $taxTemp); } unset($taxTemp); unset($orderDetail); if (Configuration::get('PS_PDF_IMG_INVOICE')) { foreach ($orderDetails as &$orderDetail) { if ($orderDetail['image'] instanceof Image) { $imageId = (int)$orderDetail['image']->id; $orderDetail['image_tag'] = preg_replace( '/\.*'.preg_quote(__PS_BASE_URI__, '/').'/', _PS_ROOT_DIR_.DIRECTORY_SEPARATOR, ImageManager::getProductImageThumbnailTag($imageId, false), 1 ); $imagePath = ImageManager::getProductImageThumbnailFilePath($imageId); if (file_exists($imagePath)) { $orderDetail['image_size'] = getimagesize($imagePath); } else { $orderDetail['image_size'] = false; } } } unset($orderDetail); // don't overwrite the last order_detail later } $cartRules = $this->order->getCartRules(); $freeShipping = false; foreach ($cartRules as $key => $cartRule) { if ($cartRule['free_shipping']) { $freeShipping = true; /** * Adjust cart rule value to remove the amount of the shipping. * We're not interested in displaying the shipping discount as it is already shown as "Free Shipping". */ $cartRules[$key]['value_tax_excl'] -= $this->order_invoice->total_shipping_tax_excl; $cartRules[$key]['value'] -= $this->order_invoice->total_shipping_tax_incl; /** * Don't display cart rules that are only about free shipping and don't create * a discount on products. */ if ($cartRules[$key]['value'] == 0) { unset($cartRules[$key]); } } } $productTaxes = 0; foreach ($this->order_invoice->getProductTaxesBreakdown($this->order) as $details) { $productTaxes += $details['total_amount']; } $productDiscountsTaxExcl = $this->order_invoice->total_discount_tax_excl; $productDiscountsTaxIncl = $this->order_invoice->total_discount_tax_incl; if ($freeShipping) { $productDiscountsTaxExcl -= $this->order_invoice->total_shipping_tax_excl; $productDiscountsTaxIncl -= $this->order_invoice->total_shipping_tax_incl; } $productsAfterDiscountsTaxExcl = $this->order_invoice->total_products - $productDiscountsTaxExcl; $productsAfterDiscountsTaxIncl = $this->order_invoice->total_products_wt - $productDiscountsTaxIncl; $shippingTaxExcl = $freeShipping ? 0 : $this->order_invoice->total_shipping_tax_excl; $shippingTaxIncl = $freeShipping ? 0 : $this->order_invoice->total_shipping_tax_incl; $shippingTaxes = $shippingTaxIncl - $shippingTaxExcl; $wrappingTaxes = $this->order_invoice->total_wrapping_tax_incl - $this->order_invoice->total_wrapping_tax_excl; $totalTaxes = $this->order_invoice->total_paid_tax_incl - $this->order_invoice->total_paid_tax_excl; $footer = [ 'products_before_discounts_tax_excl' => $this->order_invoice->total_products, 'product_discounts_tax_excl' => $productDiscountsTaxExcl, 'products_after_discounts_tax_excl' => $productsAfterDiscountsTaxExcl, 'products_before_discounts_tax_incl' => $this->order_invoice->total_products_wt, 'product_discounts_tax_incl' => $productDiscountsTaxIncl, 'products_after_discounts_tax_incl' => $productsAfterDiscountsTaxIncl, 'product_taxes' => $productTaxes, 'shipping_tax_excl' => $shippingTaxExcl, 'shipping_taxes' => $shippingTaxes, 'shipping_tax_incl' => $shippingTaxIncl, 'wrapping_tax_excl' => $this->order_invoice->total_wrapping_tax_excl, 'wrapping_taxes' => $wrappingTaxes, 'wrapping_tax_incl' => $this->order_invoice->total_wrapping_tax_incl, 'ecotax_taxes' => $totalTaxes - $productTaxes - $wrappingTaxes - $shippingTaxes, 'total_taxes' => $totalTaxes, 'total_paid_tax_excl' => $this->order_invoice->total_paid_tax_excl, 'total_paid_tax_incl' => $this->order_invoice->total_paid_tax_incl, ]; $decimals = 0; if ((new Currency($this->order->id_currency))->decimals) { $decimals = Configuration::get('PS_PRICE_DISPLAY_PRECISION'); } foreach ($footer as $key => $value) { $footer[$key] = Tools::ps_round( $value, $decimals, $this->order->round_mode ); } $displayProductImages = Configuration::get('PS_PDF_IMG_INVOICE'); $taxExcludedDisplay = Group::getPriceDisplayMethod($customer->id_default_group); $layout = $this->computeLayout(['has_discount' => $hasDiscount]); $legalFreeText = Hook::exec('displayInvoiceLegalFreeText', ['order' => $this->order]); if (!$legalFreeText) { $legalFreeText = Configuration::get('PS_INVOICE_LEGAL_FREE_TEXT', (int) Context::getContext()->language->id, null, (int) $this->order->id_shop); } $data = [ 'order' => $this->order, 'order_invoice' => $this->order_invoice, 'order_details' => $orderDetails, 'carrier' => $carrier, 'cart_rules' => $cartRules, 'delivery_address' => $formattedDeliveryAddress, 'invoice_address' => $formattedInvoiceAddress, 'addresses' => ['invoice' => $invoiceAddress, 'delivery' => $deliveryAddress], 'tax_excluded_display' => $taxExcludedDisplay, 'display_product_images' => $displayProductImages, 'layout' => $layout, 'customer' => $customer, 'footer' => $footer, 'legal_free_text' => $legalFreeText, 'other' => $invoiceAddress->other, 'other2' => $deliveryAddress->other ]; $this->smarty->assign($data); $tpls = [ 'style_tab' => $this->smarty->fetch($this->getTemplate('invoice.style-tab')), 'addresses_tab' => $this->smarty->fetch($this->getTemplate('invoice.addresses-tab')), 'summary_tab' => $this->smarty->fetch($this->getTemplate('invoice.summary-tab')), 'product_tab' => $this->smarty->fetch($this->getTemplate('invoice.product-tab')), 'tax_tab' => $this->getTaxTabContent(), 'payment_tab' => $this->smarty->fetch($this->getTemplate('invoice.payment-tab')), 'note_tab' => $this->smarty->fetch($this->getTemplate('invoice.note-tab')), 'total_tab' => $this->smarty->fetch($this->getTemplate('invoice.total-tab')), 'shipping_tab' => $this->smarty->fetch($this->getTemplate('invoice.shipping-tab')), ]; $this->smarty->assign($tpls); return $this->smarty->fetch($this->getTemplateByCountry($country->iso_code)); } }
  24. I just managed to add the code to determine the language via the form Thirtybees offers natively in order to add custom html css js code:
  25. How did it go? I am looking for a Google Reviews integration, too. At the moment I have it integrated via an old version for an GTM module from Prestashop. Issue is that the module presents customers the badge in English and our shop is hosted in Germany. I have no clue how to set the review module to a specific language, e.g. German.
×
×
  • Create New...