<?php declare(strict_types=1); class MediaResizeEvent extends Event { public $engine; public $input_path; public $input_type; public $output_path; public $target_format; public $target_width; public $target_height; public $target_quality; public $minimize; public $ignore_aspect_ratio; public $allow_upscale; public function __construct( String $engine, string $input_path, string $input_type, string $output_path, int $target_width, int $target_height, bool $ignore_aspect_ratio = false, string $target_format = null, int $target_quality = 80, bool $minimize = false, bool $allow_upscale = true ) { parent::__construct(); assert(in_array($engine, MediaEngine::ALL)); $this->engine = $engine; $this->input_path = $input_path; $this->input_type = $input_type; $this->output_path = $output_path; $this->target_height = $target_height; $this->target_width = $target_width; $this->target_format = $target_format; $this->target_quality = $target_quality; $this->minimize = $minimize; $this->ignore_aspect_ratio = $ignore_aspect_ratio; $this->allow_upscale = $allow_upscale; } } class MediaCheckPropertiesEvent extends Event { public $image; public $file_name; public $ext; public function __construct(Image $image) { parent::__construct(); $this->image = $image; $this->file_name = warehouse_path(Image::IMAGE_DIR, $image->hash); $this->ext = strtolower($image->ext); } }