public function maybe_encode_wp_prepare_attachment_for_js($response, $attachment, $meta)
{
if (!($s3object = $this->is_attachment_served_by_s3($attachment->ID))) {
// Not served by S3, return
return $response;
}
if (isset($response['url'])) {
$response['url'] = $this->encode_filename_in_path($response['url']);
}
if (isset($response['sizes']) && is_array($response['sizes'])) {
foreach ($response['sizes'] as $size => $value) {
$url = $this->maybe_sign_intermediate_size($value['url'], $attachment->ID, $size, $s3object);
$url = $this->encode_filename_in_path($url);
$response['sizes'][$size]['url'] = $url;
}
}
return $response;
}