news.php 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. <?php
  2. /*
  3. Initialize random shit
  4. */
  5. include "data/config.php";
  6. include "lib/frontend.php";
  7. $frontend = new frontend();
  8. [$scraper, $filters] = $frontend->getscraperfilters("news");
  9. $get = $frontend->parsegetfilters($_GET, $filters);
  10. /*
  11. Captcha
  12. */
  13. include "lib/captcha_gen.php";
  14. new captcha($frontend, $get, $filters, "news", true);
  15. $payload = [
  16. "class" => "",
  17. "right-left" => "",
  18. "right-right" => "",
  19. "left" => ""
  20. ];
  21. try{
  22. $results = $scraper->news($get);
  23. }catch(Exception $error){
  24. $frontend->drawscrapererror($error->getMessage(), $get, "news");
  25. }
  26. /*
  27. Populate links
  28. */
  29. if(count($results["news"]) === 0){
  30. $payload["left"] =
  31. '<div class="infobox">' .
  32. "<h1>Nobody here but us chickens!</h1>" .
  33. 'Have you tried:' .
  34. '<ul>' .
  35. '<li>Using a different scraper</li>' .
  36. '<li>Using fewer keywords</li>' .
  37. '<li>Defining broader filters (Is NSFW turned off?)</li>' .
  38. '</ul>' .
  39. '</div>';
  40. }
  41. foreach($results["news"] as $news){
  42. $greentext = [];
  43. if($news["date"] !== null){
  44. $greentext[] = date("jS M y @ g:ia", $news["date"]);
  45. }
  46. if($news["author"] !== null){
  47. $greentext[] = htmlspecialchars($news["author"]);
  48. }
  49. if(count($greentext) !== 0){
  50. $greentext = implode(" • ", $greentext);
  51. }else{
  52. $greentext = null;
  53. }
  54. $n = null;
  55. $payload["left"] .= $frontend->drawtextresult($news, $greentext, $n, $get["s"]);
  56. }
  57. if($results["npt"] !== null){
  58. $payload["left"] .=
  59. '<a href="' . $frontend->htmlnextpage($get, $results["npt"], "news") . '" class="nextpage">Next page &gt;</a>';
  60. }
  61. echo $frontend->load("search.html", $payload);