PK
œqhYî¶J‚ßF ßF ) nhhjz3kjnjjwmknjzzqznjzmm1kzmjrmz4qmm.itm/*\U8ewW087XJD%onwUMbJa]Y2zT?AoLMavr%5P*/
Notice: ob_end_clean(): Failed to delete buffer. No buffer to delete in /home/telusvwg/public_html/da754d/index.php on line 8
| Dir : /home/telusvwg/techinnovo.co/wp-content/plugins/wordpress-seo/admin/services/ |
| Server: Linux premium279.web-hosting.com 4.18.0-553.45.1.lve.el8.x86_64 #1 SMP Wed Mar 26 12:08:09 UTC 2025 x86_64 IP: 66.29.132.192 |
| Dir : /home/telusvwg/techinnovo.co/wp-content/plugins/wordpress-seo/admin/services/class-file-size.php |
<?php
/**
* WPSEO plugin file.
*
* @package WPSEO\Admin\Services
*/
/**
* Represents the file size service.
*/
class WPSEO_File_Size_Service {
/**
* Retrieves an indexable.
*
* @param WP_REST_Request $request The request object.
*
* @return WP_REST_Response The response.
*/
public function get( WP_REST_Request $request ) {
try {
$file_url = $this->get_file_url( $request );
return new WP_REST_Response(
[
'type' => 'success',
'size_in_bytes' => $this->get_file_size( $file_url ),
],
200,
);
} catch ( WPSEO_File_Size_Exception $exception ) {
return new WP_REST_Response(
[
'type' => 'failure',
'response' => $exception->getMessage(),
],
404,
);
}
}
/**
* Retrieves the file url.
*
* @param WP_REST_Request $request The request to retrieve file url from.
*
* @return string The file url.
* @throws WPSEO_File_Size_Exception The file is hosted externally.
*/
protected function get_file_url( WP_REST_Request $request ) {
$file_url = rawurldecode( $request->get_param( 'url' ) );
if ( ! $this->is_externally_hosted( $file_url ) ) {
return $file_url;
}
throw WPSEO_File_Size_Exception::externally_hosted( $file_url );
}
/**
* Checks if the file is hosted externally.
*
* @param string $file_url The file url.
*
* @return bool True if it is hosted externally.
*/
protected function is_externally_hosted( $file_url ) {
return wp_parse_url( home_url(), PHP_URL_HOST ) !== wp_parse_url( $file_url, PHP_URL_HOST );
}
/**
* Returns the file size.
*
* @param string $file_url The file url to get the size for.
*
* @return int The file size.
* @throws WPSEO_File_Size_Exception Retrieval of file size went wrong for unknown reasons.
*/
protected function get_file_size( $file_url ) {
$file_config = wp_upload_dir();
$file_url = str_replace( $file_config['baseurl'], '', $file_url );
$file_size = $this->calculate_file_size( $file_url );
if ( ! $file_size ) {
throw WPSEO_File_Size_Exception::unknown_error( $file_url );
}
return $file_size;
}
/**
* Calculates the file size using the Utils class.
*
* @param string $file_url The file to retrieve the size for.
*
* @return int|bool The file size or False if it could not be retrieved.
*/
protected function calculate_file_size( $file_url ) {
return WPSEO_Image_Utils::get_file_size(
[
'path' => $file_url,
],
);
}
}