, . , ?
, .
, , , . , , -, , .
$visual - UploadField, .
resizeByHeight, , , , , , .
Image, , , _resampled.
.
UploadField upload, , .
, :
class MyUploadField extends UploadField {
protected function saveTemporaryFile($tmpFile, &$error = null) {
$file = parent::saveTemporaryFile($tmpFile, $error);
if ($file && is_a($file, 'Image')) {
$filePath = Director::baseFolder() . "/" . $file->Filename;
$backend = Injector::inst()->createWithArgs(Image::get_backend(), array($filePath));
if ($backend->hasImageResource() && $backend->getHeight() > 100) {
$newBackend = $backend->resizeByHeight(100);
if ($newBackend) {
$newBackend->writeTo($filePath);
}
}
}
return $file;
}
}