4get/images.php

78 lines
2.1 KiB
PHP
Raw Normal View History

2023-07-22 18:41:14 +00:00
<?php
/*
Initialize random shit
*/
2023-11-07 13:04:56 +00:00
include "data/config.php";
2023-07-22 18:41:14 +00:00
include "lib/frontend.php";
$frontend = new frontend();
[$scraper, $filters] = $frontend->getscraperfilters("images");
$get = $frontend->parsegetfilters($_GET, $filters);
/*
Captcha
*/
2024-02-18 04:22:19 +00:00
include "lib/bot_protection.php";
new bot_protection($frontend, $get, $filters, "images", true);
2023-07-22 18:41:14 +00:00
$payload = [
2024-02-18 04:22:19 +00:00
"timetaken" => microtime(true),
2023-07-22 18:41:14 +00:00
"images" => "",
"nextpage" => ""
];
try{
$results = $scraper->image($get);
}catch(Exception $error){
2023-11-07 13:04:56 +00:00
$frontend->drawscrapererror($error->getMessage(), $get, "images");
2023-07-22 18:41:14 +00:00
}
if(count($results["image"]) === 0){
$payload["images"] =
'<div class="infobox">' .
"<h1>Nobody here but us chickens!</h1>" .
'Have you tried:' .
'<ul>' .
'<li>Using a different scraper</li>' .
'<li>Using fewer keywords</li>' .
'<li>Defining broader filters (Is NSFW turned off?)</li>' .
'</ul>' .
'</div>';
}
foreach($results["image"] as $image){
$payload["images"] .=
'<div class="image-wrapper" title="' . htmlspecialchars($image["title"]) .'" data-json="' . htmlspecialchars(json_encode($image["source"])) . '">' .
'<div class="image">' .
'<a href="' . htmlspecialchars($image["source"][0]["url"]) . '" rel="noreferrer nofollow" class="thumb">' .
2023-08-08 07:09:47 +00:00
'<img src="' . $frontend->htmlimage($image["source"][count($image["source"]) - 1]["url"], "thumb") . '" alt="thumbnail">';
if($image["source"][0]["width"] !== null){
$payload["images"] .= '<div class="duration">' . $image["source"][0]["width"] . 'x' . $image["source"][0]["height"] . '</div>';
}
$payload["images"] .=
2023-07-22 18:41:14 +00:00
'</a>' .
'<a href="' . htmlspecialchars($image["url"]) . '" rel="noreferrer nofollow">' .
2023-07-26 23:03:06 +00:00
'<div class="title">' . htmlspecialchars(parse_url($image["url"], PHP_URL_HOST)) . '</div>' .
2023-07-22 18:41:14 +00:00
'<div class="description">' . $frontend->highlighttext($get["s"], $image["title"]) . '</div>' .
'</a>' .
'</div>' .
'</div>';
}
if($results["npt"] !== null){
$payload["nextpage"] =
'<a href="' . $frontend->htmlnextpage($get, $results["npt"], "images") . '" class="nextpage img">Next page &gt;</a>';
}
echo $frontend->load("images.html", $payload);