/** * Upload image * @param string $mainFolder - name of th block in Config/images.php * @return string - filename */ public static function uploadImage($mainFolder) { if (!Arr::get($_FILES['file'], 'name')) { return false; } $need = Config::get('images.' . $mainFolder); if (!$need) { return false; } $ext = end(explode('.', $_FILES['file']['name'])); $filename = md5($_FILES['file']['name'] . '_' . $mainFolder . time()) . '.' . $ext; foreach ($need as $one) { $path = HOST . HTML::media('/images/' . $mainFolder . '/' . Arr::get($one, 'path')); Files::createFolder($path, '0777'); $file = $path . '/' . $filename; $image = Image::factory($_FILES['file']['tmp_name']); if (Arr::get($one, 'resize')) { $image->resize(Arr::get($one, 'width'), Arr::get($one, 'height'), Image::INVERSE); } if (Arr::get($one, 'crop')) { $image->crop(Arr::get($one, 'width'), Arr::get($one, 'height')); } $image->save($file); } return $filename; }