Jump to content
thirty bees forum

thirty bees 1.1.0 is released!


Recommended Posts

Perhaps you were waiting just as long as me, now it's done:

thirty bees v1.1.0 (ZIP package)

Packed with hundreds of bug fixes, awesome new default theme, two new modules.

Release notes:

  • Core Updater is now the tool to update thirty bees core. A lot faster, a substantially more reliable update strategy. It can update all versions beginning with thirty bees 1.0.1. And it can downgrade / roll back just as easily in case a new release doesn't work for your shop.
  • Module tbupdater should be kept installed, it's needed for updating modules for the time being.
  • Big refactoring of error reporting and exception handling by @getdatakick. A new exception page and more important for merchants: reports no longer go into the rendered shop page, but get reported in the JavaScript console. PHP errors messing up shop pages are a thing of the past.
  • Another big audit of price rounding. Prices in the cart get now rounded properly according to the configured rounding strategy (by item / by line / by total). And invoices, credit slips, all now do as well.
  • This audit also brought a lot of detail improvements in displayed prices. For details, see https://thirtybees.com/blog/prices-done-right/.
  • In multishop environments, one no longer sees duplicate entries for currencies.
  • Editing translations no longer requires to raise the max_vars PHP setting. Thanks to @ziyaindia.
  • When checking for module updates, not only the module name, but also the module author has to match. This should solve a class of issues with thirty party modules named like official modules. It also means that one can exclude a (edited) module from updates by simply changing the module author, e.g. from $this->author = 'thirty bees' to $this->author = 'thirty bees tweaked'.
  • Coupons/vouchers with taxes get now taken into account as well, thanks to @Zengraph.
  • With multishop, lists of customer groups now list only groups available in the currently selected shop context, thanks to @chitmann.
  • Also thank you to Emanuel Schiendorfer, David Gasperoni, Mark, Yaniv Mirel and Geo for their contributions. Much appreciated!
  • There is a new section in the statistics module: Stats by Groups. Written and contributed by @Zengraph.
  • Considerable chunks of theme installation were re-written. It should work now simpler and no longer mess with back office modules.
  • This added support for different image sizes in distinct themes. Developers would call this a per-theme namespace for image types.
  • Theme configuration XMLs in config/xml/themes/ disappeared. As they never got edited, they were always identical to config.xml in the theme folder.
  • This also removed config/xml/themes/default.xml, which was used for community-theme-default, so no more surprises when installing a shop and re-installing the default theme.
  • Initial theme settings in the installer were aligned with those of the actual default theme. Before, (re-)installing the default theme later had quite distinct results from what one had right after installation.
  • Theme metas (where one turns left and right columns on and off on particular pages) now allow to configure not only pages known by the theme, but all pages available.
  • CSV import now supports custom date formats in CSV data. This should allow e.g. U.S. merchants to import CSV data from a European manufacturer. Thanks to @ksimunovic!
  • A new, awesome looking default theme, Niara.
  • Previous theme is still there.
  • Now one can switch back and forth between both themes coming with thirty bees. Support for the "back" step with third party themes is forthcoming, one can still install them, of course.
  • Module beesblog is now a default module.
  • Two new modules, thememanager and tbhtmlblock. Already in use by theme Niara, they get disabled when installing theme community-theme-default.
  • Modules & Themes Catalog can now actually list modules and themes.

Notes to developers:

  • Price rounding audit contained the following steps:
    • Get the cart into rounding properly.
    • When creating an order, take these rounded prices from the cart unchanged. This ensures all downstream calculations use these rounded values rather than the current product price. This also allowed to remove duplicated rounding in classes like HTMLTemplateInvoice or HTMLTemplateOrderSlip. As a metaphor, consider rounding to be like a discount: price in the order is what the shop customer saw, not what the merchant started with.
    • Reviewed all classes dealing with prices to always round to database precision. As if PHP couldn't do better. For strategies, see Dealing with Prices at Traumflug's.
    • Replaced a whole lot of (hopefully all) hardcoded rounding precision values with constant _TB_PRICE_DATABASE_PRECISION_ or Configuration::get('PS_PRICE_DISPLAY_PRECISION') as appropriate.
    • Controllers rendering option fields ($this->fields_options[]) containing prices should use field type 'price', validation 'isPrice' and, new, a cast 'priceval'. The latter converts to a float, then rounds to database precision.
  • AdminController was changed to apply the cast for option fields ($this->fields_options[]) before validation, not after. This allows to implement a cast which shapes the value (like priceval() does).
  • There is a new field type for a class' storage field, type TYPE_PRICE. It's a float like TYPE_FLOAT, but also rounds the value to database precision, to get precisely predictable price and tax calculations.
  • Started to remove outdated code. Retrocompatibility code for PS 1.4 and before or PHP 5.5 and before.
  • Removed AdminRangePriceController and AdminRangeWeightController. Introduced in 2011, they were never available in back office. Classes RangePrice and RangeWeight are kept, of course.
  • Themes now support only one variation. Not sure whether multiple variations every worked before, code had quite a number of discrepancies. Attempting to install a theme with multiple variations now reports an error.
  • To get the path of the config file of a theme before and after 1.1.0, use Theme::getConfigFilePath().
  • Image type names are now enforced to contain the theme name. Recommended standard is to let the system do this, it prefixes the theme name. For getting links to product images, use Link->getImageLink(), for getting product image sizes, use Smarty getWidthSize and getHeightSize, see e.g. in _productlist-item.tpl in both thirty bees themes. For getting just the appropriate type, use ImageType::getFormatedName(). Other variations are allowed as well, see ImageType::getFormatedName().
  • And yes, fallbacks for hardcoded image types were implemented. They come with a small performance penalty, though. To see how to fix a theme with hardcoded image types, see commits like https://github.com/thirtybees/niara/commit/1047053d4829ecaf7e5bbdbad891bba286863b07 or https://github.com/thirtybees/niara/commit/7f682df10940170593bbe6d21ea99dd74ebe77ae.
  • There are a whole lot of new hooks, see New Hooks in 1.1.x in our forum.

And yes, we're aware this has taken waaay to long. thirty bees should release more often.

This release also appears in Core Updater in you back office.

  • Like 5
  • Thanks 8
Link to comment
Share on other sites

THANK YOU,  great to hear it is growing and growing  :classic_biggrin: 

I really hope that we can start asap with tb...  cant wait for it!  (but a lot of work to do before)

btw. i dont think that it took too long,  if updates/releases are with a lot of great things, benefits and are stable,  it is absolutely ok when a stable version needs this time!

  • Like 1
Link to comment
Share on other sites

Excellent news!

Thanks to all!

Panda theme user here just updated to 1.1.0 wanting to try the new update and Niara theme but I don't see Niara only community-theme-default does Niara install by default and is not listed or should I see it?

Modules and themes page is blank also

Thanks!

1359215856_ScreenShot2019-07-25at5_10_54PM.thumb.png.772c58e10c9bbe9ccb68b7afc46a0cf5.png

 

Modules & Themes Catalog can now actually list modules and themes.

839318730_ScreenShot2019-07-25at5_11_25PM.png.44b4a99e72ce7c56a9d069cf157ca765.png

Link to comment
Share on other sites

@led24ee Assuming those modules files are on your server, and you just really have to have these modules, and cant wait for the developers to change it, you can do this....

All three of those modules have the same problem and need the same fix.

edit the main .php of each module, for instance in the Tawk.To module you would edit tawkto.php, and look for something like:

        $this->tb_versions_compliancy = '1.0.x';

now replace that line with the following two lines:

        $this->tb_min_version = '1.0.0';
        $this->tb_versions_compliancy = '> 1.0.0';

Do that in the main file of each of those modules, and it should let you install them.

edit:

I did a github pull request for all three of these modules, seems to work for me anyways....

Edited by SLiCK_303
  • Like 2
Link to comment
Share on other sites

9 hours ago, SLiCK_303 said:

@vzex If you do a fresh install, Niara is installed and the default theme.  If you do an upgrade to v1.1.0, it seems as though it doesn't copy the new theme over.  At least that's what happened for me.

As the theme is not available on the TB store yet how does one install the new theme on an upgraded site?

Link to comment
Share on other sites

14 hours ago, led24ee said:

Is this supporters file also updated ?

Nope, sorry for that.

TBH, over the last few weeks I kind of put my football gear on and hacked away without looking left or right, just for getting the thing into a releasable shape. There are a few more missing bits, e.g. installing in German gives a mostly English front office. With the release done, we can catch up on these things now, one by one.

  • Like 1
Link to comment
Share on other sites

39 minutes ago, dynambee said:

As the theme is not available on the TB store yet how does one install the new theme on an upgraded site?

Unless one sets Core Updater to ignore community themes, doing an update should install all the files for the new theme. Then one can switch to it in back office -> Preferences -> Themes.

Link to comment
Share on other sites

18 minutes ago, Traumflug said:

Unless one sets Core Updater to ignore community themes, doing an update should install all the files for the new theme. Then one can switch to it in back office -> Preferences -> Themes.

I already nuked my dev site so I can do a fresh install, but I had the core updater set to update the themes (not to ignore the themes) and it wasn't updated or installed. It did not appear in the back office under Preferences -> Themes. Only the original Community Theme was there.

Link to comment
Share on other sites

37 minutes ago, dynambee said:

I already nuked my dev site so I can do a fresh install, but I had the core updater set to update the themes (not to ignore the themes) and it wasn't updated or installed. It did not appear in the back office under Preferences -> Themes. Only the original Community Theme was there.

Did you have latest version of core updater installed?

Link to comment
Share on other sites

12 hours ago, SLiCK_303 said:

@vzex If you do a fresh install, Niara is installed and the default theme.  If you do an upgrade to v1.1.0, it seems as though it doesn't copy the new theme over.  At least that's what happened for me.

Thanks! @SLiCK_303

Did the upgrade route so I didn't get Niara.

Was not able to do a rollback to 1.0.8 through the latest core updater to remove the community default that was installed.

Had to do a restore via CodeGuard.

I miss the old roll back tbupdater that page gives me a 500 error now.

Edited by vzex
Link to comment
Share on other sites

2 hours ago, Traumflug said:

Unless one sets Core Updater to ignore community themes, doing an update should install all the files for the new theme. Then one can switch to it in back office -> Preferences -> Themes.

Thanks! @Traumflug I did just the opposite:

ignore community theme "no" thinking that it would include the new theme.

@Jonny is Panda compatible with 1.1.0 or is there an update? Thanks!

 

Link to comment
Share on other sites

2 hours ago, dynambee said:

I already nuked my dev site so I can do a fresh install, but I had the core updater set to update the themes (not to ignore the themes) and it wasn't updated or installed. It did not appear in the back office under Preferences -> Themes. Only the original Community Theme was there.

@dynambee I made the same mistake

Link to comment
Share on other sites

@vzex I will talk a look tomorrow, if there are any compatibility issues, then I will fix them and release a minor update. 

We have plans to do a relatively major update for Panda theme v1 to add some features like "Ability to use different image types for different blocks", "Keep images be at their original sizes", "Lazyloading off screen images", "Lazy loading banner images", etc, if they can be added. I think the relatively major update will be released about half months later.

Edited by Jonny
  • Like 4
  • Thanks 1
Link to comment
Share on other sites

4 hours ago, datakick said:

Did you have latest version of core updater installed?

That's a good question. I last updated modules a week or so ago so there is a good chance that there was a newer version of Core Updater available.

It would seem that prior to allowing updates to be done Core Updater should check to make sure itself is the latest version. If it is not the latest version users should be told to first update Core Updater from the modules page.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...