Only return media added in last half hour
This commit is contained in:
parent
0dcf1d86b5
commit
b764066d98
2 changed files with 17 additions and 1 deletions
|
@ -11,10 +11,12 @@ use App\Models\Media;
|
||||||
use App\Services\TokenService;
|
use App\Services\TokenService;
|
||||||
use Exception;
|
use Exception;
|
||||||
use Illuminate\Contracts\Container\BindingResolutionException;
|
use Illuminate\Contracts\Container\BindingResolutionException;
|
||||||
|
use Illuminate\Database\Eloquent\ModelNotFoundException;
|
||||||
use Illuminate\Http\File;
|
use Illuminate\Http\File;
|
||||||
use Illuminate\Http\JsonResponse;
|
use Illuminate\Http\JsonResponse;
|
||||||
use Illuminate\Http\Response;
|
use Illuminate\Http\Response;
|
||||||
use Illuminate\Http\UploadedFile;
|
use Illuminate\Http\UploadedFile;
|
||||||
|
use Illuminate\Support\Carbon;
|
||||||
use Illuminate\Support\Facades\Storage;
|
use Illuminate\Support\Facades\Storage;
|
||||||
use Illuminate\Support\Str;
|
use Illuminate\Support\Str;
|
||||||
use Intervention\Image\Exception\NotReadableException;
|
use Intervention\Image\Exception\NotReadableException;
|
||||||
|
@ -53,7 +55,11 @@ class MicropubMediaController extends Controller
|
||||||
}
|
}
|
||||||
|
|
||||||
if (request()->input('q') === 'last') {
|
if (request()->input('q') === 'last') {
|
||||||
$media = Media::latest()->firstOrFail();
|
try {
|
||||||
|
$media = Media::latest()->whereDate('created_at', '>=', Carbon::now()->subMinutes(30))->firstOrFail();
|
||||||
|
} catch (ModelNotFoundException $exception) {
|
||||||
|
return response()->json([], 404);
|
||||||
|
}
|
||||||
|
|
||||||
return response()->json(['url' => $media->url]);
|
return response()->json(['url' => $media->url]);
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,6 +15,16 @@ class MicropubMediaTest extends TestCase
|
||||||
use DatabaseTransactions;
|
use DatabaseTransactions;
|
||||||
use TestToken;
|
use TestToken;
|
||||||
|
|
||||||
|
/** @test */
|
||||||
|
public function emptyResponseForLastUploadWhenNoneFound()
|
||||||
|
{
|
||||||
|
$response = $this->get(
|
||||||
|
'/api/media?q=last',
|
||||||
|
['HTTP_Authorization' => 'Bearer ' . $this->getToken()]
|
||||||
|
);
|
||||||
|
$response->assertStatus(404);
|
||||||
|
}
|
||||||
|
|
||||||
/** @test */
|
/** @test */
|
||||||
public function clientCanListLastUpload()
|
public function clientCanListLastUpload()
|
||||||
{
|
{
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue