<?php
  include_once('scrapers/wallhaven.php');
  $config = require(__DIR__.'/../config.php');

  function timesince($time) {
    $time = time() - $time;
    $timeunits = [
      31536000 => 'year',
      2592000 => 'month',
      604800 => 'week',
      86400 => 'day',
      3600 => 'hour',
      60 => 'minute',
    ];

    foreach ($timeunits as $unit => $text) {
      if ($time < $unit)
        continue;
      $numunits = floor($time / $unit);
      return ' '.$numunits.' '.$text.(($numunits > 1) ? 's' : '');
    }
  }

  function humanfilesize($size, $unit="") {
    if ((!$unit && $size >= 1 << 30) || $unit == "GB")
      return number_format($size / (1 << 30),2)."GB";
    if ((!$unit && $size >= 1 << 20) || $unit == "MB")
      return number_format($size / (1 << 20),2)."MB";
    if ((!$unit && $size >= 1 << 10) || $unit == "KB")
      return number_format($size / (1 << 10),2)."KB";
    return number_format($size)." bytes";
  }

  function toupperpurity($str) {
    if ($str == "sfw")
      return strtoupper($str);
    if ($str == "sketchy")
      return ucfirst($str);
    if ($str == "nsfw")
      return strtoupper($str);
    return $str;
  }

  function humanquery($q, $nsfw = false) {
    global $config;
    if ($nsfw)
      $apikey = $config["frontends"]["wallhaven"]["apikey"];
    else
      $apikey = "";

    if (preg_match("/id:[0-9+]/", $q)) {
      $info = gettaginfo("https://wallhaven.cc/api/v1/tag/".preg_replace("/id:/", "", $q));
      $q = preg_replace("/id:[0-9]+/", $info["name"], $q);
  }
    if (preg_match("/like:([A-Za-z0-9]+)/", $q, $matches)) {
      $id = preg_replace("/like:/", "", $matches[0]);
      $wall = getwallpaper("https://wallhaven.cc/api/v1/w/$id?apikey=$apikey");
      $q = $q."<span id='triangle'></span><img src='/proxy.php?i=".$wall["thumbs"]["orig"]."'>";
    }

    return $q;
  }
?>