Implemented 5.4.0RC
- Sakis Terz
-
Onderwerp Auteur
- Offline
- Berichten: 66
- Ontvangen bedankjes 0
Thanks for the 5.4.0RC!
It fixes the issue with the Joomla cli.
Though I am getting a fatal error in J5.4.
0 Interface "Joomla\CMS\Versioning\VersionableModelInterface" not found
The error shows up, in the admin, when you select/edit a product or a template (at least these is where I could find it).
Debug stack attached
Regards,
Sakis
Graag Inloggen deelnemen aan het gesprek.
- Sakis Terz
-
Onderwerp Auteur
- Offline
- Berichten: 66
- Ontvangen bedankjes 0
- Ruud van Lent
-
- Offline
- Berichten: 1823
- Ontvangen bedankjes 117
Hi Ruud
Thanks for the 5.4.0RC!
It fixes the issue with the Joomla cli.
That is an incompatibility issue between J5 and J6 when it comes to version history and how this is implemented. Will fix this and release a new rc version soon.Though I am getting a fatal error in J5.4.
0 Interface "Joomla\CMS\Versioning\VersionableModelInterface" not found
The error shows up, in the admin, when you select/edit a product or a template (at least these is where I could find it).
Debug stack attached
Regards,
Sakis
Correct, tags can be added in the respective back-end views and you can toggle them on and of on the respective front-end pages. Clicking the tag will route you to the tag page for this tag.Something else, is that while you state that this version implements tags, I see no tag filtering added to the front-end Products model.
The call for testing and input for the Tags feature started 6 weeks ago, received no input so came to the conclusion that this is what was requested.
We are now in RC version short before the final release and as adding filtering to front-end views etc. will be a layout / template break I am not adding that in this release.
I'll add it to the list of possible (to be investigated) features.
Thanks for your feedback Sakis!
Appreciate it,
regards,
Ruud.
Graag Inloggen deelnemen aan het gesprek.
- Sakis Terz
-
Onderwerp Auteur
- Offline
- Berichten: 66
- Ontvangen bedankjes 0
Looking forward for a fix.
Regarding the tag filtering, I am referring to adding such a filter in the model and the db query (the same way com_content does it), without any change to the views and layouts for the time being.
Graag Inloggen deelnemen aan het gesprek.
- Ruud van Lent
-
- Offline
- Berichten: 1823
- Ontvangen bedankjes 117
So we either drop J5 support and go for the new versioning, or keep J5 support and have 'crippled' versioning.
What is your take on this?
with regards to the tags filter: yes you are right, that can be added to the model.
Graag Inloggen deelnemen aan het gesprek.
- Sakis Terz
-
Onderwerp Auteur
- Offline
- Berichten: 66
- Ontvangen bedankjes 0
So, I don't think it's a good idea to drop support for it at that stage.
Does that mean that tags cannot be implemented in J5?
Graag Inloggen deelnemen aan het gesprek.
- Ruud van Lent
-
- Offline
- Berichten: 1823
- Ontvangen bedankjes 117
I have refactored it. Will release new version next week.
Tags are still possible, issue is that the tags are not stored in the version information. So when you change e.p a product description and tags and you then revert to the previous version the description is restored, but the tags are not.
This is also true for articles and contact (Joomla core)
Graag Inloggen deelnemen aan het gesprek.
- Ruud van Lent
-
- Offline
- Berichten: 1823
- Ontvangen bedankjes 117
Graag Inloggen deelnemen aan het gesprek.
- Sakis Terz
-
Onderwerp Auteur
- Offline
- Berichten: 66
- Ontvangen bedankjes 0
1. Fatal error is fixed.
2. I see you added the tag filtering in the ProductsModel.
Seems to work, but there is a small error in line 244
elseif ($tagId = (int) $tagId) {
// Should be
elseif ($tagId === (int) $tagId) {
// or better
elseif ($tagId) {
Btw. The type conversion to int does not needed, since you are filtering this as a 'uint' in the getState()
Graag Inloggen deelnemen aan het gesprek.
- Ruud van Lent
-
- Offline
- Berichten: 1823
- Ontvangen bedankjes 117
thanks for confirming that 1. works
as for 2., this is deliberate: it assigns and casts (= (int) ...) and then checks if the resulting value = 1 or higher (filtering out 0)
The cast is also intentional as the state can be set from anywhere, not just from the populate state, so it is a 'defensive' safety net.
Graag Inloggen deelnemen aan het gesprek.