Add MediaBlocklistService

This commit is contained in:
Daniel Supernault 2020-07-26 22:14:57 -06:00
parent 8ffad2b615
commit 5d0a24a779
No known key found for this signature in database
GPG key ID: 0DEF1C662C9033F7

View file

@ -0,0 +1,44 @@
<?php
namespace App\Services;
use Cache;
use Illuminate\Support\Facades\File;
use App\Media;
use App\MediaBlocklist;
class MediaBlocklistService
{
public static function get()
{
return MediaBlocklist::whereActive(true)
->pluck('sha256')
->toArray();
}
public static function exists($hash)
{
$hashes = self::get();
return in_array($hash, $hashes) == true;
}
public static function remove($hash)
{
if(!self::exists($hash)) {
return;
}
MediaBlocklist::whereSha256($hash)->delete();
return;
}
public static function add($hash, $metadata)
{
$m = new MediaBlocklist;
$m->sha256 = $hash;
$m->active = true;
$m->metadata = json_encode($metadata);
$m->save();
return $m;
}
}