Reasons why Thumbnails system must be redone in C5
Permalink
I just done my first project on C5. And this is part of my feedback, things I don't like about thumbnails system:
1. You can't set max height with auto width. Why is that? It's not hard to code, I've wrote function like this about 5 years ago.
2. There is no "crop" checkbox, it crops no matter what. But what if I need uncropped images of max height and max width for my template?
3. Thumbnails sometimes doesn't create at all. What? Whhhyy?
4. You can't change Required flag and it even doesn't do anything. It creates a ton of unnecessary thumbnails for every uploaded picture. What if I need 100x120 thumbnail only for one custom type of block? We should be abble to disable auto-creation of some thumbnails. And then you guys need to add a function that will allow to check in block controller if image thumbnail was created (by thumbnail handle) and if not, create it and return a url. That's a right approach.
5. When editin on a page, and you want to insert an image, you can't pick from one of the thumbnails, you can insert only original image.
So, thumbnails system disappointed me the most... as you can tell. On my next C5 project I'll probably have to add my own function that create thumbnails, that can crop or not crop, that have max-height attribute with auto width and that actually creates thumbnail of right size no matter what. The only down side - user will not be abble to change thumbnail if it croped bad, this sucks. So I'm hopping that developers will fix their thumbnails system...
1. You can't set max height with auto width. Why is that? It's not hard to code, I've wrote function like this about 5 years ago.
2. There is no "crop" checkbox, it crops no matter what. But what if I need uncropped images of max height and max width for my template?
3. Thumbnails sometimes doesn't create at all. What? Whhhyy?
4. You can't change Required flag and it even doesn't do anything. It creates a ton of unnecessary thumbnails for every uploaded picture. What if I need 100x120 thumbnail only for one custom type of block? We should be abble to disable auto-creation of some thumbnails. And then you guys need to add a function that will allow to check in block controller if image thumbnail was created (by thumbnail handle) and if not, create it and return a url. That's a right approach.
5. When editin on a page, and you want to insert an image, you can't pick from one of the thumbnails, you can insert only original image.
So, thumbnails system disappointed me the most... as you can tell. On my next C5 project I'll probably have to add my own function that create thumbnails, that can crop or not crop, that have max-height attribute with auto width and that actually creates thumbnail of right size no matter what. The only down side - user will not be abble to change thumbnail if it croped bad, this sucks. So I'm hopping that developers will fix their thumbnails system...
Good points, MaestroMagnifico!
@MaestroMagnifico
@A3020
I created a GitHub issue for the other features.
"Conditional thumbnails #3559"
https://github.com/concrete5/concrete5/issues/3559...
@A3020
I created a GitHub issue for the other features.
"Conditional thumbnails #3559"
https://github.com/concrete5/concrete5/issues/3559...
Reasons 1 and 2
There is a GitHub issue proposing the addition of setting thumbnail height and width with the option to crop. I recommend posting to this issue and showing your interest and that you are also interested in height and auto width.
"Suggestion to add "crop" option to thumbnail #3225"
https://github.com/concrete5/concrete5/issues/3225...
Reason 4
The required flag shows the thumbnails that are generated for use by concrete5. Example use is for the file manager.
I agree that per block thumbnail creation for only the images that are used would be very useful. As a proposal for a new feature, I would create a GitHub issue for this that includes the full use cases and specific details. This would be an issue I would gladly "+1".
It sounds like you are a developer and you have ideas on how to add and improve existing features. As this is an open-source project, this offers the opportunity for you to help contribute code.