roman149
Новичок
Доброго времени суток!
Прошу помощи с вопросом: при загрузке на сайт одного изображения (анонса для статьи) нужного его масштабировать и обрезать при необходимости.
Есть плагин отвечающий за загрузку, проверку и ограничения
Как правильно сделать масштабирование, а при необходимости обрезку в рамках плагина.
Спасибо!
Прошу помощи с вопросом: при загрузке на сайт одного изображения (анонса для статьи) нужного его масштабировать и обрезать при необходимости.
Есть плагин отвечающий за загрузку, проверку и ограничения
PHP:
<?php
if ($modx->event->name == 'OnDocFormSave') {
if($mode == 'new'){
if (!empty($_FILES)) {
$id = $resource->get('id');
$folder = 'images/logo-projects'; // имя папки куда грузить, должна быть создана (в корне сайта)
$path = MODX_BASE_PATH.'/'.$folder.'/'; // Путь от корня до нужного места
$tv_name = 'image-logo-project'; // имя тв
// все значения файла
$nameFile = $_FILES['image-logo-project']['name'];
$typeFile = $_FILES['image-logo-project']['type'];
$tmpNameFile = $_FILES['image-logo-project']['tmp_name'];
$sizeFile = $_FILES['image-logo-project']['size'];
$limit_size = 3*1024*1024; // 3 Mb - максимальный размер загружаемого файла
$file_types = array("jpeg", "jpg", "png"); // доступные расширения для загрузки
$extensionFile = substr(strrchr($nameFile, '.'), 1); // получаем расширение файла
$NewNameFile = 'id_'.$id.'_'.date("m_d_y").'.'.$extensionFile; // наше новое имя файла
if(is_uploaded_file($tmpNameFile)) // проверяем зашёл ли файл
{
if($limit_size > $sizeFile)
{ // Проверка на размер
if(in_array($extensionFile, $file_types)){ // проверка на тип
move_uploaded_file($tmpNameFile, $path.$NewNameFile); // загрузка файла
$resource->setTVValue($tv_name, $folder.'/'.$NewNameFile); // запись в ТВ
}
}
}
}
}
}
Спасибо!