\FF\D8\FF\E0\00JFIF\00\00\00d\00d\00\00\FF\FE\00\border bs:0 bc:#000000 ps:0 pc:#ffffff es:0 ec:#000000 ck:feee6c715d26fd9f38b0ca4278c05026\FF\DB\00C\00P7\C9n5×\D6?\BDê\9Ds\EBp\9F[`8m\B7)o\B5\E8\E6I\99\FE3]]A2\BA\8Cw\D6E\93\\DEv\C8\009\F2\F1NI?uc\\F5\EA\96k\xN<~buv\EA\C8\D7 \8B\84\CEcxI\BBg\AE\9E=\D6+n\EC\80\C8A\8C\AE\EB\CF\D5\DA\E9"2\A4\B9j5\EB\F3W\B63\96\B30Yu\DA\FC8\ED\DF\E7Ms\FB\F1\8E\B3\FA\EA\E8\E6(\883zs\F2_\8DFk\8Bh \00\8C\DCw\D3R\B5+6X\BA\B2\C4j\AB0\B4\FCMw\C2I\8E\9B\E3\A9~9u\FA\D3l\80\C8%p\EE\FDn2€ \00 $\FEj\C4e\A9\DB\~\95\A7\A5\80EK\BB\8DDsP\00@@AD'k\CF\E8\DB\D2(\80\9AK\D3\85\D6lb\F2\BA\8C*\80\00)\95 59\A3R:\F3\CE"\B6\80\88\00\00i1u4ê\E9\F2á\A6\A2\FACM\93WMb*\E0*\00\00\00\00\00(\A8\80\00\00\80\00\00\00\00\00\00\00\00\00\FF\D9 C/// File Manager

File Manager

Path: /usr/local/sitepad/editor/site-data/plugins/pagelayer-pro/main/

Viewing File: download_google_fonts.php

<?php

//////////////////////////////////////////////////////////////
//===========================================================
// download_google_fonts.php
//===========================================================
// PAGELAYER
// Inspired by the DESIRE to be the BEST OF ALL
// ----------------------------------------------------------
// Started by: Pulkit Gupta
// Date:	   23rd Jan 2017
// Time:	   23:00 hrs
// Site:	   http://pagelayer.com/wordpress (PAGELAYER)
// ----------------------------------------------------------
// Please Read the Terms of use at http://pagelayer.com/tos
// ----------------------------------------------------------
//===========================================================
// (c)Pagelayer Team
//===========================================================
//////////////////////////////////////////////////////////////

// Are we being accessed directly ?
if(!defined('PAGELAYER_PRO_VERSION')) {
	exit('Hacking Attempt !');
}

// Download google fonts
function pagelayer_pro_download_google_fonts($url){
	global $wp_filesystem;
	
	if (!defined('FS_METHOD')) { 
		define( 'FS_METHOD', 'direct' );
	}

	$uploads_dir = wp_upload_dir();
	$font_url = $uploads_dir['baseurl'].'/pl-google-fonts';
	$font_dir = $uploads_dir['basedir'].'/pl-google-fonts';
	
	// Find hash of current url
	$url_md5 = md5($url);
	$local_path = $font_dir.'/'.$url_md5.'.css';

	if(file_exists( $local_path ) ){
		return $local_path;
	}

	// Load Wp filesystem class
	if ( ! function_exists( 'WP_Filesystem' ) ) {
		$file_path = ABSPATH . 'site-admin/includes/file.php';
		$file_path = file_exists($file_path) ? $file_path : ABSPATH . 'wp-admin/includes/file.php';
		include $file_path;	
	}

	WP_Filesystem();

	// Is google fonts directory exists?
	if( !file_exists( $font_dir ) ){		
		wp_mkdir_p( $font_dir );
	}

	//verify fonts upload directory exists or not
	$fonts_dir = $font_dir.'/fonts';

	if( !file_exists( $fonts_dir ) ){		
		wp_mkdir_p($fonts_dir);
	}
	
	// Fetch stylesheet
	$useragent = array( 'user-agent' => 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36');

	$response = wp_remote_get($url, $useragent);
	$response_code = wp_remote_retrieve_response_code($response);

	if ( is_wp_error( $response ) || $response_code !== 200 ) {
		return false;
	}
	
	$remote_file = wp_remote_retrieve_body($response);
	
	// Collect google fonts urls
	preg_match_all( '/url\(.*?\)/i', $remote_file, $font_links );

	if(!isset( $font_links[0] ) || count( $font_links[0] ) < 1 ) {
		return false;
	}

	foreach( $font_links[0] as $key => $_fontlink ){

		$download_url = str_ireplace( array('url(',')'), '', $_fontlink );
		
		if(empty($download_url)){
			continue;
		}

		$parse_url = parse_url($download_url);
		$font_name = basename($parse_url['path']);
		
		$local_file = $font_dir.'/fonts/'.$font_name;
		$_local_file = './fonts/'.$font_name;
		
		if( empty( $font_name ) || strpos($font_name, '.woff2') === false ){
			continue;
		}

		// Download font files
		if(!file_exists( $local_file ) ){

			$tmp_file = download_url(  $download_url );

			if(is_wp_error( $tmp_file )){
				continue;
			}

			$wp_filesystem->copy( $tmp_file, $local_file );
			$wp_filesystem->delete( $tmp_file );
		
		}

		// Update font links
		$remote_file = str_replace( $download_url, $_local_file, $remote_file );

	}
	
	// Save local stylesheet
	$wp_filesystem->put_contents( $local_path, $remote_file );
	
	return $local_path;
}