I'm new to Silverstripe and I'm working on a multilingual website. Lately I came across your amazing modules, and I'd like to thank you for the nice features your modules incorporated into my website. Concerning new features, I'm still amazed at how things are easily done for now, but I'll post later when I want a new feature.. thanks again
I'm working on my first SilverStripe project so a copy of the book would be very much appreciated. As I haven't really put your modules to the test, I don't yet know what features I might find missing. I must say however that I find this environment quite exciting and look forward to exploring and possibly contributing to it in the future.
PS Darn, I guess you might as well delete this post...
What a cool module it is.
I am a web developer from South Africa and i have been using SS as my choice of CMS and im not turning back.
Most of the web site we are developing here are fro the tourism industry for reasons which are obvious.
They say a picture is worthy a 1000 words and clients want to show off they places, be it a small bed and breakfast lodge to a big hotel.
What i would expect to be included is a functionality to resize images as you upload and im sure this was part of the earlier version of SS. I know SS uses resampled versions of images but at times clients upload images straight from their cameras and some will be 5 to 8 MB.
It can work like this.
1. specify your image sizes (W,H or kilobytes) in the CMS before you upload.
2. As you will uploading images it resamples they and stores only the resampled image.
If either dimensions or size is not specified then it upload the raw image.
the main reason being that if you upload a file which is more than 3mb that page will crash and you will not be able to remove that image using CMS.
of every 10 support calls we have 3 are for crashed pages.
You've got a point. Processing large images can lead to problems on webservers where PHP doesn't have enough memory available.
Sadly your proposition won't work either, because the resampling of the image has to take place at some point and will then consume lots of memory (~46mb for 12 megapixels of raw image data). Then your page will crash at the upload of the image...
There are several possible solutions to this problem though.
1) Specify the largest allowed image size. Reject all images that are larger in size (or simply don't attempt to resize them, because that will result in a crash).
2) Use ImageMagick to resample the image. It's faster than PHP GD methods and doesn't suffer from php max_memory restrictions. ImageMagick is not installed on every webhost out there, so this solution won't work for everybody.
3) Create a droplet or mini application that takes an image and resizes it to approximately 1200 x 900 pixels. Install this application on all your clients computer and tell them to resize their images with the app, before they upload them.
This isn't much of a DataObjectManager issue though. It's the way image resizing in sapphire (and PHP) works. To tackle this issue, one should probably start with the Image and GD classes.