Jump to content
thirty bees forum

zen

Members
  • Posts

    431
  • Joined

  • Last visited

  • Days Won

    60

Posts posted by zen

  1. Yes..you just add the New shipping options to theses products but they should also be available to the GLS at 15 for EU. then customers can choisie GLS or cheaper for clothes and if you add another item then only GLS will be possible to use as shipping service.

    That's all

     

     

  2. I just discovered a new bug on our TB platform, I think it is there since looooong time, let me explain it :

    - Need to setup 2 vouchers, on my test they donot have any code so it is added automatically to the cart when conditons are there, my vouchers give one free Product when 5 bought, the second give one more when 10 boughts in total.

    - create an order on front office with these 2 vouchers, so add 10 products of the selected categorie, the cart is good and you can pay the correct amount.

    - go to back office Orders tab and look into the order, there are the 2 coupons in cart Rule details but the payment say that customer didn't payed enough, and the Order detail just show one of the 2 coupons in the reduction line, so only one is taken into account for Total amount of the order.. that's where the bug is.

    Please confirm or not that this bug is real and if you have any idea on how to fix it, I'll dig it when I'll got time enough for that.

  3. The problem seems to be not in the cross-selling module that works fine.. but from your module called :

    securitybooster

    this one, in order to work properly should not be cached, just try to not use the page cache at all.. I don't think you'll find it less fast than before, and don't be confused I am not talking about smarty cache, this one should still be engaged.

    • Like 1
  4. For that you can do an override in your shop,

    create a new file named : /override/classes/controller/FrontController.php

    and put that code inside :

    <?php
    
    /**
     * Class FrontControllerCore.
     *
     *  adding a fix high number for manufacturer pagination so all brands are shown in one page only
     */
    class FrontController extends FrontControllerCore
    {
    
        public function pagination($totalProducts = null)
        {
            if (!static::$initialized) {
                $this->init();
            }
    
            // Retrieve the default number of products per page and the other available selections
            $defaultProductsPerPage = max(1, (int) Configuration::get('PS_PRODUCTS_PER_PAGE'));
    		  switch ($this->php_self) {
                case 'manufacturer':
                    $defaultProductsPerPage=999; // this is the fixed high number for manufacturers per page.
                    break;
    		  }
    		
            $nArray = [$defaultProductsPerPage, $defaultProductsPerPage * 2, $defaultProductsPerPage * 5];
    
            if ((int) Tools::getValue('n') && (int) $totalProducts > 0) {
                $nArray[] = $totalProducts;
            }
            // Retrieve the current number of products per page (either the default, the GET parameter or the one in the cookie)
            $this->n = $defaultProductsPerPage;
            if (isset($this->context->cookie->nb_item_per_page) && in_array($this->context->cookie->nb_item_per_page, $nArray)) {
                $this->n = (int) $this->context->cookie->nb_item_per_page;
            }
    
            if ((int) Tools::getValue('n') && in_array((int) Tools::getValue('n'), $nArray)) {
                $this->n = (int) Tools::getValue('n');
            }
    
            // Retrieve the page number (either the GET parameter or the first page)
            $this->p = (int) Tools::getValue('p', 1);
            // If the parameter is not correct then redirect (do not merge with the previous line, the redirect is required in order to avoid duplicate content)
            if (!is_numeric($this->p) || $this->p < 1) {
                Tools::redirect($this->context->link->getPaginationLink(false, false, $this->n, false, 1, false));
            }
    
            // Remove the page parameter in order to get a clean URL for the pagination template
            $currentUrl = preg_replace('/(?:(\?)|&)p=\d+/', '$1', Tools::htmlentitiesUTF8($_SERVER['REQUEST_URI']));
    
            if ($this->n != $defaultProductsPerPage || isset($this->context->cookie->nb_item_per_page)) {
                $this->context->cookie->nb_item_per_page = $this->n;
            }
    
            $pagesNb = ceil($totalProducts / (int) $this->n);
            if ($this->p > $pagesNb && $totalProducts != 0) {
                Tools::redirect($this->context->link->getPaginationLink(false, false, $this->n, false, $pagesNb, false));
            }
    
            $range = 2; /* how many pages around page selected */
            $start = (int) ($this->p - $range);
            if ($start < 1) {
                $start = 1;
            }
    
            $stop = (int) ($this->p + $range);
            if ($stop > $pagesNb) {
                $stop = (int) $pagesNb;
            }
    
            $this->context->smarty->assign(
                [
                    'nb_products'       => $totalProducts,
                    'products_per_page' => $this->n,
                    'pages_nb'          => $pagesNb,
                    'p'                 => $this->p,
                    'n'                 => $this->n,
                    'nArray'            => $nArray,
                    'range'             => $range,
                    'start'             => $start,
                    'stop'              => $stop,
                    'current_url'       => $currentUrl,
                ]
            );
        }
    }

     

    don't forget to delete this file after :

    cache/class_index.php

    and please verify that in your BO the overrides are not desactived.

     

    Enjoy 🙂

    • Thanks 1
  5. Hello,

    I just finished a modification on the CartRules class and admin theme  + one more column in mysql table tb_cart_rule

    This function was missing for some TB users >>

    Before : Minimum amount to reach is based on total amount of the order => good for most situations.

    Now : If you activate selected products the minimum amount to reach in your order will be calculated from your products in your cart that match the selected products of the voucher only if selected.

    😛

    posted on github here : https://github.com/thirtybees/thirtybees/pull/1147

     

    as TB now use use ObjectModelSchemaBuilder to create database schema, there's no need to update anything in install directory, right ?

  6. 22 minutes ago, datakick said:

    Looks like you have outdated guzzle library.

    First, check that your /vendor directory is up to date -- download thirtybees install zip file, extract it, and upload /vendor directory to your server. 

    If this doesn't help, then the only explanation is that there's some module that comes with its own version of guzzle library, and this somehow overrides the default guzzle library that comes with thirtybees. 

    Nice tip, I also proposed my help to check it on the server, but seems like You gave him the good direction to solve it alone,

    • Like 1
  7. 15 hours ago, Traumflug said:

    My impression is, thirty bees could implement everything imaginable and people would still lament about "not moving anywhere".

    Actually, that's a situation I didn't expect when picking up work for thirty bees. About everywhere else, derived/forked projects are seen as pretty much equivalent to the former version. OpenOffice moved smoothly to LibreOffice, people happily tried ecgs-gcc in besides or favor of gcc, MariaDB is welcome for MySQL users, Ubuntu comes with a whole lot of derivatives, Ubuntu its self is a fork of Debian and very popular, and so on. In general forks are seen as an enrichment of the choices one can make rather than kind of a threat.

    Something is different with merchants.

    You are right, in the e-commerce World forks are Seen on a good sight only if the forked software is dead or almost, and to be honest we can't compete with Presta marketing and ADS... They invest maybe 70% of their budget in communication..not in code !  😞


    That being said, I believe TB is the best CMS e-commerce available in  open source today, and I am happy to participate whenever I can !

    • Like 2
  8. You wrote good things, i'd like to add this : why is the gitter chan still on ? because no one never use it and it makes look TB dead already.. not good for image and communication, in the beginning it was active for real, but that's a long time ago.

     

    Edit : Seems like someone is trying to talk on this gitter channel... or trolling who knows.

  9. I have to admit that I have serious doubt once again about TB prosperity.

    It needs a real community spirit.. clarity and a vision , DH42 where are you ? Tell us how TB works, who is in the real team, what is the Next step....

    and maybe some bounty prices for dev that accomplish things will also help to grow faster and deliver good functions free of bugs 🙂

     

    Happy New Year 2020 !!

  10. For example, here you have :

    https://www.firefightersfair.net/13-home/power-pass-eticket2x.jpg

    this image does not exist, it has not been generated with Big sizes...

    but the original one :https://www.firefightersfair.net/13-home/power-pass-eticket.jpg works correctly.

    I guess you have problem with 2x generated images.. You better turn it off if not necessary or try again to set it up correctly and generate the images again when this option is on...

    Good luck, if you want this to be fixed and verified, please give credentials for BO and FTP.

  11. 1 hour ago, datakick said:

    It would, but that functionality is not implemented on purpose - this db migration thingy is still in an early phases, and there can be some bugs. It's much safer to simply not allow 'Fix all', or even 'Automatic fixes' right now

    Ok..i unserstand that but i'd like to make it possible for those who'd like to, even with danger !

     

    Because now ..it will take me maybe around 2 days clicking all the Time to fix it all..please tell me where to engage all recommandations even it breaks the dB afterwards..i'd like to test it.

  12. Quote

    What does it mean? It means that core updater will now look into php codebase and extract metadata from object model classes (like Product, Customer, or Order). These metadata describes exactly how database should look like -- what database tables should exists, what columns should they contain. It describes primary or foreign keys, column type, default values, collations, etc..

    does it also look into overrides php code to extract added fields needed by modules or personnal modifications ?

  13. GetDatackick solved it :

     

    Quote

     

    displayPrice: always replace USD symbol

    
    When Auto format is turned on for some currency, displayPrice javascript
    method will use browser built-in support for currency formatting to
    format currency in specific locale.
    
    It does so by evaluating this expression:
    
    return price
      .toLocaleString(locale, {
        style: 'currency',
        currency: 'USD',
        currencyDisplay: 'code'
      })
    
    This code ensures that the number is formatted using 'USD' string in
    place of currency symbol. This 'USD' string is then replaced with actual
    currency symbol.
    
    However, there was a bug - this string replacement wasn't performed when
    no currencySign was passed to the function. In such case, the string
    with 'USD' symbol was returned.
    
    This commit ensures that this USD symbol is always replaced, even with
    the empty string.
    
    Related to issue #865

     

     

     

    • Like 1
  14. It comes from the function displayPrice that needs some correction in the file : js/tools.js

    line 117

        if (currencySign && currencySign!== 'undefined') {
          formattedCurrency = formattedCurrency.replace('USD', currencySign);
        }

    And I am not sure it really needs to be there.. why replacing to USD, in others files it setup by default to euro € symbol... strange, maybe somebody can explain where does it comes from.

     

×
×
  • Create New...