proxy/index.php
a29b9331
 <?php
 
 $file = base64_decode($_GET['file']);
 
 $url = $file;
 
 $auth = false;
 
 if(isset($_GET['debug'])) {
 	echo "####### IMG URL #######\n";
 	echo $file."\n";
 }
 if (in_array("@", str_split($file))) {
 	$auth = TRUE;
 	if(isset($_GET['debug'])) {
 		echo "AUTH DETECTED!\n";
 		echo "CREDS: ".str_replace(array("http://", "https://"), "", explode("@", $url)[0])."\n";
 		echo "URL: ".explode(":", $url)[0]."://".explode("@", $url)[1]."\n";
 	}
 }
 
 
 $cache_file = './data/'.str_replace("=", "", base64_encode($file));
 
 if (file_exists($cache_file) && (filemtime($cache_file) > (time() - 60 * 2 ))) {
    	$file = file_get_contents($cache_file);
 } else {
 	if($auth) {
 		$authpass = base64_encode(str_replace(array("http://", "https://"), "", explode("@", $url)[0]));
 		$context = stream_context_create([
 			"http" => [
 			        "header" => "Authorization: Basic $authpass"
 			]
 		]);
 		$file = file_get_contents(explode(":", $url)[0]."://".explode("@", $url)[1], false, $context );
 	} else {
    		$file = file_get_contents($url);
 	}
         if(strlen($file) < 300) {
         	if (file_exists($cache_file)) {
                         $file = file_get_contents($cache_file);
                 } else {
                         die("Please try again later");
                 }
         } else {
    		file_put_contents($cache_file, $file, LOCK_EX);
 	}
 }
 if(!isset($_GET['debug'])) { header('Content-Type: image/png'); } else { echo "####### IMG DATA #######\n"; }
 
 echo $file;