Jump to content
thirty bees forum

product combination attribute dimensions


led24ee

Recommended Posts

  • 3 years later...
On 12/28/2018 at 2:35 AM, led24ee said:

Hi. This one (https://addons.prestashop.com/en/sizes-units/24128-product-combination-attribute-dimensions.html) seems to be exactly what I need. Does anyone have experience with this module ?

Hi there @led24ee

So I'm interested in purchasing this module and wanted to know your experience with it? 

Did you land up going with it or did you find some free alternative? 

Link to comment
Share on other sites

Honestly, this was for future need. Right now there isn't strong need for this. I was somehow sure that TB team can handle this. (Yes, silly me). But unfortunately they are doing some weird things, which are for people who can't use all possibilities that already exist. But about this module, maybe I need to pay for someone extra because my skills aren't so good. And this keeps me thinking about this : why I'm supporting this project at all when I need to pay extra if there is some problem.

Link to comment
Share on other sites

On 7/30/2022 at 2:31 AM, led24ee said:

Honestly, this was for future need. Right now there isn't strong need for this. I was somehow sure that TB team can handle this. (Yes, silly me). But unfortunately they are doing some weird things, which are for people who can't use all possibilities that already exist. But about this module, maybe I need to pay for someone extra because my skills aren't so good. And this keeps me thinking about this : why I'm supporting this project at all when I need to pay extra if there is some problem.

Just my thoughts on this:

  1. I can see the point for this feature and it can be useful for other merchants. But it's not a feature that was asked that often in the past. In addition it's not easy to implement at all...
  2. I know not a single "new" feature, that already exists. I guess you are talking about my "Multiple Features PR". As you see in my thread: multiple persons like it a lot. I think you still haven't understood, that I am not even part of the tb team. My PR is basically a "gift" that took me probably more than hundred hours.
  3. Why you are supporting this project? Ofc that's up to you, but all guys now using TB or PS 1.6 are fucked up in a few months, if development doesn't continue. I have asked it many times: which open source ecommerce software is better? Haven't got any names. Please also check github and the recent forum posts from @datakick. This is why you support it. He works so hard to hold this project on and make it even better. From github I would say that this software is much more alive than a year ago. 🙂
  • Like 2
Link to comment
Share on other sites

Also if you need any help and it's small enough not for paid support, you can always ask here in the forums and include Datakick. 

 

Thanks to @datakick, @Smile and the supporters who have kept TB alive. There's more to be done and room for improvement ofc, but at least it's alive and active. 

Edited by Theo
Link to comment
Share on other sites

More monetary support and more paid support work will help TB grow so we can get more devs.

Obviously there are things that TB management needs to do to bring in more users / theme devs. But that's another story. Right, Chiel? @Smile

Right now TB needs our support. Both for their sakes and ours. We like running one of the best opensource eCommerce platforms out there and want it to continue and get better, right? 

 

Link to comment
Share on other sites

So I've just purchased this module
https://addons.prestashop.com/en/sizes-units/24128-product-combination-attribute-dimensions.html#specifications

 

But I'm getting the following error (Running TB 1.4 on PS 7.2):

ThirtyBeesException

Class 'Attribute' not found

in file modules/combinationdimensions/classes/AttributeDimension.php at line 85

Source file: modules/combinationdimensions/classes/AttributeDimension.php

66:
67:    /**
68:     * Get saved attributes from DB
69:     * @return array
70:     */
71:    public static function getSavedAttributes()
72:    {
73:        return Db::getInstance()->executeS('SELECT * FROM '._DB_PREFIX_.'cd_attribute_dimensions');
74:    }
75:
76:    /**
77:     * Method to modify saved attributes for helper list
78:     * @return array
79:     */
80:    public static function getListAttributes()
81:    {
82:        $attributes = AttributeDimension::getSavedAttributes();
83:
84:        foreach ($attributes as &$attribute) {
85:            $att = new Attribute($attribute['id_attribute']);
86:            $attribute['attribute_value'] = $att->name[Context::getContext()->language->id];
87:            $attribute['height'] = (float) $attribute['height'];
88:            $attribute['width'] = (float) $attribute['width'];
89:            $attribute['depth'] = (float) $attribute['depth'];
90:        }
91:
92:        return $attributes;
93:    }
94:
95:    /**

Is there something I need to change in the code here, please @datakick ?

Edited by Theo
Link to comment
Share on other sites

I'm not sure but this can be related with PHP8. When I remember correctly then in PHP8 there are some things with are in conflict with PS and TB earlier version. But since PHP8 there wasn't conflict because they was using different names for items. Now PHP8 uses one thing with the same name as it is present in PS and TB. I have no idea about PS, but in TB1.4 this problem is somehow solved. If I'm correct then this module isn't compatible with PHP8 and also it is not compatible with TB1.4. But once again, maybe I understand it all wrong.

Link to comment
Share on other sites

class 'Attribute' in global namespace is reserved in php8. In order to make tb php8 ready, we had to rename the class Attribute to ProductAttribute.

There will be a mechanism that fixes (patches) third party modules automatically, but this mechanism is not yet ready for production -- still lots of bugs. 

Meanwhile, you have to patch the module code yourself. Replace every reference of Attribute with ProductAttribute.

In your case, line 85 should look like this:

$att = new ProductAttribute($attribute['id_attribute']);

Look for these syntax patterns in the module code:

new Attribute(...)
Attribute::someMethod()
Attribute::$staticProperty

 

  • Thanks 1
Link to comment
Share on other sites

2 hours ago, datakick said:

class 'Attribute' in global namespace is reserved in php8. In order to make tb php8 ready, we had to rename the class Attribute to ProductAttribute.

There will be a mechanism that fixes (patches) third party modules automatically, but this mechanism is not yet ready for production -- still lots of bugs. 

Meanwhile, you have to patch the module code yourself. Replace every reference of Attribute with ProductAttribute.

In your case, line 85 should look like this:

$att = new ProductAttribute($attribute['id_attribute']);

Look for these syntax patterns in the module code:

new Attribute(...)
Attribute::someMethod()
Attribute::$staticProperty

 

Awesome, thanks for the explanation and solution. I will implement accordingly. 

Bytw, I particularly like your idea of the mechanism to fix 3rd party modules automagically. But I can appreciate the complexity and hornet's nest involved in that one. 

Also just last question for now @datakickWhen I started building this site, PHP 7.2 was kinda still fine with 7.3 recommended, with the dev site running 7.2. Assuming that Panda and other third party modules will still work, which PHP version do you recommend for the live site? Should I go for 7.4?

Edited by Theo
Link to comment
Share on other sites

13 hours ago, datakick said:

class 'Attribute' in global namespace is reserved in php8. In order to make tb php8 ready, we had to rename the class Attribute to ProductAttribute.

There will be a mechanism that fixes (patches) third party modules automatically, but this mechanism is not yet ready for production -- still lots of bugs. 

Meanwhile, you have to patch the module code yourself. Replace every reference of Attribute with ProductAttribute.

In your case, line 85 should look like this:

$att = new ProductAttribute($attribute['id_attribute']);

Look for these syntax patterns in the module code:

new Attribute(...)
Attribute::someMethod()
Attribute::$staticProperty

 

Working now, thank you. I appreciate it 👍

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...